@willieee802/zigbee-herdsman 0.36.0 → 0.48.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (428) hide show
  1. package/.release-please-manifest.json +1 -1
  2. package/CHANGELOG.md +317 -0
  3. package/dist/adapter/adapter.d.ts +14 -13
  4. package/dist/adapter/adapter.d.ts.map +1 -1
  5. package/dist/adapter/adapter.js +15 -17
  6. package/dist/adapter/adapter.js.map +1 -1
  7. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts +14 -12
  8. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts.map +1 -1
  9. package/dist/adapter/deconz/adapter/deconzAdapter.js +118 -128
  10. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
  11. package/dist/adapter/deconz/driver/driver.d.ts.map +1 -1
  12. package/dist/adapter/deconz/driver/driver.js +44 -44
  13. package/dist/adapter/deconz/driver/driver.js.map +1 -1
  14. package/dist/adapter/deconz/driver/frameParser.js +43 -43
  15. package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
  16. package/dist/adapter/deconz/driver/parser.js +6 -6
  17. package/dist/adapter/deconz/driver/parser.js.map +1 -1
  18. package/dist/adapter/deconz/driver/writer.js +3 -3
  19. package/dist/adapter/deconz/driver/writer.js.map +1 -1
  20. package/dist/adapter/ember/adapter/emberAdapter.d.ts +32 -36
  21. package/dist/adapter/ember/adapter/emberAdapter.d.ts.map +1 -1
  22. package/dist/adapter/ember/adapter/emberAdapter.js +418 -446
  23. package/dist/adapter/ember/adapter/emberAdapter.js.map +1 -1
  24. package/dist/adapter/ember/adapter/endpoints.d.ts +5 -3
  25. package/dist/adapter/ember/adapter/endpoints.d.ts.map +1 -1
  26. package/dist/adapter/ember/adapter/endpoints.js +33 -31
  27. package/dist/adapter/ember/adapter/endpoints.js.map +1 -1
  28. package/dist/adapter/ember/adapter/oneWaitress.d.ts +10 -2
  29. package/dist/adapter/ember/adapter/oneWaitress.d.ts.map +1 -1
  30. package/dist/adapter/ember/adapter/oneWaitress.js +19 -5
  31. package/dist/adapter/ember/adapter/oneWaitress.js.map +1 -1
  32. package/dist/adapter/ember/adapter/requestQueue.d.ts +2 -4
  33. package/dist/adapter/ember/adapter/requestQueue.d.ts.map +1 -1
  34. package/dist/adapter/ember/adapter/requestQueue.js +16 -21
  35. package/dist/adapter/ember/adapter/requestQueue.js.map +1 -1
  36. package/dist/adapter/ember/adapter/tokensManager.d.ts.map +1 -1
  37. package/dist/adapter/ember/adapter/tokensManager.js +23 -20
  38. package/dist/adapter/ember/adapter/tokensManager.js.map +1 -1
  39. package/dist/adapter/ember/consts.d.ts +0 -7
  40. package/dist/adapter/ember/consts.d.ts.map +1 -1
  41. package/dist/adapter/ember/consts.js +2 -9
  42. package/dist/adapter/ember/consts.js.map +1 -1
  43. package/dist/adapter/ember/enums.d.ts +12 -14
  44. package/dist/adapter/ember/enums.d.ts.map +1 -1
  45. package/dist/adapter/ember/enums.js +12 -14
  46. package/dist/adapter/ember/enums.js.map +1 -1
  47. package/dist/adapter/ember/ezsp/buffalo.js +4 -4
  48. package/dist/adapter/ember/ezsp/buffalo.js.map +1 -1
  49. package/dist/adapter/ember/ezsp/ezsp.d.ts +1 -2
  50. package/dist/adapter/ember/ezsp/ezsp.d.ts.map +1 -1
  51. package/dist/adapter/ember/ezsp/ezsp.js +218 -199
  52. package/dist/adapter/ember/ezsp/ezsp.js.map +1 -1
  53. package/dist/adapter/ember/types.d.ts +9 -9
  54. package/dist/adapter/ember/types.d.ts.map +1 -1
  55. package/dist/adapter/ember/uart/ash.d.ts +11 -5
  56. package/dist/adapter/ember/uart/ash.d.ts.map +1 -1
  57. package/dist/adapter/ember/uart/ash.js +125 -93
  58. package/dist/adapter/ember/uart/ash.js.map +1 -1
  59. package/dist/adapter/ember/uart/consts.d.ts +1 -1
  60. package/dist/adapter/ember/uart/consts.js +1 -1
  61. package/dist/adapter/ember/uart/parser.d.ts.map +1 -1
  62. package/dist/adapter/ember/uart/parser.js +5 -9
  63. package/dist/adapter/ember/uart/parser.js.map +1 -1
  64. package/dist/adapter/ember/uart/queues.d.ts.map +1 -1
  65. package/dist/adapter/ember/uart/queues.js +3 -1
  66. package/dist/adapter/ember/uart/queues.js.map +1 -1
  67. package/dist/adapter/ember/uart/writer.d.ts.map +1 -1
  68. package/dist/adapter/ember/uart/writer.js +4 -6
  69. package/dist/adapter/ember/uart/writer.js.map +1 -1
  70. package/dist/adapter/ember/zdo.d.ts +6 -2
  71. package/dist/adapter/ember/zdo.d.ts.map +1 -1
  72. package/dist/adapter/ember/zdo.js +2 -2
  73. package/dist/adapter/ember/zdo.js.map +1 -1
  74. package/dist/adapter/events.d.ts +17 -23
  75. package/dist/adapter/events.d.ts.map +1 -1
  76. package/dist/adapter/events.js +1 -2
  77. package/dist/adapter/events.js.map +1 -1
  78. package/dist/adapter/ezsp/adapter/backup.d.ts +0 -1
  79. package/dist/adapter/ezsp/adapter/backup.d.ts.map +1 -1
  80. package/dist/adapter/ezsp/adapter/backup.js +3 -7
  81. package/dist/adapter/ezsp/adapter/backup.js.map +1 -1
  82. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +13 -10
  83. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
  84. package/dist/adapter/ezsp/adapter/ezspAdapter.js +79 -72
  85. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
  86. package/dist/adapter/ezsp/driver/commands.d.ts.map +1 -1
  87. package/dist/adapter/ezsp/driver/commands.js +3 -5
  88. package/dist/adapter/ezsp/driver/commands.js.map +1 -1
  89. package/dist/adapter/ezsp/driver/driver.d.ts +1 -4
  90. package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -1
  91. package/dist/adapter/ezsp/driver/driver.js +101 -122
  92. package/dist/adapter/ezsp/driver/driver.js.map +1 -1
  93. package/dist/adapter/ezsp/driver/ezsp.d.ts.map +1 -1
  94. package/dist/adapter/ezsp/driver/ezsp.js +61 -50
  95. package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
  96. package/dist/adapter/ezsp/driver/multicast.d.ts.map +1 -1
  97. package/dist/adapter/ezsp/driver/multicast.js +8 -12
  98. package/dist/adapter/ezsp/driver/multicast.js.map +1 -1
  99. package/dist/adapter/ezsp/driver/parser.js +5 -5
  100. package/dist/adapter/ezsp/driver/parser.js.map +1 -1
  101. package/dist/adapter/ezsp/driver/types/basic.js +1 -1
  102. package/dist/adapter/ezsp/driver/types/basic.js.map +1 -1
  103. package/dist/adapter/ezsp/driver/types/named.js +2 -2
  104. package/dist/adapter/ezsp/driver/types/named.js.map +1 -1
  105. package/dist/adapter/ezsp/driver/types/struct.js +2 -2
  106. package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
  107. package/dist/adapter/ezsp/driver/uart.d.ts.map +1 -1
  108. package/dist/adapter/ezsp/driver/uart.js +46 -46
  109. package/dist/adapter/ezsp/driver/uart.js.map +1 -1
  110. package/dist/adapter/ezsp/driver/writer.js +3 -6
  111. package/dist/adapter/ezsp/driver/writer.js.map +1 -1
  112. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts +0 -1
  113. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts.map +1 -1
  114. package/dist/adapter/z-stack/adapter/adapter-backup.js +25 -29
  115. package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -1
  116. package/dist/adapter/z-stack/adapter/endpoints.js +4 -4
  117. package/dist/adapter/z-stack/adapter/endpoints.js.map +1 -1
  118. package/dist/adapter/z-stack/adapter/manager.d.ts +1 -4
  119. package/dist/adapter/z-stack/adapter/manager.d.ts.map +1 -1
  120. package/dist/adapter/z-stack/adapter/manager.js +52 -61
  121. package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
  122. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +12 -10
  123. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts.map +1 -1
  124. package/dist/adapter/z-stack/adapter/zStackAdapter.js +92 -68
  125. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
  126. package/dist/adapter/z-stack/unpi/parser.js +6 -6
  127. package/dist/adapter/z-stack/unpi/parser.js.map +1 -1
  128. package/dist/adapter/z-stack/unpi/writer.js +4 -7
  129. package/dist/adapter/z-stack/unpi/writer.js.map +1 -1
  130. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts +4 -2
  131. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts.map +1 -1
  132. package/dist/adapter/z-stack/znp/buffaloZnp.js +154 -25
  133. package/dist/adapter/z-stack/znp/buffaloZnp.js.map +1 -1
  134. package/dist/adapter/z-stack/znp/definition.d.ts.map +1 -1
  135. package/dist/adapter/z-stack/znp/definition.js +2 -1
  136. package/dist/adapter/z-stack/znp/definition.js.map +1 -1
  137. package/dist/adapter/z-stack/znp/tstype.d.ts +4 -3
  138. package/dist/adapter/z-stack/znp/tstype.d.ts.map +1 -1
  139. package/dist/adapter/z-stack/znp/znp.d.ts.map +1 -1
  140. package/dist/adapter/z-stack/znp/znp.js +18 -25
  141. package/dist/adapter/z-stack/znp/znp.js.map +1 -1
  142. package/dist/adapter/z-stack/znp/zpiObject.js +2 -2
  143. package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
  144. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +13 -12
  145. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts.map +1 -1
  146. package/dist/adapter/zigate/adapter/zigateAdapter.js +81 -90
  147. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
  148. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts +7 -8
  149. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts.map +1 -1
  150. package/dist/adapter/zigate/driver/buffaloZiGate.js +150 -100
  151. package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
  152. package/dist/adapter/zigate/driver/commandType.d.ts +2 -1
  153. package/dist/adapter/zigate/driver/commandType.d.ts.map +1 -1
  154. package/dist/adapter/zigate/driver/commandType.js +56 -52
  155. package/dist/adapter/zigate/driver/commandType.js.map +1 -1
  156. package/dist/adapter/zigate/driver/frame.d.ts.map +1 -1
  157. package/dist/adapter/zigate/driver/frame.js +8 -8
  158. package/dist/adapter/zigate/driver/frame.js.map +1 -1
  159. package/dist/adapter/zigate/driver/messageType.d.ts +2 -1
  160. package/dist/adapter/zigate/driver/messageType.d.ts.map +1 -1
  161. package/dist/adapter/zigate/driver/messageType.js +113 -108
  162. package/dist/adapter/zigate/driver/messageType.js.map +1 -1
  163. package/dist/adapter/zigate/driver/parameterType.d.ts +8 -1
  164. package/dist/adapter/zigate/driver/parameterType.d.ts.map +1 -1
  165. package/dist/adapter/zigate/driver/parameterType.js +9 -0
  166. package/dist/adapter/zigate/driver/parameterType.js.map +1 -1
  167. package/dist/adapter/zigate/driver/ziGateObject.d.ts.map +1 -1
  168. package/dist/adapter/zigate/driver/ziGateObject.js +9 -9
  169. package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -1
  170. package/dist/adapter/zigate/driver/zigate.d.ts.map +1 -1
  171. package/dist/adapter/zigate/driver/zigate.js +23 -31
  172. package/dist/adapter/zigate/driver/zigate.js.map +1 -1
  173. package/dist/buffalo/buffalo.d.ts +23 -19
  174. package/dist/buffalo/buffalo.d.ts.map +1 -1
  175. package/dist/buffalo/buffalo.js +74 -169
  176. package/dist/buffalo/buffalo.js.map +1 -1
  177. package/dist/buffalo/index.d.ts +1 -2
  178. package/dist/buffalo/index.d.ts.map +1 -1
  179. package/dist/buffalo/index.js +1 -26
  180. package/dist/buffalo/index.js.map +1 -1
  181. package/dist/controller/controller.d.ts +8 -5
  182. package/dist/controller/controller.d.ts.map +1 -1
  183. package/dist/controller/controller.js +181 -126
  184. package/dist/controller/controller.js.map +1 -1
  185. package/dist/controller/database.d.ts +1 -0
  186. package/dist/controller/database.d.ts.map +1 -1
  187. package/dist/controller/database.js +7 -10
  188. package/dist/controller/database.js.map +1 -1
  189. package/dist/controller/events.d.ts +2 -2
  190. package/dist/controller/events.d.ts.map +1 -1
  191. package/dist/controller/events.js +4 -0
  192. package/dist/controller/events.js.map +1 -1
  193. package/dist/controller/greenPower.d.ts +2 -1
  194. package/dist/controller/greenPower.d.ts.map +1 -1
  195. package/dist/controller/greenPower.js +51 -57
  196. package/dist/controller/greenPower.js.map +1 -1
  197. package/dist/controller/helpers/request.d.ts +3 -3
  198. package/dist/controller/helpers/request.d.ts.map +1 -1
  199. package/dist/controller/helpers/request.js +2 -2
  200. package/dist/controller/helpers/request.js.map +1 -1
  201. package/dist/controller/helpers/requestQueue.d.ts.map +1 -1
  202. package/dist/controller/helpers/requestQueue.js +26 -36
  203. package/dist/controller/helpers/requestQueue.js.map +1 -1
  204. package/dist/controller/helpers/zclFrameConverter.d.ts +4 -3
  205. package/dist/controller/helpers/zclFrameConverter.d.ts.map +1 -1
  206. package/dist/controller/helpers/zclFrameConverter.js +33 -14
  207. package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
  208. package/dist/controller/model/device.d.ts +12 -5
  209. package/dist/controller/model/device.d.ts.map +1 -1
  210. package/dist/controller/model/device.js +105 -86
  211. package/dist/controller/model/device.js.map +1 -1
  212. package/dist/controller/model/endpoint.d.ts +22 -17
  213. package/dist/controller/model/endpoint.d.ts.map +1 -1
  214. package/dist/controller/model/endpoint.js +139 -228
  215. package/dist/controller/model/endpoint.js.map +1 -1
  216. package/dist/controller/model/group.d.ts +1 -1
  217. package/dist/controller/model/group.d.ts.map +1 -1
  218. package/dist/controller/model/group.js +18 -18
  219. package/dist/controller/model/group.js.map +1 -1
  220. package/dist/controller/touchlink.js +25 -28
  221. package/dist/controller/touchlink.js.map +1 -1
  222. package/dist/index.d.ts +5 -3
  223. package/dist/index.d.ts.map +1 -1
  224. package/dist/index.js +8 -5
  225. package/dist/index.js.map +1 -1
  226. package/dist/utils/logger.d.ts +9 -0
  227. package/dist/utils/logger.d.ts.map +1 -0
  228. package/dist/utils/logger.js +14 -0
  229. package/dist/utils/logger.js.map +1 -0
  230. package/dist/zspec/consts.d.ts +60 -0
  231. package/dist/zspec/consts.d.ts.map +1 -0
  232. package/dist/zspec/consts.js +64 -0
  233. package/dist/zspec/consts.js.map +1 -0
  234. package/dist/zspec/enums.d.ts +19 -0
  235. package/dist/zspec/enums.d.ts.map +1 -0
  236. package/dist/zspec/enums.js +28 -0
  237. package/dist/zspec/enums.js.map +1 -0
  238. package/dist/zspec/index.d.ts +4 -0
  239. package/dist/zspec/index.d.ts.map +1 -0
  240. package/dist/zspec/index.js +43 -0
  241. package/dist/zspec/index.js.map +1 -0
  242. package/dist/zspec/tstypes.d.ts +19 -0
  243. package/dist/zspec/tstypes.d.ts.map +1 -0
  244. package/dist/{buffalo/tstype.js → zspec/tstypes.js} +1 -1
  245. package/dist/zspec/tstypes.js.map +1 -0
  246. package/dist/zspec/utils.d.ts +14 -0
  247. package/dist/zspec/utils.d.ts.map +1 -0
  248. package/dist/zspec/utils.js +29 -0
  249. package/dist/zspec/utils.js.map +1 -0
  250. package/dist/zspec/zcl/buffaloZcl.d.ts +55 -0
  251. package/dist/zspec/zcl/buffaloZcl.d.ts.map +1 -0
  252. package/dist/zspec/zcl/buffaloZcl.js +929 -0
  253. package/dist/zspec/zcl/buffaloZcl.js.map +1 -0
  254. package/dist/zspec/zcl/definition/cluster.d.ts +3 -0
  255. package/dist/zspec/zcl/definition/cluster.d.ts.map +1 -0
  256. package/dist/zspec/zcl/definition/cluster.js +5500 -0
  257. package/dist/zspec/zcl/definition/cluster.js.map +1 -0
  258. package/dist/zspec/zcl/definition/consts.d.ts +9 -0
  259. package/dist/zspec/zcl/definition/consts.d.ts.map +1 -0
  260. package/dist/zspec/zcl/definition/consts.js +27 -0
  261. package/dist/zspec/zcl/definition/consts.js.map +1 -0
  262. package/dist/zspec/zcl/definition/enums.d.ts +177 -0
  263. package/dist/zspec/zcl/definition/enums.d.ts.map +1 -0
  264. package/dist/zspec/zcl/definition/enums.js +187 -0
  265. package/dist/zspec/zcl/definition/enums.js.map +1 -0
  266. package/dist/zspec/zcl/definition/foundation.d.ts +11 -0
  267. package/dist/zspec/zcl/definition/foundation.d.ts.map +1 -0
  268. package/dist/zspec/zcl/definition/foundation.js +241 -0
  269. package/dist/zspec/zcl/definition/foundation.js.map +1 -0
  270. package/dist/zspec/zcl/definition/manufacturerCode.d.ts +727 -0
  271. package/dist/zspec/zcl/definition/manufacturerCode.d.ts.map +1 -0
  272. package/dist/zspec/zcl/definition/manufacturerCode.js +733 -0
  273. package/dist/zspec/zcl/definition/manufacturerCode.js.map +1 -0
  274. package/dist/zspec/zcl/definition/status.d.ts +69 -0
  275. package/dist/zspec/zcl/definition/status.d.ts.map +1 -0
  276. package/dist/zspec/zcl/definition/status.js +74 -0
  277. package/dist/zspec/zcl/definition/status.js.map +1 -0
  278. package/dist/zspec/zcl/definition/tstype.d.ts +114 -0
  279. package/dist/zspec/zcl/definition/tstype.d.ts.map +1 -0
  280. package/dist/{zcl/zclHeader.js → zspec/zcl/definition/tstype.js} +2 -1
  281. package/dist/zspec/zcl/definition/tstype.js.map +1 -0
  282. package/dist/zspec/zcl/index.d.ts +11 -0
  283. package/dist/zspec/zcl/index.d.ts.map +1 -0
  284. package/dist/zspec/zcl/index.js +47 -0
  285. package/dist/zspec/zcl/index.js.map +1 -0
  286. package/dist/zspec/zcl/utils.d.ts +7 -0
  287. package/dist/zspec/zcl/utils.d.ts.map +1 -0
  288. package/dist/zspec/zcl/utils.js +234 -0
  289. package/dist/zspec/zcl/utils.js.map +1 -0
  290. package/dist/zspec/zcl/zclFrame.d.ts +36 -0
  291. package/dist/zspec/zcl/zclFrame.d.ts.map +1 -0
  292. package/dist/zspec/zcl/zclFrame.js +304 -0
  293. package/dist/zspec/zcl/zclFrame.js.map +1 -0
  294. package/dist/zspec/zcl/zclHeader.d.ts +17 -0
  295. package/dist/zspec/zcl/zclHeader.d.ts.map +1 -0
  296. package/dist/zspec/zcl/zclHeader.js +88 -0
  297. package/dist/zspec/zcl/zclHeader.js.map +1 -0
  298. package/dist/zspec/zcl/zclStatusError.d.ts +6 -0
  299. package/dist/zspec/zcl/zclStatusError.d.ts.map +1 -0
  300. package/dist/zspec/zcl/zclStatusError.js +13 -0
  301. package/dist/zspec/zcl/zclStatusError.js.map +1 -0
  302. package/dist/zspec/zdo/buffaloZdo.d.ts +438 -0
  303. package/dist/zspec/zdo/buffaloZdo.d.ts.map +1 -0
  304. package/dist/zspec/zdo/buffaloZdo.js +1892 -0
  305. package/dist/zspec/zdo/buffaloZdo.js.map +1 -0
  306. package/dist/zspec/zdo/definition/clusters.d.ts +624 -0
  307. package/dist/zspec/zdo/definition/clusters.d.ts.map +1 -0
  308. package/dist/zspec/zdo/definition/clusters.js +687 -0
  309. package/dist/zspec/zdo/definition/clusters.js.map +1 -0
  310. package/dist/zspec/zdo/definition/consts.d.ts +13 -0
  311. package/dist/zspec/zdo/definition/consts.d.ts.map +1 -0
  312. package/dist/zspec/zdo/definition/consts.js +16 -0
  313. package/dist/zspec/zdo/definition/consts.js.map +1 -0
  314. package/dist/zspec/zdo/definition/enums.d.ts +75 -0
  315. package/dist/zspec/zdo/definition/enums.d.ts.map +1 -0
  316. package/dist/zspec/zdo/definition/enums.js +97 -0
  317. package/dist/zspec/zdo/definition/enums.js.map +1 -0
  318. package/dist/zspec/zdo/definition/status.d.ts +99 -0
  319. package/dist/zspec/zdo/definition/status.d.ts.map +1 -0
  320. package/dist/zspec/zdo/definition/status.js +109 -0
  321. package/dist/zspec/zdo/definition/status.js.map +1 -0
  322. package/dist/zspec/zdo/definition/tstypes.d.ts +787 -0
  323. package/dist/zspec/zdo/definition/tstypes.d.ts.map +1 -0
  324. package/dist/{zcl/definition/tstype.js → zspec/zdo/definition/tstypes.js} +1 -1
  325. package/dist/zspec/zdo/definition/tstypes.js.map +1 -0
  326. package/dist/zspec/zdo/index.d.ts +7 -0
  327. package/dist/zspec/zdo/index.d.ts.map +1 -0
  328. package/dist/zspec/zdo/index.js +39 -0
  329. package/dist/zspec/zdo/index.js.map +1 -0
  330. package/dist/zspec/zdo/utils.d.ts +25 -0
  331. package/dist/zspec/zdo/utils.d.ts.map +1 -0
  332. package/dist/zspec/zdo/utils.js +75 -0
  333. package/dist/zspec/zdo/utils.js.map +1 -0
  334. package/dist/zspec/zdo/zdoStatusError.d.ts +6 -0
  335. package/dist/zspec/zdo/zdoStatusError.d.ts.map +1 -0
  336. package/dist/zspec/zdo/zdoStatusError.js +13 -0
  337. package/dist/zspec/zdo/zdoStatusError.js.map +1 -0
  338. package/examples/join-and-log.js +7 -12
  339. package/package.json +5 -5
  340. package/dist/adapter/zigate/debug.d.ts +0 -8
  341. package/dist/adapter/zigate/debug.d.ts.map +0 -1
  342. package/dist/adapter/zigate/debug.js +0 -20
  343. package/dist/adapter/zigate/debug.js.map +0 -1
  344. package/dist/buffalo/tstype.d.ts +0 -9
  345. package/dist/buffalo/tstype.d.ts.map +0 -1
  346. package/dist/buffalo/tstype.js.map +0 -1
  347. package/dist/controller/logger-stub.d.ts +0 -7
  348. package/dist/controller/logger-stub.d.ts.map +0 -1
  349. package/dist/controller/logger-stub.js +0 -3
  350. package/dist/controller/logger-stub.js.map +0 -1
  351. package/dist/zcl/buffaloZcl.d.ts +0 -42
  352. package/dist/zcl/buffaloZcl.d.ts.map +0 -1
  353. package/dist/zcl/buffaloZcl.js +0 -595
  354. package/dist/zcl/buffaloZcl.js.map +0 -1
  355. package/dist/zcl/definition/buffaloZclDataType.d.ts +0 -18
  356. package/dist/zcl/definition/buffaloZclDataType.d.ts.map +0 -1
  357. package/dist/zcl/definition/buffaloZclDataType.js +0 -21
  358. package/dist/zcl/definition/buffaloZclDataType.js.map +0 -1
  359. package/dist/zcl/definition/cluster.d.ts +0 -30
  360. package/dist/zcl/definition/cluster.d.ts.map +0 -1
  361. package/dist/zcl/definition/cluster.js +0 -5531
  362. package/dist/zcl/definition/cluster.js.map +0 -1
  363. package/dist/zcl/definition/dataType.d.ts +0 -60
  364. package/dist/zcl/definition/dataType.d.ts.map +0 -1
  365. package/dist/zcl/definition/dataType.js +0 -65
  366. package/dist/zcl/definition/dataType.js.map +0 -1
  367. package/dist/zcl/definition/direction.d.ts +0 -6
  368. package/dist/zcl/definition/direction.d.ts.map +0 -1
  369. package/dist/zcl/definition/direction.js +0 -9
  370. package/dist/zcl/definition/direction.js.map +0 -1
  371. package/dist/zcl/definition/endpointDeviceType.d.ts +0 -5
  372. package/dist/zcl/definition/endpointDeviceType.d.ts.map +0 -1
  373. package/dist/zcl/definition/endpointDeviceType.js +0 -16
  374. package/dist/zcl/definition/endpointDeviceType.js.map +0 -1
  375. package/dist/zcl/definition/foundation.d.ts +0 -12
  376. package/dist/zcl/definition/foundation.d.ts.map +0 -1
  377. package/dist/zcl/definition/foundation.js +0 -168
  378. package/dist/zcl/definition/foundation.js.map +0 -1
  379. package/dist/zcl/definition/frameControl.d.ts +0 -11
  380. package/dist/zcl/definition/frameControl.d.ts.map +0 -1
  381. package/dist/zcl/definition/frameControl.js +0 -3
  382. package/dist/zcl/definition/frameControl.js.map +0 -1
  383. package/dist/zcl/definition/frameType.d.ts +0 -6
  384. package/dist/zcl/definition/frameType.d.ts.map +0 -1
  385. package/dist/zcl/definition/frameType.js +0 -9
  386. package/dist/zcl/definition/frameType.js.map +0 -1
  387. package/dist/zcl/definition/index.d.ts +0 -14
  388. package/dist/zcl/definition/index.d.ts.map +0 -1
  389. package/dist/zcl/definition/index.js +0 -52
  390. package/dist/zcl/definition/index.js.map +0 -1
  391. package/dist/zcl/definition/manufacturerCode.d.ts +0 -1078
  392. package/dist/zcl/definition/manufacturerCode.d.ts.map +0 -1
  393. package/dist/zcl/definition/manufacturerCode.js +0 -1083
  394. package/dist/zcl/definition/manufacturerCode.js.map +0 -1
  395. package/dist/zcl/definition/powerSource.d.ts +0 -5
  396. package/dist/zcl/definition/powerSource.d.ts.map +0 -1
  397. package/dist/zcl/definition/powerSource.js +0 -13
  398. package/dist/zcl/definition/powerSource.js.map +0 -1
  399. package/dist/zcl/definition/status.d.ts +0 -39
  400. package/dist/zcl/definition/status.d.ts.map +0 -1
  401. package/dist/zcl/definition/status.js +0 -42
  402. package/dist/zcl/definition/status.js.map +0 -1
  403. package/dist/zcl/definition/tstype.d.ts +0 -17
  404. package/dist/zcl/definition/tstype.d.ts.map +0 -1
  405. package/dist/zcl/definition/tstype.js.map +0 -1
  406. package/dist/zcl/index.d.ts +0 -17
  407. package/dist/zcl/index.d.ts.map +0 -1
  408. package/dist/zcl/index.js +0 -56
  409. package/dist/zcl/index.js.map +0 -1
  410. package/dist/zcl/tstype.d.ts +0 -57
  411. package/dist/zcl/tstype.d.ts.map +0 -1
  412. package/dist/zcl/tstype.js +0 -10
  413. package/dist/zcl/tstype.js.map +0 -1
  414. package/dist/zcl/utils.d.ts +0 -7
  415. package/dist/zcl/utils.d.ts.map +0 -1
  416. package/dist/zcl/utils.js +0 -165
  417. package/dist/zcl/utils.js.map +0 -1
  418. package/dist/zcl/zclFrame.d.ts +0 -41
  419. package/dist/zcl/zclFrame.d.ts.map +0 -1
  420. package/dist/zcl/zclFrame.js +0 -352
  421. package/dist/zcl/zclFrame.js.map +0 -1
  422. package/dist/zcl/zclHeader.d.ts +0 -9
  423. package/dist/zcl/zclHeader.d.ts.map +0 -1
  424. package/dist/zcl/zclHeader.js.map +0 -1
  425. package/dist/zcl/zclStatusError.d.ts +0 -6
  426. package/dist/zcl/zclStatusError.d.ts.map +0 -1
  427. package/dist/zcl/zclStatusError.js +0 -15
  428. package/dist/zcl/zclStatusError.js.map +0 -1
