@willieee802/zigbee-herdsman 0.34.3 → 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 (438) hide show
  1. package/.release-please-manifest.json +1 -1
  2. package/CHANGELOG.md +403 -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 +60 -71
  21. package/dist/adapter/ember/adapter/emberAdapter.d.ts.map +1 -1
  22. package/dist/adapter/ember/adapter/emberAdapter.js +453 -492
  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 +16 -5
  29. package/dist/adapter/ember/adapter/oneWaitress.d.ts.map +1 -1
  30. package/dist/adapter/ember/adapter/oneWaitress.js +19 -4
  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 +17 -22
  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 +133 -145
  44. package/dist/adapter/ember/enums.d.ts.map +1 -1
  45. package/dist/adapter/ember/enums.js +132 -148
  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 -3
  50. package/dist/adapter/ember/ezsp/ezsp.d.ts.map +1 -1
  51. package/dist/adapter/ember/ezsp/ezsp.js +224 -208
  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 +27 -14
  56. package/dist/adapter/ember/uart/ash.d.ts.map +1 -1
  57. package/dist/adapter/ember/uart/ash.js +158 -109
  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 +4 -1
  79. package/dist/adapter/ezsp/adapter/backup.d.ts.map +1 -1
  80. package/dist/adapter/ezsp/adapter/backup.js +35 -7
  81. package/dist/adapter/ezsp/adapter/backup.js.map +1 -1
  82. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +12 -9
  83. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
  84. package/dist/adapter/ezsp/adapter/ezspAdapter.js +79 -75
  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 +4 -2
  90. package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -1
  91. package/dist/adapter/ezsp/driver/driver.js +183 -119
  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 +62 -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.d.ts +1 -1
  106. package/dist/adapter/ezsp/driver/types/struct.d.ts.map +1 -1
  107. package/dist/adapter/ezsp/driver/types/struct.js +2 -2
  108. package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
  109. package/dist/adapter/ezsp/driver/uart.d.ts.map +1 -1
  110. package/dist/adapter/ezsp/driver/uart.js +46 -46
  111. package/dist/adapter/ezsp/driver/uart.js.map +1 -1
  112. package/dist/adapter/ezsp/driver/utils/index.d.ts +2 -1
  113. package/dist/adapter/ezsp/driver/utils/index.d.ts.map +1 -1
  114. package/dist/adapter/ezsp/driver/utils/index.js +2 -2
  115. package/dist/adapter/ezsp/driver/utils/index.js.map +1 -1
  116. package/dist/adapter/ezsp/driver/writer.js +3 -6
  117. package/dist/adapter/ezsp/driver/writer.js.map +1 -1
  118. package/dist/adapter/serialPort.d.ts +3 -0
  119. package/dist/adapter/serialPort.d.ts.map +1 -1
  120. package/dist/adapter/serialPort.js +16 -23
  121. package/dist/adapter/serialPort.js.map +1 -1
  122. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts +0 -1
  123. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts.map +1 -1
  124. package/dist/adapter/z-stack/adapter/adapter-backup.js +25 -29
  125. package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -1
  126. package/dist/adapter/z-stack/adapter/endpoints.js +4 -4
  127. package/dist/adapter/z-stack/adapter/endpoints.js.map +1 -1
  128. package/dist/adapter/z-stack/adapter/manager.d.ts +1 -4
  129. package/dist/adapter/z-stack/adapter/manager.d.ts.map +1 -1
  130. package/dist/adapter/z-stack/adapter/manager.js +52 -61
  131. package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
  132. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +12 -10
  133. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts.map +1 -1
  134. package/dist/adapter/z-stack/adapter/zStackAdapter.js +102 -84
  135. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
  136. package/dist/adapter/z-stack/unpi/parser.js +6 -6
  137. package/dist/adapter/z-stack/unpi/parser.js.map +1 -1
  138. package/dist/adapter/z-stack/unpi/writer.js +4 -7
  139. package/dist/adapter/z-stack/unpi/writer.js.map +1 -1
  140. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts +4 -2
  141. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts.map +1 -1
  142. package/dist/adapter/z-stack/znp/buffaloZnp.js +154 -25
  143. package/dist/adapter/z-stack/znp/buffaloZnp.js.map +1 -1
  144. package/dist/adapter/z-stack/znp/definition.d.ts.map +1 -1
  145. package/dist/adapter/z-stack/znp/definition.js +2 -1
  146. package/dist/adapter/z-stack/znp/definition.js.map +1 -1
  147. package/dist/adapter/z-stack/znp/tstype.d.ts +4 -3
  148. package/dist/adapter/z-stack/znp/tstype.d.ts.map +1 -1
  149. package/dist/adapter/z-stack/znp/znp.d.ts.map +1 -1
  150. package/dist/adapter/z-stack/znp/znp.js +18 -25
  151. package/dist/adapter/z-stack/znp/znp.js.map +1 -1
  152. package/dist/adapter/z-stack/znp/zpiObject.js +2 -2
  153. package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
  154. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +13 -12
  155. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts.map +1 -1
  156. package/dist/adapter/zigate/adapter/zigateAdapter.js +81 -90
  157. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
  158. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts +7 -8
  159. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts.map +1 -1
  160. package/dist/adapter/zigate/driver/buffaloZiGate.js +150 -100
  161. package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
  162. package/dist/adapter/zigate/driver/commandType.d.ts +2 -1
  163. package/dist/adapter/zigate/driver/commandType.d.ts.map +1 -1
  164. package/dist/adapter/zigate/driver/commandType.js +56 -52
  165. package/dist/adapter/zigate/driver/commandType.js.map +1 -1
  166. package/dist/adapter/zigate/driver/frame.d.ts.map +1 -1
  167. package/dist/adapter/zigate/driver/frame.js +8 -8
  168. package/dist/adapter/zigate/driver/frame.js.map +1 -1
  169. package/dist/adapter/zigate/driver/messageType.d.ts +2 -1
  170. package/dist/adapter/zigate/driver/messageType.d.ts.map +1 -1
  171. package/dist/adapter/zigate/driver/messageType.js +113 -108
  172. package/dist/adapter/zigate/driver/messageType.js.map +1 -1
  173. package/dist/adapter/zigate/driver/parameterType.d.ts +8 -1
  174. package/dist/adapter/zigate/driver/parameterType.d.ts.map +1 -1
  175. package/dist/adapter/zigate/driver/parameterType.js +9 -0
  176. package/dist/adapter/zigate/driver/parameterType.js.map +1 -1
  177. package/dist/adapter/zigate/driver/ziGateObject.d.ts.map +1 -1
  178. package/dist/adapter/zigate/driver/ziGateObject.js +9 -9
  179. package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -1
  180. package/dist/adapter/zigate/driver/zigate.d.ts.map +1 -1
  181. package/dist/adapter/zigate/driver/zigate.js +23 -31
  182. package/dist/adapter/zigate/driver/zigate.js.map +1 -1
  183. package/dist/buffalo/buffalo.d.ts +23 -19
  184. package/dist/buffalo/buffalo.d.ts.map +1 -1
  185. package/dist/buffalo/buffalo.js +74 -169
  186. package/dist/buffalo/buffalo.js.map +1 -1
  187. package/dist/buffalo/index.d.ts +1 -2
  188. package/dist/buffalo/index.d.ts.map +1 -1
  189. package/dist/buffalo/index.js +1 -26
  190. package/dist/buffalo/index.js.map +1 -1
  191. package/dist/controller/controller.d.ts +8 -5
  192. package/dist/controller/controller.d.ts.map +1 -1
  193. package/dist/controller/controller.js +181 -126
  194. package/dist/controller/controller.js.map +1 -1
  195. package/dist/controller/database.d.ts +1 -0
  196. package/dist/controller/database.d.ts.map +1 -1
  197. package/dist/controller/database.js +7 -10
  198. package/dist/controller/database.js.map +1 -1
  199. package/dist/controller/events.d.ts +2 -2
  200. package/dist/controller/events.d.ts.map +1 -1
  201. package/dist/controller/events.js +4 -0
  202. package/dist/controller/events.js.map +1 -1
  203. package/dist/controller/greenPower.d.ts +2 -1
  204. package/dist/controller/greenPower.d.ts.map +1 -1
  205. package/dist/controller/greenPower.js +51 -57
  206. package/dist/controller/greenPower.js.map +1 -1
  207. package/dist/controller/helpers/request.d.ts +3 -3
  208. package/dist/controller/helpers/request.d.ts.map +1 -1
  209. package/dist/controller/helpers/request.js +2 -2
  210. package/dist/controller/helpers/request.js.map +1 -1
  211. package/dist/controller/helpers/requestQueue.d.ts.map +1 -1
  212. package/dist/controller/helpers/requestQueue.js +26 -36
  213. package/dist/controller/helpers/requestQueue.js.map +1 -1
  214. package/dist/controller/helpers/zclFrameConverter.d.ts +4 -3
  215. package/dist/controller/helpers/zclFrameConverter.d.ts.map +1 -1
  216. package/dist/controller/helpers/zclFrameConverter.js +33 -14
  217. package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
  218. package/dist/controller/model/device.d.ts +12 -5
  219. package/dist/controller/model/device.d.ts.map +1 -1
  220. package/dist/controller/model/device.js +108 -87
  221. package/dist/controller/model/device.js.map +1 -1
  222. package/dist/controller/model/endpoint.d.ts +22 -17
  223. package/dist/controller/model/endpoint.d.ts.map +1 -1
  224. package/dist/controller/model/endpoint.js +139 -228
  225. package/dist/controller/model/endpoint.js.map +1 -1
  226. package/dist/controller/model/group.d.ts +1 -1
  227. package/dist/controller/model/group.d.ts.map +1 -1
  228. package/dist/controller/model/group.js +18 -18
  229. package/dist/controller/model/group.js.map +1 -1
  230. package/dist/controller/touchlink.js +25 -28
  231. package/dist/controller/touchlink.js.map +1 -1
  232. package/dist/index.d.ts +5 -3
  233. package/dist/index.d.ts.map +1 -1
  234. package/dist/index.js +8 -5
  235. package/dist/index.js.map +1 -1
  236. package/dist/utils/logger.d.ts +9 -0
  237. package/dist/utils/logger.d.ts.map +1 -0
  238. package/dist/utils/logger.js +14 -0
  239. package/dist/utils/logger.js.map +1 -0
  240. package/dist/zspec/consts.d.ts +60 -0
  241. package/dist/zspec/consts.d.ts.map +1 -0
  242. package/dist/zspec/consts.js +64 -0
  243. package/dist/zspec/consts.js.map +1 -0
  244. package/dist/zspec/enums.d.ts +19 -0
  245. package/dist/zspec/enums.d.ts.map +1 -0
  246. package/dist/zspec/enums.js +28 -0
  247. package/dist/zspec/enums.js.map +1 -0
  248. package/dist/zspec/index.d.ts +4 -0
  249. package/dist/zspec/index.d.ts.map +1 -0
  250. package/dist/zspec/index.js +43 -0
  251. package/dist/zspec/index.js.map +1 -0
  252. package/dist/zspec/tstypes.d.ts +19 -0
  253. package/dist/zspec/tstypes.d.ts.map +1 -0
  254. package/dist/{buffalo/tstype.js → zspec/tstypes.js} +1 -1
  255. package/dist/zspec/tstypes.js.map +1 -0
  256. package/dist/zspec/utils.d.ts +14 -0
  257. package/dist/zspec/utils.d.ts.map +1 -0
  258. package/dist/zspec/utils.js +29 -0
  259. package/dist/zspec/utils.js.map +1 -0
  260. package/dist/zspec/zcl/buffaloZcl.d.ts +55 -0
  261. package/dist/zspec/zcl/buffaloZcl.d.ts.map +1 -0
  262. package/dist/zspec/zcl/buffaloZcl.js +929 -0
  263. package/dist/zspec/zcl/buffaloZcl.js.map +1 -0
  264. package/dist/zspec/zcl/definition/cluster.d.ts +3 -0
  265. package/dist/zspec/zcl/definition/cluster.d.ts.map +1 -0
  266. package/dist/zspec/zcl/definition/cluster.js +5500 -0
  267. package/dist/zspec/zcl/definition/cluster.js.map +1 -0
  268. package/dist/zspec/zcl/definition/consts.d.ts +9 -0
  269. package/dist/zspec/zcl/definition/consts.d.ts.map +1 -0
  270. package/dist/zspec/zcl/definition/consts.js +27 -0
  271. package/dist/zspec/zcl/definition/consts.js.map +1 -0
  272. package/dist/zspec/zcl/definition/enums.d.ts +177 -0
  273. package/dist/zspec/zcl/definition/enums.d.ts.map +1 -0
  274. package/dist/zspec/zcl/definition/enums.js +187 -0
  275. package/dist/zspec/zcl/definition/enums.js.map +1 -0
  276. package/dist/zspec/zcl/definition/foundation.d.ts +11 -0
  277. package/dist/zspec/zcl/definition/foundation.d.ts.map +1 -0
  278. package/dist/zspec/zcl/definition/foundation.js +241 -0
  279. package/dist/zspec/zcl/definition/foundation.js.map +1 -0
  280. package/dist/zspec/zcl/definition/manufacturerCode.d.ts +727 -0
  281. package/dist/zspec/zcl/definition/manufacturerCode.d.ts.map +1 -0
  282. package/dist/zspec/zcl/definition/manufacturerCode.js +733 -0
  283. package/dist/zspec/zcl/definition/manufacturerCode.js.map +1 -0
  284. package/dist/zspec/zcl/definition/status.d.ts +69 -0
  285. package/dist/zspec/zcl/definition/status.d.ts.map +1 -0
  286. package/dist/zspec/zcl/definition/status.js +74 -0
  287. package/dist/zspec/zcl/definition/status.js.map +1 -0
  288. package/dist/zspec/zcl/definition/tstype.d.ts +114 -0
  289. package/dist/zspec/zcl/definition/tstype.d.ts.map +1 -0
  290. package/dist/{zcl/zclHeader.js → zspec/zcl/definition/tstype.js} +2 -1
  291. package/dist/zspec/zcl/definition/tstype.js.map +1 -0
  292. package/dist/zspec/zcl/index.d.ts +11 -0
  293. package/dist/zspec/zcl/index.d.ts.map +1 -0
  294. package/dist/zspec/zcl/index.js +47 -0
  295. package/dist/zspec/zcl/index.js.map +1 -0
  296. package/dist/zspec/zcl/utils.d.ts +7 -0
  297. package/dist/zspec/zcl/utils.d.ts.map +1 -0
  298. package/dist/zspec/zcl/utils.js +234 -0
  299. package/dist/zspec/zcl/utils.js.map +1 -0
  300. package/dist/zspec/zcl/zclFrame.d.ts +36 -0
  301. package/dist/zspec/zcl/zclFrame.d.ts.map +1 -0
  302. package/dist/zspec/zcl/zclFrame.js +304 -0
  303. package/dist/zspec/zcl/zclFrame.js.map +1 -0
  304. package/dist/zspec/zcl/zclHeader.d.ts +17 -0
  305. package/dist/zspec/zcl/zclHeader.d.ts.map +1 -0
  306. package/dist/zspec/zcl/zclHeader.js +88 -0
  307. package/dist/zspec/zcl/zclHeader.js.map +1 -0
  308. package/dist/zspec/zcl/zclStatusError.d.ts +6 -0
  309. package/dist/zspec/zcl/zclStatusError.d.ts.map +1 -0
  310. package/dist/zspec/zcl/zclStatusError.js +13 -0
  311. package/dist/zspec/zcl/zclStatusError.js.map +1 -0
  312. package/dist/zspec/zdo/buffaloZdo.d.ts +438 -0
  313. package/dist/zspec/zdo/buffaloZdo.d.ts.map +1 -0
  314. package/dist/zspec/zdo/buffaloZdo.js +1892 -0
  315. package/dist/zspec/zdo/buffaloZdo.js.map +1 -0
  316. package/dist/zspec/zdo/definition/clusters.d.ts +624 -0
  317. package/dist/zspec/zdo/definition/clusters.d.ts.map +1 -0
  318. package/dist/zspec/zdo/definition/clusters.js +687 -0
  319. package/dist/zspec/zdo/definition/clusters.js.map +1 -0
  320. package/dist/zspec/zdo/definition/consts.d.ts +13 -0
  321. package/dist/zspec/zdo/definition/consts.d.ts.map +1 -0
  322. package/dist/zspec/zdo/definition/consts.js +16 -0
  323. package/dist/zspec/zdo/definition/consts.js.map +1 -0
  324. package/dist/zspec/zdo/definition/enums.d.ts +75 -0
  325. package/dist/zspec/zdo/definition/enums.d.ts.map +1 -0
  326. package/dist/zspec/zdo/definition/enums.js +97 -0
  327. package/dist/zspec/zdo/definition/enums.js.map +1 -0
  328. package/dist/zspec/zdo/definition/status.d.ts +99 -0
  329. package/dist/zspec/zdo/definition/status.d.ts.map +1 -0
  330. package/dist/zspec/zdo/definition/status.js +109 -0
  331. package/dist/zspec/zdo/definition/status.js.map +1 -0
  332. package/dist/zspec/zdo/definition/tstypes.d.ts +787 -0
  333. package/dist/zspec/zdo/definition/tstypes.d.ts.map +1 -0
  334. package/dist/{zcl/definition/tstype.js → zspec/zdo/definition/tstypes.js} +1 -1
  335. package/dist/zspec/zdo/definition/tstypes.js.map +1 -0
  336. package/dist/zspec/zdo/index.d.ts +7 -0
  337. package/dist/zspec/zdo/index.d.ts.map +1 -0
  338. package/dist/zspec/zdo/index.js +39 -0
  339. package/dist/zspec/zdo/index.js.map +1 -0
  340. package/dist/zspec/zdo/utils.d.ts +25 -0
  341. package/dist/zspec/zdo/utils.d.ts.map +1 -0
  342. package/dist/zspec/zdo/utils.js +75 -0
  343. package/dist/zspec/zdo/utils.js.map +1 -0
  344. package/dist/zspec/zdo/zdoStatusError.d.ts +6 -0
  345. package/dist/zspec/zdo/zdoStatusError.d.ts.map +1 -0
  346. package/dist/zspec/zdo/zdoStatusError.js +13 -0
  347. package/dist/zspec/zdo/zdoStatusError.js.map +1 -0
  348. package/examples/join-and-log.js +7 -12
  349. package/package.json +5 -5
  350. package/dist/adapter/zigate/debug.d.ts +0 -8
  351. package/dist/adapter/zigate/debug.d.ts.map +0 -1
  352. package/dist/adapter/zigate/debug.js +0 -20
  353. package/dist/adapter/zigate/debug.js.map +0 -1
  354. package/dist/buffalo/tstype.d.ts +0 -9
  355. package/dist/buffalo/tstype.d.ts.map +0 -1
  356. package/dist/buffalo/tstype.js.map +0 -1
  357. package/dist/controller/logger-stub.d.ts +0 -7
  358. package/dist/controller/logger-stub.d.ts.map +0 -1
  359. package/dist/controller/logger-stub.js +0 -3
  360. package/dist/controller/logger-stub.js.map +0 -1
  361. package/dist/zcl/buffaloZcl.d.ts +0 -42
  362. package/dist/zcl/buffaloZcl.d.ts.map +0 -1
  363. package/dist/zcl/buffaloZcl.js +0 -595
  364. package/dist/zcl/buffaloZcl.js.map +0 -1
  365. package/dist/zcl/definition/buffaloZclDataType.d.ts +0 -18
  366. package/dist/zcl/definition/buffaloZclDataType.d.ts.map +0 -1
  367. package/dist/zcl/definition/buffaloZclDataType.js +0 -21
  368. package/dist/zcl/definition/buffaloZclDataType.js.map +0 -1
  369. package/dist/zcl/definition/cluster.d.ts +0 -30
  370. package/dist/zcl/definition/cluster.d.ts.map +0 -1
  371. package/dist/zcl/definition/cluster.js +0 -5521
  372. package/dist/zcl/definition/cluster.js.map +0 -1
  373. package/dist/zcl/definition/dataType.d.ts +0 -60
  374. package/dist/zcl/definition/dataType.d.ts.map +0 -1
  375. package/dist/zcl/definition/dataType.js +0 -65
  376. package/dist/zcl/definition/dataType.js.map +0 -1
  377. package/dist/zcl/definition/direction.d.ts +0 -6
  378. package/dist/zcl/definition/direction.d.ts.map +0 -1
  379. package/dist/zcl/definition/direction.js +0 -9
  380. package/dist/zcl/definition/direction.js.map +0 -1
  381. package/dist/zcl/definition/endpointDeviceType.d.ts +0 -5
  382. package/dist/zcl/definition/endpointDeviceType.d.ts.map +0 -1
  383. package/dist/zcl/definition/endpointDeviceType.js +0 -16
  384. package/dist/zcl/definition/endpointDeviceType.js.map +0 -1
  385. package/dist/zcl/definition/foundation.d.ts +0 -12
  386. package/dist/zcl/definition/foundation.d.ts.map +0 -1
  387. package/dist/zcl/definition/foundation.js +0 -168
  388. package/dist/zcl/definition/foundation.js.map +0 -1
  389. package/dist/zcl/definition/frameControl.d.ts +0 -11
  390. package/dist/zcl/definition/frameControl.d.ts.map +0 -1
  391. package/dist/zcl/definition/frameControl.js +0 -3
  392. package/dist/zcl/definition/frameControl.js.map +0 -1
  393. package/dist/zcl/definition/frameType.d.ts +0 -6
  394. package/dist/zcl/definition/frameType.d.ts.map +0 -1
  395. package/dist/zcl/definition/frameType.js +0 -9
  396. package/dist/zcl/definition/frameType.js.map +0 -1
  397. package/dist/zcl/definition/index.d.ts +0 -14
  398. package/dist/zcl/definition/index.d.ts.map +0 -1
  399. package/dist/zcl/definition/index.js +0 -52
  400. package/dist/zcl/definition/index.js.map +0 -1
  401. package/dist/zcl/definition/manufacturerCode.d.ts +0 -1078
  402. package/dist/zcl/definition/manufacturerCode.d.ts.map +0 -1
  403. package/dist/zcl/definition/manufacturerCode.js +0 -1083
  404. package/dist/zcl/definition/manufacturerCode.js.map +0 -1
  405. package/dist/zcl/definition/powerSource.d.ts +0 -5
  406. package/dist/zcl/definition/powerSource.d.ts.map +0 -1
  407. package/dist/zcl/definition/powerSource.js +0 -13
  408. package/dist/zcl/definition/powerSource.js.map +0 -1
  409. package/dist/zcl/definition/status.d.ts +0 -39
  410. package/dist/zcl/definition/status.d.ts.map +0 -1
  411. package/dist/zcl/definition/status.js +0 -42
  412. package/dist/zcl/definition/status.js.map +0 -1
  413. package/dist/zcl/definition/tstype.d.ts +0 -17
  414. package/dist/zcl/definition/tstype.d.ts.map +0 -1
  415. package/dist/zcl/definition/tstype.js.map +0 -1
  416. package/dist/zcl/index.d.ts +0 -17
  417. package/dist/zcl/index.d.ts.map +0 -1
  418. package/dist/zcl/index.js +0 -56
  419. package/dist/zcl/index.js.map +0 -1
  420. package/dist/zcl/tstype.d.ts +0 -57
  421. package/dist/zcl/tstype.d.ts.map +0 -1
  422. package/dist/zcl/tstype.js +0 -10
  423. package/dist/zcl/tstype.js.map +0 -1
  424. package/dist/zcl/utils.d.ts +0 -7
  425. package/dist/zcl/utils.d.ts.map +0 -1
  426. package/dist/zcl/utils.js +0 -165
  427. package/dist/zcl/utils.js.map +0 -1
  428. package/dist/zcl/zclFrame.d.ts +0 -41
  429. package/dist/zcl/zclFrame.d.ts.map +0 -1
  430. package/dist/zcl/zclFrame.js +0 -352
  431. package/dist/zcl/zclFrame.js.map +0 -1
  432. package/dist/zcl/zclHeader.d.ts +0 -9
  433. package/dist/zcl/zclHeader.d.ts.map +0 -1
  434. package/dist/zcl/zclHeader.js.map +0 -1
  435. package/dist/zcl/zclStatusError.d.ts +0 -6
  436. package/dist/zcl/zclStatusError.d.ts.map +0 -1
  437. package/dist/zcl/zclStatusError.js +0 -15
  438. package/dist/zcl/zclStatusError.js.map +0 -1
