zigbee-herdsman 0.46.5 → 0.47.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 (261) hide show
  1. package/.release-please-manifest.json +1 -1
  2. package/CHANGELOG.md +19 -0
  3. package/dist/adapter/adapter.d.ts +7 -7
  4. package/dist/adapter/adapter.d.ts.map +1 -1
  5. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts +9 -9
  6. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts.map +1 -1
  7. package/dist/adapter/deconz/adapter/deconzAdapter.js +4 -4
  8. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
  9. package/dist/adapter/deconz/driver/frameParser.d.ts.map +1 -1
  10. package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
  11. package/dist/adapter/ember/adapter/emberAdapter.d.ts +7 -7
  12. package/dist/adapter/ember/adapter/emberAdapter.d.ts.map +1 -1
  13. package/dist/adapter/ember/adapter/emberAdapter.js +33 -11
  14. package/dist/adapter/ember/adapter/emberAdapter.js.map +1 -1
  15. package/dist/adapter/ember/adapter/endpoints.js +28 -31
  16. package/dist/adapter/ember/adapter/endpoints.js.map +1 -1
  17. package/dist/adapter/ember/ezsp/ezsp.d.ts.map +1 -1
  18. package/dist/adapter/ember/ezsp/ezsp.js +8 -6
  19. package/dist/adapter/ember/ezsp/ezsp.js.map +1 -1
  20. package/dist/adapter/ember/uart/ash.d.ts +2 -2
  21. package/dist/adapter/ember/uart/ash.d.ts.map +1 -1
  22. package/dist/adapter/ember/uart/ash.js +7 -13
  23. package/dist/adapter/ember/uart/ash.js.map +1 -1
  24. package/dist/adapter/ember/uart/parser.d.ts.map +1 -1
  25. package/dist/adapter/ember/uart/parser.js +3 -5
  26. package/dist/adapter/ember/uart/parser.js.map +1 -1
  27. package/dist/adapter/events.d.ts +1 -1
  28. package/dist/adapter/events.d.ts.map +1 -1
  29. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +7 -7
  30. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
  31. package/dist/adapter/ezsp/adapter/ezspAdapter.js +5 -5
  32. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
  33. package/dist/adapter/ezsp/driver/driver.js +3 -3
  34. package/dist/adapter/ezsp/driver/driver.js.map +1 -1
  35. package/dist/adapter/z-stack/adapter/endpoints.js +4 -4
  36. package/dist/adapter/z-stack/adapter/endpoints.js.map +1 -1
  37. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +7 -7
  38. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts.map +1 -1
  39. package/dist/adapter/z-stack/adapter/zStackAdapter.js +5 -5
  40. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
  41. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +7 -7
  42. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts.map +1 -1
  43. package/dist/adapter/zigate/adapter/zigateAdapter.js +4 -4
  44. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
  45. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts +1 -1
  46. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts.map +1 -1
  47. package/dist/adapter/zigate/driver/zigate.d.ts.map +1 -1
  48. package/dist/adapter/zigate/driver/zigate.js.map +1 -1
  49. package/dist/buffalo/buffalo.d.ts +2 -1
  50. package/dist/buffalo/buffalo.d.ts.map +1 -1
  51. package/dist/buffalo/buffalo.js +2 -2
  52. package/dist/buffalo/buffalo.js.map +1 -1
  53. package/dist/controller/controller.d.ts.map +1 -1
  54. package/dist/controller/controller.js +6 -6
  55. package/dist/controller/controller.js.map +1 -1
  56. package/dist/controller/events.d.ts +1 -1
  57. package/dist/controller/events.d.ts.map +1 -1
  58. package/dist/controller/greenPower.d.ts +2 -2
  59. package/dist/controller/greenPower.d.ts.map +1 -1
  60. package/dist/controller/greenPower.js +5 -6
  61. package/dist/controller/greenPower.js.map +1 -1
  62. package/dist/controller/helpers/request.d.ts +3 -3
  63. package/dist/controller/helpers/request.d.ts.map +1 -1
  64. package/dist/controller/helpers/request.js.map +1 -1
  65. package/dist/controller/helpers/requestQueue.js.map +1 -1
  66. package/dist/controller/helpers/zclFrameConverter.d.ts +4 -4
  67. package/dist/controller/helpers/zclFrameConverter.d.ts.map +1 -1
  68. package/dist/controller/helpers/zclFrameConverter.js +25 -6
  69. package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
  70. package/dist/controller/model/device.d.ts +4 -4
  71. package/dist/controller/model/device.d.ts.map +1 -1
  72. package/dist/controller/model/device.js +8 -10
  73. package/dist/controller/model/device.js.map +1 -1
  74. package/dist/controller/model/endpoint.d.ts +11 -10
  75. package/dist/controller/model/endpoint.d.ts.map +1 -1
  76. package/dist/controller/model/endpoint.js +9 -9
  77. package/dist/controller/model/endpoint.js.map +1 -1
  78. package/dist/controller/model/group.d.ts +1 -1
  79. package/dist/controller/model/group.d.ts.map +1 -1
  80. package/dist/controller/model/group.js +4 -4
  81. package/dist/controller/model/group.js.map +1 -1
  82. package/dist/controller/touchlink.js +4 -4
  83. package/dist/controller/touchlink.js.map +1 -1
  84. package/dist/index.d.ts +5 -6
  85. package/dist/index.d.ts.map +1 -1
  86. package/dist/index.js +8 -10
  87. package/dist/index.js.map +1 -1
  88. package/dist/zspec/consts.d.ts +59 -0
  89. package/dist/zspec/consts.d.ts.map +1 -1
  90. package/dist/zspec/consts.js +63 -0
  91. package/dist/zspec/consts.js.map +1 -1
  92. package/dist/zspec/enums.d.ts +5 -3
  93. package/dist/zspec/enums.d.ts.map +1 -1
  94. package/dist/zspec/enums.js +9 -3
  95. package/dist/zspec/enums.js.map +1 -1
  96. package/dist/zspec/index.d.ts +3 -2
  97. package/dist/zspec/index.d.ts.map +1 -1
  98. package/dist/zspec/index.js +40 -3
  99. package/dist/zspec/index.js.map +1 -1
  100. package/dist/zspec/tstypes.d.ts +19 -0
  101. package/dist/zspec/tstypes.d.ts.map +1 -0
  102. package/dist/{zcl/definition/frameControl.js → zspec/tstypes.js} +1 -1
  103. package/dist/zspec/tstypes.js.map +1 -0
  104. package/dist/zspec/utils.d.ts +14 -0
  105. package/dist/zspec/utils.d.ts.map +1 -0
  106. package/dist/zspec/utils.js +29 -0
  107. package/dist/zspec/utils.js.map +1 -0
  108. package/dist/{zcl → zspec/zcl}/buffaloZcl.d.ts +5 -5
  109. package/dist/zspec/zcl/buffaloZcl.d.ts.map +1 -0
  110. package/dist/{zcl → zspec/zcl}/buffaloZcl.js +213 -189
  111. package/dist/zspec/zcl/buffaloZcl.js.map +1 -0
  112. package/dist/zspec/zcl/definition/cluster.d.ts +3 -0
  113. package/dist/zspec/zcl/definition/cluster.d.ts.map +1 -0
  114. package/dist/zspec/zcl/definition/cluster.js +5500 -0
  115. package/dist/zspec/zcl/definition/cluster.js.map +1 -0
  116. package/dist/zspec/zcl/definition/consts.d.ts +9 -0
  117. package/dist/zspec/zcl/definition/consts.d.ts.map +1 -0
  118. package/dist/zspec/zcl/definition/consts.js +27 -0
  119. package/dist/zspec/zcl/definition/consts.js.map +1 -0
  120. package/dist/{zcl/definition/dataType.d.ts → zspec/zcl/definition/enums.d.ts} +57 -3
  121. package/dist/zspec/zcl/definition/enums.d.ts.map +1 -0
  122. package/dist/{zcl/definition/dataType.js → zspec/zcl/definition/enums.js} +64 -3
  123. package/dist/zspec/zcl/definition/enums.js.map +1 -0
  124. package/dist/{zcl → zspec/zcl}/definition/foundation.d.ts +2 -2
  125. package/dist/zspec/zcl/definition/foundation.d.ts.map +1 -0
  126. package/dist/zspec/zcl/definition/foundation.js +241 -0
  127. package/dist/zspec/zcl/definition/foundation.js.map +1 -0
  128. package/dist/{zcl → zspec/zcl}/definition/manufacturerCode.d.ts +1 -2
  129. package/dist/zspec/zcl/definition/manufacturerCode.d.ts.map +1 -0
  130. package/dist/{zcl → zspec/zcl}/definition/manufacturerCode.js +2 -2
  131. package/dist/zspec/zcl/definition/manufacturerCode.js.map +1 -0
  132. package/dist/{zcl → zspec/zcl}/definition/status.d.ts +1 -2
  133. package/dist/zspec/zcl/definition/status.d.ts.map +1 -0
  134. package/dist/{zcl → zspec/zcl}/definition/status.js +2 -2
  135. package/dist/zspec/zcl/definition/status.js.map +1 -0
  136. package/dist/zspec/zcl/definition/tstype.d.ts +114 -0
  137. package/dist/zspec/zcl/definition/tstype.d.ts.map +1 -0
  138. package/dist/zspec/zcl/definition/tstype.js.map +1 -0
  139. package/dist/zspec/zcl/index.d.ts +11 -0
  140. package/dist/zspec/zcl/index.d.ts.map +1 -0
  141. package/dist/zspec/zcl/index.js +47 -0
  142. package/dist/zspec/zcl/index.js.map +1 -0
  143. package/dist/zspec/zcl/utils.d.ts +7 -0
  144. package/dist/zspec/zcl/utils.d.ts.map +1 -0
  145. package/dist/zspec/zcl/utils.js +234 -0
  146. package/dist/zspec/zcl/utils.js.map +1 -0
  147. package/dist/{zcl → zspec/zcl}/zclFrame.d.ts +10 -12
  148. package/dist/zspec/zcl/zclFrame.d.ts.map +1 -0
  149. package/dist/{zcl → zspec/zcl}/zclFrame.js +69 -59
  150. package/dist/zspec/zcl/zclFrame.js.map +1 -0
  151. package/dist/{zcl → zspec/zcl}/zclHeader.d.ts +3 -4
  152. package/dist/zspec/zcl/zclHeader.d.ts.map +1 -0
  153. package/dist/{zcl → zspec/zcl}/zclHeader.js +33 -20
  154. package/dist/zspec/zcl/zclHeader.js.map +1 -0
  155. package/dist/zspec/zcl/zclStatusError.d.ts +6 -0
  156. package/dist/zspec/zcl/zclStatusError.d.ts.map +1 -0
  157. package/dist/zspec/zcl/zclStatusError.js +13 -0
  158. package/dist/zspec/zcl/zclStatusError.js.map +1 -0
  159. package/dist/zspec/zdo/buffaloZdo.d.ts +438 -0
  160. package/dist/zspec/zdo/buffaloZdo.d.ts.map +1 -0
  161. package/dist/zspec/zdo/buffaloZdo.js +1892 -0
  162. package/dist/zspec/zdo/buffaloZdo.js.map +1 -0
  163. package/dist/zspec/zdo/definition/clusters.d.ts +624 -0
  164. package/dist/zspec/zdo/definition/clusters.d.ts.map +1 -0
  165. package/dist/zspec/zdo/definition/clusters.js +687 -0
  166. package/dist/zspec/zdo/definition/clusters.js.map +1 -0
  167. package/dist/zspec/zdo/definition/consts.d.ts +13 -0
  168. package/dist/zspec/zdo/definition/consts.d.ts.map +1 -0
  169. package/dist/zspec/zdo/definition/consts.js +16 -0
  170. package/dist/zspec/zdo/definition/consts.js.map +1 -0
  171. package/dist/zspec/zdo/definition/enums.d.ts +75 -0
  172. package/dist/zspec/zdo/definition/enums.d.ts.map +1 -0
  173. package/dist/zspec/zdo/definition/enums.js +97 -0
  174. package/dist/zspec/zdo/definition/enums.js.map +1 -0
  175. package/dist/zspec/zdo/definition/status.d.ts +99 -0
  176. package/dist/zspec/zdo/definition/status.d.ts.map +1 -0
  177. package/dist/zspec/zdo/definition/status.js +109 -0
  178. package/dist/zspec/zdo/definition/status.js.map +1 -0
  179. package/dist/zspec/zdo/definition/tstypes.d.ts +787 -0
  180. package/dist/zspec/zdo/definition/tstypes.d.ts.map +1 -0
  181. package/dist/zspec/zdo/definition/tstypes.js +3 -0
  182. package/dist/zspec/zdo/definition/tstypes.js.map +1 -0
  183. package/dist/zspec/zdo/index.d.ts +7 -0
  184. package/dist/zspec/zdo/index.d.ts.map +1 -0
  185. package/dist/zspec/zdo/index.js +39 -0
  186. package/dist/zspec/zdo/index.js.map +1 -0
  187. package/dist/zspec/zdo/utils.d.ts +25 -0
  188. package/dist/zspec/zdo/utils.d.ts.map +1 -0
  189. package/dist/zspec/zdo/utils.js +75 -0
  190. package/dist/zspec/zdo/utils.js.map +1 -0
  191. package/dist/zspec/zdo/zdoStatusError.d.ts +6 -0
  192. package/dist/zspec/zdo/zdoStatusError.d.ts.map +1 -0
  193. package/dist/zspec/zdo/zdoStatusError.js +13 -0
  194. package/dist/zspec/zdo/zdoStatusError.js.map +1 -0
  195. package/package.json +4 -4
  196. package/dist/zcl/buffaloZcl.d.ts.map +0 -1
  197. package/dist/zcl/buffaloZcl.js.map +0 -1
  198. package/dist/zcl/definition/buffaloZclDataType.d.ts +0 -18
  199. package/dist/zcl/definition/buffaloZclDataType.d.ts.map +0 -1
  200. package/dist/zcl/definition/buffaloZclDataType.js +0 -21
  201. package/dist/zcl/definition/buffaloZclDataType.js.map +0 -1
  202. package/dist/zcl/definition/cluster.d.ts +0 -4
  203. package/dist/zcl/definition/cluster.d.ts.map +0 -1
  204. package/dist/zcl/definition/cluster.js +0 -5504
  205. package/dist/zcl/definition/cluster.js.map +0 -1
  206. package/dist/zcl/definition/dataType.d.ts.map +0 -1
  207. package/dist/zcl/definition/dataType.js.map +0 -1
  208. package/dist/zcl/definition/direction.d.ts +0 -6
  209. package/dist/zcl/definition/direction.d.ts.map +0 -1
  210. package/dist/zcl/definition/direction.js +0 -9
  211. package/dist/zcl/definition/direction.js.map +0 -1
  212. package/dist/zcl/definition/endpointDeviceType.d.ts +0 -5
  213. package/dist/zcl/definition/endpointDeviceType.d.ts.map +0 -1
  214. package/dist/zcl/definition/endpointDeviceType.js +0 -16
  215. package/dist/zcl/definition/endpointDeviceType.js.map +0 -1
  216. package/dist/zcl/definition/foundation.d.ts.map +0 -1
  217. package/dist/zcl/definition/foundation.js +0 -247
  218. package/dist/zcl/definition/foundation.js.map +0 -1
  219. package/dist/zcl/definition/frameControl.d.ts +0 -11
  220. package/dist/zcl/definition/frameControl.d.ts.map +0 -1
  221. package/dist/zcl/definition/frameControl.js.map +0 -1
  222. package/dist/zcl/definition/frameType.d.ts +0 -6
  223. package/dist/zcl/definition/frameType.d.ts.map +0 -1
  224. package/dist/zcl/definition/frameType.js +0 -9
  225. package/dist/zcl/definition/frameType.js.map +0 -1
  226. package/dist/zcl/definition/index.d.ts +0 -14
  227. package/dist/zcl/definition/index.d.ts.map +0 -1
  228. package/dist/zcl/definition/index.js +0 -52
  229. package/dist/zcl/definition/index.js.map +0 -1
  230. package/dist/zcl/definition/manufacturerCode.d.ts.map +0 -1
  231. package/dist/zcl/definition/manufacturerCode.js.map +0 -1
  232. package/dist/zcl/definition/powerSource.d.ts +0 -5
  233. package/dist/zcl/definition/powerSource.d.ts.map +0 -1
  234. package/dist/zcl/definition/powerSource.js +0 -13
  235. package/dist/zcl/definition/powerSource.js.map +0 -1
  236. package/dist/zcl/definition/status.d.ts.map +0 -1
  237. package/dist/zcl/definition/status.js.map +0 -1
  238. package/dist/zcl/definition/tstype.d.ts +0 -35
  239. package/dist/zcl/definition/tstype.d.ts.map +0 -1
  240. package/dist/zcl/definition/tstype.js.map +0 -1
  241. package/dist/zcl/index.d.ts +0 -17
  242. package/dist/zcl/index.d.ts.map +0 -1
  243. package/dist/zcl/index.js +0 -58
  244. package/dist/zcl/index.js.map +0 -1
  245. package/dist/zcl/tstype.d.ts +0 -75
  246. package/dist/zcl/tstype.d.ts.map +0 -1
  247. package/dist/zcl/tstype.js +0 -20
  248. package/dist/zcl/tstype.js.map +0 -1
  249. package/dist/zcl/utils.d.ts +0 -10
  250. package/dist/zcl/utils.d.ts.map +0 -1
  251. package/dist/zcl/utils.js +0 -179
  252. package/dist/zcl/utils.js.map +0 -1
  253. package/dist/zcl/zclFrame.d.ts.map +0 -1
  254. package/dist/zcl/zclFrame.js.map +0 -1
  255. package/dist/zcl/zclHeader.d.ts.map +0 -1
  256. package/dist/zcl/zclHeader.js.map +0 -1
  257. package/dist/zcl/zclStatusError.d.ts +0 -6
  258. package/dist/zcl/zclStatusError.d.ts.map +0 -1
  259. package/dist/zcl/zclStatusError.js +0 -15
  260. package/dist/zcl/zclStatusError.js.map +0 -1
  261. /package/dist/{zcl → zspec/zcl}/definition/tstype.js +0 -0
