Skip to content

Commit b282442

Browse files
Original Files
Circa 21st December 2018
0 parents  commit b282442

File tree

109 files changed

+20728
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

109 files changed

+20728
-0
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
/backup/
2+
/node_modules/

app/common-errors.js

Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,143 @@
1+
const nullObjectError = "Must be an object: null";
2+
const idMissingError = "ID property missing!";
3+
const ipInvalidError = "ipAddress must be an IP address!";
4+
const deviceNotObjectError = 'device must be an object';
5+
const getPropertiesUndefinedError = "Cannot read property 'getRioDeviceProperties' of undefined";
6+
const keyArgError = "get() requires a key argument";
7+
const missingModuleError = "Module doesn't exist! (disabled or deleted)";
8+
const connectObjectError = "_storedDevice must be instance of StoredDevice";
9+
const negativeError = "Must be an object: -1";
10+
11+
12+
function writeKeyNotFoundErrorString(kText)
13+
{
14+
var ep1 = "Key not found in database ";
15+
var ep2 = "[" + kText + "]";
16+
17+
var res = ep1 + ep2;
18+
return res;
19+
}
20+
21+
22+
function writeRemoteIoPropertyErrorString(pName, rVal)
23+
{
24+
var ep1 = "." + pName;
25+
var ep2 = " = " + rVal;
26+
var ep3 = " is not supported!";
27+
28+
var res = ep1 + ep2 + ep3;
29+
return res;
30+
}
31+
32+
function writeRemoteIoPropertySupportString(pName, rVal)
33+
{
34+
var ep1 = "Property .";
35+
var ep2 = pName + " = " + rVal;
36+
var ep3 = " is not supported!";
37+
38+
var res = ep1 + ep2 + ep3;
39+
return res;
40+
}
41+
42+
function writeRemoteIoPropertyConstructString(pName, eType, rVal)
43+
{
44+
var ep1 = "Invalid type! ";
45+
var ep2 = pName + " must be ";
46+
var ep3 = "'" + eType + "'";
47+
var ep4 = " when got value " + rVal;
48+
var ep5 = " in StoredDevice during construction";
49+
50+
var res = ep1 + ep2 + ep3 + ep4 + ep5;
51+
return res;
52+
}
53+
54+
function writeConnectDevicePropertyErrorString(pName, eType, rVal)
55+
{
56+
var ep1 = "Invalid type! ";
57+
var ep2 = pName + " must be ";
58+
var ep3 = "'" + eType + "'";
59+
var ep4 = " when got value " + rVal;
60+
var ep5 = " in StoredDevice during setting";
61+
62+
var res = ep1 + ep2 + ep3 + ep4 + ep5;
63+
return res;
64+
}
65+
66+
67+
function writeSetDeviceOutputWrongError(pName, rVal)
68+
{
69+
var ep1 = "Wrong " + pName;
70+
var ep2 = " = ";
71+
var ep3 = rVal;
72+
73+
var res = ep1 + ep2 + ep3;
74+
return res;
75+
}
76+
77+
function writeRegisterPrefixIndexError(badValue)
78+
{
79+
var ep1 = "Wrong ioPrefix or ioIndex in nodeConfig.ioSetId";
80+
var ep2 = " = ";
81+
var ep3 = badValue;
82+
83+
var res = ep1 + ep2 + ep3;
84+
return res;
85+
}
86+
87+
function writeUnexpectedTokenErrorString(tokenValue, tokenPosition)
88+
{
89+
var setToken = 0;
90+
91+
if (tokenPosition >= 0)
92+
{
93+
setToken = tokenPosition;
94+
}
95+
96+
var p1 = "Unexpected token " + tokenValue;
97+
var p2 = " in JSON at position " + tokenPosition;
98+
99+
var res = p1 + p2;
100+
return res;
101+
}
102+
103+
function writeUnexpectedTokenErrorStringNull()
104+
{
105+
var nRes = writeUnexpectedTokenErrorString("n", 0);
106+
return nRes;
107+
}
108+
109+
function writeUnexpectedTokenErrorStringType()
110+
{
111+
var tRes = writeUnexpectedTokenErrorString("-", 0);
112+
return tRes;
113+
}
114+
115+
116+
117+
function writeTestString()
118+
{
119+
var tStr = "Test";
120+
return tStr;
121+
}
122+
123+
exports.nullObject = nullObjectError;
124+
exports.idMissing = idMissingError;
125+
exports.ipInvalid = ipInvalidError;
126+
exports.deviceNotObject = deviceNotObjectError;
127+
exports.getPropertiesUndefined = getPropertiesUndefinedError;
128+
exports.keyArg = keyArgError;
129+
exports.missingModule = missingModuleError;
130+
exports.connectObject = connectObjectError;
131+
exports.negativeNumberObject = negativeError;
132+
exports.writeKeyNotFoundError = writeKeyNotFoundErrorString;
133+
exports.writeRemoteIoPropertyError = writeRemoteIoPropertyErrorString;
134+
exports.writeRemoteIoPropertySupport = writeRemoteIoPropertySupportString;
135+
exports.writeRemoteIoPropertyConstruct = writeRemoteIoPropertyConstructString;
136+
exports.writeConnectDeviceProperty = writeConnectDevicePropertyErrorString;
137+
exports.writeSetDeviceOutputWrong = writeSetDeviceOutputWrongError;
138+
exports.writeRegisterPrefixIndex = writeRegisterPrefixIndexError;
139+
exports.writeUnexpectedTokenError = writeUnexpectedTokenErrorString;
140+
exports.writeUnexpectedTokenErrorNull = writeUnexpectedTokenErrorStringNull;
141+
exports.writeUnexpectedTokenErrorType = writeUnexpectedTokenErrorStringType;
142+
exports.writeTest = writeTestString;
143+