@@ -26,15 +26,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- const debug_1 = __importDefault(require("debug"));
30
29
  const adapter_1 = __importDefault(require("../../adapter"));
31
- const debug = (0, debug_1.default)("zigbee-herdsman:deconz:adapter");
32
30
  const driver_1 = __importDefault(require("../driver/driver"));
33
- const zcl_1 = require("../../../zcl");
31
+ const Zcl = __importStar(require("../../../zspec/zcl"));
34
32
  const Events = __importStar(require("../../events"));
35
33
  const frameParser_1 = __importDefault(require("../driver/frameParser"));
36
34
  const utils_1 = require("../../../utils");
37
35
  const constants_1 = __importDefault(require("../driver/constants"));
36
+ const logger_1 = require("../../../utils/logger");
37
+ const NS = 'zh:deconz';
38
38
  var frameParser = require('../driver/frameParser');
39
39
  ;
40
40
  class DeconzAdapter extends adapter_1.default {
@@ -47,8 +47,8 @@ class DeconzAdapter extends adapter_1.default {
47
47
  fwVersion;
48
48
  waitress;
49
49
  TX_OPTIONS = 0x00; // No APS ACKS
50
- constructor(networkOptions, serialPortOptions, backupPath, adapterOptions, logger) {
51
- super(networkOptions, serialPortOptions, backupPath, adapterOptions, logger);
50
+ constructor(networkOptions, serialPortOptions, backupPath, adapterOptions) {
51
+ super(networkOptions, serialPortOptions, backupPath, adapterOptions);
52
52
  const concurrent = this.adapterOptions && this.adapterOptions.concurrent ?
53
53
  this.adapterOptions.concurrent : 2;
54
54
  // TODO: https://github.com/Koenkk/zigbee2mqtt/issues/4884#issuecomment-728903121
@@ -137,12 +137,12 @@ class DeconzAdapter extends adapter_1.default {
137
137
  else {
138
138
  this.joinPermitted = true;
139
139
  }
140
- this.driver.writeParameterRequest(constants_1.default.PARAM.Network.PERMIT_JOIN, seconds);
141
- debug("PERMIT_JOIN - " + seconds + " seconds");
140
+ await this.driver.writeParameterRequest(constants_1.default.PARAM.Network.PERMIT_JOIN, seconds);
141
+ logger_1.logger.debug("PERMIT_JOIN - " + seconds + " seconds", NS);
142
142
  }
143
143
  catch (error) {
144
144
  const msg = "PERMIT_JOIN FAILED - " + error;
145
- debug(msg);
145
+ logger_1.logger.debug(msg, NS);
146
146
  // try again
147
147
  this.permitJoin(seconds, networkAddress);
148
148
  //return Promise.reject(new Error(msg)); // do not reject
@@ -173,7 +173,7 @@ class DeconzAdapter extends adapter_1.default {
173
173
  return { type: type, meta: meta };
174
174
  }
175
175
  catch (error) {
176
- debug("Get coordinator version Error: " + error);
176
+ logger_1.logger.debug("Get coordinator version Error: " + error, NS);
177
177
  }
178
178
  }
179
179
  }
@@ -243,12 +243,12 @@ class DeconzAdapter extends adapter_1.default {
243
243
  counter = 0;
244
244
  }
245
245
  }
246
- debug("LQI RESPONSE - addr: 0x" + networkAddress.toString(16) + " status: " + response.status + " read " + (response.tableListCount + response.startIndex) + "/" + response.tableEntrys + " entrys");
246
+ logger_1.logger.debug("LQI RESPONSE - addr: 0x" + networkAddress.toString(16) + " status: " + response.status + " read " + (response.tableListCount + response.startIndex) + "/" + response.tableEntrys + " entrys", NS);
247
247
  return response;
248
248
  }
249
249
  catch (error) {
250
250
  const msg = "LQI REQUEST FAILED - addr: 0x" + networkAddress.toString(16) + " " + error;
251
- debug(msg);
251
+ logger_1.logger.debug(msg, NS);
252
252
  return Promise.reject(new Error(msg));
253
253
  }
254
254
  };