@@ -22,21 +22,19 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
- const definition_1 = require("./definition");
30
- const zclHeader_1 = __importDefault(require("./zclHeader"));
26
+ exports.ZclFrame = void 0;
31
27
  const Utils = __importStar(require("./utils"));
32
- const buffaloZcl_1 = __importDefault(require("./buffaloZcl"));
33
- const definition_2 = require("./definition");
28
+ const enums_1 = require("./definition/enums");
29
+ const foundation_1 = require("./definition/foundation");
30
+ const zclHeader_1 = require("./zclHeader");
31
+ const buffaloZcl_1 = require("./buffaloZcl");
34
32
  const ListTypes = [
35
- definition_1.BuffaloZclDataType.LIST_UINT8,
36
- definition_1.BuffaloZclDataType.LIST_UINT16,
37
- definition_1.BuffaloZclDataType.LIST_UINT24,
38
- definition_1.BuffaloZclDataType.LIST_UINT32,
39
- definition_1.BuffaloZclDataType.LIST_ZONEINFO,
33
+ enums_1.BuffaloZclDataType.LIST_UINT8,
34
+ enums_1.BuffaloZclDataType.LIST_UINT16,
35
+ enums_1.BuffaloZclDataType.LIST_UINT24,
36
+ enums_1.BuffaloZclDataType.LIST_UINT32,
37
+ enums_1.BuffaloZclDataType.LIST_ZONEINFO,
40
38
  ];