@@ -0,0 +1,177 @@
1
+ /**
2
+ * This is the specification-defined data types. It should not contain "custom" types and is expected to have [0x00-0xFF] values.
3
+ *
4
+ * - Values of analog types may be added to or subtracted from other values of the same type and are typically
5
+ * used to measure the value of properties in the real world that vary continuously over a range.
6
+ * - Values of discrete data types only have meaning as individual values and may not be added or subtracted.
7
+ */
8
+ export declare enum DataType {
9
+ /** length=0 */
10
+ NO_DATA = 0,
11
+ /** class=discrete, length=1 */
12
+ DATA8 = 8,
13
+ /** class=discrete, length=2 */
14
+ DATA16 = 9,
15
+ /** class=discrete, length=3 */
16
+ DATA24 = 10,
17
+ /** class=discrete, length=4 */
18
+ DATA32 = 11,
19
+ /** class=discrete, length=5 */
20
+ DATA40 = 12,
21
+ /** class=discrete, length=6 */
22
+ DATA48 = 13,
23
+ /** class=discrete, length=7 */
24
+ DATA56 = 14,
25
+ /** class=discrete, length=8 */
26
+ DATA64 = 15,
27
+ /** 0x00=false, 0x01=true, class=discrete, length=1, non-value=0xFF */
28
+ BOOLEAN = 16,
29
+ /** class=discrete, length=1 */
30
+ BITMAP8 = 24,
31
+ /** class=discrete, length=2 */
32
+ BITMAP16 = 25,
33
+ /** class=discrete, length=3 */
34
+ BITMAP24 = 26,
35
+ /** class=discrete, length=4 */
36
+ BITMAP32 = 27,
37
+ /** class=discrete, length=5 */
38
+ BITMAP40 = 28,
39
+ /** class=discrete, length=6 */
40
+ BITMAP48 = 29,
41
+ /** class=discrete, length=7 */
42
+ BITMAP56 = 30,
43
+ /** class=discrete, length=8 */
44
+ BITMAP64 = 31,
45
+ /** class=discrete, length=1, non-value=0xFF */
46
+ UINT8 = 32,
47
+ /** class=analog, length=2, non-value=0xFFFF */
48
+ UINT16 = 33,
49
+ /** class=analog, length=3, non-value=0xFFFFFF */
50
+ UINT24 = 34,
51
+ /** class=analog, length=4, non-value=0xFFFFFFFF */
52
+ UINT32 = 35,
53
+ /** class=analog, length=5, non-value=0xFFFFFFFFFF */
54
+ UINT40 = 36,
55
+ /** class=analog, length=6, non-value=0xFFFFFFFFFFFF */
56
+ UINT48 = 37,
57
+ /** class=analog, length=7, non-value=0xFFFFFFFFFFFFFF */
58
+ UINT56 = 38,
59
+ /** class=analog, length=8, non-value=0xFFFFFFFFFFFFFFFF */
60
+ UINT64 = 39,
61
+ /** class=analog, length=1, non-value=0x80 */
62
+ INT8 = 40,
63
+ /** class=analog, length=2, non-value=0x8000 */
64
+ INT16 = 41,
65
+ /** class=analog, length=3, non-value=0x800000 */
66
+ INT24 = 42,
67
+ /** class=analog, length=4, non-value=0x80000000 */
68
+ INT32 = 43,
69
+ /** class=analog, length=5, non-value=0x8000000000 */
70
+ INT40 = 44,
71
+ /** class=analog, length=6, non-value=0x800000000000 */
72
+ INT48 = 45,
73
+ /** class=analog, length=7, non-value=0x80000000000000 */
74
+ INT56 = 46,
75
+ /** class=analog, length=8, non-value=0x8000000000000000 */
76
+ INT64 = 47,
77
+ /** class=discrete, length=1, non-value=0xFF */
78
+ ENUM8 = 48,
79
+ /** class=discrete, length=2, non-value=0xFF */
80
+ ENUM16 = 49,
81
+ /** class=analog, length=2, non-value=NaN */
82
+ SEMI_PREC = 56,
83
+ /** class=analog, length=4, non-value=NaN */
84
+ SINGLE_PREC = 57,
85
+ /** class=analog, length=8, non-value=NaN */
86
+ DOUBLE_PREC = 58,
87
+ /** class=composite, length=0x00-0xFE, non-value=0xFF */
88
+ OCTET_STR = 65,
89
+ /** class=composite, length=0x00-0xFE, non-value=0xFF */
90
+ CHAR_STR = 66,
91
+ /** class=composite, length=0x0000-0xFFFE, non-value=0xFFFF */
92
+ LONG_OCTET_STR = 67,
93
+ /** class=composite, length=0x0000-0xFFFE, non-value=0xFFFF */
94
+ LONG_CHAR_STR = 68,
95
+ /** class=composite, length=variable, non-value=[0]==0xFFFF */
96
+ ARRAY = 72,
97
+ /** class=composite, length=variable, non-value=(length) */
98
+ STRUCT = 76,
99
+ /** class=composite, length=max(0xFFFE * DataType) non-value=(length=0xFFFF) */
100
+ SET = 80,
101
+ /** @see SET Same but allows duplicate values */
102
+ BAG = 81,
103
+ /** Time of Day, @see ZclTimeOfDay , class=analog, length=4, unused-subfield=0xFF, non-value=0xFFFFFFFF */
104
+ TOD = 224,
105
+ /** @see ZclDate , class=analog, length=4, unused-subfield=0xFF, non-value=0xFFFFFFFF */
106
+ DATE = 225,
107
+ /** Number of seconds since 2000-01-01 00:00:00 UTC, class=analog, length=4, non-value=0xFFFFFFFF */
108
+ UTC = 226,
109
+ /** Defined in 2.6.1.3 of ZCL spec, class=discrete, length=2, non-value=0xFFFF */
110
+ CLUSTER_ID = 232,
111
+ /** Defined in 2.6.1.4 of ZCL spec, class=discrete, length=2, non-value=0xFFFF */
112
+ ATTR_ID = 233,
113
+ /** BACnet OID, allow internetworking (format defined in BACnet ref), class=discrete, length=4, non-value=0xFFFFFFFF */
114
+ BAC_OID = 234,
115
+ /** class=discrete, length=8, non-value=0xFFFFFFFFFFFFFFFF */
116
+ IEEE_ADDR = 240,
117
+ /** Any 128-bit value, class=discrete, length=16 */
118
+ SEC_KEY = 241,
119
+ /** length=0 */
120
+ UNKNOWN = 255
121
+ }
122
+ /** @TODO strings for backwards compat in tests. Should be moved to numbers. */
123
+ export declare enum DataTypeClass {
124
+ ANALOG = "ANALOG",
125
+ DISCRETE = "DISCRETE"
126
+ }
127
+ export declare enum BuffaloZclDataType {
128
+ USE_DATA_TYPE = 1000,
129
+ LIST_UINT8 = 1001,
130
+ LIST_UINT16 = 1002,
131
+ LIST_UINT24 = 1003,
132
+ LIST_UINT32 = 1004,
133
+ LIST_ZONEINFO = 1005,
134
+ EXTENSION_FIELD_SETS = 1006,
135
+ LIST_THERMO_TRANSITIONS = 1007,
136
+ BUFFER = 1008,
137
+ GDP_FRAME = 1009,
138
+ STRUCTURED_SELECTOR = 1010,
139
+ LIST_TUYA_DATAPOINT_VALUES = 1011,
140
+ LIST_MIBOXER_ZONES = 1012,
141
+ BIG_ENDIAN_UINT24 = 1013,
142
+ MI_STRUCT = 1014
143
+ }
144
+ /** @TODO strings for backwards compat in tests. Should be moved to numbers. */
145
+ export declare enum ParameterCondition {
146
+ STATUS_EQUAL = "statusEquals",
147
+ STATUS_NOT_EQUAL = "statusNotEquals",
148
+ MINIMUM_REMAINING_BUFFER_BYTES = "minimumRemainingBufferBytes",
149
+ DIRECTION_EQUAL = "directionEquals",
150
+ BITMASK_SET = "bitMaskSet",
151
+ BITFIELD_ENUM = "bitFieldEnum",
152
+ DATA_TYPE_CLASS_EQUAL = "dataTypeValueTypeEquals"
153
+ }
154
+ export declare enum FrameType {
155
+ GLOBAL = 0,
156
+ SPECIFIC = 1
157
+ }
158
+ export declare enum Direction {
159
+ CLIENT_TO_SERVER = 0,
160
+ SERVER_TO_CLIENT = 1
161
+ }
162
+ /**
163
+ * The upper 4 bits of the Indicator subfield for Attributes Structured commands.
164
+ */
165
+ export declare enum StructuredIndicatorType {
166
+ /**
167
+ * Write: Only for attributes of type other than array, structure, set or bag
168
+ *
169
+ * Read: Only for attributes of type other than array or structure
170
+ */
171
+ Whole = 0,
172
+ /** Add element to the set/bag */
173
+ WriteAdd = 16,
174
+ /** Remove element from the set/bag */
175
+ WriteRemove = 32
176
+ }
177
+ //# sourceMappingURL=enums.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../../src/zspec/zcl/definition/enums.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,187 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StructuredIndicatorType = exports.Direction = exports.FrameType = exports.ParameterCondition = exports.BuffaloZclDataType = exports.DataTypeClass = exports.DataType = void 0;
4
+ /**
5
+ * This is the specification-defined data types. It should not contain "custom" types and is expected to have [0x00-0xFF] values.
6
+ *
7
+ * - Values of analog types may be added to or subtracted from other values of the same type and are typically
8
+ * used to measure the value of properties in the real world that vary continuously over a range.
9
+ * - Values of discrete data types only have meaning as individual values and may not be added or subtracted.
10
+ */
11
+ var DataType;
12
+ (function (DataType) {
13
+ /** length=0 */
14
+ DataType[DataType["NO_DATA"] = 0] = "NO_DATA";
15
+ /** class=discrete, length=1 */
16
+ DataType[DataType["DATA8"] = 8] = "DATA8";
17
+ /** class=discrete, length=2 */
18
+ DataType[DataType["DATA16"] = 9] = "DATA16";
19
+ /** class=discrete, length=3 */
20
+ DataType[DataType["DATA24"] = 10] = "DATA24";
21
+ /** class=discrete, length=4 */
22
+ DataType[DataType["DATA32"] = 11] = "DATA32";
23
+ /** class=discrete, length=5 */
24
+ DataType[DataType["DATA40"] = 12] = "DATA40";
25
+ /** class=discrete, length=6 */
26
+ DataType[DataType["DATA48"] = 13] = "DATA48";
27
+ /** class=discrete, length=7 */
28
+ DataType[DataType["DATA56"] = 14] = "DATA56";
29
+ /** class=discrete, length=8 */
30
+ DataType[DataType["DATA64"] = 15] = "DATA64";
31
+ /** 0x00=false, 0x01=true, class=discrete, length=1, non-value=0xFF */
32
+ DataType[DataType["BOOLEAN"] = 16] = "BOOLEAN";
33
+ /** class=discrete, length=1 */
34
+ DataType[DataType["BITMAP8"] = 24] = "BITMAP8";
35
+ /** class=discrete, length=2 */
36
+ DataType[DataType["BITMAP16"] = 25] = "BITMAP16";
37
+ /** class=discrete, length=3 */
38
+ DataType[DataType["BITMAP24"] = 26] = "BITMAP24";
39
+ /** class=discrete, length=4 */
40
+ DataType[DataType["BITMAP32"] = 27] = "BITMAP32";
41
+ /** class=discrete, length=5 */
42
+ DataType[DataType["BITMAP40"] = 28] = "BITMAP40";
43
+ /** class=discrete, length=6 */
44
+ DataType[DataType["BITMAP48"] = 29] = "BITMAP48";
45
+ /** class=discrete, length=7 */
46
+ DataType[DataType["BITMAP56"] = 30] = "BITMAP56";
47
+ /** class=discrete, length=8 */
48
+ DataType[DataType["BITMAP64"] = 31] = "BITMAP64";
49
+ /** class=discrete, length=1, non-value=0xFF */
50
+ DataType[DataType["UINT8"] = 32] = "UINT8";
51
+ /** class=analog, length=2, non-value=0xFFFF */
52
+ DataType[DataType["UINT16"] = 33] = "UINT16";
53
+ /** class=analog, length=3, non-value=0xFFFFFF */
54
+ DataType[DataType["UINT24"] = 34] = "UINT24";
55
+ /** class=analog, length=4, non-value=0xFFFFFFFF */
56
+ DataType[DataType["UINT32"] = 35] = "UINT32";
57
+ /** class=analog, length=5, non-value=0xFFFFFFFFFF */
58
+ DataType[DataType["UINT40"] = 36] = "UINT40";
59
+ /** class=analog, length=6, non-value=0xFFFFFFFFFFFF */
60
+ DataType[DataType["UINT48"] = 37] = "UINT48";
61
+ /** class=analog, length=7, non-value=0xFFFFFFFFFFFFFF */
62
+ DataType[DataType["UINT56"] = 38] = "UINT56";
63
+ /** class=analog, length=8, non-value=0xFFFFFFFFFFFFFFFF */
64
+ DataType[DataType["UINT64"] = 39] = "UINT64";
65
+ /** class=analog, length=1, non-value=0x80 */
66
+ DataType[DataType["INT8"] = 40] = "INT8";
67
+ /** class=analog, length=2, non-value=0x8000 */
68
+ DataType[DataType["INT16"] = 41] = "INT16";
69
+ /** class=analog, length=3, non-value=0x800000 */
70
+ DataType[DataType["INT24"] = 42] = "INT24";
71
+ /** class=analog, length=4, non-value=0x80000000 */
72
+ DataType[DataType["INT32"] = 43] = "INT32";
73
+ /** class=analog, length=5, non-value=0x8000000000 */
74
+ DataType[DataType["INT40"] = 44] = "INT40";
75
+ /** class=analog, length=6, non-value=0x800000000000 */
76
+ DataType[DataType["INT48"] = 45] = "INT48";
77
+ /** class=analog, length=7, non-value=0x80000000000000 */
78
+ DataType[DataType["INT56"] = 46] = "INT56";
79
+ /** class=analog, length=8, non-value=0x8000000000000000 */
80
+ DataType[DataType["INT64"] = 47] = "INT64";
81
+ /** class=discrete, length=1, non-value=0xFF */
82
+ DataType[DataType["ENUM8"] = 48] = "ENUM8";
83
+ /** class=discrete, length=2, non-value=0xFF */
84
+ DataType[DataType["ENUM16"] = 49] = "ENUM16";
85
+ /** class=analog, length=2, non-value=NaN */
86
+ DataType[DataType["SEMI_PREC"] = 56] = "SEMI_PREC";
87
+ /** class=analog, length=4, non-value=NaN */
88
+ DataType[DataType["SINGLE_PREC"] = 57] = "SINGLE_PREC";
89
+ /** class=analog, length=8, non-value=NaN */
90
+ DataType[DataType["DOUBLE_PREC"] = 58] = "DOUBLE_PREC";
91
+ /** class=composite, length=0x00-0xFE, non-value=0xFF */
92
+ DataType[DataType["OCTET_STR"] = 65] = "OCTET_STR";
93
+ /** class=composite, length=0x00-0xFE, non-value=0xFF */
94
+ DataType[DataType["CHAR_STR"] = 66] = "CHAR_STR";
95
+ /** class=composite, length=0x0000-0xFFFE, non-value=0xFFFF */
96
+ DataType[DataType["LONG_OCTET_STR"] = 67] = "LONG_OCTET_STR";
97
+ /** class=composite, length=0x0000-0xFFFE, non-value=0xFFFF */
98
+ DataType[DataType["LONG_CHAR_STR"] = 68] = "LONG_CHAR_STR";
99
+ /** class=composite, length=variable, non-value=[0]==0xFFFF */
100
+ DataType[DataType["ARRAY"] = 72] = "ARRAY";
101
+ /** class=composite, length=variable, non-value=(length) */
102
+ DataType[DataType["STRUCT"] = 76] = "STRUCT";
103
+ /** class=composite, length=max(0xFFFE * DataType) non-value=(length=0xFFFF) */
104
+ DataType[DataType["SET"] = 80] = "SET";
105
+ /** @see SET Same but allows duplicate values */
106
+ DataType[DataType["BAG"] = 81] = "BAG";
107
+ /** Time of Day, @see ZclTimeOfDay , class=analog, length=4, unused-subfield=0xFF, non-value=0xFFFFFFFF */
108
+ DataType[DataType["TOD"] = 224] = "TOD";
109
+ /** @see ZclDate , class=analog, length=4, unused-subfield=0xFF, non-value=0xFFFFFFFF */
110
+ DataType[DataType["DATE"] = 225] = "DATE";
111
+ /** Number of seconds since 2000-01-01 00:00:00 UTC, class=analog, length=4, non-value=0xFFFFFFFF */
112
+ DataType[DataType["UTC"] = 226] = "UTC";
113
+ /** Defined in 2.6.1.3 of ZCL spec, class=discrete, length=2, non-value=0xFFFF */
114
+ DataType[DataType["CLUSTER_ID"] = 232] = "CLUSTER_ID";
115
+ /** Defined in 2.6.1.4 of ZCL spec, class=discrete, length=2, non-value=0xFFFF */
116
+ DataType[DataType["ATTR_ID"] = 233] = "ATTR_ID";
117
+ /** BACnet OID, allow internetworking (format defined in BACnet ref), class=discrete, length=4, non-value=0xFFFFFFFF */
118
+ DataType[DataType["BAC_OID"] = 234] = "BAC_OID";
119
+ /** class=discrete, length=8, non-value=0xFFFFFFFFFFFFFFFF */
120
+ DataType[DataType["IEEE_ADDR"] = 240] = "IEEE_ADDR";
121
+ /** Any 128-bit value, class=discrete, length=16 */
122
+ DataType[DataType["SEC_KEY"] = 241] = "SEC_KEY";
123
+ /** length=0 */
124
+ DataType[DataType["UNKNOWN"] = 255] = "UNKNOWN";
125
+ })(DataType || (exports.DataType = DataType = {}));
126
+ /** @TODO strings for backwards compat in tests. Should be moved to numbers. */
127
+ var DataTypeClass;
128
+ (function (DataTypeClass) {
129
+ DataTypeClass["ANALOG"] = "ANALOG";
130
+ DataTypeClass["DISCRETE"] = "DISCRETE";
131
+ })(DataTypeClass || (exports.DataTypeClass = DataTypeClass = {}));
132
+ var BuffaloZclDataType;
133
+ (function (BuffaloZclDataType) {
134
+ BuffaloZclDataType[BuffaloZclDataType["USE_DATA_TYPE"] = 1000] = "USE_DATA_TYPE";
135
+ BuffaloZclDataType[BuffaloZclDataType["LIST_UINT8"] = 1001] = "LIST_UINT8";
136
+ BuffaloZclDataType[BuffaloZclDataType["LIST_UINT16"] = 1002] = "LIST_UINT16";
137
+ BuffaloZclDataType[BuffaloZclDataType["LIST_UINT24"] = 1003] = "LIST_UINT24";
138
+ BuffaloZclDataType[BuffaloZclDataType["LIST_UINT32"] = 1004] = "LIST_UINT32";
139
+ BuffaloZclDataType[BuffaloZclDataType["LIST_ZONEINFO"] = 1005] = "LIST_ZONEINFO";
140
+ BuffaloZclDataType[BuffaloZclDataType["EXTENSION_FIELD_SETS"] = 1006] = "EXTENSION_FIELD_SETS";
141
+ BuffaloZclDataType[BuffaloZclDataType["LIST_THERMO_TRANSITIONS"] = 1007] = "LIST_THERMO_TRANSITIONS";
142
+ BuffaloZclDataType[BuffaloZclDataType["BUFFER"] = 1008] = "BUFFER";
143
+ BuffaloZclDataType[BuffaloZclDataType["GDP_FRAME"] = 1009] = "GDP_FRAME";
144
+ BuffaloZclDataType[BuffaloZclDataType["STRUCTURED_SELECTOR"] = 1010] = "STRUCTURED_SELECTOR";
145
+ BuffaloZclDataType[BuffaloZclDataType["LIST_TUYA_DATAPOINT_VALUES"] = 1011] = "LIST_TUYA_DATAPOINT_VALUES";
146
+ BuffaloZclDataType[BuffaloZclDataType["LIST_MIBOXER_ZONES"] = 1012] = "LIST_MIBOXER_ZONES";
147
+ BuffaloZclDataType[BuffaloZclDataType["BIG_ENDIAN_UINT24"] = 1013] = "BIG_ENDIAN_UINT24";
148
+ BuffaloZclDataType[BuffaloZclDataType["MI_STRUCT"] = 1014] = "MI_STRUCT";
149
+ })(BuffaloZclDataType || (exports.BuffaloZclDataType = BuffaloZclDataType = {}));
150
+ /** @TODO strings for backwards compat in tests. Should be moved to numbers. */
151
+ var ParameterCondition;
152
+ (function (ParameterCondition) {
153
+ ParameterCondition["STATUS_EQUAL"] = "statusEquals";
154
+ ParameterCondition["STATUS_NOT_EQUAL"] = "statusNotEquals";
155
+ ParameterCondition["MINIMUM_REMAINING_BUFFER_BYTES"] = "minimumRemainingBufferBytes";
156
+ ParameterCondition["DIRECTION_EQUAL"] = "directionEquals";
157
+ ParameterCondition["BITMASK_SET"] = "bitMaskSet";
158
+ ParameterCondition["BITFIELD_ENUM"] = "bitFieldEnum";
159
+ ParameterCondition["DATA_TYPE_CLASS_EQUAL"] = "dataTypeValueTypeEquals";
160
+ })(ParameterCondition || (exports.ParameterCondition = ParameterCondition = {}));
161
+ var FrameType;
162
+ (function (FrameType) {
163
+ FrameType[FrameType["GLOBAL"] = 0] = "GLOBAL";
164
+ FrameType[FrameType["SPECIFIC"] = 1] = "SPECIFIC";
165
+ })(FrameType || (exports.FrameType = FrameType = {}));
166
+ var Direction;
167
+ (function (Direction) {
168
+ Direction[Direction["CLIENT_TO_SERVER"] = 0] = "CLIENT_TO_SERVER";
169
+ Direction[Direction["SERVER_TO_CLIENT"] = 1] = "SERVER_TO_CLIENT";
170
+ })(Direction || (exports.Direction = Direction = {}));
171
+ /**
172
+ * The upper 4 bits of the Indicator subfield for Attributes Structured commands.
173
+ */
174
+ var StructuredIndicatorType;
175
+ (function (StructuredIndicatorType) {
176
+ /**
177
+ * Write: Only for attributes of type other than array, structure, set or bag
178
+ *
179
+ * Read: Only for attributes of type other than array or structure
180
+ */
181
+ StructuredIndicatorType[StructuredIndicatorType["Whole"] = 0] = "Whole";
182
+ /** Add element to the set/bag */
183
+ StructuredIndicatorType[StructuredIndicatorType["WriteAdd"] = 16] = "WriteAdd";
184
+ /** Remove element from the set/bag */
185
+ StructuredIndicatorType[StructuredIndicatorType["WriteRemove"] = 32] = "WriteRemove";
186
+ })(StructuredIndicatorType || (exports.StructuredIndicatorType = StructuredIndicatorType = {}));
187
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/zspec/zcl/definition/enums.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { ParameterDefinition } from './tstype';
2
+ export type FoundationCommandName = ('read' | 'readRsp' | 'write' | 'writeUndiv' | 'writeRsp' | 'writeNoRsp' | 'configReport' | 'configReportRsp' | 'readReportConfig' | 'readReportConfigRsp' | 'report' | 'defaultRsp' | 'discover' | 'discoverRsp' | 'readStructured' | 'writeStructured' | 'writeStructuredRsp' | 'discoverCommands' | 'discoverCommandsRsp' | 'discoverCommandsGen' | 'discoverCommandsGenRsp' | 'discoverExt' | 'discoverExtRsp');
3
+ interface FoundationDefinition {
4
+ ID: number;
5
+ parseStrategy: 'repetitive' | 'flat' | 'oneof';
6
+ parameters: readonly ParameterDefinition[];
7
+ response?: number;
8
+ }
9
+ export declare const Foundation: Readonly<Record<FoundationCommandName, Readonly<FoundationDefinition>>>;
10
+ export {};
11
+ //# sourceMappingURL=foundation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"foundation.d.ts","sourceRoot":"","sources":["../../../../src/zspec/zcl/definition/foundation.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,mBAAmB,EAAC,MAAM,UAAU,CAAC;AAI7C,MAAM,MAAM,qBAAqB,GAAG,CAChC,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,YAAY,GAAG,UAAU,GAAG,YAAY,GAAG,cAAc,GAAG,iBAAiB,GAC5G,kBAAkB,GAAG,qBAAqB,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,aAAa,GAAG,gBAAgB,GACpH,iBAAiB,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,qBAAqB,GAAG,qBAAqB,GAC7G,wBAAwB,GAAG,aAAa,GAAG,gBAAgB,CAC9D,CAAC;AAEF,UAAU,oBAAoB;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;IAC/C,UAAU,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CA0O9F,CAAC"}
@@ -0,0 +1,241 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Foundation = void 0;
4
+ const enums_1 = require("./enums");
5
+ const status_1 = require("./status");
6
+ exports.Foundation = {
7
+ /** Read Attributes */
8
+ read: {
9
+ ID: 0x00,
10
+ parseStrategy: 'repetitive',
11
+ parameters: [
12
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
13
+ ],
14
+ response: 0x01, // readRsp
15
+ },
16
+ /** Read Attributes Response */
17
+ readRsp: {
18
+ ID: 0x01,
19
+ parseStrategy: 'repetitive',
20
+ parameters: [
21
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
22
+ { name: 'status', type: enums_1.DataType.UINT8 },
23
+ { name: 'dataType', type: enums_1.DataType.UINT8, conditions: [{ type: enums_1.ParameterCondition.STATUS_EQUAL, value: status_1.Status.SUCCESS }] },
24
+ { name: 'attrData', type: enums_1.BuffaloZclDataType.USE_DATA_TYPE, conditions: [{ type: enums_1.ParameterCondition.STATUS_EQUAL, value: status_1.Status.SUCCESS }] },
25
+ ],
26
+ },
27
+ /** Write Attributes */
28
+ write: {
29
+ ID: 0x02,
30
+ parseStrategy: 'repetitive',
31
+ parameters: [
32
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
33
+ { name: 'dataType', type: enums_1.DataType.UINT8 },
34
+ { name: 'attrData', type: enums_1.BuffaloZclDataType.USE_DATA_TYPE },
35
+ ],
36
+ response: 0x04, // writeRsp
37
+ },
38
+ /** Write Attributes Undivided */
39
+ writeUndiv: {
40
+ ID: 0x03,
41
+ parseStrategy: 'repetitive',
42
+ parameters: [
43
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
44
+ { name: 'dataType', type: enums_1.DataType.UINT8 },
45
+ { name: 'attrData', type: enums_1.BuffaloZclDataType.USE_DATA_TYPE },
46
+ ],
47
+ },
48
+ /** Write Attributes Response */
49
+ writeRsp: {
50
+ ID: 0x04,
51
+ parseStrategy: 'repetitive',
52
+ parameters: [
53
+ { name: 'status', type: enums_1.DataType.UINT8 },
54
+ { name: 'attrId', type: enums_1.DataType.UINT16, conditions: [{ type: enums_1.ParameterCondition.STATUS_NOT_EQUAL, value: status_1.Status.SUCCESS }] },
55
+ ],
56
+ },
57
+ /** Write Attributes No Response */
58
+ writeNoRsp: {
59
+ ID: 0x05,
60
+ parseStrategy: 'repetitive',
61
+ parameters: [
62
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
63
+ { name: 'dataType', type: enums_1.DataType.UINT8 },
64
+ { name: 'attrData', type: enums_1.BuffaloZclDataType.USE_DATA_TYPE },
65
+ ],
66
+ },
67
+ /** Configure Reporting */
68
+ configReport: {
69
+ ID: 0x06,
70
+ parseStrategy: 'repetitive',
71
+ parameters: [
72
+ { name: 'direction', type: enums_1.DataType.UINT8 },
73
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
74
+ { name: 'dataType', type: enums_1.DataType.UINT8, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.CLIENT_TO_SERVER }] },
75
+ { name: 'minRepIntval', type: enums_1.DataType.UINT16, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.CLIENT_TO_SERVER }] },
76
+ { name: 'maxRepIntval', type: enums_1.DataType.UINT16, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.CLIENT_TO_SERVER }] },
77
+ { name: 'repChange', type: enums_1.BuffaloZclDataType.USE_DATA_TYPE, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.CLIENT_TO_SERVER }, { type: enums_1.ParameterCondition.DATA_TYPE_CLASS_EQUAL, value: enums_1.DataTypeClass.ANALOG }] },
78
+ { name: 'timeout', type: enums_1.DataType.UINT16, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.SERVER_TO_CLIENT }] },
79
+ ],
80
+ response: 0x07, // configReportRsp
81
+ },
82
+ /** Configure Reporting Response */
83
+ configReportRsp: {
84
+ ID: 0x07,
85
+ parseStrategy: 'repetitive',
86
+ parameters: [
87
+ { name: 'status', type: enums_1.DataType.UINT8 },
88
+ // minimumRemainingBufferBytes: if direction is present, attrId is also present
89
+ // https://github.com/Koenkk/zigbee-herdsman/pull/115
90
+ { name: 'direction', type: enums_1.DataType.UINT8, conditions: [{ type: enums_1.ParameterCondition.MINIMUM_REMAINING_BUFFER_BYTES, value: 3 }] },
91
+ { name: 'attrId', type: enums_1.DataType.UINT16, conditions: [{ type: enums_1.ParameterCondition.MINIMUM_REMAINING_BUFFER_BYTES, value: 2 }] },
92
+ ],
93
+ },
94
+ /** Read Reporting Configuration */
95
+ readReportConfig: {
96
+ ID: 0x08,
97
+ parseStrategy: 'repetitive',
98
+ parameters: [
99
+ { name: 'direction', type: enums_1.DataType.UINT8 },
100
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
101
+ ],
102
+ },
103
+ /** Read Reporting Configuration Response */
104
+ readReportConfigRsp: {
105
+ ID: 0x09,
106
+ parseStrategy: 'repetitive',
107
+ parameters: [
108
+ { name: 'direction', type: enums_1.DataType.UINT8 },
109
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
110
+ { name: 'dataType', type: enums_1.DataType.UINT8, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.CLIENT_TO_SERVER }] },
111
+ { name: 'minRepIntval', type: enums_1.DataType.UINT16, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.CLIENT_TO_SERVER }] },
112
+ { name: 'maxRepIntval', type: enums_1.DataType.UINT16, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.CLIENT_TO_SERVER }] },
113
+ { name: 'repChange', type: enums_1.BuffaloZclDataType.USE_DATA_TYPE, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.CLIENT_TO_SERVER }, { type: enums_1.ParameterCondition.DATA_TYPE_CLASS_EQUAL, value: enums_1.DataTypeClass.ANALOG }] },
114
+ { name: 'timeout', type: enums_1.DataType.UINT16, conditions: [{ type: enums_1.ParameterCondition.DIRECTION_EQUAL, value: enums_1.Direction.SERVER_TO_CLIENT }] },
115
+ ],
116
+ },
117
+ /** Report attributes */
118
+ report: {
119
+ ID: 0x0A,
120
+ parseStrategy: 'repetitive',
121
+ parameters: [
122
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
123
+ { name: 'dataType', type: enums_1.DataType.UINT8 },
124
+ { name: 'attrData', type: enums_1.BuffaloZclDataType.USE_DATA_TYPE },
125
+ ],
126
+ },
127
+ /** Default Response */
128
+ defaultRsp: {
129
+ ID: 0x0B,
130
+ parseStrategy: 'flat',
131
+ parameters: [
132
+ { name: 'cmdId', type: enums_1.DataType.UINT8 },
133
+ { name: 'statusCode', type: enums_1.DataType.UINT8 },
134
+ ],
135
+ },
136
+ /** Discover Attributes */
137
+ discover: {
138
+ ID: 0x0C,
139
+ parseStrategy: 'flat',
140
+ parameters: [
141
+ { name: 'startAttrId', type: enums_1.DataType.UINT16 },
142
+ { name: 'maxAttrIds', type: enums_1.DataType.UINT8 },
143
+ ],
144
+ },
145
+ /** Discover Attributes Response */
146
+ discoverRsp: {
147
+ ID: 0x0D,
148
+ parseStrategy: 'oneof',
149
+ parameters: [
150
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
151
+ { name: 'dataType', type: enums_1.DataType.UINT8 },
152
+ ],
153
+ },
154
+ /** Read Attributes Structured */
155
+ readStructured: {
156
+ ID: 0x0E,
157
+ parseStrategy: 'repetitive',
158
+ parameters: [
159
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
160
+ { name: 'selector', type: enums_1.BuffaloZclDataType.STRUCTURED_SELECTOR },
161
+ ],
162
+ },
163
+ /** Write Attributes Structured */
164
+ writeStructured: {
165
+ ID: 0x0F,
166
+ parseStrategy: 'repetitive',
167
+ parameters: [
168
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
169
+ { name: 'selector', type: enums_1.BuffaloZclDataType.STRUCTURED_SELECTOR },
170
+ { name: 'dataType', type: enums_1.DataType.UINT8 },
171
+ { name: 'elementData', type: enums_1.BuffaloZclDataType.USE_DATA_TYPE },
172
+ ],
173
+ response: 0x10, // writeStructuredRsp
174
+ },
175
+ /** Write Attributes Structured response */
176
+ writeStructuredRsp: {
177
+ ID: 0x10,
178
+ parseStrategy: 'repetitive',
179
+ // contains only one SUCCESS record for all written attributes if all written successfully
180
+ parameters: [
181
+ { name: 'status', type: enums_1.DataType.UINT8 },
182
+ { name: 'attrId', type: enums_1.DataType.UINT16, conditions: [{ type: enums_1.ParameterCondition.STATUS_NOT_EQUAL, value: status_1.Status.SUCCESS }] },
183
+ // always one zero-octet if failed attribute not of type array or structure, otherwise can also be zero if no info on which element caused failure
184
+ { name: 'selector', type: enums_1.BuffaloZclDataType.STRUCTURED_SELECTOR, conditions: [{ type: enums_1.ParameterCondition.STATUS_NOT_EQUAL, value: status_1.Status.SUCCESS }] },
185
+ ],
186
+ },
187
+ /** Discover Commands Received */
188
+ discoverCommands: {
189
+ ID: 0x11,
190
+ parseStrategy: 'flat',
191
+ parameters: [
192
+ { name: 'startCmdId', type: enums_1.DataType.UINT8 },
193
+ { name: 'maxCmdIds', type: enums_1.DataType.UINT8 },
194
+ ],
195
+ },
196
+ /** Discover Commands Received Response */
197
+ discoverCommandsRsp: {
198
+ ID: 0x12,
199
+ parseStrategy: 'oneof',
200
+ parameters: [
201
+ { name: 'cmdId', type: enums_1.DataType.UINT8 },
202
+ ],
203
+ },
204
+ /** Discover Commands Generated */
205
+ discoverCommandsGen: {
206
+ ID: 0x13,
207
+ parseStrategy: 'flat',
208
+ parameters: [
209
+ { name: 'startCmdId', type: enums_1.DataType.UINT8 },
210
+ { name: 'maxCmdIds', type: enums_1.DataType.UINT8 },
211
+ ],
212
+ },
213
+ /** Discover Commands Generated Response */
214
+ discoverCommandsGenRsp: {
215
+ ID: 0x14,
216
+ parseStrategy: 'oneof',
217
+ parameters: [
218
+ { name: 'cmdId', type: enums_1.DataType.UINT8 },
219
+ ],
220
+ },
221
+ /** Discover Attributes Extended */
222
+ discoverExt: {
223
+ ID: 0x15,
224
+ parseStrategy: 'flat',
225
+ parameters: [
226
+ { name: 'startAttrId', type: enums_1.DataType.UINT16 },
227
+ { name: 'maxAttrIds', type: enums_1.DataType.UINT8 },
228
+ ],
229
+ },
230
+ /** Discover Attributes Extended Response */
231
+ discoverExtRsp: {
232
+ ID: 0x16,
233
+ parseStrategy: 'oneof',
234
+ parameters: [
235
+ { name: 'attrId', type: enums_1.DataType.UINT16 },
236
+ { name: 'dataType', type: enums_1.DataType.UINT8 },
237
+ { name: 'access', type: enums_1.DataType.UINT8 },
238
+ ],
239
+ },
240
+ };
241
+ //# sourceMappingURL=foundation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"foundation.js","sourceRoot":"","sources":["../../../../src/zspec/zcl/definition/foundation.ts"],"names":[],"mappings":"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"}