@@ -327,12 +327,12 @@ class DeconzAdapter extends adapter_1.default {
327
327
  counter = 0;
328
328
  }
329
329
  }
330
- debug("ROUTING_TABLE RESPONSE - addr: 0x" + networkAddress.toString(16) + " status: " + response.status + " read " + (response.tableListCount + response.startIndex) + "/" + response.tableEntrys + " entrys");
330
+ logger_1.logger.debug("ROUTING_TABLE RESPONSE - addr: 0x" + networkAddress.toString(16) + " status: " + response.status + " read " + (response.tableListCount + response.startIndex) + "/" + response.tableEntrys + " entrys", NS);
331
331
  return response;
332
332
  }
333
333
  catch (error) {
334
334
  const msg = "ROUTING_TABLE REQUEST FAILED - addr: 0x" + networkAddress.toString(16) + " " + error;
335
- debug(msg);
335
+ logger_1.logger.debug(msg, NS);
336
336
  return Promise.reject(new Error(msg));
337
337
  }
338
338
  };
@@ -374,12 +374,12 @@ class DeconzAdapter extends adapter_1.default {
374
374
  const logicaltype = (data[4] & 7);
375
375
  const type = (logicaltype === 1) ? 'Router' : (logicaltype === 2) ? 'EndDevice' : (logicaltype === 0) ? 'Coordinator' : 'Unknown';
376
376
  const manufacturer = buf.readUInt16LE(7);
377
- debug("RECEIVING NODE_DESCRIPTOR - addr: 0x" + networkAddress.toString(16) + " type: " + type + " manufacturer: 0x" + manufacturer.toString(16));
377
+ logger_1.logger.debug("RECEIVING NODE_DESCRIPTOR - addr: 0x" + networkAddress.toString(16) + " type: " + type + " manufacturer: 0x" + manufacturer.toString(16), NS);
378
378
  return { manufacturerCode: manufacturer, type };
379
379
  }