41
39
  class ZclFrame {
42
40
  header;
@@ -58,18 +56,18 @@ class ZclFrame {
58
56
  static create(frameType, direction, disableDefaultResponse, manufacturerCode, transactionSequenceNumber, commandKey, clusterKey, payload, customClusters, reservedBits = 0) {
59
57
  const cluster = Utils.getCluster(clusterKey, manufacturerCode, customClusters);
60
58
  let command = null;
61
- if (frameType === definition_2.FrameType.GLOBAL) {
59
+ if (frameType === enums_1.FrameType.GLOBAL) {
62
60
  command = Utils.getGlobalCommand(commandKey);
63
61
  }
64
62
  else {
65
- command = direction === definition_1.Direction.CLIENT_TO_SERVER ?
63
+ command = direction === enums_1.Direction.CLIENT_TO_SERVER ?
66
64
  cluster.getCommand(commandKey) : cluster.getCommandResponse(commandKey);
67
65
  }
68
- const header = new zclHeader_1.default({ reservedBits, frameType, direction, disableDefaultResponse, manufacturerSpecific: manufacturerCode != null }, manufacturerCode, transactionSequenceNumber, command.ID);
66
+ const header = new zclHeader_1.ZclHeader({ reservedBits, frameType, direction, disableDefaultResponse, manufacturerSpecific: manufacturerCode != null }, manufacturerCode, transactionSequenceNumber, command.ID);
69
67
  return new ZclFrame(header, payload, cluster, command);
70
68
  }
71
69
  toBuffer() {
72
- const buffalo = new buffaloZcl_1.default(Buffer.alloc(250));
70
+ const buffalo = new buffaloZcl_1.BuffaloZcl(Buffer.alloc(250));
73
71
  this.header.write(buffalo);
74
72
  if (this.header.isGlobal) {
75
73
  this.writePayloadGlobal(buffalo);
@@ -83,7 +81,7 @@ class ZclFrame {
83
81
  return buffalo.getWritten();
84
82
  }
85
83
  writePayloadGlobal(buffalo) {
86
- const command = Object.values(definition_1.Foundation).find((c) => c.ID === this.command.ID);
84
+ const command = Object.values(foundation_1.Foundation).find((c) => c.ID === this.command.ID);
87
85
  if (command.parseStrategy === 'repetitive') {
88
86
  for (const entry of this.payload) {
89
87
  for (const parameter of command.parameters) {
@@ -91,7 +89,7 @@ class ZclFrame {
91
89
  if (!ZclFrame.conditionsValid(parameter, entry, null)) {
92
90
  continue;
93
91
  }
94
- if (parameter.type === definition_1.BuffaloZclDataType.USE_DATA_TYPE && typeof entry.dataType === 'number') {
92
+ if (parameter.type === enums_1.BuffaloZclDataType.USE_DATA_TYPE && typeof entry.dataType === 'number') {
95
93
  // We need to grab the dataType to parse useDataType
96
94
  options.dataType = entry.dataType;
97
95
  }
@@ -108,8 +106,8 @@ class ZclFrame {
108
106
  /* istanbul ignore else */
109
107
  if (command.parseStrategy === 'oneof') {
110
108
  /* istanbul ignore else */
111
- if ([definition_1.Foundation.discoverRsp, definition_1.Foundation.discoverCommandsRsp,
112
- definition_1.Foundation.discoverCommandsGenRsp, definition_1.Foundation.discoverExtRsp].includes(command)) {
109
+ if ([foundation_1.Foundation.discoverRsp, foundation_1.Foundation.discoverCommandsRsp,
110
+ foundation_1.Foundation.discoverCommandsGenRsp, foundation_1.Foundation.discoverExtRsp].includes(command)) {
113
111
  buffalo.writeUInt8(this.payload.discComplete);
114
112
  for (const entry of this.payload.attrInfos) {
115
113
  for (const parameter of command.parameters) {
@@ -125,7 +123,7 @@ class ZclFrame {
125
123
  if (!ZclFrame.conditionsValid(parameter, this.payload, null)) {
126
124
  continue;
127
125
  }
128
- if (!this.payload.hasOwnProperty(parameter.name)) {
126
+ if (this.payload[parameter.name] == undefined) {
129
127
  throw new Error(`Parameter '${parameter.name}' is missing`);
130
128
  }
131
129
  buffalo.write(parameter.type, this.payload[parameter.name], {});
@@ -138,14 +136,14 @@ class ZclFrame {
138
136
  if (!header) {
139
137
  throw new Error("Invalid ZclHeader.");
140
138
  }
141
- const buffalo = new buffaloZcl_1.default(buffer, header.length);
139
+ const buffalo = new buffaloZcl_1.BuffaloZcl(buffer, header.length);
142
140
  const cluster = Utils.getCluster(clusterID, header.manufacturerCode, customClusters);
143
141
  let command = null;
144
142
  if (header.isGlobal) {
145
143
  command = Utils.getGlobalCommand(header.commandIdentifier);
146
144
  }
147
145
  else {
148
- command = header.frameControl.direction === definition_1.Direction.CLIENT_TO_SERVER ?
146
+ command = header.frameControl.direction === enums_1.Direction.CLIENT_TO_SERVER ?
149
147
  cluster.getCommand(header.commandIdentifier) : cluster.getCommandResponse(header.commandIdentifier);
150
148
  }
151
149
  const payload = this.parsePayload(header, cluster, buffalo);
@@ -163,7 +161,7 @@ class ZclFrame {
163
161
  }
164
162
  }
165
163
  static parsePayloadCluster(header, cluster, buffalo) {
166
- const command = header.frameControl.direction === definition_1.Direction.CLIENT_TO_SERVER ?
164
+ const command = header.frameControl.direction === enums_1.Direction.CLIENT_TO_SERVER ?
167
165
  cluster.getCommand(header.commandIdentifier) : cluster.getCommandResponse(header.commandIdentifier);
168
166
  const payload = {};
169
167
  for (const parameter of command.parameters) {
@@ -184,7 +182,7 @@ class ZclFrame {
184
182
  return payload;
185
183
  }
186
184
  static parsePayloadGlobal(header, buffalo) {
187
- const command = Object.values(definition_1.Foundation).find((c) => c.ID === header.commandIdentifier);
185
+ const command = Object.values(foundation_1.Foundation).find((c) => c.ID === header.commandIdentifier);
188
186
  if (command.parseStrategy === 'repetitive') {
189
187
  const payload = [];
190
188
  while (buffalo.isMore()) {
@@ -195,17 +193,18 @@ class ZclFrame {
195
193
  if (!this.conditionsValid(parameter, entry, buffalo.getBuffer().length - buffalo.getPosition())) {
196
194
  continue;
197
195
  }
198
- if (parameter.type === definition_1.BuffaloZclDataType.USE_DATA_TYPE && typeof entry.dataType === 'number') {
196
+ if (parameter.type === enums_1.BuffaloZclDataType.USE_DATA_TYPE && typeof entry.dataType === 'number') {
199
197
  // We need to grab the dataType to parse useDataType
200
198
  options.dataType = entry.dataType;
201
- if (entry.dataType === definition_1.DataType.CHAR_STR && entry.hasOwnProperty('attrId')) {
202
- // For Xiaomi struct parsing we need to pass the attributeID.
203
- options.attrId = entry.attrId;
199
+ if (entry.dataType === enums_1.DataType.CHAR_STR && entry.attrId === 65281) {
200
+ // [workaround] parse char str as Xiaomi struct
201
+ options.dataType = enums_1.BuffaloZclDataType.MI_STRUCT;
204
202
  }
205
203
  }
206
204
  entry[parameter.name] = buffalo.read(parameter.type, options);
207
205
  // TODO: not needed, but temp workaroudn to make payload equal to that of zcl-packet
208
- if (parameter.type === definition_1.BuffaloZclDataType.USE_DATA_TYPE && entry.dataType === definition_1.DataType.STRUCT) {
206
+ // XXX: is this still needed?
207
+ if (parameter.type === enums_1.BuffaloZclDataType.USE_DATA_TYPE && entry.dataType === enums_1.DataType.STRUCT) {
209
208
  entry['structElms'] = entry.attrData;
210
209
  entry['numElms'] = entry.attrData.length;
211
210
  }
@@ -226,8 +225,8 @@ class ZclFrame {
226
225
  /* istanbul ignore else */
227
226
  if (command.parseStrategy === 'oneof') {
228
227
  /* istanbul ignore else */
229
- if ([definition_1.Foundation.discoverRsp, definition_1.Foundation.discoverCommandsRsp,
230
- definition_1.Foundation.discoverCommandsGenRsp, definition_1.Foundation.discoverExtRsp].includes(command)) {
228
+ if ([foundation_1.Foundation.discoverRsp, foundation_1.Foundation.discoverCommandsRsp,
229
+ foundation_1.Foundation.discoverCommandsGenRsp, foundation_1.Foundation.discoverExtRsp].includes(command)) {
231
230
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
232
231
  const payload = {
233
232
  discComplete: buffalo.readUInt8(),
@@ -250,35 +249,46 @@ class ZclFrame {
250
249
  */
251
250
  static conditionsValid(parameter, entry, remainingBufferBytes) {
252
251
  if (parameter.conditions) {
253
- const failedCondition = parameter.conditions.find((condition) => {
254
- if (condition.type === 'statusEquals') {
255
- return entry.status !== condition.value;
256
- }
257
- else if (condition.type == 'statusNotEquals') {
258
- return entry.status === condition.value;
259
- }
260
- else if (condition.type == 'directionEquals') {
261
- return entry.direction !== condition.value;
262
- }
263
- else if (condition.type == 'bitMaskSet') {
264
- return (entry[condition.param] & condition.mask) !== condition.mask;
265
- }
266
- else if (condition.type == 'bitFieldEnum') {
267
- return ((entry[condition.param] >> condition.offset) & ((1 << condition.size) - 1)) !== condition.value;
268
- }
269
- else if (remainingBufferBytes != null && condition.type == 'minimumRemainingBufferBytes') {
270
- return remainingBufferBytes < condition.value;
271
- }
272
- else {
273
- /* istanbul ignore else */
274
- if (condition.type == 'dataTypeValueTypeEquals') {
275
- return Utils.IsDataTypeAnalogOrDiscrete(entry.dataType) !== condition.value;
252
+ for (const condition of parameter.conditions) {
253
+ switch (condition.type) {
254
+ case enums_1.ParameterCondition.STATUS_EQUAL: {
255
+ if (entry.status !== condition.value)
256
+ return false;
257
+ break;
258
+ }
259
+ case enums_1.ParameterCondition.STATUS_NOT_EQUAL: {
260
+ if (entry.status === condition.value)
261
+ return false;
262
+ break;
263
+ }
264
+ case enums_1.ParameterCondition.DIRECTION_EQUAL: {
265
+ if (entry.direction !== condition.value)
266
+ return false;
267
+ break;
268
+ }
269
+ case enums_1.ParameterCondition.BITMASK_SET: {
270
+ if ((entry[condition.param] & condition.mask) !== condition.mask)
271
+ return false;
272
+ break;
273
+ }
274
+ case enums_1.ParameterCondition.BITFIELD_ENUM: {
275
+ if (((entry[condition.param] >> condition.offset) & ((1 << condition.size) - 1)) !== condition.value)
276
+ return false;
277
+ break;
278
+ }
279
+ case enums_1.ParameterCondition.MINIMUM_REMAINING_BUFFER_BYTES: {
280
+ if (remainingBufferBytes != null && (remainingBufferBytes < (condition.value)))
281
+ return false;
282
+ break;
283
+ }
284
+ case enums_1.ParameterCondition.DATA_TYPE_CLASS_EQUAL: {
285
+ if (Utils.getDataTypeClass(entry.dataType) !== condition.value)
286
+ return false;
287
+ break;
276
288
  }
277
289
  }
278
- });
279
- if (failedCondition) {
280
- return false;
281
290
  }
291
+ ;
282
292
  }
283
293
  return true;
284
294
  }
@@ -290,5 +300,5 @@ class ZclFrame {
290
300
  return this.command.name === commandName;
291
301
  }
292
302
  }
293
- exports.default = ZclFrame;
303
+ exports.ZclFrame = ZclFrame;
294
304
  //# sourceMappingURL=zclFrame.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zclFrame.js","sourceRoot":"","sources":["../../../src/zspec/zcl/zclFrame.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" />
2
- import { FrameControl } from './definition';
3
- import BuffaloZcl from './buffaloZcl';
4
- declare class ZclHeader {
2
+ import { FrameControl } from './definition/tstype';
3
+ import { BuffaloZcl } from './buffaloZcl';
4
+ export declare class ZclHeader {
5
5
  readonly frameControl: FrameControl;
6
6
  readonly manufacturerCode: number | null;
7
7
  readonly transactionSequenceNumber: number;
@@ -14,5 +14,4 @@ declare class ZclHeader {
14
14
  write(buffalo: BuffaloZcl): void;
15
15
  static fromBuffer(buffer: Buffer): ZclHeader | undefined;
16
16
  }
17
- export default ZclHeader;
18
17
  //# sourceMappingURL=zclHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zclHeader.d.ts","sourceRoot":"","sources":["../../../src/zspec/zcl/zclHeader.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAsBxC,qBAAa,SAAS;IAClB,SAAgB,YAAY,EAAE,YAAY,CAAC;IAC3C,SAAgB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,SAAgB,yBAAyB,EAAE,MAAM,CAAC;IAClD,SAAgB,iBAAiB,EAAE,MAAM,CAAC;gBAE9B,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM;IAOrI,sDAAsD;IACtD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAEM,KAAK,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;WAmBzB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;CAgClE"}
@@ -1,14 +1,27 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const definition_1 = require("./definition");
7
- const buffaloZcl_1 = __importDefault(require("./buffaloZcl"));
8
- const logger_1 = require("../utils/logger");
3
+ exports.ZclHeader = void 0;
4
+ const enums_1 = require("./definition/enums");
5
+ const buffaloZcl_1 = require("./buffaloZcl");
6
+ const logger_1 = require("../../utils/logger");
9
7
  const NS = 'zh:zcl:header';
10
8
  const HEADER_MINIMAL_LENGTH = 3;
11
9
  const HEADER_WITH_MANUF_LENGTH = HEADER_MINIMAL_LENGTH + 2;
10
+ /** ZCL Header frame control frame type */
11
+ const HEADER_CTRL_FRAME_TYPE_MASK = 0x03;
12
+ const HEADER_CTRL_FRAME_TYPE_BIT = 0;
13
+ /** ZCL Header frame control manufacturer specific */
14
+ const HEADER_CTRL_MANUF_SPE_MASK = 0x04;
15
+ const HEADER_CTRL_MANUF_SPE_BIT = 2;
16
+ /** ZCL Header frame control direction */
17
+ const HEADER_CTRL_DIRECTION_MASK = 0x08;
18
+ const HEADER_CTRL_DIRECTION_BIT = 3;
19
+ /** ZCL Header frame control disable default response */
20
+ const HEADER_CTRL_DISABLE_DEF_RESP_MASK = 0x10;
21
+ const HEADER_CTRL_DISABLE_DEF_RESP_BIT = 4;
22
+ /** ZCL Header frame control reserved */
23
+ const HEADER_CTRL_RESERVED_MASK = 0xE0;
24
+ const HEADER_CTRL_RESERVED_BIT = 5;
12
25
  class ZclHeader {
13
26
  frameControl;
14
27
  manufacturerCode;
@@ -25,17 +38,17 @@ class ZclHeader {
25
38
  return this.manufacturerCode === null ? HEADER_MINIMAL_LENGTH : HEADER_WITH_MANUF_LENGTH;
26
39
  }
27
40
  get isGlobal() {
28
- return this.frameControl.frameType === definition_1.FrameType.GLOBAL;
41
+ return this.frameControl.frameType === enums_1.FrameType.GLOBAL;
29
42
  }
30
43
  get isSpecific() {
31
- return this.frameControl.frameType === definition_1.FrameType.SPECIFIC;
44
+ return this.frameControl.frameType === enums_1.FrameType.SPECIFIC;
32
45
  }
33
46
  write(buffalo) {
34
- const frameControl = ((this.frameControl.frameType & 0x03) |
35
- (((this.frameControl.manufacturerSpecific ? 1 : 0) << 2) & 0x04) |
36
- ((this.frameControl.direction << 3) & 0x08) |
37
- (((this.frameControl.disableDefaultResponse ? 1 : 0) << 4) & 0x10) |
38
- ((this.frameControl.reservedBits << 5) & 0xE0));
47
+ const frameControl = (((this.frameControl.frameType << HEADER_CTRL_FRAME_TYPE_BIT) & HEADER_CTRL_FRAME_TYPE_MASK) |
48
+ (((this.frameControl.manufacturerSpecific ? 1 : 0) << HEADER_CTRL_MANUF_SPE_BIT) & HEADER_CTRL_MANUF_SPE_MASK) |
49
+ ((this.frameControl.direction << HEADER_CTRL_DIRECTION_BIT) & HEADER_CTRL_DIRECTION_MASK) |
50
+ (((this.frameControl.disableDefaultResponse ? 1 : 0) << HEADER_CTRL_DISABLE_DEF_RESP_BIT) & HEADER_CTRL_DISABLE_DEF_RESP_MASK) |
51
+ ((this.frameControl.reservedBits << HEADER_CTRL_RESERVED_BIT) & HEADER_CTRL_RESERVED_MASK));
39
52
  buffalo.writeUInt8(frameControl);
40
53
  if (this.frameControl.manufacturerSpecific) {
41
54
  buffalo.writeUInt16(this.manufacturerCode);
@@ -49,14 +62,14 @@ class ZclHeader {
49
62
  logger_1.logger.debug(`ZclHeader is too short.`, NS);
50
63
  return undefined;
51
64
  }
52
- const buffalo = new buffaloZcl_1.default(buffer);
65
+ const buffalo = new buffaloZcl_1.BuffaloZcl(buffer);
53
66
  const frameControlValue = buffalo.readUInt8();
54
67
  const frameControl = {
55
- frameType: frameControlValue & 0x03,
56
- manufacturerSpecific: ((frameControlValue >> 2) & 0x01) === 1,
57
- direction: (frameControlValue >> 3) & 0x01,
58
- disableDefaultResponse: ((frameControlValue >> 4) & 0x01) === 1,
59
- reservedBits: frameControlValue >> 5,
68
+ frameType: (frameControlValue & HEADER_CTRL_FRAME_TYPE_MASK) >> HEADER_CTRL_FRAME_TYPE_BIT,
69
+ manufacturerSpecific: ((frameControlValue & HEADER_CTRL_MANUF_SPE_MASK) >> HEADER_CTRL_MANUF_SPE_BIT) === 1,
70
+ direction: (frameControlValue & HEADER_CTRL_DIRECTION_MASK) >> HEADER_CTRL_DIRECTION_BIT,
71
+ disableDefaultResponse: ((frameControlValue & HEADER_CTRL_DISABLE_DEF_RESP_MASK) >> HEADER_CTRL_DISABLE_DEF_RESP_BIT) === 1,
72
+ reservedBits: (frameControlValue & HEADER_CTRL_RESERVED_MASK) >> HEADER_CTRL_RESERVED_BIT,
60
73
  };
61
74
  let manufacturerCode = null;
62
75
  if (frameControl.manufacturerSpecific) {
@@ -71,5 +84,5 @@ class ZclHeader {
71
84
  return new ZclHeader(frameControl, manufacturerCode, transactionSequenceNumber, commandIdentifier);
72
85
  }
73
86
  }
74
- exports.default = ZclHeader;
87
+ exports.ZclHeader = ZclHeader;
75
88
  //# sourceMappingURL=zclHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zclHeader.js","sourceRoot":"","sources":["../../../src/zspec/zcl/zclHeader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Status } from './definition/status';
2
+ export declare class ZclStatusError extends Error {
3
+ code: Status;
4
+ constructor(code: Status);
5
+ }
6
+ //# sourceMappingURL=zclStatusError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zclStatusError.d.ts","sourceRoot":"","sources":["../../../src/zspec/zcl/zclStatusError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,qBAAqB,CAAC;AAE3C,qBAAa,cAAe,SAAQ,KAAK;IAC9B,IAAI,EAAE,MAAM,CAAC;gBAEP,IAAI,EAAE,MAAM;CAI5B"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZclStatusError = void 0;
4
+ const status_1 = require("./definition/status");
5
+ class ZclStatusError extends Error {
6
+ code;
7
+ constructor(code) {
8
+ super(`Status '${status_1.Status[code]}'`);
9
+ this.code = code;
10
+ }
11
+ }
12
+ exports.ZclStatusError = ZclStatusError;
13
+ //# sourceMappingURL=zclStatusError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zclStatusError.js","sourceRoot":"","sources":["../../../src/zspec/zcl/zclStatusError.ts"],"names":[],"mappings":";;;AAAA,gDAA2C;AAE3C,MAAa,cAAe,SAAQ,KAAK;IAC9B,IAAI,CAAS;IAEpB,YAAa,IAAY;QACrB,KAAK,CAAC,WAAW,eAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;CACJ;AAPD,wCAOC"}