zigbee-herdsman 0.14.38 → 0.14.39

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 (44) hide show
  1. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
  2. package/dist/adapter/ezsp/adapter/ezspAdapter.js +63 -40
  3. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
  4. package/dist/adapter/ezsp/driver/commands.d.ts +29 -4
  5. package/dist/adapter/ezsp/driver/commands.d.ts.map +1 -1
  6. package/dist/adapter/ezsp/driver/commands.js +2294 -687
  7. package/dist/adapter/ezsp/driver/commands.js.map +1 -1
  8. package/dist/adapter/ezsp/driver/consts.d.ts +11 -0
  9. package/dist/adapter/ezsp/driver/consts.d.ts.map +1 -0
  10. package/dist/adapter/ezsp/driver/consts.js +14 -0
  11. package/dist/adapter/ezsp/driver/consts.js.map +1 -0
  12. package/dist/adapter/ezsp/driver/driver.d.ts +23 -10
  13. package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -1
  14. package/dist/adapter/ezsp/driver/driver.js +113 -77
  15. package/dist/adapter/ezsp/driver/driver.js.map +1 -1
  16. package/dist/adapter/ezsp/driver/ezsp.d.ts +49 -21
  17. package/dist/adapter/ezsp/driver/ezsp.d.ts.map +1 -1
  18. package/dist/adapter/ezsp/driver/ezsp.js +265 -138
  19. package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
  20. package/dist/adapter/ezsp/driver/index.d.ts +2 -2
  21. package/dist/adapter/ezsp/driver/index.d.ts.map +1 -1
  22. package/dist/adapter/ezsp/driver/index.js.map +1 -1
  23. package/dist/adapter/ezsp/driver/multicast.js +1 -1
  24. package/dist/adapter/ezsp/driver/multicast.js.map +1 -1
  25. package/dist/adapter/ezsp/driver/parser.d.ts +12 -0
  26. package/dist/adapter/ezsp/driver/parser.d.ts.map +1 -0
  27. package/dist/adapter/ezsp/driver/parser.js +106 -0
  28. package/dist/adapter/ezsp/driver/parser.js.map +1 -0
  29. package/dist/adapter/ezsp/driver/types/struct.d.ts +13 -0
  30. package/dist/adapter/ezsp/driver/types/struct.d.ts.map +1 -1
  31. package/dist/adapter/ezsp/driver/types/struct.js +16 -1
  32. package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
  33. package/dist/adapter/ezsp/driver/uart.d.ts +0 -3
  34. package/dist/adapter/ezsp/driver/uart.d.ts.map +1 -1
  35. package/dist/adapter/ezsp/driver/uart.js +49 -194
  36. package/dist/adapter/ezsp/driver/uart.js.map +1 -1
  37. package/dist/adapter/ezsp/driver/utils/crc16ccitt.d.ts.map +1 -1
  38. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js +2 -8
  39. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js.map +1 -1
  40. package/dist/adapter/ezsp/driver/writer.d.ts +13 -0
  41. package/dist/adapter/ezsp/driver/writer.d.ts.map +1 -0
  42. package/dist/adapter/ezsp/driver/writer.js +84 -0
  43. package/dist/adapter/ezsp/driver/writer.js.map +1 -0
  44. package/package.json +1 -1
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.Ezsp = void 0;
29
+ exports.Ezsp = exports.EZSPZDOResponseFrameData = exports.EZSPZDORequestFrameData = exports.EZSPFrameData = void 0;
30
30
  /* istanbul ignore file */
31
31
  /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
32
32
  const t = __importStar(require("./types"));
@@ -37,8 +37,8 @@ const events_1 = require("events");
37
37
  const utils_1 = require("../../../utils");
38
38
  const debug_1 = __importDefault(require("debug"));
39
39
  const debug = {
40
- error: (0, debug_1.default)('zigbee-herdsman:adapter:ezsp:error'),
41
- log: (0, debug_1.default)('zigbee-herdsman:adapter:ezsp:log'),
40
+ error: (0, debug_1.default)('zigbee-herdsman:adapter:ezsp:erro'),
41
+ log: (0, debug_1.default)('zigbee-herdsman:adapter:ezsp:ezsp'),
42
42
  };
43
43
  const MTOR_MIN_INTERVAL = 10;
44
44
  const MTOR_MAX_INTERVAL = 90;
@@ -50,18 +50,156 @@ const WATCHDOG_WAKE_PERIOD = 10; // in sec
50
50
  //const EZSP_COUNTER_CLEAR_INTERVAL = 180; // Clear counters every n * WATCHDOG_WAKE_PERIOD
51
51
  const EZSP_DEFAULT_RADIUS = 0;
52
52
  const EZSP_MULTICAST_NON_MEMBER_RADIUS = 3;