app/common-objects.js

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
const unknownIDString = "Unknown Device";
2+
3+
const exampleObject =
4+
{
5+
"exists": true,
6+
"relevant": false
7+
};
8+
9+
const testDeviceObject =
10+
{
11+
id: 'OO4EM1vva',
12+
deviceType: 'Remote IO',
13+
maker: 'Advantech',
14+
model: 'WISE-4060',
15+
name: 'Generic Test Device',
16+
desc: 'Used for testing',
17+
ipAddress: '192.168.145.101',
18+
macAddress: '',
19+
username: 'root',
20+
password: '00000000',
21+
isEnabled: true
22+
};
23+
24+
const crudDeviceObject =
25+
{
26+
id: 'ABCDEF123456',
27+
deviceType: 'Remote IO',
28+
maker: 'Advantech',
29+
model: 'WISE-4060',
30+
name: 'CRUD Test Device',
31+
desc: 'Used for testing',
32+
ipAddress: '192.168.123.231',
33+
macAddress: '',
34+
username: 'root',
35+
password: '00000000',
36+
isEnabled: true
37+
};
38+
39+
const modifiedDeviceObject =
40+
{
41+
id: 'ABCDEF123456',
42+
deviceType: 'Remote IO',
43+
maker: 'Moxa',
44+
model: 'ioLogik E1242',
45+
name: 'Modified Test Device',
46+
desc: 'Modified version of existing device',
47+
ipAddress: '192.168.231.123',
48+
macAddress: '',
49+
username: 'root',
50+
password: '00000000',
51+
isEnabled: true
52+
};
53+
54+
55+
const nodeDeviceObject =
56+
{
57+
id: 'ABCDEF123456',
58+
deviceType: 'Remote IO',
59+
maker: 'Advantech',
60+
model: 'WISE-4060',
61+
name: 'Node Test Device',
62+
desc: 'Used for testing node-related functions',
63+
ipAddress: '192.168.123.231',
64+
macAddress: '',
65+
username: 'root',
66+
password: '00000000',
67+
isEnabled: true
68+
};
69+
70+
71+
function getRegisterNodeObject(registerDeviceID, registerNodeID, registerPrefixIndex)
72+
{
73+
var rNodeObj =
74+
{
75+
id: registerNodeID,
76+
type: 'Advantech Out',
77+
z: 'b177490a.885f28',
78+
name: '',
79+
deviceId: registerDeviceID,
80+
ioSetId: registerPrefixIndex,
81+
x: 200, y: 300,
82+
wires: []
83+
};
84+
85+
return rNodeObj;
86+
}
87+
88+
89+
90+
exports.unknownID = unknownIDString;
91+
exports.exampleObj = exampleObject;
92+
exports.testDevice = testDeviceObject;
93+
exports.crudDevice = crudDeviceObject;
94+
exports.modifiedDevice = modifiedDeviceObject;
95+
exports.nodeDevice = nodeDeviceObject;
96+
exports.getRegisterNode = getRegisterNodeObject;

app/define-api.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
const apiDefinitions = ["Advantech", "Moxa", "Sonoff"];
2+
3+
exports.definitions = apiDefinitions;

0 commit comments

Comments
 (0)