380
380
  catch (error) {
381
381
  const msg = "RECEIVING NODE_DESCRIPTOR FAILED - addr: 0x" + networkAddress.toString(16) + " " + error;
382
- debug(msg);
382
+ logger_1.logger.debug(msg, NS);
383
383
  return Promise.reject(new Error(msg));
384
384
  }
385
385
  }
@@ -413,12 +413,12 @@ class DeconzAdapter extends adapter_1.default {
413
413
  for (let i = 5; i < (epCount + 5); i++) {
414
414
  epList.push(buf.readUInt8(i));
415
415
  }
416
- debug("ACTIVE_ENDPOINTS - addr: 0x" + networkAddress.toString(16) + " EP list: " + epList);
416
+ logger_1.logger.debug("ACTIVE_ENDPOINTS - addr: 0x" + networkAddress.toString(16) + " EP list: " + epList, NS);
417
417
  return { endpoints: epList };
418
418
  }
419
419
  catch (error) {
420
420
  const msg = "READING ACTIVE_ENDPOINTS FAILED - addr: 0x" + networkAddress.toString(16) + " " + error;
421
- debug(msg);
421
+ logger_1.logger.debug(msg, NS);
422
422
  return Promise.reject(new Error(msg));
423
423
  }
424
424
  }
@@ -468,17 +468,17 @@ class DeconzAdapter extends adapter_1.default {
468
468
  inputClusters: inClusters,
469
469
  outputClusters: outClusters
470
470
  };
