@robotical/raftjs 1.3.5 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/dist/react-native/RaftAttributeHandler.d.ts +1 -1
  2. package/dist/react-native/RaftAttributeHandler.js +18 -10
  3. package/dist/react-native/RaftAttributeHandler.js.map +1 -1
  4. package/dist/react-native/RaftChannelBLE.native.d.ts +11 -11
  5. package/dist/react-native/RaftChannelBLE.native.js +61 -41
  6. package/dist/react-native/RaftChannelBLE.native.js.map +1 -1
  7. package/dist/react-native/RaftChannelBLE.web.d.ts +3 -4
  8. package/dist/react-native/RaftChannelBLE.web.js +7 -8
  9. package/dist/react-native/RaftChannelBLE.web.js.map +1 -1
  10. package/dist/react-native/RaftChannelBLEScanner.native.d.ts +6 -6
  11. package/dist/react-native/RaftChannelBLEScanner.native.js +38 -46
  12. package/dist/react-native/RaftChannelBLEScanner.native.js.map +1 -1
  13. package/dist/react-native/RaftConnector.d.ts +3 -3
  14. package/dist/react-native/RaftConnector.js +4 -4
  15. package/dist/react-native/RaftConnector.js.map +1 -1
  16. package/dist/react-native/RaftCustomAttrHandler.d.ts +1 -1
  17. package/dist/react-native/RaftCustomAttrHandler.js +4 -4
  18. package/dist/react-native/RaftCustomAttrHandler.js.map +1 -1
  19. package/dist/react-native/RaftDeviceInfo.d.ts +3 -0
  20. package/dist/react-native/RaftDeviceManager.d.ts +16 -11
  21. package/dist/react-native/RaftDeviceManager.js +196 -50
  22. package/dist/react-native/RaftDeviceManager.js.map +1 -1
  23. package/dist/react-native/RaftDeviceMgrIF.d.ts +9 -6
  24. package/dist/react-native/RaftDeviceStates.d.ts +5 -1
  25. package/dist/react-native/RaftDeviceStates.js +3 -3
  26. package/dist/react-native/RaftDeviceStates.js.map +1 -1
  27. package/dist/react-native/RaftMsgHandler.d.ts +1 -1
  28. package/dist/react-native/RaftMsgHandler.js +1 -2
  29. package/dist/react-native/RaftMsgHandler.js.map +1 -1
  30. package/dist/react-native/RaftStruct.d.ts +3 -0
  31. package/dist/react-native/RaftStruct.js +208 -0
  32. package/dist/react-native/RaftStruct.js.map +1 -0
  33. package/dist/react-native/RaftSysTypeManager.d.ts +14 -0
  34. package/dist/react-native/RaftSysTypeManager.js +53 -0
  35. package/dist/react-native/RaftSysTypeManager.js.map +1 -0
  36. package/dist/react-native/RaftSystemType.d.ts +3 -0
  37. package/dist/react-native/RaftTypes.d.ts +14 -15
  38. package/dist/react-native/RaftTypes.js +13 -50
  39. package/dist/react-native/RaftTypes.js.map +1 -1
  40. package/dist/react-native/RaftUpdateManager.js +6 -3
  41. package/dist/react-native/RaftUpdateManager.js.map +1 -1
  42. package/dist/react-native/RaftUtils.d.ts +1 -0
  43. package/dist/react-native/RaftUtils.js +17 -4
  44. package/dist/react-native/RaftUtils.js.map +1 -1
  45. package/dist/react-native/main.d.ts +2 -1
  46. package/dist/react-native/main.js +4 -4
  47. package/dist/react-native/main.js.map +1 -1
  48. package/dist/web/RaftAttributeHandler.d.ts +1 -1
  49. package/dist/web/RaftAttributeHandler.js +18 -10
  50. package/dist/web/RaftAttributeHandler.js.map +1 -1
  51. package/dist/web/RaftChannelBLE.web.d.ts +3 -4
  52. package/dist/web/RaftChannelBLE.web.js +7 -8
  53. package/dist/web/RaftChannelBLE.web.js.map +1 -1
  54. package/dist/web/RaftConnector.d.ts +3 -3
  55. package/dist/web/RaftConnector.js +4 -4
  56. package/dist/web/RaftConnector.js.map +1 -1
  57. package/dist/web/RaftCustomAttrHandler.d.ts +1 -1
  58. package/dist/web/RaftCustomAttrHandler.js +4 -4
  59. package/dist/web/RaftCustomAttrHandler.js.map +1 -1
  60. package/dist/web/RaftDeviceInfo.d.ts +3 -0
  61. package/dist/web/RaftDeviceManager.d.ts +16 -11
  62. package/dist/web/RaftDeviceManager.js +196 -50
  63. package/dist/web/RaftDeviceManager.js.map +1 -1
  64. package/dist/web/RaftDeviceMgrIF.d.ts +9 -6
  65. package/dist/web/RaftDeviceStates.d.ts +5 -1
  66. package/dist/web/RaftDeviceStates.js +3 -3
  67. package/dist/web/RaftDeviceStates.js.map +1 -1
  68. package/dist/web/RaftMsgHandler.d.ts +1 -1
  69. package/dist/web/RaftMsgHandler.js +1 -2
  70. package/dist/web/RaftMsgHandler.js.map +1 -1
  71. package/dist/web/RaftStruct.d.ts +3 -0
  72. package/dist/web/RaftStruct.js +208 -0
  73. package/dist/web/RaftStruct.js.map +1 -0
  74. package/dist/web/RaftSysTypeManager.d.ts +14 -0
  75. package/dist/web/RaftSysTypeManager.js +53 -0
  76. package/dist/web/RaftSysTypeManager.js.map +1 -0
  77. package/dist/web/RaftSystemType.d.ts +3 -0
  78. package/dist/web/RaftTypes.d.ts +14 -15
  79. package/dist/web/RaftTypes.js +13 -50
  80. package/dist/web/RaftTypes.js.map +1 -1
  81. package/dist/web/RaftUpdateManager.js +6 -3
  82. package/dist/web/RaftUpdateManager.js.map +1 -1
  83. package/dist/web/RaftUtils.d.ts +1 -0
  84. package/dist/web/RaftUtils.js +17 -4
  85. package/dist/web/RaftUtils.js.map +1 -1
  86. package/dist/web/main.d.ts +2 -1
  87. package/dist/web/main.js +4 -4
  88. package/dist/web/main.js.map +1 -1
  89. package/examples/dashboard/package.json +8 -15
  90. package/examples/dashboard/src/ConnManager.ts +18 -14
  91. package/examples/dashboard/src/DeviceActionsForm.tsx +49 -49
  92. package/examples/dashboard/src/DeviceLineChart.tsx +44 -20
  93. package/examples/dashboard/src/DevicePanel.tsx +33 -2
  94. package/examples/dashboard/src/DevicesPanel.tsx +5 -4
  95. package/examples/dashboard/src/LatencyTest.ts +130 -0
  96. package/examples/dashboard/src/LatencyTestPanel.tsx +92 -0
  97. package/examples/dashboard/src/Main.tsx +191 -73
  98. package/examples/dashboard/src/SettingsManager.ts +67 -0
  99. package/examples/dashboard/src/SettingsScreen.tsx +174 -0
  100. package/examples/dashboard/src/SystemTypeCog/CogStateInfo.ts +14 -8
  101. package/examples/dashboard/src/SystemTypeCog/SystemTypeCog.ts +12 -5
  102. package/examples/dashboard/src/SystemTypeGeneric/StateInfoGeneric.ts +30 -0
  103. package/examples/dashboard/src/SystemTypeGeneric/SystemTypeGeneric.ts +91 -0
  104. package/examples/dashboard/src/SystemTypeMarty/RICStateInfo.ts +23 -4
  105. package/examples/dashboard/src/SystemTypeMarty/RICSystemUtils.ts +1 -1
  106. package/examples/dashboard/src/SystemTypeMarty/SystemTypeMarty.ts +5 -2
  107. package/examples/dashboard/src/index.html +2 -2
  108. package/examples/dashboard/src/index.tsx +0 -2
  109. package/examples/dashboard/src/styles.css +14 -0
  110. package/package.json +7 -15
  111. package/src/RaftAttributeHandler.ts +23 -14
  112. package/src/RaftChannelBLE.native.ts +77 -53
  113. package/src/RaftChannelBLE.web.ts +8 -8
  114. package/src/RaftChannelBLEScanner.native.ts +38 -44
  115. package/src/RaftConnector.ts +5 -5
  116. package/src/RaftCustomAttrHandler.ts +5 -5
  117. package/src/RaftDeviceInfo.ts +3 -0
  118. package/src/RaftDeviceManager.ts +236 -65
  119. package/src/RaftDeviceMgrIF.ts +11 -6
  120. package/src/RaftDeviceStates.ts +7 -3
  121. package/src/RaftMsgHandler.ts +1 -2
  122. package/src/RaftStruct.ts +209 -0
  123. package/src/RaftSysTypeManager.ts +60 -0
  124. package/src/RaftSystemType.ts +3 -0
  125. package/src/RaftTypes.ts +30 -33
  126. package/src/RaftUpdateManager.ts +6 -3
  127. package/src/RaftUtils.ts +14 -4
  128. package/src/main.ts +2 -2
