zigbee-herdsman 1.0.0 → 1.1.0

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 (132) hide show
  1. package/.release-please-manifest.json +1 -1
  2. package/CHANGELOG.md +14 -0
  3. package/dist/adapter/adapter.d.ts +6 -0
  4. package/dist/adapter/adapter.d.ts.map +1 -1
  5. package/dist/adapter/adapter.js.map +1 -1
  6. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts +5 -3
  7. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts.map +1 -1
  8. package/dist/adapter/deconz/adapter/deconzAdapter.js +261 -558
  9. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
  10. package/dist/adapter/deconz/driver/constants.d.ts +102 -56
  11. package/dist/adapter/deconz/driver/constants.d.ts.map +1 -1
  12. package/dist/adapter/deconz/driver/constants.js +1 -2
  13. package/dist/adapter/deconz/driver/constants.js.map +1 -1
  14. package/dist/adapter/deconz/driver/driver.d.ts.map +1 -1
  15. package/dist/adapter/deconz/driver/driver.js +46 -41
  16. package/dist/adapter/deconz/driver/driver.js.map +1 -1
  17. package/dist/adapter/deconz/driver/frameParser.d.ts.map +1 -1
  18. package/dist/adapter/deconz/driver/frameParser.js +174 -107
  19. package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
  20. package/dist/adapter/ember/adapter/emberAdapter.d.ts +4 -12
  21. package/dist/adapter/ember/adapter/emberAdapter.d.ts.map +1 -1
  22. package/dist/adapter/ember/adapter/emberAdapter.js +215 -249
  23. package/dist/adapter/ember/adapter/emberAdapter.js.map +1 -1
  24. package/dist/adapter/ember/adapter/oneWaitress.d.ts +16 -12
  25. package/dist/adapter/ember/adapter/oneWaitress.d.ts.map +1 -1
  26. package/dist/adapter/ember/adapter/oneWaitress.js +16 -41
  27. package/dist/adapter/ember/adapter/oneWaitress.js.map +1 -1
  28. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +10 -8
  29. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
  30. package/dist/adapter/ezsp/adapter/ezspAdapter.js +241 -238
  31. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
  32. package/dist/adapter/ezsp/driver/driver.d.ts +6 -14
  33. package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -1
  34. package/dist/adapter/ezsp/driver/driver.js +56 -37
  35. package/dist/adapter/ezsp/driver/driver.js.map +1 -1
  36. package/dist/adapter/ezsp/driver/ezsp.d.ts.map +1 -1
  37. package/dist/adapter/ezsp/driver/ezsp.js +3 -0
  38. package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
  39. package/dist/adapter/z-stack/adapter/manager.js +2 -2
  40. package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
  41. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +4 -3
  42. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts.map +1 -1
  43. package/dist/adapter/z-stack/adapter/zStackAdapter.js +258 -197
  44. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
  45. package/dist/adapter/z-stack/znp/definition.d.ts.map +1 -1
  46. package/dist/adapter/z-stack/znp/definition.js +256 -302
  47. package/dist/adapter/z-stack/znp/definition.js.map +1 -1
  48. package/dist/adapter/z-stack/znp/tstype.d.ts +8 -8
  49. package/dist/adapter/z-stack/znp/tstype.d.ts.map +1 -1
  50. package/dist/adapter/z-stack/znp/utils.d.ts +3 -2
  51. package/dist/adapter/z-stack/znp/utils.d.ts.map +1 -1
  52. package/dist/adapter/z-stack/znp/utils.js +8 -7
  53. package/dist/adapter/z-stack/znp/utils.js.map +1 -1
  54. package/dist/adapter/z-stack/znp/znp.d.ts +3 -1
  55. package/dist/adapter/z-stack/znp/znp.d.ts.map +1 -1
  56. package/dist/adapter/z-stack/znp/znp.js +31 -14
  57. package/dist/adapter/z-stack/znp/znp.js.map +1 -1
  58. package/dist/adapter/z-stack/znp/zpiObject.d.ts +5 -6
  59. package/dist/adapter/z-stack/znp/zpiObject.d.ts.map +1 -1
  60. package/dist/adapter/z-stack/znp/zpiObject.js +28 -11
  61. package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
  62. package/dist/adapter/zboss/adapter/zbossAdapter.d.ts +7 -5
  63. package/dist/adapter/zboss/adapter/zbossAdapter.d.ts.map +1 -1
  64. package/dist/adapter/zboss/adapter/zbossAdapter.js +284 -138
  65. package/dist/adapter/zboss/adapter/zbossAdapter.js.map +1 -1
  66. package/dist/adapter/zboss/commands.d.ts +3 -0
  67. package/dist/adapter/zboss/commands.d.ts.map +1 -1
  68. package/dist/adapter/zboss/commands.js +248 -205
  69. package/dist/adapter/zboss/commands.js.map +1 -1
  70. package/dist/adapter/zboss/driver.d.ts +4 -14
  71. package/dist/adapter/zboss/driver.d.ts.map +1 -1
  72. package/dist/adapter/zboss/driver.js +63 -89
  73. package/dist/adapter/zboss/driver.js.map +1 -1
  74. package/dist/adapter/zboss/enums.d.ts +24 -2
  75. package/dist/adapter/zboss/enums.d.ts.map +1 -1
  76. package/dist/adapter/zboss/enums.js +35 -3
  77. package/dist/adapter/zboss/enums.js.map +1 -1
  78. package/dist/adapter/zboss/frame.d.ts +6 -1
  79. package/dist/adapter/zboss/frame.d.ts.map +1 -1
  80. package/dist/adapter/zboss/frame.js +56 -11
  81. package/dist/adapter/zboss/frame.js.map +1 -1
  82. package/dist/adapter/zboss/uart.d.ts +1 -0
  83. package/dist/adapter/zboss/uart.d.ts.map +1 -1
  84. package/dist/adapter/zboss/uart.js +4 -2
  85. package/dist/adapter/zboss/uart.js.map +1 -1
  86. package/dist/adapter/zigate/adapter/patchZdoBuffaloBE.d.ts +5 -0
  87. package/dist/adapter/zigate/adapter/patchZdoBuffaloBE.d.ts.map +1 -0
  88. package/dist/adapter/zigate/adapter/patchZdoBuffaloBE.js +44 -0
  89. package/dist/adapter/zigate/adapter/patchZdoBuffaloBE.js.map +1 -0
  90. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +5 -0
  91. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts.map +1 -1
  92. package/dist/adapter/zigate/adapter/zigateAdapter.js +247 -262
  93. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
  94. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts.map +1 -1
  95. package/dist/adapter/zigate/driver/buffaloZiGate.js +2 -18
  96. package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
  97. package/dist/adapter/zigate/driver/commandType.js +218 -218
  98. package/dist/adapter/zigate/driver/commandType.js.map +1 -1
  99. package/dist/adapter/zigate/driver/constants.d.ts +14 -8
  100. package/dist/adapter/zigate/driver/constants.d.ts.map +1 -1
  101. package/dist/adapter/zigate/driver/constants.js +36 -9
  102. package/dist/adapter/zigate/driver/constants.js.map +1 -1
  103. package/dist/adapter/zigate/driver/messageType.js +42 -42
  104. package/dist/adapter/zigate/driver/messageType.js.map +1 -1
  105. package/dist/adapter/zigate/driver/zigate.d.ts +17 -13
  106. package/dist/adapter/zigate/driver/zigate.d.ts.map +1 -1
  107. package/dist/adapter/zigate/driver/zigate.js +83 -18
  108. package/dist/adapter/zigate/driver/zigate.js.map +1 -1
  109. package/dist/controller/controller.d.ts +1 -0
  110. package/dist/controller/controller.d.ts.map +1 -1
  111. package/dist/controller/controller.js +28 -0
  112. package/dist/controller/controller.js.map +1 -1
  113. package/dist/utils/patchBigIntSerialization.d.ts +2 -0
  114. package/dist/utils/patchBigIntSerialization.d.ts.map +1 -0
  115. package/dist/utils/patchBigIntSerialization.js +9 -0
  116. package/dist/utils/patchBigIntSerialization.js.map +1 -0
  117. package/dist/zspec/zcl/zclFrame.d.ts +1 -0
  118. package/dist/zspec/zcl/zclFrame.d.ts.map +1 -1
  119. package/dist/zspec/zcl/zclFrame.js +1 -0
  120. package/dist/zspec/zcl/zclFrame.js.map +1 -1
  121. package/dist/zspec/zdo/buffaloZdo.d.ts +1 -139
  122. package/dist/zspec/zdo/buffaloZdo.d.ts.map +1 -1
  123. package/dist/zspec/zdo/buffaloZdo.js.map +1 -1
  124. package/dist/zspec/zdo/definition/tstypes.d.ts +168 -1
  125. package/dist/zspec/zdo/definition/tstypes.d.ts.map +1 -1
  126. package/dist/zspec/zdo/definition/tstypes.js +1 -0
  127. package/dist/zspec/zdo/definition/tstypes.js.map +1 -1
  128. package/dist/zspec/zdo/utils.d.ts +2 -3
  129. package/dist/zspec/zdo/utils.d.ts.map +1 -1
  130. package/dist/zspec/zdo/utils.js +3 -4
  131. package/dist/zspec/zdo/utils.js.map +1 -1
  132. package/package.json +1 -1