53
+ class EZSPFrameData {
54
+ constructor(key, isRequest, params) {
55
+ if (typeof key == 'string') {
56
+ this._cls_ = key;
57
+ this._id_ = commands_1.FRAMES[this._cls_].ID;
58
+ }
59
+ else {
60
+ this._id_ = key;
61
+ this._cls_ = commands_1.FRAME_NAME_BY_ID[key];
62
+ }
63
+ this._isRequest_ = isRequest;
64
+ const frame = EZSPFrameData.getFrame(key);
65
+ const frameDesc = (this._isRequest_) ? frame.request || {} : frame.response || {};
66
+ if (Buffer.isBuffer(params)) {
67
+ let data = params;
68
+ for (const prop of Object.getOwnPropertyNames(frameDesc)) {
69
+ [this[prop], data] = frameDesc[prop].deserialize(frameDesc[prop], data);
70
+ }
71
+ }
72
+ else {
73
+ for (const prop of Object.getOwnPropertyNames(frameDesc)) {
74
+ this[prop] = params[prop];
75
+ }
76
+ }
77
+ }
78
+ static getFrame(key) {
79
+ const name = (typeof key == 'string') ? key : commands_1.FRAME_NAME_BY_ID[key];
80
+ const frameDesc = commands_1.FRAMES[name];
81
+ if (!frameDesc)
82
+ throw new Error(`Unrecognized frame from FrameID ${key}`);
83
+ return frameDesc;
84
+ }
85
+ serialize() {
86
+ const frame = EZSPFrameData.getFrame(this._cls_);
87
+ const frameDesc = (this._isRequest_) ? frame.request || {} : frame.response || {};
88
+ const result = [];
89
+ for (const prop of Object.getOwnPropertyNames(frameDesc)) {
90
+ result.push(frameDesc[prop].serialize(frameDesc[prop], this[prop]));
91
+ }
92
+ return Buffer.concat(result);
93
+ }
94
+ get name() {
95
+ return this._cls_;
96
+ }
97
+ get id() {
98
+ return this._id_;
99
+ }
100
+ }
101
+ exports.EZSPFrameData = EZSPFrameData;
102
+ class EZSPZDORequestFrameData {
103
+ constructor(key, isRequest, params) {
104
+ if (typeof key == 'string') {
105
+ this._cls_ = key;
106
+ this._id_ = commands_1.ZDOREQUESTS[this._cls_].ID;
107
+ }
108
+ else {
109
+ this._id_ = key;
110
+ this._cls_ = commands_1.ZDOREQUEST_NAME_BY_ID[key];
111
+ }
112
+ this._isRequest_ = isRequest;
113
+ const frame = EZSPZDORequestFrameData.getFrame(key);
114
+ const frameDesc = (this._isRequest_) ? frame.request || {} : frame.response || {};
115
+ if (Buffer.isBuffer(params)) {
116
+ let data = params;
117
+ for (const prop of Object.getOwnPropertyNames(frameDesc)) {
118
+ [this[prop], data] = frameDesc[prop].deserialize(frameDesc[prop], data);
119
+ }
120
+ }
121
+ else {
122
+ for (const prop of Object.getOwnPropertyNames(frameDesc)) {
123
+ this[prop] = params[prop];
124
+ }
125
+ }
126
+ }
127
+ static getFrame(key) {
128
+ const name = (typeof key == 'string') ? key : commands_1.ZDOREQUEST_NAME_BY_ID[key];
129
+ const frameDesc = commands_1.ZDOREQUESTS[name];
130
+ if (!frameDesc)
131
+ throw new Error(`Unrecognized ZDOFrame from FrameID ${key}`);
132
+ return frameDesc;
133
+ }
134
+ serialize() {
135
+ const frame = EZSPZDORequestFrameData.getFrame(this._cls_);
136
+ const frameDesc = (this._isRequest_) ? frame.request || {} : frame.response || {};
137
+ const result = [];
138
+ for (const prop of Object.getOwnPropertyNames(frameDesc)) {
139
+ result.push(frameDesc[prop].serialize(frameDesc[prop], this[prop]));
140
+ }
141
+ return Buffer.concat(result);
142
+ }
143
+ get name() {
144
+ return this._cls_;
145
+ }
146
+ get id() {
147
+ return this._id_;
148
+ }
149
+ }
150
+ exports.EZSPZDORequestFrameData = EZSPZDORequestFrameData;
151
+ class EZSPZDOResponseFrameData {
152
+ constructor(key, params) {
153
+ if (typeof key == 'string') {
154
+ this._cls_ = key;
155
+ this._id_ = commands_1.ZDORESPONSES[this._cls_].ID;
156
+ }
157
+ else {
158
+ this._id_ = key;
159
+ this._cls_ = commands_1.ZDORESPONSE_NAME_BY_ID[key];
160
+ }
161
+ const frameDesc = EZSPZDOResponseFrameData.getFrame(key);
162
+ if (Buffer.isBuffer(params)) {
163
+ let data = params;
164
+ for (const prop of Object.getOwnPropertyNames(frameDesc)) {
165
+ [this[prop], data] = frameDesc[prop].deserialize(frameDesc[prop], data);
166
+ }
167
+ }
168
+ else {
169
+ for (const prop of Object.getOwnPropertyNames(frameDesc)) {
170
+ this[prop] = params[prop];
171
+ }
172
+ }
173
+ }
174
+ static getFrame(key) {
175
+ const name = (typeof key == 'string') ? key : commands_1.ZDORESPONSE_NAME_BY_ID[key];
176
+ const frameDesc = commands_1.ZDORESPONSES[name];
177
+ if (!frameDesc)
178
+ throw new Error(`Unrecognized ZDOFrame from FrameID ${key}`);
179
+ return frameDesc.params;
180
+ }
181
+ serialize() {
182
+ const frameDesc = EZSPZDOResponseFrameData.getFrame(this._cls_);
183
+ const result = [];
184
+ for (const prop of Object.getOwnPropertyNames(frameDesc)) {
185
+ result.push(frameDesc[prop].serialize(frameDesc[prop], this[prop]));
186
+ }
187
+ return Buffer.concat(result);
188
+ }
189
+ get name() {
190
+ return this._cls_;
191
+ }
192
+ get id() {
193
+ return this._id_;
194
+ }
195
+ }
196
+ exports.EZSPZDOResponseFrameData = EZSPZDOResponseFrameData;
53
197
  class Ezsp extends events_1.EventEmitter {
54
198
  constructor() {
55
199
  super();
56
200
  this.ezspV = 4;
57
201
  this.cmdSeq = 0; // command sequence
58
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
59
- this.COMMANDS_BY_ID = new Map();
60
202
  this.failures = 0;
61
- for (const name in commands_1.COMMANDS) {
62
- const details = commands_1.COMMANDS[name];
63
- this.COMMANDS_BY_ID.set(details[0], { name, inArgs: details[1], outArgs: details[2] });
64
- }
65
203
  this.queue = new utils_1.Queue();
66
204
  this.waitress = new utils_1.Waitress(this.waitressValidator, this.waitressTimeoutFormatter);
67
205
  this.serialDriver = new uart_1.SerialDriver();
@@ -76,6 +214,9 @@ class Ezsp extends events_1.EventEmitter {
76
214
  clearTimeout(this.watchdogTimer);
77
215
  await this.serialDriver.close();
78
216
  }
217
+ getFrameDesc(name) {
218
+ return (name in commands_1.FRAMES) ? commands_1.FRAMES[name] : null;
219
+ }
79
220
  onFrameReceived(data) {
80
221
  /*Handle a received EZSP frame
81
222
 
@@ -83,8 +224,8 @@ class Ezsp extends events_1.EventEmitter {
83
224
  just have EZSP application stuff here, with all escaping/stuffing and
84
225
  data randomization removed.
85
226
  */
86
- debug.log(`<=== Frame: ${data.toString('hex')}`);
87
- let frame_id, result, sequence;
227
+ debug.log(`<== Frame: ${data.toString('hex')}`);
228
+ let frame_id, sequence;
88
229
  if ((this.ezspV < 8)) {
89
230
  [sequence, frame_id, data] = [data[0], data[2], data.slice(3)];
90
231
  }
@@ -99,117 +240,106 @@ class Ezsp extends events_1.EventEmitter {
99
240
  data = data.slice(2);
100
241
  }
101
242
  }
102
- const cmd = this.COMMANDS_BY_ID.get(frame_id);
103
- if (!cmd)
104
- throw new Error('Unrecognized command from FrameID' + frame_id);
105
- const frameName = cmd.name;
106
- debug.log("<=== Application frame %s (%s) received: %s", frame_id, frameName, data.toString('hex'));
107
- const schema = cmd.outArgs;
108
- [result, data] = t.deserialize(data, schema);
109
- debug.log(`<=== Application frame ${frame_id} (${frameName}) parsed: ${result}`);
243
+ const frm = new EZSPFrameData(frame_id, false, data);
244
+ debug.log(`<== 0x${frame_id.toString(16)}: ${JSON.stringify(frm)}`);
110
245
  const handled = this.waitress.resolve({
111
246
  frameId: frame_id,
112
- frameName: frameName,
247
+ frameName: frm.name,
113
248
  sequence: sequence,
114
- payload: result
249
+ payload: frm
115
250
  });
116
251
  if (!handled)
117
- this.emit('frame', frameName, ...result);
252
+ this.emit('frame', frm.name, frm);
118
253
  if ((frame_id === 0)) {
119
- this.ezspV = result[0];
254
+ this.ezspV = frm.protocolVersion;
120
255
  }
121
256
  }
122
257
  async version() {
123
258
  const version = this.ezspV;
124
- const result = await this.command("version", version);
125
- if ((result[0] !== version)) {
126
- debug.log("Switching to eszp version %d", result[0]);
127
- await this.command("version", result[0]);
259
+ const result = await this.execCommand("version", { desiredProtocolVersion: version });
260
+ if ((result.protocolVersion !== version)) {
261
+ debug.log("Switching to eszp version %d", result.protocolVersion);
262
+ await this.execCommand("version", { desiredProtocolVersion: result.protocolVersion });
128
263
  }
129
- return result[0];
264
+ return result.protocolVersion;
130
265
  }
131
266
  async networkInit() {
132
- const waiter = this.waitFor(commands_1.COMMANDS["stackStatusHandler"][0], null).start();
133
- const [result] = await this.command("networkInit");
134
- debug.log('network init result', result);
135
- if ((result !== named_1.EmberStatus.SUCCESS)) {
267
+ const waiter = this.waitFor("stackStatusHandler", null).start();
268
+ const result = await this.execCommand("networkInit");
269
+ debug.log('network init result: ', JSON.stringify(result));
270
+ if ((result.status !== named_1.EmberStatus.SUCCESS)) {
136
271
  this.waitress.remove(waiter.ID);
137
- debug.log("Failure to init network:" + result);
272
+ debug.log("Failure to init network");
138
273
  return false;
139
274
  }
140
275
  const response = await waiter.promise;
141
- return response.payload[0] == named_1.EmberStatus.NETWORK_UP;
276
+ return response.payload.status == named_1.EmberStatus.NETWORK_UP;
142
277
  }
143
278
  async leaveNetwork() {
144
- const waiter = this.waitFor(commands_1.COMMANDS["stackStatusHandler"][0], null).start();
145
- const [result] = await this.command("leaveNetwork");
146
- debug.log('network init result', result);
147
- if ((result !== named_1.EmberStatus.SUCCESS)) {
279
+ const waiter = this.waitFor("stackStatusHandler", null).start();
280
+ const result = await this.execCommand("leaveNetwork");
281
+ debug.log('network init result', JSON.stringify(result));
282
+ if ((result.status !== named_1.EmberStatus.SUCCESS)) {
148
283
  this.waitress.remove(waiter.ID);
149
- debug.log("Failure to leave network:" + result);
150
- throw new Error(("Failure to leave network:" + result));
284
+ debug.log("Failure to leave network");
285
+ throw new Error(("Failure to leave network: " + JSON.stringify(result)));
151
286
  }
152
287
  const response = await waiter.promise;
153
- if ((response.payload[0] !== named_1.EmberStatus.NETWORK_DOWN)) {
154
- debug.log("Wrong network status:" + response.payload);
155
- throw new Error(("Wrong network status:" + response.payload));
288
+ if ((response.payload.status !== named_1.EmberStatus.NETWORK_DOWN)) {
289
+ debug.log("Wrong network status: " + JSON.stringify(response.payload));
290
+ throw new Error(("Wrong network status: " + JSON.stringify(response.payload)));
156
291
  }
157
- return response.payload[0];
292
+ return response.payload.status;
158
293
  }
159
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
160
294
  async setConfigurationValue(configId, value) {
161
295
  debug.log('Set %s = %s', named_1.EzspConfigId.valueToName(named_1.EzspConfigId, configId), value);
162
- const [ret] = await this.execCommand('setConfigurationValue', configId, value);
163
- console.assert(ret === named_1.EmberStatus.SUCCESS, `Command (setConfigurationValue) returned unexpected state: ${ret}`);
296
+ const ret = await this.execCommand('setConfigurationValue', { configId: configId, value: value });
297
+ console.assert(ret.status === named_1.EmberStatus.SUCCESS, `Command (setConfigurationValue) returned unexpected state: ${ret}`);
164
298
  }
165
299
  async getConfigurationValue(configId) {
166
300
  debug.log('Get %s', named_1.EzspConfigId.valueToName(named_1.EzspConfigId, configId));
167
- const [ret, value] = await this.execCommand('getConfigurationValue', configId);
168
- console.assert(ret === named_1.EmberStatus.SUCCESS, `Command (getConfigurationValue) returned unexpected state: ${ret}`);
169
- debug.log('Got %s = %s', named_1.EzspConfigId.valueToName(named_1.EzspConfigId, configId), value);
170
- return value;
301
+ const ret = await this.execCommand('getConfigurationValue', { configId: configId });
302
+ console.assert(ret.status === named_1.EmberStatus.SUCCESS, `Command (getConfigurationValue) returned unexpected state: ${ret}`);
303
+ debug.log('Got %s = %s', named_1.EzspConfigId.valueToName(named_1.EzspConfigId, configId), ret.value.toString());
304
+ return ret.value;
171
305
  }
172
306
  async getMulticastTableEntry(index) {
173
- const [value] = await this.execCommand('getMulticastTableEntry', index);
174
- //console.assert(ret === EmberStatus.SUCCESS);
175
- return value;
307
+ const ret = await this.execCommand('getMulticastTableEntry', { index: index });
308
+ return ret.value;
176
309
  }
177
310
  async setMulticastTableEntry(index, entry) {
178
- const [ret] = await this.execCommand('setMulticastTableEntry', index, entry);
179
- console.assert(ret === named_1.EmberStatus.SUCCESS, `Command (setMulticastTableEntry) returned unexpected state: ${ret}`);
180
- return [ret];
311
+ const ret = await this.execCommand('setMulticastTableEntry', { index: index, value: entry });
312
+ console.assert(ret.status === named_1.EmberStatus.SUCCESS, `Command (setMulticastTableEntry) returned unexpected state: ${ret}`);
313
+ return ret.status;
181
314
  }
182
315
  async setInitialSecurityState(entry) {
183
- const [ret] = await this.execCommand('setInitialSecurityState', entry);
184
- console.assert(ret === named_1.EmberStatus.SUCCESS, `Command (setInitialSecurityState) returned unexpected state: ${ret}`);
185
- return [ret];
316
+ const ret = await this.execCommand('setInitialSecurityState', { state: entry });
317
+ console.assert(ret.success === named_1.EmberStatus.SUCCESS, `Command (setInitialSecurityState) returned unexpected state: ${ret}`);
318
+ return ret.success;
186
319
  }
187
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
188
320
  async getCurrentSecurityState() {
189
- const [ret, res] = await this.execCommand('getCurrentSecurityState');
190
- console.assert(ret === named_1.EmberStatus.SUCCESS, `Command (getCurrentSecurityState) returned unexpected state: ${ret}`);
191
- return [ret, res];
321
+ const ret = await this.execCommand('getCurrentSecurityState');
322
+ console.assert(ret.status === named_1.EmberStatus.SUCCESS, `Command (getCurrentSecurityState) returned unexpected state: ${ret}`);
323
+ return ret;
192
324
  }
193
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
194
325
  async setValue(valueId, value) {
195
326
  debug.log('Set %s = %s', t.EzspValueId.valueToName(t.EzspValueId, valueId), value);
196
- const [ret] = await this.execCommand('setValue', valueId, value);
197
- console.assert(ret === named_1.EmberStatus.SUCCESS, `Command (setValue) returned unexpected state: ${ret}`);
198
- return [ret];
327
+ const ret = await this.execCommand('setValue', { valueId, value });
328
+ console.assert(ret.status === named_1.EmberStatus.SUCCESS, `Command (setValue) returned unexpected state: ${ret}`);
329
+ return ret;
199
330
  }
200
331
  async getValue(valueId) {
201
332
  debug.log('Get %s', t.EzspValueId.valueToName(t.EzspValueId, valueId));
202
- const [ret, value] = await this.execCommand('getValue', valueId);
203
- console.assert(ret === named_1.EmberStatus.SUCCESS, `Command (getValue) returned unexpected state: ${ret}`);
204
- debug.log('Got %s = %s', t.EzspValueId.valueToName(t.EzspValueId, valueId), value);
205
- return value;
333
+ const ret = await this.execCommand('getValue', { valueId });
334
+ console.assert(ret.status === named_1.EmberStatus.SUCCESS, `Command (getValue) returned unexpected state: ${ret}`);
335
+ debug.log('Got %s = %s', t.EzspValueId.valueToName(t.EzspValueId, valueId), ret.value);
336
+ return ret.value;
206
337
  }
207
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
208
338
  async setPolicy(policyId, value) {
209
339
  debug.log('Set %s = %s', named_1.EzspPolicyId.valueToName(named_1.EzspPolicyId, policyId), value);
210
- const [ret] = await this.execCommand('setPolicy', policyId, value);
211
- console.assert(ret === named_1.EmberStatus.SUCCESS, `Command (setPolicy) returned unexpected state: ${ret}`);
212
- return [ret];
340
+ const ret = await this.execCommand('setPolicy', { policyId: policyId, decisionId: value });
341
+ console.assert(ret.status === named_1.EmberStatus.SUCCESS, `Command (setPolicy) returned unexpected state: ${ret}`);
342
+ return ret;
213
343
  }
214
344
  async updateConfig() {
215
345
  const config = [
@@ -270,94 +400,90 @@ class Ezsp extends events_1.EventEmitter {
270
400
  await this.setPolicy(policy, value);
271
401
  }
272
402
  }
273
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
274
- makeZDOframe(name, ...args) {
275
- const c = commands_1.ZDO_COMMANDS[name];
276
- const data = t.serialize(args, c[1]);
277
- return data;
403
+ makeZDOframe(name, params) {
404
+ const frmData = new EZSPZDORequestFrameData(name, true, params);
405
+ return frmData.serialize();
278
406
  }
279
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
280
- makeFrame(name, ...args) {
281
- const c = commands_1.COMMANDS[name];
282
- const data = t.serialize(args, c[1]);
283
- const frame = [(this.cmdSeq & 255)];
407
+ makeFrame(name, params, seq) {
408
+ const frmData = new EZSPFrameData(name, true, params);
409
+ debug.log(`==> ${JSON.stringify(frmData)}`);
410
+ const frame = [(seq & 255)];
284
411
  if ((this.ezspV < 8)) {
285
412
  if ((this.ezspV >= 5)) {
286
- frame.push(0x00, 0xFF, 0x00, c[0]);
413
+ frame.push(0x00, 0xFF, 0x00, frmData.id);
287
414
  }
288
415
  else {
289
- frame.push(0x00, c[0]);
416
+ frame.push(0x00, frmData.id);
290
417
  }
291
418
  }
292
419
  else {
293
- const cmd_id = t.serialize([c[0]], [t.uint16_t]);
420
+ const cmd_id = t.serialize([frmData.id], [t.uint16_t]);
294
421
  frame.push(0x00, 0x01, ...cmd_id);
295
422
  }
296
- return Buffer.concat([Buffer.from(frame), data]);
423
+ return Buffer.concat([Buffer.from(frame), frmData.serialize()]);
297
424
  }
298
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
299
- command(name, ...args) {
300
- debug.log(`===> Send command ${name}: (${args})`);
425
+ async execCommand(name, params = null) {
426
+ debug.log(`==> ${name}: ${JSON.stringify(params)}`);
301
427
  return this.queue.execute(async () => {
302
- const data = this.makeFrame(name, ...args);
303
- debug.log(`===> Send data ${name}: (${data.toString('hex')})`);
304
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
305
- const c = commands_1.COMMANDS[name];
306
- const waiter = this.waitFor(c[0], this.cmdSeq).start();
428
+ const data = this.makeFrame(name, params, this.cmdSeq);
429
+ const waiter = this.waitFor(name, this.cmdSeq);
307
430
  this.cmdSeq = (this.cmdSeq + 1) & 255;
308
- this.serialDriver.sendDATA(data);
309
- const response = await waiter.promise;
310
- return response.payload;
431
+ return this.serialDriver.sendDATA(data).then(async () => {
432
+ const response = await waiter.start().promise;
433
+ return response.payload;
434
+ });
311
435
  });
312
436
  }
313
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
314
- async formNetwork(...args) {
315
- const waiter = this.waitFor(commands_1.COMMANDS["stackStatusHandler"][0], null).start();
316
- const v = await this.command("formNetwork", ...args);
317
- if ((v[0] !== named_1.EmberStatus.SUCCESS)) {
437
+ async formNetwork(params) {
438
+ const waiter = this.waitFor("stackStatusHandler", null).start();
439
+ const v = await this.execCommand("formNetwork", { parameters: params });
440
+ if ((v.status !== named_1.EmberStatus.SUCCESS)) {
318
441
  this.waitress.remove(waiter.ID);
319
- debug.error("Failure forming network:" + v);
320
- throw new Error(("Failure forming network:" + v));
442
+ debug.error("Failure forming network: " + JSON.stringify(v));
443
+ throw new Error(("Failure forming network: " + JSON.stringify(v)));
321
444
  }
322
445
  const response = await waiter.promise;
323
- if ((response.payload[0] !== named_1.EmberStatus.NETWORK_UP)) {
324
- debug.error("Wrong network status:" + response.payload);
325
- throw new Error(("Wrong network status:" + response.payload));
446
+ if ((response.payload.status !== named_1.EmberStatus.NETWORK_UP)) {
447
+ debug.error("Wrong network status: " + JSON.stringify(response.payload));
448
+ throw new Error(("Wrong network status: " + JSON.stringify(response.payload)));
326
449
  }
327
- return response.payload[0];
450
+ return response.payload.status;
328
451
  }
329
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
330
- execCommand(name, ...args) {
331
- if (Object.keys(commands_1.COMMANDS).indexOf(name) < 0) {
332
- throw new Error('Unknown command: ' + name);
333
- }
334
- return this.command(name, ...args);
335
- }
336
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
337
452
  parse_frame_payload(name, data) {
338
- if (Object.keys(commands_1.ZDO_COMMANDS).indexOf(name) < 0) {
339
- throw new Error('Unknown ZDO command: ' + name);
340
- }
341
- /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
342
- const c = commands_1.ZDO_COMMANDS[name];
343
- const result = t.deserialize(data, c[1])[0];
344
- return result;
453
+ const frame = new EZSPZDOResponseFrameData(name, data);
454
+ return frame;
345
455
  }
346
- /* eslint-disable @typescript-eslint/no-explicit-any*/
347
456
  sendUnicast(direct, nwk, apsFrame, seq, data) {
348
- return this.execCommand('sendUnicast', direct, nwk, apsFrame, seq, data);
457
+ return this.execCommand('sendUnicast', {
458
+ type: direct,
459
+ indexOrDestination: nwk,
460
+ apsFrame: apsFrame,
461
+ messageTag: seq,
462
+ message: data
463
+ });
349
464
  }
350
- /* eslint-enable @typescript-eslint/no-explicit-any*/
351
- /* eslint-disable @typescript-eslint/no-explicit-any*/
352
465
  sendMulticast(apsFrame, seq, data) {
353
- return this.execCommand('sendMulticast', apsFrame, EZSP_DEFAULT_RADIUS, EZSP_MULTICAST_NON_MEMBER_RADIUS, seq, data);
466
+ return this.execCommand('sendMulticast', {
467
+ apsFrame: apsFrame,
468
+ hops: EZSP_DEFAULT_RADIUS,
469
+ nonmemberRadius: EZSP_MULTICAST_NON_MEMBER_RADIUS,
470
+ messageTag: seq,
471
+ message: data
472
+ });
354
473
  }
355
- /* eslint-enable @typescript-eslint/no-explicit-any*/
356
474
  async setSourceRouting() {
357
- const [res] = await this.execCommand('setConcentrator', true, named_1.EmberConcentratorType.HIGH_RAM_CONCENTRATOR, MTOR_MIN_INTERVAL, MTOR_MAX_INTERVAL, MTOR_ROUTE_ERROR_THRESHOLD, MTOR_DELIVERY_FAIL_THRESHOLD, 0);
358
- debug.log("Set concentrator type: %s", res);
359
- if (res != named_1.EmberStatus.SUCCESS) {
360
- debug.log("Couldn't set concentrator type %s: %s", true, res);
475
+ const res = await this.execCommand('setConcentrator', {
476
+ on: true,
477
+ concentratorType: named_1.EmberConcentratorType.HIGH_RAM_CONCENTRATOR,
478
+ minTime: MTOR_MIN_INTERVAL,
479
+ maxTime: MTOR_MAX_INTERVAL,
480
+ routeErrorThreshold: MTOR_ROUTE_ERROR_THRESHOLD,
481
+ deliveryFailureThreshold: MTOR_DELIVERY_FAIL_THRESHOLD,
482
+ maxHops: 0,
483
+ });
484
+ debug.log("Set concentrator type: %s", JSON.stringify(res));
485
+ if (res.status != named_1.EmberStatus.SUCCESS) {
486
+ debug.log("Couldn't set concentrator type %s: %s", true, JSON.stringify(res));
361
487
  }
362
488
  // await this.execCommand('setSourceRouteDiscoveryMode', 1);
363
489
  }
@@ -368,8 +494,9 @@ class Ezsp extends events_1.EventEmitter {
368
494
  return `${JSON.stringify(matcher)} after ${timeout}ms`;
369
495
  }
370
496
  waitressValidator(payload, matcher) {
497
+ const frameName = (typeof matcher.frameId == 'string') ? matcher.frameId : commands_1.FRAME_NAME_BY_ID[matcher.frameId];
371
498
  return ((matcher.sequence == null || payload.sequence === matcher.sequence) &&
372
- payload.frameId === matcher.frameId);
499
+ payload.frameName === frameName);
373
500
  }
374
501
  async watchdogHandler() {
375
502
  debug.log(`Time to watchdog ... ${this.failures}`);
@@ -1 +1 @@
1
- {"version":3,"file":"ezsp.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/ezsp.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,sEAAsE;AACtE,2CAA6B;AAC7B,iCAAoC;AACpC,yCAAkD;AAElD,yCASuB;AACvB,mCAAoC;AAEpC,0CAA+C;AAC/C,kDAA0B;AAG1B,MAAM,KAAK,GAAG;IACV,KAAK,EAAE,IAAA,eAAK,EAAC,oCAAoC,CAAC;IAClD,GAAG,EAAE,IAAA,eAAK,EAAC,kCAAkC,CAAC;CACjD,CAAC;AAGF,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,0BAA0B,GAAG,CAAC,CAAC;AACrC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AACvC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,uCAAuC;AACvC,MAAM,oBAAoB,GAAG,EAAE,CAAC,CAAE,SAAS;AAC3C,4FAA4F;AAC5F,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAgB3C,MAAa,IAAK,SAAQ,qBAAY;IAWlC;QACI,KAAK,EAAE,CAAC;QAXZ,UAAK,GAAG,CAAC,CAAC;QACV,WAAM,GAAG,CAAC,CAAC,CAAE,mBAAmB;QAChC,gEAAgE;QAChE,mBAAc,GAAG,IAAI,GAAG,EAA2D,CAAC;QAK5E,aAAQ,GAAG,CAAC,CAAC;QAIjB,KAAK,MAAM,IAAI,IAAI,mBAAQ,EAAE;YACzB,MAAM,OAAO,GAAG,mBAAQ,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC;SACxF;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAQ,CACxB,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAE3D,IAAI,CAAC,YAAY,GAAG,IAAI,mBAAY,EAAE,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACtE,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,OAAuC;QACtE,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,WAAW,CAC5B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAC/B,oBAAoB,GAAC,IAAI,CAC5B,CAAC;IACN,CAAC;IAEM,KAAK,CAAC,KAAK;QACd,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACvB,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjC,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IACpC,CAAC;IAEO,eAAe,CAAC,IAAY;QAChC;;;;;UAKE;QACF,KAAK,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,IAAI,QAAgB,EAAE,MAAM,EAAE,QAAQ,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;YAClB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SAClE;aAAM;YACH,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;SACnE;QACD,IAAI,CAAC,QAAQ,KAAK,GAAG,CAAC,EAAE;YACpB,QAAQ,GAAG,CAAC,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;gBACnB,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACnB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACxB;SACJ;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,QAAQ,CAAC,CAAC;QAC1E,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;QAC3B,KAAK,CAAC,GAAG,CAAC,6CAA6C,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACpG,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;QAC3B,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,KAAK,CAAC,GAAG,CAAC,0BAA0B,QAAQ,KAAK,SAAS,eAAe,MAAM,EAAE,CAAC,CAAC;QACnF,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAClC,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,SAAS;YACpB,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,MAAM;SAClB,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC;QAEvD,IAAI,CAAC,QAAQ,KAAK,CAAC,CAAC,EAAE;YAClB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;SAC1B;IACL,CAAC;IAED,KAAK,CAAC,OAAO;QACT,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,EAAE;YACzB,KAAK,CAAC,GAAG,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SAC5C;QACD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QAE7E,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACnD,KAAK,CAAC,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,CAAC,EAAE;YAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChC,KAAK,CAAC,GAAG,CAAC,0BAA0B,GAAG,MAAM,CAAC,CAAC;YAC/C,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACtC,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,mBAAW,CAAC,UAAU,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,YAAY;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QAE7E,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACpD,KAAK,CAAC,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,CAAC,EAAE;YAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChC,KAAK,CAAC,GAAG,CAAC,2BAA2B,GAAG,MAAM,CAAC,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,CAAC,2BAA2B,GAAG,MAAM,CAAC,CAAC,CAAC;SAC3D;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,mBAAW,CAAC,YAAY,CAAC,EAAE;YACpD,KAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,CAAC,uBAAuB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;SACjE;QACD,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,qBAAqB,CAAC,QAAgB,EAAE,KAAU;QACpD,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,oBAAY,CAAC,WAAW,CAAC,oBAAY,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAClF,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/E,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,mBAAW,CAAC,OAAO,EACtC,8DAA8D,GAAG,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAgB;QACxC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,oBAAY,CAAC,WAAW,CAAC,oBAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;QACtE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;QAC/E,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,mBAAW,CAAC,OAAO,EACtC,8DAA8D,GAAG,EAAE,CAAC,CAAC;QACzE,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,oBAAY,CAAC,WAAW,CAAC,oBAAY,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAClF,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,KAAa;QACtC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACxE,8CAA8C;QAC9C,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,KAAa,EAAE,KAAiC;QACzE,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC7E,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,mBAAW,CAAC,OAAO,EACtC,+DAA+D,GAAG,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,KAAkC;QAC5D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,mBAAW,CAAC,OAAO,EACtC,gEAAgE,GAAG,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,uBAAuB;QACzB,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;QACrE,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,mBAAW,CAAC,OAAO,EACtC,gEAAgE,GAAG,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACtB,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,QAAQ,CAAC,OAAsB,EAAE,KAAU;QAC7C,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;QACnF,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACjE,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,mBAAW,CAAC,OAAO,EACtC,iDAAiD,GAAG,EAAE,CAAC,CAAC;QAE5D,OAAO,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAsB;QACjC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;QACvE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACjE,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,mBAAW,CAAC,OAAO,EACtC,iDAAiD,GAAG,EAAE,CAAC,CAAC;QAC5D,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;QACnF,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,SAAS,CAAC,QAAsB,EAAE,KAAU;QAC9C,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,oBAAY,CAAC,WAAW,CAAC,oBAAY,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAClF,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnE,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,mBAAW,CAAC,OAAO,EACtC,kDAAkD,GAAG,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,YAAY;QACd,MAAM,MAAM,GAAG;YACX,CAAC,oBAAY,CAAC,wBAAwB,EAAE,EAAE,CAAC;YAC3C,CAAC,oBAAY,CAAC,oBAAoB,EAAE,CAAC,CAAC;YACtC,CAAC,oBAAY,CAAC,2BAA2B,EAAE,CAAC,CAAC;YAC7C,kDAAkD;YAClD,CAAC,oBAAY,CAAC,0BAA0B,EAAE,EAAE,CAAC;YAC7C,CAAC,oBAAY,CAAC,uBAAuB,EAAE,EAAE,CAAC;YAC1C,CAAC,oBAAY,CAAC,yBAAyB,EAAE,EAAE,CAAC;YAC5C,CAAC,oBAAY,CAAC,qBAAqB,EAAE,EAAE,CAAC;YACxC,CAAC,oBAAY,CAAC,0BAA0B,EAAE,CAAC,CAAC;YAC5C,CAAC,oBAAY,CAAC,yBAAyB,EAAE,GAAG,CAAC;YAC7C,CAAC,oBAAY,CAAC,8BAA8B,EAAE,GAAG,CAAC;YAClD,uDAAuD;YACvD,CAAC,oBAAY,CAAC,2BAA2B,EAAE,EAAE,CAAC;YAC9C,CAAC,oBAAY,CAAC,eAAe,EAAE,EAAE,CAAC;YAElC,CAAC,oBAAY,CAAC,oCAAoC,EAAE,IAAI,CAAC;YACzD,CAAC,oBAAY,CAAC,8BAA8B,EAAE,EAAE,CAAC;YACjD,CAAC,oBAAY,CAAC,2BAA2B,EAAE,EAAE,CAAC;YAC9C,CAAC,oBAAY,CAAC,yBAAyB,EAAE,EAAE,CAAC;YAC5C,CAAC,oBAAY,CAAC,sCAAsC,EAAE,CAAC,CAAC;YACxD,CAAC,oBAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;YAC3C,CAAC,oBAAY,CAAC,gDAAgD,EAAE,EAAE,CAAC;YACnE,CAAC,oBAAY,CAAC,4BAA4B;gBACtC,kCAA0B,CAAC,mCAAmC;sBAC5D,kCAA0B,CAAC,oCAAoC,CAAC;YACtE,CAAC,oBAAY,CAAC,qBAAqB,EAAE,CAAC,CAAC;YACvC,CAAC,oBAAY,CAAC,8BAA8B,EAAE,CAAC,CAAC;YAChD,CAAC,oBAAY,CAAC,uCAAuC,EAAE,CAAC,CAAC;YACzD,CAAC,oBAAY,CAAC,8BAA8B,EAAE,EAAE,CAAC;YACjD,CAAC,oBAAY,CAAC,oBAAoB,EAAE,CAAC,CAAC;YACtC,CAAC,oBAAY,CAAC,0BAA0B,EAAE,GAAG,CAAC;SACjD,CAAC;QAEF,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE;YACpC,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;SACrD;IACL,CAAC;IAED,KAAK,CAAC,cAAc;QAChB,kDAAkD;QAClD,MAAM,QAAQ,GAAG;YACb,CAAC,oBAAY,CAAC,2BAA2B;gBACrC,sBAAc,CAAC,uDAAuD,CAAC;YAC3E,CAAC,oBAAY,CAAC,sBAAsB,EAAE,sBAAc,CAAC,0BAA0B,CAAC;YAChF,CAAC,oBAAY,CAAC,mBAAmB,EAAE,sBAAc,CAAC,mBAAmB,CAAC;YACtE,CAAC,oBAAY,CAAC,mCAAmC;gBAC7C,sBAAc,CAAC,4BAA4B,CAAC;YAChD,CAAC,oBAAY,CAAC,8BAA8B;gBACxC,sBAAc,CAAC,uCAAuC,CAAC;YAC3D,CAAC,oBAAY,CAAC,UAAU,EAAE,sBAAc,CAAC,WAAW,CAAC;YACrD,CAAC,oBAAY,CAAC,sCAAsC,EAAE,sBAAc,CAAC,WAAW,CAAC;YAEjF,CAAC,oBAAY,CAAC,sBAAsB,EAAE,sBAAc,CAAC,qBAAqB,CAAC;YAC3E,CAAC,oBAAY,CAAC,mBAAmB,EAAE,2BAAmB,CAAC,uBAAuB;sBACxE,2BAAmB,CAAC,WAAW,CAAC;YACtC,CAAC,oBAAY,CAAC,qBAAqB,EAAE,sBAAc,CAAC,qBAAqB,CAAC;SAC7E,CAAC;QAEF,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,QAAQ,EAAE;YACpC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;SACvC;IACL,CAAC;IAED,gEAAgE;IACzD,YAAY,CAAC,IAAY,EAAE,GAAG,IAAW;QAC5C,MAAM,CAAC,GAAG,uBAAY,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,gEAAgE;IACxD,SAAS,CAAC,IAAY,EAAE,GAAG,IAAW;QAC1C,MAAM,CAAC,GAAG,mBAAQ,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;YAClB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE;gBACnB,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACtC;iBAAM;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC1B;SACJ;aAAM;YACH,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjD,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,CAAC;SACrC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,gEAAgE;IACxD,OAAO,CAAC,IAAY,EAAE,GAAG,IAAW;QACxC,KAAK,CAAC,GAAG,CAAC,qBAAqB,IAAI,MAAM,IAAI,GAAG,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAS,KAAK,IAAqB,EAAE;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;YAC3C,KAAK,CAAC,GAAG,CAAC,qBAAqB,IAAI,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClE,gEAAgE;YAChE,MAAM,CAAC,GAAG,mBAAQ,CAAC,IAAI,CAAC,CAAC;YACzB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;YACvD,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;YACtC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;YACtC,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC5B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,WAAW,CAAC,GAAG,IAAW;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QAC7E,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,mBAAW,CAAC,OAAO,CAAC,EAAE;YAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChC,KAAK,CAAC,KAAK,CAAC,0BAA0B,GAAG,CAAC,CAAC,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,CAAC,0BAA0B,GAAG,CAAC,CAAC,CAAC,CAAC;SACrD;QACD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,mBAAW,CAAC,UAAU,CAAC,EAAE;YAClD,KAAK,CAAC,KAAK,CAAC,uBAAuB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,CAAC,uBAAuB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;SACjE;QACD,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,gEAAgE;IAChE,WAAW,CAAC,IAAY,EAAE,GAAG,IAAW;QACpC,IAAI,MAAM,CAAC,IAAI,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;SAC/C;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,gEAAgE;IACzD,mBAAmB,CAAC,IAAY,EAAE,IAAY;QACjD,IAAI,MAAM,CAAC,IAAI,CAAC,uBAAY,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAC7C,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAC;SACnD;QACD,gEAAgE;QAChE,MAAM,CAAC,GAAG,uBAAY,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,sDAAsD;IAC/C,WAAW,CAAC,MAAgC,EAAE,GAAW,EAAE,QAC7C,EAAE,GAAW,EAAE,IAAY;QAC5C,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;IACD,qDAAqD;IAErD,sDAAsD;IAC/C,aAAa,CAAC,QAAuB,EAAE,GAAW,EAAE,IAAY;QACnE,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,QAAQ,EAAE,mBAAmB,EAClE,gCAAgC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;IACD,qDAAqD;IAE9C,KAAK,CAAC,gBAAgB;QACzB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAClD,IAAI,EACJ,6BAAqB,CAAC,qBAAqB,EAC3C,iBAAiB,EACjB,iBAAiB,EACjB,0BAA0B,EAC1B,4BAA4B,EAC5B,CAAC,CACJ,CAAC;QACF,KAAK,CAAC,GAAG,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;QAC5C,IAAI,GAAG,IAAI,mBAAW,CAAC,OAAO,EAAE;YAC5B,KAAK,CAAC,GAAG,CAAC,uCAAuC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;SACjE;QACD,4DAA4D;IAChE,CAAC;IAEM,OAAO,CAAC,OAAe,EAAE,QAAuB,EAAE,OAAO,GAAG,KAAK;QAEpE,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAC,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAEO,wBAAwB,CAAC,OAA4B,EAAE,OAAe;QAC1E,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,OAAO,IAAI,CAAC;IAC3D,CAAC;IAEO,iBAAiB,CAAC,OAAkB,EAAE,OAA4B;QACtE,OAAO,CACH,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;YACnE,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CACtC,CAAC;IACN,CAAC;IAEO,KAAK,CAAC,eAAe;QACzB,KAAK,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnD,IAAI;YACA,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;SACjC;QAAC,OAAO,KAAK,EAAE;YACZ,KAAK,CAAC,KAAK,CAAC,8BAA8B,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YACzD,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;YACnB,IAAI,IAAI,CAAC,QAAQ,GAAG,qBAAqB,EAAE;gBACvC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;gBAClB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACtB;SACJ;IACL,CAAC;CACJ;AAjZD,oBAiZC"}
1
+ {"version":3,"file":"ezsp.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/ezsp.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import { Ezsp } from './ezsp';
2
- import { Driver } from './driver';
3
- export { Ezsp, Driver };
2
+ import { Driver, EmberIncomingMessage } from './driver';
3
+ export { Ezsp, Driver, EmberIncomingMessage };
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,MAAM,EAAE,oBAAoB,EAAC,MAAM,UAAU,CAAC;AAEtD,OAAO,EAAC,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/index.ts"],"names":[],"mappings":";;;AAAA,0BAA0B;AAC1B,iCAA4B;AAGpB,qFAHA,WAAI,OAGA;AAFZ,qCAAgC;AAElB,uFAFN,eAAM,OAEM"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/index.ts"],"names":[],"mappings":";;;AAAA,0BAA0B;AAC1B,iCAA4B;AAGpB,qFAHA,WAAI,OAGA;AAFZ,qCAAsD;AAExC,uFAFN,eAAM,OAEM"}