@@ -1,35 +1,40 @@
1
1
  import { DeviceAttributeState, DevicesState, DeviceState } from "./RaftDeviceStates";
2
2
  import { DeviceTypeAction } from "./RaftDeviceInfo";
3
- import { DataType } from 'python-struct';
4
3
  import RaftSystemUtils from "./RaftSystemUtils";
5
4
  import RaftDeviceMgrIF from "./RaftDeviceMgrIF";
6
5
  export declare class DeviceManager implements RaftDeviceMgrIF {
7
6
  private _maxDatapointsToStore;
8
7
  private _minTimeBetweenDeviceTypeInfoRetrievalMs;
9
8
  private _attributeHandler;
10
- private _devicesState;
9
+ _devicesState: DevicesState;
11
10
  private _deviceLastUpdateTime;
12
11
  private _removeDevicesFlag;
13
12
  private _removeDevicesTimeMs;
14
13
  private _systemUtils;
15
- private _callbackNewDevice;
16
- private _callbackNewDeviceAttribute;
17
- private _callbackNewAttributeData;
14
+ private _newDeviceCallbacks;
15
+ private _newDeviceAttributeCallbacks;
16
+ private _newAttributeDataCallbacks;
18
17
  getDevicesState(): DevicesState;
19
18
  getDeviceState(deviceKey: string): DeviceState;
20
19
  private _cachedDeviceTypeRecs;
21
20
  private _cachedDeviceTypePreviousAttemptTimes;
22
21
  constructor();
22
+ setMaxDataPointsToStore(maxDatapointsToStore: number): void;
23
23
  sendCommand(cmd: string): Promise<boolean>;
24
24
  setup(systemUtils: RaftSystemUtils): Promise<boolean>;
25
- onNewDevice(callback: (deviceKey: string, state: DeviceState) => void): void;
26
- onNewDeviceAttribute(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
27
- onNewAttributeData(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
25
+ addNewDeviceCallback(callback: (deviceKey: string, state: DeviceState) => void): void;
26
+ removeNewDeviceCallback(callback: (deviceKey: string, state: DeviceState) => void): void;
27
+ addNewAttributeCallback(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
28
+ removeNewAttributeCallback(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
29
+ addAttributeDataCallback(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
30
+ removeAttributeDataCallback(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
28
31
  setFriendlyName(friendlyName: string): Promise<void>;
29
- handleClientMsgJson(jsonMsg: string): void;
32
+ handleClientMsgBinary(rxMsg: Uint8Array): Promise<void>;
33
+ handleClientMsgJson(jsonMsg: string): Promise<void>;
30
34
  private processStateCallback;
31
35
  private getDeviceTypeInfo;
32
- sendAction(deviceKey: string, action: DeviceTypeAction, data: DataType[]): Promise<boolean>;
33
- sendCompoundAction(deviceKey: string, action: DeviceTypeAction, data: DataType[][]): Promise<boolean>;
36
+ private toHex;
37
+ sendAction(deviceKey: string, action: DeviceTypeAction, data: number[]): Promise<boolean>;
38
+ sendCompoundAction(deviceKey: string, action: DeviceTypeAction, data: number[][]): Promise<boolean>;
34
39
  private hexToBytes;
35
40
  }
@@ -11,9 +11,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
11
11
  exports.DeviceManager = void 0;
12
12
  const tslib_1 = require("tslib");
13
13
  const RaftDeviceStates_1 = require("./RaftDeviceStates");
14
- const python_struct_1 = tslib_1.__importDefault(require("python-struct"));
15
14
  const RaftAttributeHandler_1 = tslib_1.__importDefault(require("./RaftAttributeHandler"));
16
- const buffer_1 = require("buffer");
15
+ const RaftStruct_1 = require("./RaftStruct");
17
16
  class DeviceManager {
18
17
  getDevicesState() {
19
18
  return this._devicesState;
@@ -41,15 +40,22 @@ class DeviceManager {
41
40
  // System utils
42
41
  this._systemUtils = null;
43
42
  // Device callbacks
44
- this._callbackNewDevice = null;
45
- this._callbackNewDeviceAttribute = null;
46
- this._callbackNewAttributeData = null;
43
+ this._newDeviceCallbacks = [];
44
+ this._newDeviceAttributeCallbacks = [];
45
+ this._newAttributeDataCallbacks = [];
47
46
  // Cached device type data
48
47
  this._cachedDeviceTypeRecs = {};
49
48
  // Cached device type previous attempt times
50
49
  this._cachedDeviceTypePreviousAttemptTimes = {};
51
50
  }
52
51
  ////////////////////////////////////////////////////////////////////////////
52
+ // Settings
53
+ ////////////////////////////////////////////////////////////////////////////
54
+ setMaxDataPointsToStore(maxDatapointsToStore) {
55
+ this._maxDatapointsToStore = maxDatapointsToStore;
56
+ // console.log(`DeviceManager setMaxDataPointsToStore ${maxDatapointsToStore}`);
57
+ }
58
+ ////////////////////////////////////////////////////////////////////////////
53
59
  // Send REST commands
54
60
  ////////////////////////////////////////////////////////////////////////////
55
61
  async sendCommand(cmd) {
@@ -59,7 +65,7 @@ class DeviceManager {
59
65
  const msgHandler = (_a = this._systemUtils) === null || _a === void 0 ? void 0 : _a.getMsgHandler();
60
66
  if (msgHandler) {
61
67
  const msgRslt = await msgHandler.sendRICRESTURL(cmd);
62
- return msgRslt.isOk();
68
+ return msgRslt.rslt === "ok";
63
69
  }
64
70
  return false;
65
71
  }
@@ -77,20 +83,31 @@ class DeviceManager {
77
83
  return true;
78
84
  }
79
85
  ////////////////////////////////////////////////////////////////////////////
80
- // Callbacks
86
+ // Register callbacks
81
87
  ////////////////////////////////////////////////////////////////////////////
82
- // Register state change callbacks
83
- onNewDevice(callback) {
84
- // Save the callback
85
- this._callbackNewDevice = callback;
88
+ addNewDeviceCallback(callback) {
89
+ if (!this._newDeviceCallbacks.includes(callback)) {
90
+ this._newDeviceCallbacks.push(callback);
91
+ }
86
92
  }
87
- onNewDeviceAttribute(callback) {
88
- // Save the callback
89
- this._callbackNewDeviceAttribute = callback;
93
+ removeNewDeviceCallback(callback) {
94
+ this._newDeviceCallbacks = this._newDeviceCallbacks.filter((cb) => cb !== callback);
90
95
  }
91
- onNewAttributeData(callback) {
92
- // Save the callback
93
- this._callbackNewAttributeData = callback;
96
+ addNewAttributeCallback(callback) {
97
+ if (!this._newDeviceAttributeCallbacks.includes(callback)) {
98
+ this._newDeviceAttributeCallbacks.push(callback);
99
+ }
100
+ }
101
+ removeNewAttributeCallback(callback) {
102
+ this._newDeviceAttributeCallbacks = this._newDeviceAttributeCallbacks.filter((cb) => cb !== callback);
103
+ }
104
+ addAttributeDataCallback(callback) {
105
+ if (!this._newAttributeDataCallbacks.includes(callback)) {
106
+ this._newAttributeDataCallbacks.push(callback);
107
+ }
108
+ }
109
+ removeAttributeDataCallback(callback) {
110
+ this._newAttributeDataCallbacks = this._newAttributeDataCallbacks.filter((cb) => cb !== callback);
94
111
  }
95
112
  ////////////////////////////////////////////////////////////////////////////
96
113
  // Set the friendly name for the device
@@ -101,11 +118,120 @@ class DeviceManager {
101
118
  await ((_a = this._systemUtils) === null || _a === void 0 ? void 0 : _a.setRaftName(friendlyName));
102
119
  }
103
120
  ////////////////////////////////////////////////////////////////////////////
121
+ // Handle device message binary
122
+ ////////////////////////////////////////////////////////////////////////////
123
+ async handleClientMsgBinary(rxMsg) {
124
+ // console.log(`DeviceManager client1 msg ${RaftUtils.bufferToHex(rxMsg)}`);
125
+ // Example messages
126
+ // 0080 0015 81 0000006a 0004 53b7 feff00000100081857079314 0011 80 00000000 0011 53b2 075106e400d60054 0010 80 00000000 0012 5231 000d0000010e01
127
+ // 0080 0011 80 00000000 0011 53f1 075806e900d70052 0010 80 00000000 0012 5231 000d0000010e01
128
+ // First two bytes of each message are the message type (0080)
129
+ // There are then a series of sections each of which is the data for a device
130
+ // First two bytes of each section is the section length (big endian) not including the length bytes
131
+ // Next byte is the connection mode (0 for direct connect, 1+ for bus number) and the MSB of this byte is 1 if the device is online
132
+ // Next is the device address (4 bytes big endian)
133
+ // Next is the device type index (2 bytes big endian)
134
+ // Finally the device data which can be one or more groups of attributes defined by the schema
135
+ // Iterate through sections
136
+ let msgPos = 2;
137
+ while (msgPos < rxMsg.length) {
138
+ // Check length
139
+ if (rxMsg.length < msgPos + 11) {
140
+ console.warn(`DeviceManager handleClientMsgBinary invalid length ${rxMsg.length}`);
141
+ return;
142
+ }
143
+ // Get the length of the section
144
+ const sectionLen = (rxMsg[msgPos] << 8) + rxMsg[msgPos + 1];
145
+ if (sectionLen > rxMsg.length) {
146
+ console.warn(`DeviceManager handleClientMsgBinary invalid msgPos ${msgPos} msgLen ${sectionLen} rxMsgLen ${rxMsg.length}`);
147
+ return;
148
+ }
149
+ // Extract message elements
150
+ const busNum = rxMsg[msgPos + 2] & 0x7f;
151
+ const isOnline = (rxMsg[msgPos + 2] & 0x80) !== 0;
152
+ const devAddr = (rxMsg[msgPos + 3] << 24) + (rxMsg[msgPos + 4] << 16) + (rxMsg[msgPos + 5] << 8) + rxMsg[msgPos + 6];
153
+ const devTypeIdx = (rxMsg[msgPos + 7] << 8) + rxMsg[msgPos + 8];
154
+ let attrGroupPos = msgPos + 9;
155
+ // Debug
156
+ // console.log(`DeviceManager overallLen ${rxMsg.length} sectionPos ${msgPos} sectionLen ${sectionLen} ${RaftUtils.bufferToHex(rxMsg.slice(msgPos, msgPos + sectionLen))}`);
157
+ // console.log(`DeviceManager connMode ${busNum} isOnline ${isOnline} devAddr ${devAddr} devTypeIdx ${devTypeIdx} attrGroupDataLen ${sectionLen - 9}`);
158
+ // Device key
159
+ const deviceKey = (0, RaftDeviceStates_1.getDeviceKey)(busNum.toString(), devAddr.toString(), devTypeIdx.toString());
160
+ // Update the last update time
161
+ this._deviceLastUpdateTime[deviceKey] = Date.now();
162
+ // Check if a device state already exists
163
+ if (!(deviceKey in this._devicesState) || (this._devicesState[deviceKey].deviceTypeInfo === undefined)) {
164
+ // Get the device type info
165
+ const deviceTypeInfo = await this.getDeviceTypeInfo(busNum.toString(), devAddr.toString(), devTypeIdx.toString());
166
+ // console.log(`DeviceManager deviceTypeInfo ${JSON.stringify(deviceTypeInfo)}`);
167
+ // Check if device record exists
168
+ if (deviceKey in this._devicesState) {
169
+ if (deviceTypeInfo !== undefined) {
170
+ this._devicesState[deviceKey].deviceTypeInfo = deviceTypeInfo;
171
+ this._devicesState[deviceKey].deviceType = deviceTypeInfo.name || "";
172
+ this._devicesState[deviceKey].busName = busNum.toString();
173
+ this._devicesState[deviceKey].deviceAddress = devAddr.toString();
174
+ }
175
+ }
176
+ else {
177
+ // Create device record - device type info may be undefined
178
+ this._devicesState[deviceKey] = {
179
+ deviceTypeInfo: deviceTypeInfo,
180
+ deviceTimeline: {
181
+ timestampsUs: [],
182
+ lastReportTimestampUs: 0,
183
+ reportTimestampOffsetUs: 0
184
+ },
185
+ deviceAttributes: {},
186
+ deviceIsNew: true,
187
+ stateChanged: false,
188
+ isOnline: true,
189
+ deviceAddress: devAddr.toString(),
190
+ deviceType: (deviceTypeInfo === null || deviceTypeInfo === void 0 ? void 0 : deviceTypeInfo.name) || "",
191
+ busName: busNum.toString()
192
+ };
193
+ }
194
+ }
195
+ // Get device state
196
+ const deviceState = this._devicesState[deviceKey];
197
+ deviceState.isOnline = isOnline;
198
+ // Check if device type info is available
199
+ if (deviceState.deviceTypeInfo && deviceState.deviceTypeInfo.resp) {
200
+ // Iterate over attributes in the group
201
+ const pollRespMetadata = deviceState.deviceTypeInfo.resp;
202
+ // Iterate over attribute groups
203
+ while (attrGroupPos < msgPos + sectionLen + 2) {
204
+ const curTimelineLen = deviceState.deviceTimeline.timestampsUs.length;
205
+ const newMsgBufIdx = this._attributeHandler.processMsgAttrGroup(rxMsg, attrGroupPos, deviceState.deviceTimeline, pollRespMetadata, deviceState.deviceAttributes, this._maxDatapointsToStore);
206
+ if (newMsgBufIdx < 0)
207
+ break;
208
+ attrGroupPos = newMsgBufIdx;
209
+ if (deviceState.deviceTimeline.timestampsUs.length !== curTimelineLen) {
210
+ deviceState.stateChanged = true;
211
+ }
212
+ }
213
+ }
214
+ // Move to next message
215
+ msgPos += sectionLen + 2;
216
+ }
217
+ // Check for devices that have not been updated for a while
218
+ if (this._removeDevicesFlag) {
219
+ const nowTime = Date.now();
220
+ Object.entries(this._deviceLastUpdateTime).forEach(([deviceKey, lastUpdateTime]) => {
221
+ if ((nowTime - lastUpdateTime) > this._removeDevicesTimeMs) {
222
+ delete this._devicesState[deviceKey];
223
+ }
224
+ });
225
+ }
226
+ // Process the callback
227
+ this.processStateCallback();
228
+ }
229
+ ////////////////////////////////////////////////////////////////////////////
104
230
  // Handle device message JSON
105
231
  ////////////////////////////////////////////////////////////////////////////
106
- handleClientMsgJson(jsonMsg) {
107
- let data = JSON.parse(jsonMsg);
108
- // console.log(`DeviceManager websocket message ${JSON.stringify(data)}`);
232
+ async handleClientMsgJson(jsonMsg) {
233
+ const data = JSON.parse(jsonMsg);
234
+ // console.log(`DeviceManager client msg ${JSON.stringify(data)}`);
109
235
  // Iterate over the buses
110
236
  Object.entries(data).forEach(([busName, devices]) => {
111
237
  // Check for bus status info
@@ -119,26 +245,30 @@ class DeviceManager {
119
245
  if (devAddr.startsWith("_")) {
120
246
  return;
121
247
  }
248
+ // Device type name
249
+ let deviceTypeName = "";
250
+ if (attrGroups && typeof attrGroups === 'object' && "_t" in attrGroups && typeof attrGroups._t === "string") {
251
+ deviceTypeName = attrGroups._t || "";
252
+ }
253
+ else {
254
+ console.warn(`DeviceManager missing device type attrGroups ${JSON.stringify(attrGroups)}`);
255
+ return;
256
+ }
122
257
  // Device key
123
- const deviceKey = (0, RaftDeviceStates_1.getDeviceKey)(busName, devAddr);
258
+ const deviceKey = (0, RaftDeviceStates_1.getDeviceKey)(busName, devAddr, deviceTypeName);
124
259
  // Update the last update time
125
260
  this._deviceLastUpdateTime[deviceKey] = Date.now();
126
261
  // Check if a device state already exists
127
262
  if (!(deviceKey in this._devicesState) || (this._devicesState[deviceKey].deviceTypeInfo === undefined)) {
128
- let deviceTypeName = "";
129
- if (attrGroups && typeof attrGroups === 'object' && "_t" in attrGroups && typeof attrGroups._t === "string") {
130
- deviceTypeName = attrGroups._t || "";
131
- }
132
- else {
133
- console.warn(`DeviceManager missing device type attrGroups ${JSON.stringify(attrGroups)}`);
134
- return;
135
- }
136
263
  // Get the device type info
137
264
  const deviceTypeInfo = await this.getDeviceTypeInfo(busName, devAddr, deviceTypeName);
138
265
  // Check if device record exists
139
266
  if (deviceKey in this._devicesState) {
140
267
  if (deviceTypeInfo !== undefined) {
141
268
  this._devicesState[deviceKey].deviceTypeInfo = deviceTypeInfo;
269
+ this._devicesState[deviceKey].deviceType = deviceTypeName;
270
+ this._devicesState[deviceKey].deviceAddress = devAddr;
271
+ this._devicesState[deviceKey].busName = busName;
142
272
  }
143
273
  }
144
274
  else {
@@ -153,7 +283,10 @@ class DeviceManager {
153
283
  deviceAttributes: {},
154
284
  deviceIsNew: true,
155
285
  stateChanged: false,
156
- isOnline: true
286
+ isOnline: true,
287
+ deviceAddress: devAddr,
288
+ deviceType: deviceTypeName,
289
+ busName: busName
157
290
  };
158
291
  }
159
292
  }
@@ -179,8 +312,6 @@ class DeviceManager {
179
312
  }
180
313
  // Convert the hex string to an arraybuffer by converting each pair of hex chars to a byte
181
314
  const msgBytes = this.hexToBytes(msgHexStr);
182
- // Convert to a Buffer
183
- const msgBuffer = buffer_1.Buffer.from(msgBytes);
184
315
  // Work through the message which may contain multiple data instances
185
316
  let msgBufIdx = 0;
186
317
  // Iterate over attributes in the group
@@ -188,7 +319,7 @@ class DeviceManager {
188
319
  // Loop
189
320
  while (msgBufIdx < msgBytes.length) {
190
321
  const curTimelineLen = deviceState.deviceTimeline.timestampsUs.length;
191
- const newMsgBufIdx = this._attributeHandler.processMsgAttrGroup(msgBuffer, msgBufIdx, deviceState.deviceTimeline, pollRespMetadata, deviceState.deviceAttributes, this._maxDatapointsToStore);
322
+ const newMsgBufIdx = this._attributeHandler.processMsgAttrGroup(msgBytes, msgBufIdx, deviceState.deviceTimeline, pollRespMetadata, deviceState.deviceAttributes, this._maxDatapointsToStore);
192
323
  if (newMsgBufIdx < 0)
193
324
  break;
194
325
  msgBufIdx = newMsgBufIdx;
@@ -219,23 +350,17 @@ class DeviceManager {
219
350
  Object.entries(this._devicesState).forEach(([deviceKey, deviceState]) => {
220
351
  // Check if device record is new
221
352
  if (deviceState.deviceIsNew) {
222
- if (this._callbackNewDevice) {
223
- this._callbackNewDevice(deviceKey, deviceState);
224
- }
353
+ this._newDeviceCallbacks.forEach((cb) => cb(deviceKey, deviceState));
225
354
  deviceState.deviceIsNew = false;
226
355
  }
227
356
  // Iterate over the attributes
228
- Object.entries(deviceState.deviceAttributes).forEach(([_attrKey, attrState]) => {
357
+ Object.entries(deviceState.deviceAttributes).forEach(([, attrState]) => {
229
358
  if (attrState.newAttribute) {
230
- if (this._callbackNewDeviceAttribute) {
231
- this._callbackNewDeviceAttribute(deviceKey, attrState);
232
- }
359
+ this._newDeviceAttributeCallbacks.forEach((cb) => cb(deviceKey, attrState));
233
360
  attrState.newAttribute = false;
234
361
  }
235
362
  if (attrState.newData) {
236
- if (this._callbackNewAttributeData) {
237
- this._callbackNewAttributeData(deviceKey, attrState);
238
- }
363
+ this._newAttributeDataCallbacks.forEach((cb) => cb(deviceKey, attrState));
239
364
  attrState.newData = false;
240
365
  }
241
366
  });
@@ -281,15 +406,36 @@ class DeviceManager {
281
406
  ////////////////////////////////////////////////////////////////////////////
282
407
  // Send action to device
283
408
  ////////////////////////////////////////////////////////////////////////////
409
+ toHex(data) {
410
+ return Array.from(data)
411
+ .map(byte => byte.toString(16).padStart(2, "0"))
412
+ .join("");
413
+ }
284
414
  async sendAction(deviceKey, action, data) {
285
415
  // console.log(`DeviceManager sendAction ${deviceKey} action name ${action.n} value ${value} prefix ${action.w}`);
286
416
  var _a;
287
- // Form the write bytes
288
- let writeBytes = action.t ? python_struct_1.default.pack(action.t, data) : buffer_1.Buffer.from([]);
417
+ let writeBytes;
418
+ // Check for one data item
419
+ if (data.length === 1) {
420
+ let value = data[0];
421
+ // Check for conversion
422
+ if (action.sub !== undefined) {
423
+ value = value - action.sub;
424
+ }
425
+ if (action.mul !== undefined) {
426
+ value = value * action.mul;
427
+ }
428
+ // Form the write bytes
429
+ writeBytes = action.t ? (0, RaftStruct_1.structPack)(action.t, [value]) : new Uint8Array(0);
430
+ }
431
+ else {
432
+ // Form the write bytes which may have multiple data items
433
+ writeBytes = action.t ? (0, RaftStruct_1.structPack)(action.t, data) : new Uint8Array(0);
434
+ }
289
435
  // Convert to hex string
290
- let writeHexStr = buffer_1.Buffer.from(writeBytes).toString('hex');
291
- // Add prefix
292
- writeHexStr = action.w + writeHexStr;
436
+ let writeHexStr = this.toHex(writeBytes);
437
+ // Add prefix and postfix
438
+ writeHexStr = (action.w ? action.w : "") + writeHexStr + (action.wz ? action.wz : "");
293
439
  // Separate the bus and address in the deviceKey (_ char)
294
440
  const devBus = deviceKey.split("_")[0];
295
441
  const devAddr = deviceKey.split("_")[1];
@@ -302,7 +448,7 @@ class DeviceManager {
302
448
  const msgHandler = (_a = this._systemUtils) === null || _a === void 0 ? void 0 : _a.getMsgHandler();
303
449
  if (msgHandler) {
304
450
  const msgRslt = await msgHandler.sendRICRESTURL(cmd);
305
- return msgRslt.isOk();
451
+ return msgRslt.rslt === "ok";
306
452
  }
307
453
  return false;
308
454
  }
@@ -331,7 +477,7 @@ class DeviceManager {
331
477
  let allOk = true;
332
478
  for (let dataIdx = 0; dataIdx < data.length; dataIdx++) {
333
479
  // Create the data to write by prepending the index to the data for this index
334
- let dataToWrite = [dataIdx].concat(data[dataIdx]);
480
+ const dataToWrite = [dataIdx].concat(data[dataIdx]);
335
481
  // Use sendAction to send this
336
482
  allOk = allOk && await this.sendAction(deviceKey, action, dataToWrite);
337
483
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RaftDeviceManager.js","sourceRoot":"","sources":["../../src/RaftDeviceManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RaftDeviceManager.js","sourceRoot":"","sources":["../../src/RaftDeviceManager.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,15 @@
1
- import { DataType } from "python-struct";
2
1
  import { DeviceTypeAction } from "./RaftDeviceInfo";
3
2
  import { DeviceAttributeState, DevicesState, DeviceState } from "./RaftDeviceStates";
4
3
  export default interface RaftDeviceMgrIF {
5
4
  getDevicesState(): DevicesState;
6
5
  getDeviceState(deviceKey: string): DeviceState;
7
- onNewDevice(callback: (deviceKey: string, state: DeviceState) => void): void;
8
- onNewDeviceAttribute(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
9
- onNewAttributeData(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
10
- sendAction(deviceKey: string, action: DeviceTypeAction, data: DataType[]): void;
11
- sendCompoundAction(deviceKey: string, action: DeviceTypeAction, data: DataType[][]): void;
6
+ setMaxDataPointsToStore(maxDataPointsToStore: number): void;
7
+ addNewDeviceCallback(callback: (deviceKey: string, state: DeviceState) => void): void;
8
+ removeNewDeviceCallback(callback: (deviceKey: string, state: DeviceState) => void): void;
9
+ addNewAttributeCallback(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
10
+ removeNewAttributeCallback(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
11
+ addAttributeDataCallback(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
12
+ removeAttributeDataCallback(callback: (deviceKey: string, attrState: DeviceAttributeState) => void): void;
13
+ sendAction(deviceKey: string, action: DeviceTypeAction, data: number[]): void;
14
+ sendCompoundAction(deviceKey: string, action: DeviceTypeAction, data: number[][]): void;
12
15
  }
@@ -4,6 +4,7 @@ export interface DeviceAttributeState {
4
4
  name: string;
5
5
  newAttribute: boolean;
6
6
  newData: boolean;
7
+ numNewValues: number;
7
8
  values: number[];
8
9
  units: string;
9
10
  range: number[];
@@ -26,8 +27,11 @@ export interface DeviceState {
26
27
  deviceIsNew: boolean;
27
28
  stateChanged: boolean;
28
29
  isOnline: boolean;
30
+ deviceAddress: string;
31
+ deviceType: string;
32
+ busName: string;
29
33
  }
30
34
  export declare class DevicesState {
31
35
  [deviceKey: string]: DeviceState;
32
36
  }
33
- export declare function getDeviceKey(busName: string, devAddr: string): string;
37
+ export declare function getDeviceKey(busName: string, devAddr: string, devType: string): string;
@@ -31,7 +31,7 @@ function deviceAttrGetLatestFormatted(attrState) {
31
31
  decimalPlaces = parseInt(parts[1], 10);
32
32
  }
33
33
  const formattedNumber = value.toFixed(decimalPlaces);
34
- let fieldWidth = parseInt(parts[0], 10);
34
+ const fieldWidth = parseInt(parts[0], 10);
35
35
  return fieldWidth ? formattedNumber.padStart(fieldWidth, ' ') : formattedNumber;
36
36
  }
37
37
  else if (format.endsWith('x')) {
@@ -54,7 +54,7 @@ class DevicesState {
54
54
  }
55
55
  exports.DevicesState = DevicesState;
56
56
  // Add the getDeviceKey method to generate a composite key
57
- function getDeviceKey(busName, devAddr) {
58
- return `${busName}_${devAddr}`;
57
+ function getDeviceKey(busName, devAddr, devType) {
58
+ return `${busName}_${devAddr}_${devType}`;
59
59
  }
60
60
  //# sourceMappingURL=RaftDeviceStates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RaftDeviceStates.js","sourceRoot":"","sources":["../../src/RaftDeviceStates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RaftDeviceStates.js","sourceRoot":"","sources":["../../src/RaftDeviceStates.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,7 @@ export default class RaftMsgHandler {
44
44
  sendRICRESTBytes<T>(cmdBytes: Uint8Array, ricRESTElemCode: RICRESTElemCode, withResponse: boolean, bridgeID?: number | undefined, msgTimeoutMs?: number | undefined): Promise<T>;
45
45
  sendMsgAndWaitForReply<T>(msgPayload: Uint8Array, msgDirection: RaftCommsMsgTypeCode, msgProtocol: RaftCommsMsgProtocol, withResponse: boolean, bridgeID: number | undefined, msgTimeoutMs: number | undefined): Promise<T>;
46
46
  frameCommsMsg(msgPayload: Uint8Array, msgDirection: RaftCommsMsgTypeCode, msgProtocol: RaftCommsMsgProtocol, isNumbered: boolean): Uint8Array;
47
- bridgeCommsMsg(msgBuf: Uint8Array, bridgeID: number): Uint8Array;
47
+ bridgeCommsMsg(msgBuf: Uint8Array, bridgeID: number): Uint8Array<ArrayBuffer>;
48
48
  msgTrackingTxCmdMsg<T>(msgFrame: Uint8Array, withResponse: boolean, bridgeID: number | undefined, msgTimeoutMs: number | undefined, resolve: (arg: T) => void, reject: (reason: Error) => void): void;
49
49
  msgTrackingRxRespMsg(msgNum: number, msgRsltCode: RaftMsgResultCode, msgRsltJsonObj: object): void;
50
50
  _msgCompleted(msgNum: number, msgRsltCode: RaftMsgResultCode, msgRsltObj: object | null): void;
@@ -327,7 +327,6 @@ class RaftMsgHandler {
327
327
  // if (msgRsltCode === RaftMsgResultCode.MESSAGE_RESULT_OK) {
328
328
  const resolve = this._msgTrackInfos[msgNum].resolve;
329
329
  if (resolve) {
330
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
331
330
  RaftLog_1.default.verbose(`_msgCompleted msgNum ${msgNum} result ${msgRsltCode.toString()} ${JSON.stringify(msgRsltObj)}`);
332
331
  resolve(msgRsltObj);
333
332
  }
@@ -413,7 +412,7 @@ class RaftMsgHandler {
413
412
  RaftProtocolDefs_1.RaftCommsMsgProtocol.MSG_PROTOCOL_RICREST;
414
413
  // RICREST protocol
415
414
  msgBuf[msgBufPos++] = RaftProtocolDefs_1.RICRESTElemCode.RICREST_ELEM_CODE_FILEBLOCK;
416
- // Buffer header
415
+ // Header
417
416
  msgBuf[msgBufPos++] = streamID & 0xff;
418
417
  msgBuf[msgBufPos++] = (blockStart >> 16) & 0xff;
419
418
  msgBuf[msgBufPos++] = (blockStart >> 8) & 0xff;