@@ -1,9 +1,45 @@
1
1
  "use strict";
2
2
  /* istanbul ignore file */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.FRAMES = void 0;
4
+ exports.FRAMES = exports.ZBOSS_COMMAND_ID_TO_ZDO_RSP_CLUSTER_ID = exports.ZDO_REQ_CLUSTER_ID_TO_ZBOSS_COMMAND_ID = void 0;
5
5
  const enums_1 = require("../../zspec/zcl/definition/enums");
6
+ const zdo_1 = require("../../zspec/zdo");
6
7
  const enums_2 = require("./enums");
8
+ exports.ZDO_REQ_CLUSTER_ID_TO_ZBOSS_COMMAND_ID = {
9
+ [zdo_1.ClusterId.NETWORK_ADDRESS_REQUEST]: enums_2.CommandId.ZDO_NWK_ADDR_REQ,
10
+ [zdo_1.ClusterId.IEEE_ADDRESS_REQUEST]: enums_2.CommandId.ZDO_IEEE_ADDR_REQ,
11
+ [zdo_1.ClusterId.POWER_DESCRIPTOR_REQUEST]: enums_2.CommandId.ZDO_POWER_DESC_REQ,
12
+ [zdo_1.ClusterId.NODE_DESCRIPTOR_REQUEST]: enums_2.CommandId.ZDO_NODE_DESC_REQ,
13
+ [zdo_1.ClusterId.SIMPLE_DESCRIPTOR_REQUEST]: enums_2.CommandId.ZDO_SIMPLE_DESC_REQ,
14
+ [zdo_1.ClusterId.ACTIVE_ENDPOINTS_REQUEST]: enums_2.CommandId.ZDO_ACTIVE_EP_REQ,
15
+ [zdo_1.ClusterId.MATCH_DESCRIPTORS_REQUEST]: enums_2.CommandId.ZDO_MATCH_DESC_REQ,
16
+ [zdo_1.ClusterId.BIND_REQUEST]: enums_2.CommandId.ZDO_BIND_REQ,
17
+ [zdo_1.ClusterId.UNBIND_REQUEST]: enums_2.CommandId.ZDO_UNBIND_REQ,
18
+ [zdo_1.ClusterId.LEAVE_REQUEST]: enums_2.CommandId.ZDO_MGMT_LEAVE_REQ,
19
+ [zdo_1.ClusterId.PERMIT_JOINING_REQUEST]: enums_2.CommandId.ZDO_PERMIT_JOINING_REQ,
20
+ [zdo_1.ClusterId.BINDING_TABLE_REQUEST]: enums_2.CommandId.ZDO_MGMT_BIND_REQ,
21
+ [zdo_1.ClusterId.LQI_TABLE_REQUEST]: enums_2.CommandId.ZDO_MGMT_LQI_REQ,
22
+ // [ZdoClusterId.ROUTING_TABLE_REQUEST]: CommandId.ZDO_MGMT_RTG_REQ,
23
+ [zdo_1.ClusterId.NWK_UPDATE_REQUEST]: enums_2.CommandId.ZDO_MGMT_NWK_UPDATE_REQ,
24
+ };
25
+ exports.ZBOSS_COMMAND_ID_TO_ZDO_RSP_CLUSTER_ID = {
26
+ [enums_2.CommandId.ZDO_NWK_ADDR_REQ]: zdo_1.ClusterId.NETWORK_ADDRESS_RESPONSE,
27
+ [enums_2.CommandId.ZDO_IEEE_ADDR_REQ]: zdo_1.ClusterId.IEEE_ADDRESS_RESPONSE,
28
+ [enums_2.CommandId.ZDO_POWER_DESC_REQ]: zdo_1.ClusterId.POWER_DESCRIPTOR_RESPONSE,
29
+ [enums_2.CommandId.ZDO_NODE_DESC_REQ]: zdo_1.ClusterId.NODE_DESCRIPTOR_RESPONSE,
30
+ [enums_2.CommandId.ZDO_SIMPLE_DESC_REQ]: zdo_1.ClusterId.SIMPLE_DESCRIPTOR_RESPONSE,
31
+ [enums_2.CommandId.ZDO_ACTIVE_EP_REQ]: zdo_1.ClusterId.ACTIVE_ENDPOINTS_RESPONSE,
32
+ [enums_2.CommandId.ZDO_MATCH_DESC_REQ]: zdo_1.ClusterId.MATCH_DESCRIPTORS_RESPONSE,
33
+ [enums_2.CommandId.ZDO_BIND_REQ]: zdo_1.ClusterId.BIND_RESPONSE,
34
+ [enums_2.CommandId.ZDO_UNBIND_REQ]: zdo_1.ClusterId.UNBIND_RESPONSE,
35
+ [enums_2.CommandId.ZDO_MGMT_LEAVE_REQ]: zdo_1.ClusterId.LEAVE_RESPONSE,
36
+ [enums_2.CommandId.ZDO_PERMIT_JOINING_REQ]: zdo_1.ClusterId.PERMIT_JOINING_RESPONSE,
37
+ [enums_2.CommandId.ZDO_MGMT_BIND_REQ]: zdo_1.ClusterId.BINDING_TABLE_RESPONSE,
38
+ [enums_2.CommandId.ZDO_MGMT_LQI_REQ]: zdo_1.ClusterId.LQI_TABLE_RESPONSE,
39
+ // [CommandId.ZDO_MGMT_RTG_REQ]: ZdoClusterId.ROUTING_TABLE_RESPONSE,
40
+ [enums_2.CommandId.ZDO_MGMT_NWK_UPDATE_REQ]: zdo_1.ClusterId.NWK_UPDATE_RESPONSE,
41
+ [enums_2.CommandId.ZDO_DEV_ANNCE_IND]: zdo_1.ClusterId.END_DEVICE_ANNOUNCE,
42
+ };
7
43
  const commonResponse = [
8
44
  { name: 'category', type: enums_1.DataType.UINT8, typed: enums_2.StatusCategory },
9
45
  { name: 'status', type: enums_1.DataType.UINT8, typed: [enums_2.StatusCodeGeneric, enums_2.StatusCodeAPS, enums_2.StatusCodeCBKE] },
@@ -292,176 +328,176 @@ exports.FRAMES = {
292
328
  // Zigbee Device Object
293
329
  // ------------------------------------------
294
330
  // Request for a remote device NWK address
295
- [enums_2.CommandId.ZDO_NWK_ADDR_REQ]: {
296
- request: [
297
- { name: 'nwk', type: enums_1.DataType.UINT16 },
298
- { name: 'ieee', type: enums_1.DataType.IEEE_ADDR },
299
- { name: 'type', type: enums_1.DataType.UINT8 },
300
- { name: 'startIndex', type: enums_1.DataType.UINT8 },
301
- ],
302
- response: [
303
- ...commonResponse,
304
- { name: 'ieee', type: enums_1.DataType.IEEE_ADDR },
305
- { name: 'nwk', type: enums_1.DataType.UINT16 },
306
- { name: 'num', type: enums_1.DataType.UINT8, condition: (payload, buffalo) => buffalo && buffalo.isMore() },
307
- { name: 'startIndex', type: enums_1.DataType.UINT8, condition: (payload, buffalo) => buffalo && buffalo.isMore() },
308
- { name: 'nwks', type: enums_1.BuffaloZclDataType.LIST_UINT16, options: (payload, options) => (options.length = payload.num) },
309
- ],
310
- },
331
+ // [CommandId.ZDO_NWK_ADDR_REQ]: {
332
+ // request: [
333
+ // {name: 'nwk', type: DataType.UINT16},
334
+ // {name: 'ieee', type: DataType.IEEE_ADDR},
335
+ // {name: 'type', type: DataType.UINT8},
336
+ // {name: 'startIndex', type: DataType.UINT8},
337
+ // ],
338
+ // response: [
339
+ // ...commonResponse,
340
+ // {name: 'ieee', type: DataType.IEEE_ADDR},
341
+ // {name: 'nwk', type: DataType.UINT16},
342
+ // {name: 'num', type: DataType.UINT8, condition: (payload, buffalo) => buffalo && buffalo.isMore()},
343
+ // {name: 'startIndex', type: DataType.UINT8, condition: (payload, buffalo) => buffalo && buffalo.isMore()},
344
+ // {name: 'nwks', type: BuffaloZclDataType.LIST_UINT16, options: (payload, options) => (options.length = payload.num)},
345
+ // ],
346
+ // },
311
347
  // Request for a remote device IEEE address
312
- [enums_2.CommandId.ZDO_IEEE_ADDR_REQ]: {
313
- request: [
314
- { name: 'destNwk', type: enums_1.DataType.UINT16 },
315
- { name: 'nwk', type: enums_1.DataType.UINT16 },
316
- { name: 'type', type: enums_1.DataType.UINT8 },
317
- { name: 'startIndex', type: enums_1.DataType.UINT8 },
318
- ],
319
- response: [
320
- ...commonResponse,
321
- { name: 'ieee', type: enums_1.DataType.IEEE_ADDR },
322
- { name: 'nwk', type: enums_1.DataType.UINT16 },
323
- { name: 'num', type: enums_1.DataType.UINT8, condition: (payload, buffalo) => buffalo && buffalo.isMore() },
324
- { name: 'startIndex', type: enums_1.DataType.UINT8, condition: (payload, buffalo) => buffalo && buffalo.isMore() },
325
- { name: 'nwks', type: enums_1.BuffaloZclDataType.LIST_UINT16, options: (payload, options) => (options.length = payload.num) },
326
- ],
327
- },
348
+ // [CommandId.ZDO_IEEE_ADDR_REQ]: {
349
+ // request: [
350
+ // {name: 'destNwk', type: DataType.UINT16},
351
+ // {name: 'nwk', type: DataType.UINT16},
352
+ // {name: 'type', type: DataType.UINT8},
353
+ // {name: 'startIndex', type: DataType.UINT8},
354
+ // ],
355
+ // response: [
356
+ // ...commonResponse,
357
+ // {name: 'ieee', type: DataType.IEEE_ADDR},
358
+ // {name: 'nwk', type: DataType.UINT16},
359
+ // {name: 'num', type: DataType.UINT8, condition: (payload, buffalo) => buffalo && buffalo.isMore()},
360
+ // {name: 'startIndex', type: DataType.UINT8, condition: (payload, buffalo) => buffalo && buffalo.isMore()},
361
+ // {name: 'nwks', type: BuffaloZclDataType.LIST_UINT16, options: (payload, options) => (options.length = payload.num)},
362
+ // ],
363
+ // },
328
364
  // Get the Power Descriptor from a remote device
329
- [enums_2.CommandId.ZDO_POWER_DESC_REQ]: {
330
- request: [{ name: 'nwk', type: enums_1.DataType.UINT16 }],
331
- response: [...commonResponse, { name: 'powerDescriptor', type: enums_1.DataType.UINT16 }, { name: 'nwk', type: enums_1.DataType.UINT16 }],
332
- },
365
+ // [CommandId.ZDO_POWER_DESC_REQ]: {
366
+ // request: [{name: 'nwk', type: DataType.UINT16}],
367
+ // response: [...commonResponse, {name: 'powerDescriptor', type: DataType.UINT16}, {name: 'nwk', type: DataType.UINT16}],
368
+ // },
333
369
  // Get the Node Descriptor from a remote device
334
- [enums_2.CommandId.ZDO_NODE_DESC_REQ]: {
335
- request: [{ name: 'nwk', type: enums_1.DataType.UINT16 }],
336
- response: [
337
- ...commonResponse,
338
- { name: 'flags', type: enums_1.DataType.UINT16 },
339
- { name: 'macCapabilities', type: enums_1.DataType.UINT8 },
340
- { name: 'manufacturerCode', type: enums_1.DataType.UINT16 },
341
- { name: 'bufferSize', type: enums_1.DataType.UINT8 },
342
- { name: 'incomingSize', type: enums_1.DataType.UINT16 },
343
- { name: 'serverMask', type: enums_1.DataType.UINT16 },
344
- { name: 'outgoingSize', type: enums_1.DataType.UINT16 },
345
- { name: 'descriptorCapabilities', type: enums_1.DataType.UINT8 },
346
- { name: 'nwk', type: enums_1.DataType.UINT16 },
347
- ],
348
- },
370
+ // [CommandId.ZDO_NODE_DESC_REQ]: {
371
+ // request: [{name: 'nwk', type: DataType.UINT16}],
372
+ // response: [
373
+ // ...commonResponse,
374
+ // {name: 'flags', type: DataType.UINT16},
375
+ // {name: 'macCapabilities', type: DataType.UINT8},
376
+ // {name: 'manufacturerCode', type: DataType.UINT16},
377
+ // {name: 'bufferSize', type: DataType.UINT8},
378
+ // {name: 'incomingSize', type: DataType.UINT16},
379
+ // {name: 'serverMask', type: DataType.UINT16},
380
+ // {name: 'outgoingSize', type: DataType.UINT16},
381
+ // {name: 'descriptorCapabilities', type: DataType.UINT8},
382
+ // {name: 'nwk', type: DataType.UINT16},
383
+ // ],
384
+ // },
349
385
  // Get the Simple Descriptor from a remote device
350
- [enums_2.CommandId.ZDO_SIMPLE_DESC_REQ]: {
351
- request: [
352
- { name: 'nwk', type: enums_1.DataType.UINT16 },
353
- { name: 'endpoint', type: enums_1.DataType.UINT8 },
354
- ],
355
- response: [
356
- ...commonResponse,
357
- { name: 'endpoint', type: enums_1.DataType.UINT8 },
358
- { name: 'profileID', type: enums_1.DataType.UINT16 },
359
- { name: 'deviceID', type: enums_1.DataType.UINT16 },
360
- { name: 'version', type: enums_1.DataType.UINT8 },
361
- { name: 'inputClusterCount', type: enums_1.DataType.UINT8 },
362
- { name: 'outputClusterCount', type: enums_1.DataType.UINT8 },
363
- {
364
- name: 'inputClusters',
365
- type: enums_1.BuffaloZclDataType.LIST_UINT16,
366
- options: (payload, options) => (options.length = payload.inputClusterCount),
367
- },
368
- {
369
- name: 'outputClusters',
370
- type: enums_1.BuffaloZclDataType.LIST_UINT16,
371
- options: (payload, options) => (options.length = payload.outputClusterCount),
372
- },
373
- { name: 'nwk', type: enums_1.DataType.UINT16 },
374
- ],
375
- },
386
+ // [CommandId.ZDO_SIMPLE_DESC_REQ]: {
387
+ // request: [
388
+ // {name: 'nwk', type: DataType.UINT16},
389
+ // {name: 'endpoint', type: DataType.UINT8},
390
+ // ],
391
+ // response: [
392
+ // ...commonResponse,
393
+ // {name: 'endpoint', type: DataType.UINT8},
394
+ // {name: 'profileID', type: DataType.UINT16},
395
+ // {name: 'deviceID', type: DataType.UINT16},
396
+ // {name: 'version', type: DataType.UINT8},
397
+ // {name: 'inputClusterCount', type: DataType.UINT8},
398
+ // {name: 'outputClusterCount', type: DataType.UINT8},
399
+ // {
400
+ // name: 'inputClusters',
401
+ // type: BuffaloZclDataType.LIST_UINT16,
402
+ // options: (payload, options) => (options.length = payload.inputClusterCount),
403
+ // },
404
+ // {
405
+ // name: 'outputClusters',
406
+ // type: BuffaloZclDataType.LIST_UINT16,
407
+ // options: (payload, options) => (options.length = payload.outputClusterCount),
408
+ // },
409
+ // {name: 'nwk', type: DataType.UINT16},
410
+ // ],
411
+ // },
376
412
  // Get a list of Active Endpoints from a remote device
377
- [enums_2.CommandId.ZDO_ACTIVE_EP_REQ]: {
378
- request: [{ name: 'nwk', type: enums_1.DataType.UINT16 }],
379
- response: [
380
- ...commonResponse,
381
- { name: 'len', type: enums_1.DataType.UINT8 },
382
- { name: 'endpoints', type: enums_1.BuffaloZclDataType.LIST_UINT8, options: (payload, options) => (options.length = payload.len) },
383
- { name: 'nwk', type: enums_1.DataType.UINT16 },
384
- ],
385
- },
413
+ // [CommandId.ZDO_ACTIVE_EP_REQ]: {
414
+ // request: [{name: 'nwk', type: DataType.UINT16}],
415
+ // response: [
416
+ // ...commonResponse,
417
+ // {name: 'len', type: DataType.UINT8},
418
+ // {name: 'endpoints', type: BuffaloZclDataType.LIST_UINT8, options: (payload, options) => (options.length = payload.len)},
419
+ // {name: 'nwk', type: DataType.UINT16},
420
+ // ],
421
+ // },
386
422
  // Send Match Descriptor request to a remote device
387
- [enums_2.CommandId.ZDO_MATCH_DESC_REQ]: {
388
- request: [
389
- { name: 'nwk', type: enums_1.DataType.UINT16 },
390
- { name: 'profileID', type: enums_1.DataType.UINT16 },
391
- { name: 'inputClusterCount', type: enums_1.DataType.UINT8 },
392
- { name: 'outputClusterCount', type: enums_1.DataType.UINT8 },
393
- {
394
- name: 'inputClusters',
395
- type: enums_1.BuffaloZclDataType.LIST_UINT16,
396
- options: (payload, options) => (options.length = payload.inputClusterCount),
397
- },
398
- {
399
- name: 'outputClusters',
400
- type: enums_1.BuffaloZclDataType.LIST_UINT16,
401
- options: (payload, options) => (options.length = payload.outputClusterCount),
402
- },
403
- ],
404
- response: [
405
- ...commonResponse,
406
- { name: 'len', type: enums_1.DataType.UINT8 },
407
- { name: 'endpoints', type: enums_1.BuffaloZclDataType.LIST_UINT8, options: (payload, options) => (options.length = payload.len) },
408
- { name: 'nwk', type: enums_1.DataType.UINT16 },
409
- ],
410
- },
423
+ // [CommandId.ZDO_MATCH_DESC_REQ]: {
424
+ // request: [
425
+ // {name: 'nwk', type: DataType.UINT16},
426
+ // {name: 'profileID', type: DataType.UINT16},
427
+ // {name: 'inputClusterCount', type: DataType.UINT8},
428
+ // {name: 'outputClusterCount', type: DataType.UINT8},
429
+ // {
430
+ // name: 'inputClusters',
431
+ // type: BuffaloZclDataType.LIST_UINT16,
432
+ // options: (payload, options) => (options.length = payload.inputClusterCount),
433
+ // },
434
+ // {
435
+ // name: 'outputClusters',
436
+ // type: BuffaloZclDataType.LIST_UINT16,
437
+ // options: (payload, options) => (options.length = payload.outputClusterCount),
438
+ // },
439
+ // ],
440
+ // response: [
441
+ // ...commonResponse,
442
+ // {name: 'len', type: DataType.UINT8},
443
+ // {name: 'endpoints', type: BuffaloZclDataType.LIST_UINT8, options: (payload, options) => (options.length = payload.len)},
444
+ // {name: 'nwk', type: DataType.UINT16},
445
+ // ],
446
+ // },
411
447
  // Send Bind request to a remote device
412
- [enums_2.CommandId.ZDO_BIND_REQ]: {
413
- request: [
414
- { name: 'target', type: enums_1.DataType.UINT16 },
415
- { name: 'srcIeee', type: enums_1.DataType.IEEE_ADDR },
416
- { name: 'srcEP', type: enums_1.DataType.UINT8 },
417
- { name: 'clusterID', type: enums_1.DataType.UINT16 },
418
- { name: 'addrMode', type: enums_1.DataType.UINT8 },
419
- { name: 'dstIeee', type: enums_1.DataType.IEEE_ADDR },
420
- { name: 'dstEP', type: enums_1.DataType.UINT8 },
421
- ],
422
- response: [...commonResponse],
423
- },
448
+ // [CommandId.ZDO_BIND_REQ]: {
449
+ // request: [
450
+ // {name: 'target', type: DataType.UINT16},
451
+ // {name: 'srcIeee', type: DataType.IEEE_ADDR},
452
+ // {name: 'srcEP', type: DataType.UINT8},
453
+ // {name: 'clusterID', type: DataType.UINT16},
454
+ // {name: 'addrMode', type: DataType.UINT8},
455
+ // {name: 'dstIeee', type: DataType.IEEE_ADDR},
456
+ // {name: 'dstEP', type: DataType.UINT8},
457
+ // ],
458
+ // response: [...commonResponse],
459
+ // },
424
460
  // Send Unbind request to a remote device
425
- [enums_2.CommandId.ZDO_UNBIND_REQ]: {
426
- request: [
427
- { name: 'target', type: enums_1.DataType.UINT16 },
428
- { name: 'srcIeee', type: enums_1.DataType.IEEE_ADDR },
429
- { name: 'srcEP', type: enums_1.DataType.UINT8 },
430
- { name: 'clusterID', type: enums_1.DataType.UINT16 },
431
- { name: 'addrMode', type: enums_1.DataType.UINT8 },
432
- { name: 'dstIeee', type: enums_1.DataType.IEEE_ADDR },
433
- { name: 'dstEP', type: enums_1.DataType.UINT8 },
434
- ],
435
- response: [...commonResponse],
436
- },
461
+ // [CommandId.ZDO_UNBIND_REQ]: {
462
+ // request: [
463
+ // {name: 'target', type: DataType.UINT16},
464
+ // {name: 'srcIeee', type: DataType.IEEE_ADDR},
465
+ // {name: 'srcEP', type: DataType.UINT8},
466
+ // {name: 'clusterID', type: DataType.UINT16},
467
+ // {name: 'addrMode', type: DataType.UINT8},
468
+ // {name: 'dstIeee', type: DataType.IEEE_ADDR},
469
+ // {name: 'dstEP', type: DataType.UINT8},
470
+ // ],
471
+ // response: [...commonResponse],
472
+ // },
437
473
  // Request that a Remote Device leave the network
438
- [enums_2.CommandId.ZDO_MGMT_LEAVE_REQ]: {
439
- request: [
440
- { name: 'nwk', type: enums_1.DataType.UINT16 },
441
- { name: 'ieee', type: enums_1.DataType.IEEE_ADDR },
442
- { name: 'flags', type: enums_1.DataType.UINT8 },
443
- ],
444
- response: [...commonResponse],
445
- },
474
+ // [CommandId.ZDO_MGMT_LEAVE_REQ]: {
475
+ // request: [
476
+ // {name: 'nwk', type: DataType.UINT16},
477
+ // {name: 'ieee', type: DataType.IEEE_ADDR},
478
+ // {name: 'flags', type: DataType.UINT8},
479
+ // ],
480
+ // response: [...commonResponse],
481
+ // },
446
482
  // Request a remote device or devices to allow or disallow association
447
- [enums_2.CommandId.ZDO_PERMIT_JOINING_REQ]: {
448
- request: [
449
- { name: 'nwk', type: enums_1.DataType.UINT16 },
450
- { name: 'duration', type: enums_1.DataType.UINT8 },
451
- { name: 'tcSignificance', type: enums_1.DataType.UINT8 },
452
- ],
453
- response: [...commonResponse],
454
- },
483
+ // [CommandId.ZDO_PERMIT_JOINING_REQ]: {
484
+ // request: [
485
+ // {name: 'nwk', type: DataType.UINT16},
486
+ // {name: 'duration', type: DataType.UINT8},
487
+ // {name: 'tcSignificance', type: DataType.UINT8},
488
+ // ],
489
+ // response: [...commonResponse],
490
+ // },
455
491
  // Device announce indication
456
- [enums_2.CommandId.ZDO_DEV_ANNCE_IND]: {
457
- request: [],
458
- response: [],
459
- indication: [
460
- { name: 'nwk', type: enums_1.DataType.UINT16 },
461
- { name: 'ieee', type: enums_1.DataType.IEEE_ADDR },
462
- { name: 'macCapabilities', type: enums_1.DataType.UINT8 },
463
- ],
464
- },
492
+ // [CommandId.ZDO_DEV_ANNCE_IND]: {
493
+ // request: [],
494
+ // response: [],
495
+ // indication: [
496
+ // {name: 'nwk', type: DataType.UINT16},
497
+ // {name: 'ieee', type: DataType.IEEE_ADDR},
498
+ // {name: 'macCapabilities', type: DataType.UINT8},
499
+ // ],
500
+ // },
465
501
  // Rejoin to remote network even if joined already. If joined, clear internal data structures prior to joining. That call is useful for rejoin after parent loss.
466
502
  [enums_2.CommandId.ZDO_REJOIN]: {
467
503
  request: [
@@ -485,51 +521,51 @@ exports.FRAMES = {
485
521
  response: [...commonResponse],
486
522
  },
487
523
  // Sends a ZDO Mgmt Bind request to a remote device
488
- [enums_2.CommandId.ZDO_MGMT_BIND_REQ]: {
489
- request: [
490
- { name: 'nwk', type: enums_1.DataType.UINT16 },
491
- { name: 'startIndex', type: enums_1.DataType.UINT8 },
492
- ],
493
- response: [...commonResponse],
494
- },
524
+ // [CommandId.ZDO_MGMT_BIND_REQ]: {
525
+ // request: [
526
+ // {name: 'nwk', type: DataType.UINT16},
527
+ // {name: 'startIndex', type: DataType.UINT8},
528
+ // ],
529
+ // response: [...commonResponse],
530
+ // },
495
531
  // Sends a ZDO Mgmt LQI request to a remote device
496
- [enums_2.CommandId.ZDO_MGMT_LQI_REQ]: {
497
- request: [
498
- { name: 'nwk', type: enums_1.DataType.UINT16 },
499
- { name: 'startIndex', type: enums_1.DataType.UINT8 },
500
- ],
501
- response: [
502
- ...commonResponse,
503
- { name: 'entries', type: enums_1.DataType.UINT8 },
504
- { name: 'startIndex', type: enums_1.DataType.UINT8 },
505
- { name: 'len', type: enums_1.DataType.UINT8 },
506
- {
507
- name: 'neighbors',
508
- type: enums_2.BuffaloZBOSSDataType.LIST_TYPED,
509
- typed: [
510
- { name: 'extendedPanID', type: enums_2.BuffaloZBOSSDataType.EXTENDED_PAN_ID },
511
- { name: 'ieee', type: enums_1.DataType.IEEE_ADDR },
512
- { name: 'nwk', type: enums_1.DataType.UINT16 },
513
- { name: 'relationship', type: enums_1.DataType.UINT8 },
514
- { name: 'joining', type: enums_1.DataType.UINT8 },
515
- { name: 'depth', type: enums_1.DataType.UINT8 },
516
- { name: 'lqi', type: enums_1.DataType.UINT8 },
517
- ],
518
- options: (payload, options) => (options.length = payload.len),
519
- },
520
- ],
521
- },
532
+ // [CommandId.ZDO_MGMT_LQI_REQ]: {
533
+ // request: [
534
+ // {name: 'nwk', type: DataType.UINT16},
535
+ // {name: 'startIndex', type: DataType.UINT8},
536
+ // ],
537
+ // response: [
538
+ // ...commonResponse,
539
+ // {name: 'entries', type: DataType.UINT8},
540
+ // {name: 'startIndex', type: DataType.UINT8},
541
+ // {name: 'len', type: DataType.UINT8},
542
+ // {
543
+ // name: 'neighbors',
544
+ // type: BuffaloZBOSSDataType.LIST_TYPED,
545
+ // typed: [
546
+ // {name: 'extendedPanID', type: BuffaloZBOSSDataType.EXTENDED_PAN_ID},
547
+ // {name: 'ieee', type: DataType.IEEE_ADDR},
548
+ // {name: 'nwk', type: DataType.UINT16},
549
+ // {name: 'relationship', type: DataType.UINT8},
550
+ // {name: 'joining', type: DataType.UINT8},
551
+ // {name: 'depth', type: DataType.UINT8},
552
+ // {name: 'lqi', type: DataType.UINT8},
553
+ // ],
554
+ // options: (payload, options) => (options.length = payload.len),
555
+ // },
556
+ // ],
557
+ // },
522
558
  // Sends a ZDO Mgmt NWK Update Request to a remote device
523
- [enums_2.CommandId.ZDO_MGMT_NWK_UPDATE_REQ]: {
524
- request: [
525
- { name: 'channelMask', type: enums_1.DataType.UINT32 },
526
- { name: 'duration', type: enums_1.DataType.UINT8 },
527
- { name: 'count', type: enums_1.DataType.UINT8 },
528
- { name: 'managerNwk', type: enums_1.DataType.UINT16 },
529
- { name: 'nwk', type: enums_1.DataType.UINT16 },
530
- ],
531
- response: [...commonResponse],
532
- },
559
+ // [CommandId.ZDO_MGMT_NWK_UPDATE_REQ]: {
560
+ // request: [
561
+ // {name: 'channelMask', type: DataType.UINT32},
562
+ // {name: 'duration', type: DataType.UINT8},
563
+ // {name: 'count', type: DataType.UINT8},
564
+ // {name: 'managerNwk', type: DataType.UINT16},
565
+ // {name: 'nwk', type: DataType.UINT16},
566
+ // ],
567
+ // response: [...commonResponse],
568
+ // },
533
569
  // Require statistics (last message LQI\RSSI, counters, etc.) from the ZDO level
534
570
  [enums_2.CommandId.ZDO_GET_STATS]: {
535
571
  request: [{ name: 'cleanup', type: enums_1.DataType.UINT8 }],
@@ -580,8 +616,12 @@ exports.FRAMES = {
580
616
  indication: [
581
617
  { name: 'ieee', type: enums_1.DataType.IEEE_ADDR },
582
618
  { name: 'nwk', type: enums_1.DataType.UINT16 },
583
- { name: 'authType', type: enums_1.DataType.UINT8 },
584
- { name: 'authStatus', type: enums_1.DataType.UINT8 },
619
+ { name: 'authType', type: enums_1.DataType.UINT8, typed: enums_2.DeviceAuthorizedType },
620
+ {
621
+ name: 'authStatus',
622
+ type: enums_1.DataType.UINT8,
623
+ /* typed: DeviceAuthorizedLegacyStatus | DeviceAuthorizedR21TCLKStatus | DeviceAuthorizedSECBKEStatus */
624
+ },
585
625
  ],
586
626
  },
587
627
  // Indicates some device joined the network
@@ -592,6 +632,9 @@ exports.FRAMES = {
592
632
  { name: 'ieee', type: enums_1.DataType.IEEE_ADDR },
593
633
  { name: 'nwk', type: enums_1.DataType.UINT16 },
594
634
  { name: 'status', type: enums_1.DataType.UINT8, typed: enums_2.DeviceUpdateStatus },
635
+ // not in dsr-corporation spec
636
+ // {name: 'tcAction', type: DataType.UINT8, typed: DeviceUpdateTCAction},
637
+ // {name: 'parentNwk', type: DataType.UINT16},
595
638
  ],
596
639
  },
597
640
  // Sets manufacturer code field in the node descriptor