471
- debug("RECEIVING SIMPLE_DESCRIPTOR - addr: 0x" + networkAddress.toString(16) + " EP:" + simpleDesc.endpointID + " inClusters: " + inClusters + " outClusters: " + outClusters);
471
+ logger_1.logger.debug("RECEIVING SIMPLE_DESCRIPTOR - addr: 0x" + networkAddress.toString(16) + " EP:" + simpleDesc.endpointID + " inClusters: " + inClusters + " outClusters: " + outClusters, NS);
472
472
  return simpleDesc;
473
473
  }
474
474
  catch (error) {
475
475
  const msg = "RECEIVING SIMPLE_DESCRIPTOR FAILED - addr: 0x" + networkAddress.toString(16) + " " + error;
476
- debug(msg);
476
+ logger_1.logger.debug(msg, NS);
477
477
  return Promise.reject(new Error(msg));
478
478
  }
479
479
  }
480
480
  async checkCoordinatorSimpleDescriptor(skip) {
481
- debug("checking coordinator simple descriptor");
481
+ logger_1.logger.debug("checking coordinator simple descriptor", NS);
482
482
  var simpleDesc = null;
483
483
  if (skip === false) {
484
484
  try {
@@ -490,14 +490,14 @@ class DeconzAdapter extends adapter_1.default {
490
490
  this.checkCoordinatorSimpleDescriptor(false);
491
491
  return;
492
492
  }
493
- debug("EP: " + simpleDesc.endpointID);
494
- debug("profile ID: " + simpleDesc.profileID);
495
- debug("device ID: " + simpleDesc.deviceID);
493
+ logger_1.logger.debug("EP: " + simpleDesc.endpointID, NS);
494
+ logger_1.logger.debug("profile ID: " + simpleDesc.profileID, NS);
495
+ logger_1.logger.debug("device ID: " + simpleDesc.deviceID, NS);
496
496
  for (let i = 0; i < simpleDesc.inputClusters.length; i++) {
497
- debug("input cluster: 0x" + simpleDesc.inputClusters[i].toString(16));
497
+ logger_1.logger.debug("input cluster: 0x" + simpleDesc.inputClusters[i].toString(16), NS);
498
498
  }
499
499
  for (let o = 0; o < simpleDesc.outputClusters.length; o++) {
500
- debug("output cluster: 0x" + simpleDesc.outputClusters[o].toString(16));
500
+ logger_1.logger.debug("output cluster: 0x" + simpleDesc.outputClusters[o].toString(16), NS);
501
501
  }
502
502
  let ok = true;
503
503
  if (simpleDesc.endpointID === 0x1) {
@@ -505,7 +505,7 @@ class DeconzAdapter extends adapter_1.default {
505
505
  !simpleDesc.inputClusters.includes(0x19) || !simpleDesc.inputClusters.includes(0x0501) ||
506
506
  !simpleDesc.outputClusters.includes(0x01) || !simpleDesc.outputClusters.includes(0x20) || !simpleDesc.outputClusters.includes(0x500) ||
507
507
  !simpleDesc.outputClusters.includes(0x502)) {
508
- debug("missing cluster");
508
+ logger_1.logger.debug("missing cluster", NS);
509
509
  ok = false;
510
510
  }
511
511
  if (ok === true) {
@@ -513,18 +513,18 @@ class DeconzAdapter extends adapter_1.default {
513
513
  }
514
514
  }
515
515
  }
516
- debug("setting new simple descriptor");
516
+ logger_1.logger.debug("setting new simple descriptor", NS);
517
517
  try { //[ sd1 ep proId devId vers #inCl iCl1 iCl2 iCl3 iCl4 iCl5 #outC oCl1 oCl2 oCl3 oCl4 ]
518
518
  const sd = [0x00, 0x01, 0x04, 0x01, 0x05, 0x00, 0x01, 0x05, 0x00, 0x00, 0x00, 0x06, 0x0A, 0x00, 0x19, 0x00, 0x01, 0x05, 0x04, 0x01, 0x00, 0x20, 0x00, 0x00, 0x05, 0x02, 0x05];
519
519
  const sd1 = sd.reverse();
520
520
  await this.driver.writeParameterRequest(constants_1.default.PARAM.STK.Endpoint, sd1);
521
521
  }
522
522
  catch (error) {
523
- debug("error setting simple descriptor - try again");
523
+ logger_1.logger.debug("error setting simple descriptor - try again", NS);
524
524
  this.checkCoordinatorSimpleDescriptor(true);
525
525
  return;
526
526
  }
527
- debug("success setting simple descriptor");
527
+ logger_1.logger.debug("success setting simple descriptor", NS);
528
528
  }
529
529
  waitFor(networkAddress, endpoint, frameType, direction, transactionSequenceNumber, clusterID, commandIdentifier, timeout) {
530
530
  const payload = {
@@ -539,115 +539,116 @@ class DeconzAdapter extends adapter_1.default {
539
539
  const transactionID = this.nextTransactionID();
540
540
  const request = {};
541
541
  let pay = zclFrame.toBuffer();
542
- //console.log("zclFramte.toBuffer:");
543
- //console.log(pay);
542
+ //logger.info("zclFramte.toBuffer:", NS);
543
+ //logger.info(pay, NS);
544
544
  request.requestId = transactionID;
545
545
  request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
546
546
  request.destAddr16 = networkAddress;
547
547
  request.destEndpoint = endpoint;
548
548
  request.profileId = sourceEndpoint === 242 && endpoint === 242 ? 0xa1e0 : 0x104;
549
- request.clusterId = zclFrame.Cluster.ID;
549
+ request.clusterId = zclFrame.cluster.ID;
550
550
  request.srcEndpoint = sourceEndpoint || 1;
551
551
  request.asduLength = pay.length;
552
552
  request.asduPayload = [...pay];
553
553
  request.txOptions = this.TX_OPTIONS; // 0x00 normal; 0x04 APS ACK
554
554
  request.radius = constants_1.default.PARAM.txRadius.DEFAULT_RADIUS;
555
555
  request.timeout = timeout;
556
- const command = zclFrame.getCommand();
556
+ const command = zclFrame.command;
557
557
  this.driver.enqueueSendDataRequest(request)
558
558
  .then(result => {
559
- debug(`sendZclFrameToEndpoint - message send with transSeq Nr.: ${zclFrame.Header.transactionSequenceNumber}`);
560
- debug(command.hasOwnProperty('response') + ", " + zclFrame.Header.frameControl.disableDefaultResponse + ", " + disableResponse + ", " + request.timeout);
561
- if (!command.hasOwnProperty('response') || zclFrame.Header.frameControl.disableDefaultResponse || !disableResponse) {
562
- debug(`resolve request (${zclFrame.Header.transactionSequenceNumber})`);
559
+ logger_1.logger.debug(`sendZclFrameToEndpoint - message send with transSeq Nr.: ${zclFrame.header.transactionSequenceNumber}`, NS);
560
+ logger_1.logger.debug(command.hasOwnProperty('response') + ", " + zclFrame.header.frameControl.disableDefaultResponse + ", " + disableResponse + ", " + request.timeout, NS);
561
+ if (!command.hasOwnProperty('response') || zclFrame.header.frameControl.disableDefaultResponse || !disableResponse) {
562
+ logger_1.logger.debug(`resolve request (${zclFrame.header.transactionSequenceNumber})`, NS);
563
563
  return Promise.resolve();
564
564
  }
565
565
  })
566
566
  .catch(error => {
567
- debug(`sendZclFrameToEndpoint ERROR (${zclFrame.Header.transactionSequenceNumber})`);
568
- debug(error);
567
+ logger_1.logger.debug(`sendZclFrameToEndpoint ERROR (${zclFrame.header.transactionSequenceNumber})`, NS);
568
+ logger_1.logger.debug(error, NS);
569
569
  //return Promise.reject(new Error("sendZclFrameToEndpoint ERROR " + error));
570
570
  });
571
571
  try {
572
572
  let data = null;
573
- if ((command.hasOwnProperty('response') && !disableResponse) || !zclFrame.Header.frameControl.disableDefaultResponse) {
574
- data = await this.waitForData(networkAddress, 0x104, zclFrame.Cluster.ID, zclFrame.Header.transactionSequenceNumber, request.timeout);
573
+ if ((command.hasOwnProperty('response') && !disableResponse) || !zclFrame.header.frameControl.disableDefaultResponse) {
574
+ data = await this.waitForData(networkAddress, 0x104, zclFrame.cluster.ID, zclFrame.header.transactionSequenceNumber, request.timeout);
575
575
  }
576
576
  if (data !== null) {
577
577
  const asdu = data.asduPayload;
578
578
  const buffer = Buffer.from(asdu);
579
- const frame = zcl_1.ZclFrame.fromBuffer(zclFrame.Cluster.ID, buffer);
580
579
  const response = {
581
580
  address: (data.srcAddrMode === 0x02) ? data.srcAddr16 : null,
582
- frame: frame,
581
+ data: buffer,
582
+ clusterID: zclFrame.cluster.ID,
583
+ header: Zcl.Header.fromBuffer(buffer),
583
584
  endpoint: data.srcEndpoint,
584
585
  linkquality: data.lqi,
585
586
  groupID: (data.srcAddrMode === 0x01) ? data.srcAddr16 : null,
586
587
  wasBroadcast: data.srcAddrMode === 0x01 || data.srcAddrMode === 0xF,
587
588
  destinationEndpoint: data.destEndpoint,
588
589
  };
589
- debug(`response received (${zclFrame.Header.transactionSequenceNumber})`);
590
+ logger_1.logger.debug(`response received (${zclFrame.header.transactionSequenceNumber})`, NS);
590
591
  return response;
591
592
  }
592
593
  else {
593
- debug(`no response expected (${zclFrame.Header.transactionSequenceNumber})`);
594
+ logger_1.logger.debug(`no response expected (${zclFrame.header.transactionSequenceNumber})`, NS);
594
595
  return null;
595
596
  }
596
597
  }
597
598
  catch (error) {
598
- throw new Error(`no response received (${zclFrame.Header.transactionSequenceNumber})`);
599
+ throw new Error(`no response received (${zclFrame.header.transactionSequenceNumber})`);
599
600
  }
600
601
  }
601
602
  async sendZclFrameToGroup(groupID, zclFrame) {
602
603
  const transactionID = this.nextTransactionID();
603
604
  const request = {};
604
605
  let pay = zclFrame.toBuffer();
605
- debug("zclFrame to group - zclFrame.payload:");
606
- debug(zclFrame.Payload);
607
- //console.log("zclFramte.toBuffer:");
608
- //console.log(pay);
606
+ logger_1.logger.debug("zclFrame to group - zclFrame.payload:", NS);
607
+ logger_1.logger.debug(zclFrame.payload, NS);
608
+ //logger.info("zclFramte.toBuffer:", NS);
609
+ //logger.info(pay, NS);
609
610
  request.requestId = transactionID;
610
611
  request.destAddrMode = constants_1.default.PARAM.addressMode.GROUP_ADDR;
611
612
  request.destAddr16 = groupID;
612
613
  request.profileId = 0x104;
613
- request.clusterId = zclFrame.Cluster.ID;
614
+ request.clusterId = zclFrame.cluster.ID;
614
615
  request.srcEndpoint = 1;
615
616
  request.asduLength = pay.length;
616
617
  request.asduPayload = [...pay];
617
618
  request.txOptions = 0;
618
619
  request.radius = constants_1.default.PARAM.txRadius.UNLIMITED;
619
620
  try {
620
- debug(`sendZclFrameToGroup - message send`);
621
+ logger_1.logger.debug(`sendZclFrameToGroup - message send`, NS);
621
622
  return this.driver.enqueueSendDataRequest(request);
622
623
  }
623
624
  catch (error) {
624
- //debug(`sendZclFrameToGroup ERROR: ${error}`);
625
+ //logger.debug(`sendZclFrameToGroup ERROR: ${error}`, NS);
625
626
  throw new Error(error);
626
627
  }
627
628
  }
628
- async sendZclFrameToAll(endpoint, zclFrame, sourceEndpoint) {
629
+ async sendZclFrameToAll(endpoint, zclFrame, sourceEndpoint, destination) {
629
630
  const transactionID = this.nextTransactionID();
630
631
  const request = {};
631
632
  let pay = zclFrame.toBuffer();
632
- debug("zclFrame to all - zclFrame.payload:");
633
- debug(zclFrame.Payload);
633
+ logger_1.logger.debug("zclFrame to all - zclFrame.payload:", NS);
634
+ logger_1.logger.debug(zclFrame.payload, NS);
634
635
  request.requestId = transactionID;
635
636
  request.destAddrMode = constants_1.default.PARAM.addressMode.NWK_ADDR;
636
- request.destAddr16 = 0xFFFD;
637
+ request.destAddr16 = destination;
637
638
  request.destEndpoint = endpoint;
638
639
  request.profileId = sourceEndpoint === 242 && endpoint === 242 ? 0xa1e0 : 0x104;
639
- request.clusterId = zclFrame.Cluster.ID;
640
+ request.clusterId = zclFrame.cluster.ID;
640
641
  request.srcEndpoint = sourceEndpoint;
641
642
  request.asduLength = pay.length;
642
643
  request.asduPayload = [...pay];
643
644
  request.txOptions = 0;
644
645
  request.radius = constants_1.default.PARAM.txRadius.UNLIMITED;
645
646
  try {
646
- debug(`sendZclFrameToAll - message send`);
647
+ logger_1.logger.debug(`sendZclFrameToAll - message send`, NS);
647
648
  return this.driver.enqueueSendDataRequest(request);
648
649
  }
649
650
  catch (error) {
650
- //debug(`sendZclFrameToAll ERROR: ${error}`);
651
+ //logger.debug(`sendZclFrameToAll ERROR: ${error}`, NS);
651
652
  throw new Error(error);
652
653
  }
653
654
  }
@@ -684,13 +685,13 @@ class DeconzAdapter extends adapter_1.default {
684
685
  try {
685
686
  const d = await this.waitForData(destinationNetworkAddress, 0, 0x8021);
686
687
  const data = d.asduPayload;
687
- debug("BIND RESPONSE - addr: 0x" + destinationNetworkAddress.toString(16) + " status: " + data[1]);
688
+ logger_1.logger.debug("BIND RESPONSE - addr: 0x" + destinationNetworkAddress.toString(16) + " status: " + data[1], NS);
688
689
  if (data[1] !== 0) {
689
690
  throw new Error("status: " + data[1]);
690
691
  }
691
692
  }
692
693
  catch (error) {
693
- debug("BIND FAILED - addr: 0x" + destinationNetworkAddress.toString(16) + " " + error);
694
+ logger_1.logger.debug("BIND FAILED - addr: 0x" + destinationNetworkAddress.toString(16) + " " + error, NS);
694
695
  throw new Error(error);
695
696
  }
696
697
  }
@@ -727,13 +728,13 @@ class DeconzAdapter extends adapter_1.default {
727
728
  try {
728
729
  const d = await this.waitForData(destinationNetworkAddress, 0, 0x8022);
729
730
  const data = d.asduPayload;
730
- debug("UNBIND RESPONSE - addr: 0x" + destinationNetworkAddress.toString(16) + " status: " + data[1]);
731
+ logger_1.logger.debug("UNBIND RESPONSE - addr: 0x" + destinationNetworkAddress.toString(16) + " status: " + data[1], NS);
731
732
  if (data[1] !== 0) {
732
733
  throw new Error("status: " + data[1]);
733
734
  }
734
735
  }
735
736
  catch (error) {
736
- debug("UNBIND FAILED - addr: 0x" + destinationNetworkAddress.toString(16) + " " + error);
737
+ logger_1.logger.debug("UNBIND FAILED - addr: 0x" + destinationNetworkAddress.toString(16) + " " + error, NS);
737
738
  throw new Error(error);
738
739
  }
739
740
  }
@@ -761,7 +762,7 @@ class DeconzAdapter extends adapter_1.default {
761
762
  try {
762
763
  const d = await this.waitForData(networkAddress, 0, 0x8034);
763
764
  const data = d.asduPayload;
764
- debug("REMOVE_DEVICE - addr: 0x" + networkAddress.toString(16) + " status: " + data[1]);
765
+ logger_1.logger.debug("REMOVE_DEVICE - addr: 0x" + networkAddress.toString(16) + " status: " + data[1], NS);
765
766
  const payload = {
766
767
  networkAddress: networkAddress,
767
768
  ieeeAddr: ieeeAddr,
@@ -772,7 +773,7 @@ class DeconzAdapter extends adapter_1.default {
772
773
  this.emit(Events.Events.deviceLeave, payload);
773
774
  }
774
775
  catch (error) {
775
- debug("REMOVE_DEVICE FAILED - addr: 0x" + networkAddress.toString(16) + " " + error);
776
+ logger_1.logger.debug("REMOVE_DEVICE FAILED - addr: 0x" + networkAddress.toString(16) + " " + error, NS);
776
777
  throw new Error(error);
777
778
  }
778
779
  }
@@ -791,7 +792,7 @@ class DeconzAdapter extends adapter_1.default {
791
792
  let networkKey = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.NETWORK_KEY);
792
793
  // check current channel against configuration.yaml
793
794
  if (this.networkOptions.channelList[0] !== channel) {
794
- debug("Channel in configuration.yaml (" + this.networkOptions.channelList[0] + ") differs from current channel (" + channel + "). Changing channel.");
795
+ logger_1.logger.debug("Channel in configuration.yaml (" + this.networkOptions.channelList[0] + ") differs from current channel (" + channel + "). Changing channel.", NS);
795
796
  let setChannelMask = 0;
796
797
  switch (this.networkOptions.channelList[0]) {
797
798
  case 11:
@@ -851,43 +852,43 @@ class DeconzAdapter extends adapter_1.default {
851
852
  changed = true;
852
853
  }
853
854
  catch (error) {
854
- debug("Could not set channel: " + error);
855
+ logger_1.logger.debug("Could not set channel: " + error, NS);
855
856
  }
856
857
  }
857
858
  // check current panid against configuration.yaml
858
859
  if (this.networkOptions.panID !== panid) {
859
- debug("panid in configuration.yaml (" + this.networkOptions.panID + ") differs from current panid (" + panid + "). Changing panid.");
860
+ logger_1.logger.debug("panid in configuration.yaml (" + this.networkOptions.panID + ") differs from current panid (" + panid + "). Changing panid.", NS);
860
861
  try {
861
862
  await this.driver.writeParameterRequest(constants_1.default.PARAM.Network.PAN_ID, this.networkOptions.panID);
862
863
  await this.sleep(500);
863
864
  changed = true;
864
865
  }
865
866
  catch (error) {
866
- debug("Could not set panid: " + error);
867
+ logger_1.logger.debug("Could not set panid: " + error, NS);
867
868
  }
868
869
  }
869
870
  // check current extended_panid against configuration.yaml
870
871
  if (this.driver.generalArrayToString(this.networkOptions.extendedPanID, 8) !== expanid) {
871
- debug("extended panid in configuration.yaml (" + this.driver.macAddrArrayToString(this.networkOptions.extendedPanID) + ") differs from current extended panid (" + expanid + "). Changing extended panid.");
872
+ logger_1.logger.debug("extended panid in configuration.yaml (" + this.driver.macAddrArrayToString(this.networkOptions.extendedPanID) + ") differs from current extended panid (" + expanid + "). Changing extended panid.", NS);
872
873
  try {
873
874
  await this.driver.writeParameterRequest(constants_1.default.PARAM.Network.APS_EXT_PAN_ID, this.networkOptions.extendedPanID);
874
875
  await this.sleep(500);
875
876
  changed = true;
876
877
  }
877
878
  catch (error) {
878
- debug("Could not set extended panid: " + error);
879
+ logger_1.logger.debug("Could not set extended panid: " + error, NS);
879
880
  }
880
881
  }
881
882
  // check current network key against configuration.yaml
882
883
  if (this.driver.generalArrayToString(this.networkOptions.networkKey, 16) !== networkKey) {
883
- debug("network key in configuration.yaml (hidden) differs from current network key (" + networkKey + "). Changing network key.");
884
+ logger_1.logger.debug("network key in configuration.yaml (hidden) differs from current network key (" + networkKey + "). Changing network key.", NS);
884
885
  try {
885
886
  await this.driver.writeParameterRequest(constants_1.default.PARAM.Network.NETWORK_KEY, this.networkOptions.networkKey);
886
887
  await this.sleep(500);
887
888
  changed = true;
888
889
  }
889
890
  catch (error) {
890
- debug("Could not set network key: " + error);
891
+ logger_1.logger.debug("Could not set network key: " + error, NS);
891
892
  }
892
893
  }
893
894
  if (changed) {
@@ -895,10 +896,10 @@ class DeconzAdapter extends adapter_1.default {
895
896
  await this.sleep(2000);
896
897
  await this.driver.changeNetworkStateRequest(constants_1.default.PARAM.Network.NET_CONNECTED);
897
898
  await this.sleep(2000);
898
- let panid = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.PAN_ID);
899
- let expanid = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.APS_EXT_PAN_ID);
900
- let channel = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.CHANNEL);
901
- let networkKey = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.NETWORK_KEY);
899
+ panid = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.PAN_ID);
900
+ expanid = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.APS_EXT_PAN_ID);
901
+ channel = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.CHANNEL);
902
+ networkKey = await this.driver.readParameterRequest(constants_1.default.PARAM.Network.NETWORK_KEY);
902
903
  }
903
904
  return {
904
905
  panID: panid,
@@ -908,7 +909,7 @@ class DeconzAdapter extends adapter_1.default {
908
909
  }
909
910
  catch (error) {
910
911
  const msg = "get network parameters Error:" + error;
911
- debug(msg);
912
+ logger_1.logger.debug(msg, NS);
912
913
  return Promise.reject(new Error(msg));
913
914
  }
914
915
  }
@@ -927,6 +928,12 @@ class DeconzAdapter extends adapter_1.default {
927
928
  async setChannelInterPAN(channel) {
928
929
  throw new Error("not supported");
929
930
  }
931
+ async supportsChangeChannel() {
932
+ return false;
933
+ }
934
+ async changeChannel(newChannel) {
935
+ throw new Error("not supported");
936
+ }
930
937
  async setTransmitPower(value) {
931
938
  throw new Error("not supported");
932
939
  }
@@ -957,7 +964,9 @@ class DeconzAdapter extends adapter_1.default {
957
964
  ind.commandId, ind.commandFrameSize].concat(ind.commandFrame);
958
965
  const payBuf = Buffer.from(gpFrame);
959
966
  const payload = {
960
- frame: zcl_1.ZclFrame.fromBuffer(ind.clusterId, payBuf),
967
+ header: Zcl.Header.fromBuffer(payBuf),
968
+ data: payBuf,
969
+ clusterID: ind.clusterId,
961
970
  address: ind.srcId,
962
971
  endpoint: 242, // GP endpoint
963
972
  linkquality: 127,
@@ -966,20 +975,16 @@ class DeconzAdapter extends adapter_1.default {
966
975
  destinationEndpoint: 1,
967
976
  };
968
977
  this.waitress.resolve(payload);
969
- this.emit(Events.Events.zclData, payload);
978
+ this.emit(Events.Events.zclPayload, payload);
970
979
  }
971
980
  checkReceivedDataPayload(resp) {
972
981
  let srcAddr = null;
973
- let frame = null;
982
+ let header = null;
983
+ const payBuf = resp != null ? Buffer.from(resp.asduPayload) : null;
974
984
  if (resp != null) {
975
985
  srcAddr = (resp.srcAddr16 != null) ? resp.srcAddr16 : resp.srcAddr64;
976
986
  if (resp.profileId != 0x00) {
977
- try {
978
- frame = zcl_1.ZclFrame.fromBuffer(resp.clusterId, Buffer.from(resp.asduPayload));
979
- }
980
- catch (error) {
981
- debug("could not parse zclFrame: " + error);
982
- }
987
+ header = Zcl.Header.fromBuffer(payBuf);
983
988
  }
984
989
  }
985
990
  let i = this.openRequestsQueue.length;
@@ -987,15 +992,15 @@ class DeconzAdapter extends adapter_1.default {
987
992
  const req = this.openRequestsQueue[i];
988
993
  if (srcAddr != null && req.addr === srcAddr && req.clusterId === resp.clusterId &&
989
994
  req.profileId === resp.profileId) {
990
- if (frame !== null && req.transactionSequenceNumber !== null && req.transactionSequenceNumber !== undefined) {
991
- if (req.transactionSequenceNumber === frame.Header.transactionSequenceNumber) {
992
- debug("resolve data request with transSeq Nr.: " + req.transactionSequenceNumber);
995
+ if (header !== null && req.transactionSequenceNumber !== null && req.transactionSequenceNumber !== undefined) {
996
+ if (req.transactionSequenceNumber === header.transactionSequenceNumber) {
997
+ logger_1.logger.debug("resolve data request with transSeq Nr.: " + req.transactionSequenceNumber, NS);
993
998
  this.openRequestsQueue.splice(i, 1);
994
999
  req.resolve(resp);
995
1000
  }
996
1001
  }
997
1002
  else {
998
- debug("resolve data request without a transSeq Nr.");
1003
+ logger_1.logger.debug("resolve data request without a transSeq Nr.", NS);
999
1004
  this.openRequestsQueue.splice(i, 1);
1000
1005
  req.resolve(resp);
1001
1006
  }
@@ -1004,7 +1009,7 @@ class DeconzAdapter extends adapter_1.default {
1004
1009
  // Default timeout: 60 seconds.
1005
1010
  // Comparison is negated to prevent orphans when invalid timeout is entered (resulting in NaN).
1006
1011
  if (!((now - req.ts) <= (req.timeout ?? 60000))) {
1007
- //debug("Timeout for request in openRequestsQueue addr: " + req.addr.toString(16) + " clusterId: " + req.clusterId.toString(16) + " profileId: " + req.profileId.toString(16));
1012
+ //logger.debug("Timeout for request in openRequestsQueue addr: " + req.addr.toString(16) + " clusterId: " + req.clusterId.toString(16) + " profileId: " + req.profileId.toString(16), NS);
1008
1013
  //remove from busyQueue
1009
1014
  this.openRequestsQueue.splice(i, 1);
1010
1015
  req.reject("waiting for response TIMEOUT");
@@ -1013,7 +1018,6 @@ class DeconzAdapter extends adapter_1.default {
1013
1018
  // check unattended incomming messages
1014
1019
  if (resp != null && resp.profileId === 0x00 && resp.clusterId === 0x13) {
1015
1020
  // device Annce
1016
- const payBuf = Buffer.from(resp.asduPayload);
1017
1021
  const payload = {
1018
1022
  networkAddress: payBuf.readUInt16LE(1),
1019
1023
  ieeeAddr: this.driver.macAddrArrayToString(resp.asduPayload.slice(3, 11)),
@@ -1026,33 +1030,19 @@ class DeconzAdapter extends adapter_1.default {
1026
1030
  }
1027
1031
  }
1028
1032
  if (resp != null && resp.profileId != 0x00) {
1029
- const payBuf = Buffer.from(resp.asduPayload);
1030
- try {
1031
- const payload = {
1032
- frame: zcl_1.ZclFrame.fromBuffer(resp.clusterId, payBuf),
1033
- address: (resp.destAddrMode === 0x03) ? resp.srcAddr64 : resp.srcAddr16,
1034
- endpoint: resp.srcEndpoint,
1035
- linkquality: resp.lqi,
1036
- groupID: (resp.destAddrMode === 0x01) ? resp.destAddr16 : null,
1037
- wasBroadcast: resp.destAddrMode === 0x01 || resp.destAddrMode === 0xF,
1038
- destinationEndpoint: resp.destEndpoint,
1039
- };
1040
- this.waitress.resolve(payload);
1041
- this.emit(Events.Events.zclData, payload);
1042
- }
1043
- catch (error) {
1044
- const payload = {
1045
- clusterID: resp.clusterId,
1046
- data: payBuf,
1047
- address: (resp.destAddrMode === 0x03) ? resp.srcAddr64 : resp.srcAddr16,
1048
- endpoint: resp.srcEndpoint,
1049
- linkquality: resp.lqi,
1050
- groupID: (resp.destAddrMode === 0x01) ? resp.destAddr16 : null,
1051
- wasBroadcast: resp.destAddrMode === 0x01 || resp.destAddrMode === 0xF,
1052
- destinationEndpoint: resp.destEndpoint,
1053
- };
1054
- this.emit(Events.Events.rawData, payload);
1055
- }
1033
+ const payload = {
1034
+ clusterID: resp.clusterId,
1035
+ header,
1036
+ data: payBuf,
1037
+ address: (resp.destAddrMode === 0x03) ? resp.srcAddr64 : resp.srcAddr16,
1038
+ endpoint: resp.srcEndpoint,
1039
+ linkquality: resp.lqi,
1040
+ groupID: (resp.destAddrMode === 0x01) ? resp.destAddr16 : null,
1041
+ wasBroadcast: resp.destAddrMode === 0x01 || resp.destAddrMode === 0xF,
1042
+ destinationEndpoint: resp.destEndpoint,
1043
+ };
1044
+ this.waitress.resolve(payload);
1045
+ this.emit(Events.Events.zclPayload, payload);
1056
1046
  }
1057
1047
  }
1058
1048
  nextTransactionID() {
@@ -1068,14 +1058,14 @@ class DeconzAdapter extends adapter_1.default {
1068
1058
  ` - ${matcher.commandIdentifier} after ${timeout}ms`;
1069
1059
  }
1070
1060
  waitressValidator(payload, matcher) {
1071
- const transactionSequenceNumber = payload.frame.Header.transactionSequenceNumber;
1072
- return (!matcher.address || payload.address === matcher.address) &&
1061
+ return payload.header &&
1062
+ (!matcher.address || payload.address === matcher.address) &&
1073
1063
  payload.endpoint === matcher.endpoint &&
1074
- (!matcher.transactionSequenceNumber || transactionSequenceNumber === matcher.transactionSequenceNumber) &&
1075
- payload.frame.Cluster.ID === matcher.clusterID &&
1076
- matcher.frameType === payload.frame.Header.frameControl.frameType &&
1077
- matcher.commandIdentifier === payload.frame.Header.commandIdentifier &&
1078
- matcher.direction === payload.frame.Header.frameControl.direction;
1064
+ (!matcher.transactionSequenceNumber || payload.header.transactionSequenceNumber === matcher.transactionSequenceNumber) &&
1065
+ payload.clusterID === matcher.clusterID &&
1066
+ matcher.frameType === payload.header.frameControl.frameType &&
1067
+ matcher.commandIdentifier === payload.header.commandIdentifier &&
1068
+ matcher.direction === payload.header.frameControl.direction;
1079
1069
  }
1080
1070
  }
1081
1071
  exports.default = DeconzAdapter;