@willieee802/zigbee-herdsman 0.14.10-5.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 (622) hide show
  1. package/.babelrc.js +10 -0
  2. package/.eslintignore +3 -0
  3. package/.github/ISSUE_TEMPLATE/config.yml +5 -0
  4. package/.github/dependabot.yml +6 -0
  5. package/.github/workflows/ci.yml +31 -0
  6. package/.github/workflows/release.yml +56 -0
  7. package/.github/workflows/stale.yml +19 -0
  8. package/.github/workflows/update_deps.yml +24 -0
  9. package/LICENSE +21 -0
  10. package/README.md +9 -0
  11. package/dist/adapter/adapter.d.ts +62 -0
  12. package/dist/adapter/adapter.d.ts.map +1 -0
  13. package/dist/adapter/adapter.js +101 -0
  14. package/dist/adapter/adapter.js.map +1 -0
  15. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts +69 -0
  16. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts.map +1 -0
  17. package/dist/adapter/deconz/adapter/deconzAdapter.js +1064 -0
  18. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -0
  19. package/dist/adapter/deconz/adapter/index.d.ts +3 -0
  20. package/dist/adapter/deconz/adapter/index.d.ts.map +1 -0
  21. package/dist/adapter/deconz/adapter/index.js +11 -0
  22. package/dist/adapter/deconz/adapter/index.js.map +1 -0
  23. package/dist/adapter/deconz/driver/constants.d.ts +105 -0
  24. package/dist/adapter/deconz/driver/constants.d.ts.map +1 -0
  25. package/dist/adapter/deconz/driver/constants.js +56 -0
  26. package/dist/adapter/deconz/driver/constants.js.map +1 -0
  27. package/dist/adapter/deconz/driver/driver.d.ts +82 -0
  28. package/dist/adapter/deconz/driver/driver.d.ts.map +1 -0
  29. package/dist/adapter/deconz/driver/driver.js +733 -0
  30. package/dist/adapter/deconz/driver/driver.js.map +1 -0
  31. package/dist/adapter/deconz/driver/frame.d.ts +7 -0
  32. package/dist/adapter/deconz/driver/frame.d.ts.map +1 -0
  33. package/dist/adapter/deconz/driver/frame.js +14 -0
  34. package/dist/adapter/deconz/driver/frame.js.map +1 -0
  35. package/dist/adapter/deconz/driver/frameParser.d.ts +3 -0
  36. package/dist/adapter/deconz/driver/frameParser.d.ts.map +1 -0
  37. package/dist/adapter/deconz/driver/frameParser.js +444 -0
  38. package/dist/adapter/deconz/driver/frameParser.js.map +1 -0
  39. package/dist/adapter/deconz/driver/parser.d.ts +13 -0
  40. package/dist/adapter/deconz/driver/parser.d.ts.map +1 -0
  41. package/dist/adapter/deconz/driver/parser.js +62 -0
  42. package/dist/adapter/deconz/driver/parser.js.map +1 -0
  43. package/dist/adapter/deconz/driver/writer.d.ts +9 -0
  44. package/dist/adapter/deconz/driver/writer.d.ts.map +1 -0
  45. package/dist/adapter/deconz/driver/writer.js +45 -0
  46. package/dist/adapter/deconz/driver/writer.js.map +1 -0
  47. package/dist/adapter/events.d.ts +48 -0
  48. package/dist/adapter/events.d.ts.map +1 -0
  49. package/dist/adapter/events.js +15 -0
  50. package/dist/adapter/events.js.map +1 -0
  51. package/dist/adapter/ezsp/adapter/backup.d.ts +10 -0
  52. package/dist/adapter/ezsp/adapter/backup.d.ts.map +1 -0
  53. package/dist/adapter/ezsp/adapter/backup.js +54 -0
  54. package/dist/adapter/ezsp/adapter/backup.js.map +1 -0
  55. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +60 -0
  56. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -0
  57. package/dist/adapter/ezsp/adapter/ezspAdapter.js +586 -0
  58. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -0
  59. package/dist/adapter/ezsp/adapter/index.d.ts +3 -0
  60. package/dist/adapter/ezsp/adapter/index.d.ts.map +1 -0
  61. package/dist/adapter/ezsp/adapter/index.js +11 -0
  62. package/dist/adapter/ezsp/adapter/index.js.map +1 -0
  63. package/dist/adapter/ezsp/driver/commands.d.ts +35 -0
  64. package/dist/adapter/ezsp/driver/commands.d.ts.map +1 -0
  65. package/dist/adapter/ezsp/driver/commands.js +2358 -0
  66. package/dist/adapter/ezsp/driver/commands.js.map +1 -0
  67. package/dist/adapter/ezsp/driver/consts.d.ts +11 -0
  68. package/dist/adapter/ezsp/driver/consts.d.ts.map +1 -0
  69. package/dist/adapter/ezsp/driver/consts.js +14 -0
  70. package/dist/adapter/ezsp/driver/consts.js.map +1 -0
  71. package/dist/adapter/ezsp/driver/driver.d.ts +104 -0
  72. package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -0
  73. package/dist/adapter/ezsp/driver/driver.js +640 -0
  74. package/dist/adapter/ezsp/driver/driver.js.map +1 -0
  75. package/dist/adapter/ezsp/driver/ezsp.d.ts +97 -0
  76. package/dist/adapter/ezsp/driver/ezsp.d.ts.map +1 -0
  77. package/dist/adapter/ezsp/driver/ezsp.js +578 -0
  78. package/dist/adapter/ezsp/driver/ezsp.js.map +1 -0
  79. package/dist/adapter/ezsp/driver/index.d.ts +4 -0
  80. package/dist/adapter/ezsp/driver/index.d.ts.map +1 -0
  81. package/dist/adapter/ezsp/driver/index.js +9 -0
  82. package/dist/adapter/ezsp/driver/index.js.map +1 -0
  83. package/dist/adapter/ezsp/driver/multicast.d.ts +13 -0
  84. package/dist/adapter/ezsp/driver/multicast.d.ts.map +1 -0
  85. package/dist/adapter/ezsp/driver/multicast.js +75 -0
  86. package/dist/adapter/ezsp/driver/multicast.js.map +1 -0
  87. package/dist/adapter/ezsp/driver/parser.d.ts +13 -0
  88. package/dist/adapter/ezsp/driver/parser.d.ts.map +1 -0
  89. package/dist/adapter/ezsp/driver/parser.js +112 -0
  90. package/dist/adapter/ezsp/driver/parser.js.map +1 -0
  91. package/dist/adapter/ezsp/driver/types/basic.d.ts +63 -0
  92. package/dist/adapter/ezsp/driver/types/basic.d.ts.map +1 -0
  93. package/dist/adapter/ezsp/driver/types/basic.js +209 -0
  94. package/dist/adapter/ezsp/driver/types/basic.js.map +1 -0
  95. package/dist/adapter/ezsp/driver/types/index.d.ts +10 -0
  96. package/dist/adapter/ezsp/driver/types/index.d.ts.map +1 -0
  97. package/dist/adapter/ezsp/driver/types/index.js +134 -0
  98. package/dist/adapter/ezsp/driver/types/index.js.map +1 -0
  99. package/dist/adapter/ezsp/driver/types/named.d.ts +698 -0
  100. package/dist/adapter/ezsp/driver/types/named.d.ts.map +1 -0
  101. package/dist/adapter/ezsp/driver/types/named.js +1727 -0
  102. package/dist/adapter/ezsp/driver/types/named.js.map +1 -0
  103. package/dist/adapter/ezsp/driver/types/struct.d.ts +252 -0
  104. package/dist/adapter/ezsp/driver/types/struct.d.ts.map +1 -0
  105. package/dist/adapter/ezsp/driver/types/struct.js +709 -0
  106. package/dist/adapter/ezsp/driver/types/struct.js.map +1 -0
  107. package/dist/adapter/ezsp/driver/uart.d.ts +45 -0
  108. package/dist/adapter/ezsp/driver/uart.d.ts.map +1 -0
  109. package/dist/adapter/ezsp/driver/uart.js +367 -0
  110. package/dist/adapter/ezsp/driver/uart.js.map +1 -0
  111. package/dist/adapter/ezsp/driver/utils/crc16ccitt.d.ts +3 -0
  112. package/dist/adapter/ezsp/driver/utils/crc16ccitt.d.ts.map +1 -0
  113. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js +56 -0
  114. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js.map +1 -0
  115. package/dist/adapter/ezsp/driver/utils/index.d.ts +19 -0
  116. package/dist/adapter/ezsp/driver/utils/index.d.ts.map +1 -0
  117. package/dist/adapter/ezsp/driver/utils/index.js +68 -0
  118. package/dist/adapter/ezsp/driver/utils/index.js.map +1 -0
  119. package/dist/adapter/ezsp/driver/writer.d.ts +14 -0
  120. package/dist/adapter/ezsp/driver/writer.d.ts.map +1 -0
  121. package/dist/adapter/ezsp/driver/writer.js +89 -0
  122. package/dist/adapter/ezsp/driver/writer.js.map +1 -0
  123. package/dist/adapter/index.d.ts +5 -0
  124. package/dist/adapter/index.d.ts.map +1 -0
  125. package/dist/adapter/index.js +36 -0
  126. package/dist/adapter/index.js.map +1 -0
  127. package/dist/adapter/serialPort.d.ts +9 -0
  128. package/dist/adapter/serialPort.d.ts.map +1 -0
  129. package/dist/adapter/serialPort.js +23 -0
  130. package/dist/adapter/serialPort.js.map +1 -0
  131. package/dist/adapter/serialPortUtils.d.ts +13 -0
  132. package/dist/adapter/serialPortUtils.d.ts.map +1 -0
  133. package/dist/adapter/serialPortUtils.js +19 -0
  134. package/dist/adapter/serialPortUtils.js.map +1 -0
  135. package/dist/adapter/socketPortUtils.d.ts +11 -0
  136. package/dist/adapter/socketPortUtils.d.ts.map +1 -0
  137. package/dist/adapter/socketPortUtils.js +17 -0
  138. package/dist/adapter/socketPortUtils.js.map +1 -0
  139. package/dist/adapter/tstype.d.ts +86 -0
  140. package/dist/adapter/tstype.d.ts.map +1 -0
  141. package/dist/adapter/tstype.js +3 -0
  142. package/dist/adapter/tstype.js.map +1 -0
  143. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts +63 -0
  144. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts.map +1 -0
  145. package/dist/adapter/z-stack/adapter/adapter-backup.js +442 -0
  146. package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -0
  147. package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts +151 -0
  148. package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts.map +1 -0
  149. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +259 -0
  150. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js.map +1 -0
  151. package/dist/adapter/z-stack/adapter/endpoints.d.ts +12 -0
  152. package/dist/adapter/z-stack/adapter/endpoints.d.ts.map +1 -0
  153. package/dist/adapter/z-stack/adapter/endpoints.js +74 -0
  154. package/dist/adapter/z-stack/adapter/endpoints.js.map +1 -0
  155. package/dist/adapter/z-stack/adapter/index.d.ts +3 -0
  156. package/dist/adapter/z-stack/adapter/index.d.ts.map +1 -0
  157. package/dist/adapter/z-stack/adapter/index.js +9 -0
  158. package/dist/adapter/z-stack/adapter/index.js.map +1 -0
  159. package/dist/adapter/z-stack/adapter/manager.d.ts +87 -0
  160. package/dist/adapter/z-stack/adapter/manager.d.ts.map +1 -0
  161. package/dist/adapter/z-stack/adapter/manager.js +477 -0
  162. package/dist/adapter/z-stack/adapter/manager.js.map +1 -0
  163. package/dist/adapter/z-stack/adapter/tstype.d.ts +7 -0
  164. package/dist/adapter/z-stack/adapter/tstype.d.ts.map +1 -0
  165. package/dist/adapter/z-stack/adapter/tstype.js +11 -0
  166. package/dist/adapter/z-stack/adapter/tstype.js.map +1 -0
  167. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +82 -0
  168. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts.map +1 -0
  169. package/dist/adapter/z-stack/adapter/zStackAdapter.js +869 -0
  170. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -0
  171. package/dist/adapter/z-stack/constants/af.d.ts +24 -0
  172. package/dist/adapter/z-stack/constants/af.d.ts.map +1 -0
  173. package/dist/adapter/z-stack/constants/af.js +28 -0
  174. package/dist/adapter/z-stack/constants/af.js.map +1 -0
  175. package/dist/adapter/z-stack/constants/common.d.ts +279 -0
  176. package/dist/adapter/z-stack/constants/common.d.ts.map +1 -0
  177. package/dist/adapter/z-stack/constants/common.js +290 -0
  178. package/dist/adapter/z-stack/constants/common.js.map +1 -0
  179. package/dist/adapter/z-stack/constants/dbg.d.ts +23 -0
  180. package/dist/adapter/z-stack/constants/dbg.d.ts.map +1 -0
  181. package/dist/adapter/z-stack/constants/dbg.js +25 -0
  182. package/dist/adapter/z-stack/constants/dbg.js.map +1 -0
  183. package/dist/adapter/z-stack/constants/index.d.ts +11 -0
  184. package/dist/adapter/z-stack/constants/index.d.ts.map +1 -0
  185. package/dist/adapter/z-stack/constants/index.js +48 -0
  186. package/dist/adapter/z-stack/constants/index.js.map +1 -0
  187. package/dist/adapter/z-stack/constants/mac.d.ts +128 -0
  188. package/dist/adapter/z-stack/constants/mac.d.ts.map +1 -0
  189. package/dist/adapter/z-stack/constants/mac.js +130 -0
  190. package/dist/adapter/z-stack/constants/mac.js.map +1 -0
  191. package/dist/adapter/z-stack/constants/sapi.d.ts +25 -0
  192. package/dist/adapter/z-stack/constants/sapi.d.ts.map +1 -0
  193. package/dist/adapter/z-stack/constants/sapi.js +27 -0
  194. package/dist/adapter/z-stack/constants/sapi.js.map +1 -0
  195. package/dist/adapter/z-stack/constants/sys.d.ts +72 -0
  196. package/dist/adapter/z-stack/constants/sys.d.ts.map +1 -0
  197. package/dist/adapter/z-stack/constants/sys.js +74 -0
  198. package/dist/adapter/z-stack/constants/sys.js.map +1 -0
  199. package/dist/adapter/z-stack/constants/util.d.ts +82 -0
  200. package/dist/adapter/z-stack/constants/util.d.ts.map +1 -0
  201. package/dist/adapter/z-stack/constants/util.js +84 -0
  202. package/dist/adapter/z-stack/constants/util.js.map +1 -0
  203. package/dist/adapter/z-stack/constants/utils.d.ts +5 -0
  204. package/dist/adapter/z-stack/constants/utils.d.ts.map +1 -0
  205. package/dist/adapter/z-stack/constants/utils.js +15 -0
  206. package/dist/adapter/z-stack/constants/utils.js.map +1 -0
  207. package/dist/adapter/z-stack/constants/zdo.d.ts +103 -0
  208. package/dist/adapter/z-stack/constants/zdo.d.ts.map +1 -0
  209. package/dist/adapter/z-stack/constants/zdo.js +105 -0
  210. package/dist/adapter/z-stack/constants/zdo.js.map +1 -0
  211. package/dist/adapter/z-stack/models/index.d.ts +2 -0
  212. package/dist/adapter/z-stack/models/index.d.ts.map +1 -0
  213. package/dist/adapter/z-stack/models/index.js +18 -0
  214. package/dist/adapter/z-stack/models/index.js.map +1 -0
  215. package/dist/adapter/z-stack/models/startup-options.d.ts +13 -0
  216. package/dist/adapter/z-stack/models/startup-options.d.ts.map +1 -0
  217. package/dist/adapter/z-stack/models/startup-options.js +3 -0
  218. package/dist/adapter/z-stack/models/startup-options.js.map +1 -0
  219. package/dist/adapter/z-stack/structs/entries/address-manager-entry.d.ts +24 -0
  220. package/dist/adapter/z-stack/structs/entries/address-manager-entry.d.ts.map +1 -0
  221. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +46 -0
  222. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js.map +1 -0
  223. package/dist/adapter/z-stack/structs/entries/address-manager-table.d.ts +11 -0
  224. package/dist/adapter/z-stack/structs/entries/address-manager-table.d.ts.map +1 -0
  225. package/dist/adapter/z-stack/structs/entries/address-manager-table.js +23 -0
  226. package/dist/adapter/z-stack/structs/entries/address-manager-table.js.map +1 -0
  227. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.d.ts +11 -0
  228. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.d.ts.map +1 -0
  229. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js +22 -0
  230. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js.map +1 -0
  231. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.d.ts +11 -0
  232. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.d.ts.map +1 -0
  233. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js +24 -0
  234. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js.map +1 -0
  235. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.d.ts +11 -0
  236. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.d.ts.map +1 -0
  237. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js +25 -0
  238. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js.map +1 -0
  239. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.d.ts +11 -0
  240. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.d.ts.map +1 -0
  241. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js +24 -0
  242. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js.map +1 -0
  243. package/dist/adapter/z-stack/structs/entries/channel-list.d.ts +9 -0
  244. package/dist/adapter/z-stack/structs/entries/channel-list.d.ts.map +1 -0
  245. package/dist/adapter/z-stack/structs/entries/channel-list.js +16 -0
  246. package/dist/adapter/z-stack/structs/entries/channel-list.js.map +1 -0
  247. package/dist/adapter/z-stack/structs/entries/has-configured.d.ts +9 -0
  248. package/dist/adapter/z-stack/structs/entries/has-configured.d.ts.map +1 -0
  249. package/dist/adapter/z-stack/structs/entries/has-configured.js +17 -0
  250. package/dist/adapter/z-stack/structs/entries/has-configured.js.map +1 -0
  251. package/dist/adapter/z-stack/structs/entries/index.d.ts +17 -0
  252. package/dist/adapter/z-stack/structs/entries/index.d.ts.map +1 -0
  253. package/dist/adapter/z-stack/structs/entries/index.js +33 -0
  254. package/dist/adapter/z-stack/structs/entries/index.js.map +1 -0
  255. package/dist/adapter/z-stack/structs/entries/nib.d.ts +11 -0
  256. package/dist/adapter/z-stack/structs/entries/nib.d.ts.map +1 -0
  257. package/dist/adapter/z-stack/structs/entries/nib.js +69 -0
  258. package/dist/adapter/z-stack/structs/entries/nib.js.map +1 -0
  259. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts +11 -0
  260. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts.map +1 -0
  261. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +19 -0
  262. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js.map +1 -0
  263. package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts +9 -0
  264. package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts.map +1 -0
  265. package/dist/adapter/z-stack/structs/entries/nwk-key.js +16 -0
  266. package/dist/adapter/z-stack/structs/entries/nwk-key.js.map +1 -0
  267. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.d.ts +9 -0
  268. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.d.ts.map +1 -0
  269. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +16 -0
  270. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js.map +1 -0
  271. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.d.ts +14 -0
  272. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.d.ts.map +1 -0
  273. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js +24 -0
  274. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js.map +1 -0
  275. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.d.ts +11 -0
  276. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.d.ts.map +1 -0
  277. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js +23 -0
  278. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js.map +1 -0
  279. package/dist/adapter/z-stack/structs/entries/security-manager-entry.d.ts +21 -0
  280. package/dist/adapter/z-stack/structs/entries/security-manager-entry.d.ts.map +1 -0
  281. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js +37 -0
  282. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js.map +1 -0
  283. package/dist/adapter/z-stack/structs/entries/security-manager-table.d.ts +11 -0
  284. package/dist/adapter/z-stack/structs/entries/security-manager-table.d.ts.map +1 -0
  285. package/dist/adapter/z-stack/structs/entries/security-manager-table.js +25 -0
  286. package/dist/adapter/z-stack/structs/entries/security-manager-table.js.map +1 -0
  287. package/dist/adapter/z-stack/structs/index.d.ts +5 -0
  288. package/dist/adapter/z-stack/structs/index.d.ts.map +1 -0
  289. package/dist/adapter/z-stack/structs/index.js +21 -0
  290. package/dist/adapter/z-stack/structs/index.js.map +1 -0
  291. package/dist/adapter/z-stack/structs/serializable-memory-object.d.ts +14 -0
  292. package/dist/adapter/z-stack/structs/serializable-memory-object.d.ts.map +1 -0
  293. package/dist/adapter/z-stack/structs/serializable-memory-object.js +3 -0
  294. package/dist/adapter/z-stack/structs/serializable-memory-object.js.map +1 -0
  295. package/dist/adapter/z-stack/structs/struct.d.ts +100 -0
  296. package/dist/adapter/z-stack/structs/struct.d.ts.map +1 -0
  297. package/dist/adapter/z-stack/structs/struct.js +296 -0
  298. package/dist/adapter/z-stack/structs/struct.js.map +1 -0
  299. package/dist/adapter/z-stack/structs/table.d.ts +95 -0
  300. package/dist/adapter/z-stack/structs/table.d.ts.map +1 -0
  301. package/dist/adapter/z-stack/structs/table.js +162 -0
  302. package/dist/adapter/z-stack/structs/table.js.map +1 -0
  303. package/dist/adapter/z-stack/unpi/constants.d.ts +29 -0
  304. package/dist/adapter/z-stack/unpi/constants.d.ts.map +1 -0
  305. package/dist/adapter/z-stack/unpi/constants.js +42 -0
  306. package/dist/adapter/z-stack/unpi/constants.js.map +1 -0
  307. package/dist/adapter/z-stack/unpi/frame.d.ts +17 -0
  308. package/dist/adapter/z-stack/unpi/frame.d.ts.map +1 -0
  309. package/dist/adapter/z-stack/unpi/frame.js +49 -0
  310. package/dist/adapter/z-stack/unpi/frame.js.map +1 -0
  311. package/dist/adapter/z-stack/unpi/index.d.ts +6 -0
  312. package/dist/adapter/z-stack/unpi/index.d.ts.map +1 -0
  313. package/dist/adapter/z-stack/unpi/index.js +38 -0
  314. package/dist/adapter/z-stack/unpi/index.js.map +1 -0
  315. package/dist/adapter/z-stack/unpi/parser.d.ts +11 -0
  316. package/dist/adapter/z-stack/unpi/parser.d.ts.map +1 -0
  317. package/dist/adapter/z-stack/unpi/parser.js +75 -0
  318. package/dist/adapter/z-stack/unpi/parser.js.map +1 -0
  319. package/dist/adapter/z-stack/unpi/writer.d.ts +11 -0
  320. package/dist/adapter/z-stack/unpi/writer.d.ts.map +1 -0
  321. package/dist/adapter/z-stack/unpi/writer.js +45 -0
  322. package/dist/adapter/z-stack/unpi/writer.js.map +1 -0
  323. package/dist/adapter/z-stack/utils/channel-list.d.ts +21 -0
  324. package/dist/adapter/z-stack/utils/channel-list.d.ts.map +1 -0
  325. package/dist/adapter/z-stack/utils/channel-list.js +41 -0
  326. package/dist/adapter/z-stack/utils/channel-list.js.map +1 -0
  327. package/dist/adapter/z-stack/utils/index.d.ts +3 -0
  328. package/dist/adapter/z-stack/utils/index.d.ts.map +1 -0
  329. package/dist/adapter/z-stack/utils/index.js +19 -0
  330. package/dist/adapter/z-stack/utils/index.js.map +1 -0
  331. package/dist/adapter/z-stack/utils/network-options.d.ts +9 -0
  332. package/dist/adapter/z-stack/utils/network-options.d.ts.map +1 -0
  333. package/dist/adapter/z-stack/utils/network-options.js +23 -0
  334. package/dist/adapter/z-stack/utils/network-options.js.map +1 -0
  335. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts +12 -0
  336. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts.map +1 -0
  337. package/dist/adapter/z-stack/znp/buffaloZnp.js +114 -0
  338. package/dist/adapter/z-stack/znp/buffaloZnp.js.map +1 -0
  339. package/dist/adapter/z-stack/znp/definition.d.ts +6 -0
  340. package/dist/adapter/z-stack/znp/definition.d.ts.map +1 -0
  341. package/dist/adapter/z-stack/znp/definition.js +3051 -0
  342. package/dist/adapter/z-stack/znp/definition.js.map +1 -0
  343. package/dist/adapter/z-stack/znp/index.d.ts +4 -0
  344. package/dist/adapter/z-stack/znp/index.d.ts.map +1 -0
  345. package/dist/adapter/z-stack/znp/index.js +11 -0
  346. package/dist/adapter/z-stack/znp/index.js.map +1 -0
  347. package/dist/adapter/z-stack/znp/parameterType.d.ts +23 -0
  348. package/dist/adapter/z-stack/znp/parameterType.d.ts.map +1 -0
  349. package/dist/adapter/z-stack/znp/parameterType.js +26 -0
  350. package/dist/adapter/z-stack/znp/parameterType.js.map +1 -0
  351. package/dist/adapter/z-stack/znp/tstype.d.ts +22 -0
  352. package/dist/adapter/z-stack/znp/tstype.d.ts.map +1 -0
  353. package/dist/adapter/z-stack/znp/tstype.js +3 -0
  354. package/dist/adapter/z-stack/znp/tstype.js.map +1 -0
  355. package/dist/adapter/z-stack/znp/znp.d.ts +44 -0
  356. package/dist/adapter/z-stack/znp/znp.d.ts.map +1 -0
  357. package/dist/adapter/z-stack/znp/znp.js +326 -0
  358. package/dist/adapter/z-stack/znp/znp.js.map +1 -0
  359. package/dist/adapter/z-stack/znp/zpiObject.d.ts +20 -0
  360. package/dist/adapter/z-stack/znp/zpiObject.d.ts.map +1 -0
  361. package/dist/adapter/z-stack/znp/zpiObject.js +97 -0
  362. package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -0
  363. package/dist/adapter/zigate/adapter/index.d.ts +3 -0
  364. package/dist/adapter/zigate/adapter/index.d.ts.map +1 -0
  365. package/dist/adapter/zigate/adapter/index.js +11 -0
  366. package/dist/adapter/zigate/adapter/index.js.map +1 -0
  367. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +70 -0
  368. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts.map +1 -0
  369. package/dist/adapter/zigate/adapter/zigateAdapter.js +679 -0
  370. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -0
  371. package/dist/adapter/zigate/debug.d.ts +8 -0
  372. package/dist/adapter/zigate/debug.d.ts.map +1 -0
  373. package/dist/adapter/zigate/debug.js +23 -0
  374. package/dist/adapter/zigate/debug.js.map +1 -0
  375. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts +19 -0
  376. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts.map +1 -0
  377. package/dist/adapter/zigate/driver/buffaloZiGate.js +140 -0
  378. package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -0
  379. package/dist/adapter/zigate/driver/commandType.d.ts +42 -0
  380. package/dist/adapter/zigate/driver/commandType.d.ts.map +1 -0
  381. package/dist/adapter/zigate/driver/commandType.js +386 -0
  382. package/dist/adapter/zigate/driver/commandType.js.map +1 -0
  383. package/dist/adapter/zigate/driver/constants.d.ts +277 -0
  384. package/dist/adapter/zigate/driver/constants.d.ts.map +1 -0
  385. package/dist/adapter/zigate/driver/constants.js +372 -0
  386. package/dist/adapter/zigate/driver/constants.js.map +1 -0
  387. package/dist/adapter/zigate/driver/frame.d.ts +27 -0
  388. package/dist/adapter/zigate/driver/frame.d.ts.map +1 -0
  389. package/dist/adapter/zigate/driver/frame.js +173 -0
  390. package/dist/adapter/zigate/driver/frame.js.map +1 -0
  391. package/dist/adapter/zigate/driver/messageType.d.ts +12 -0
  392. package/dist/adapter/zigate/driver/messageType.d.ts.map +1 -0
  393. package/dist/adapter/zigate/driver/messageType.js +279 -0
  394. package/dist/adapter/zigate/driver/messageType.js.map +1 -0
  395. package/dist/adapter/zigate/driver/parameterType.d.ts +21 -0
  396. package/dist/adapter/zigate/driver/parameterType.d.ts.map +1 -0
  397. package/dist/adapter/zigate/driver/parameterType.js +24 -0
  398. package/dist/adapter/zigate/driver/parameterType.js.map +1 -0
  399. package/dist/adapter/zigate/driver/ziGateObject.d.ts +24 -0
  400. package/dist/adapter/zigate/driver/ziGateObject.d.ts.map +1 -0
  401. package/dist/adapter/zigate/driver/ziGateObject.js +107 -0
  402. package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -0
  403. package/dist/adapter/zigate/driver/zigate.d.ts +50 -0
  404. package/dist/adapter/zigate/driver/zigate.d.ts.map +1 -0
  405. package/dist/adapter/zigate/driver/zigate.js +304 -0
  406. package/dist/adapter/zigate/driver/zigate.js.map +1 -0
  407. package/dist/buffalo/buffalo.d.ts +49 -0
  408. package/dist/buffalo/buffalo.d.ts.map +1 -0
  409. package/dist/buffalo/buffalo.js +308 -0
  410. package/dist/buffalo/buffalo.js.map +1 -0
  411. package/dist/buffalo/index.d.ts +4 -0
  412. package/dist/buffalo/index.d.ts.map +1 -0
  413. package/dist/buffalo/index.js +34 -0
  414. package/dist/buffalo/index.js.map +1 -0
  415. package/dist/buffalo/tstype.d.ts +9 -0
  416. package/dist/buffalo/tstype.d.ts.map +1 -0
  417. package/dist/buffalo/tstype.js +3 -0
  418. package/dist/buffalo/tstype.js.map +1 -0
  419. package/dist/controller/controller.d.ts +111 -0
  420. package/dist/controller/controller.d.ts.map +1 -0
  421. package/dist/controller/controller.js +608 -0
  422. package/dist/controller/controller.js.map +1 -0
  423. package/dist/controller/database.d.ts +19 -0
  424. package/dist/controller/database.d.ts.map +1 -0
  425. package/dist/controller/database.js +94 -0
  426. package/dist/controller/database.js.map +1 -0
  427. package/dist/controller/events.d.ts +56 -0
  428. package/dist/controller/events.d.ts.map +1 -0
  429. package/dist/controller/events.js +100 -0
  430. package/dist/controller/events.js.map +1 -0
  431. package/dist/controller/greenPower.d.ts +13 -0
  432. package/dist/controller/greenPower.d.ts.map +1 -0
  433. package/dist/controller/greenPower.js +221 -0
  434. package/dist/controller/greenPower.js.map +1 -0
  435. package/dist/controller/helpers/index.d.ts +3 -0
  436. package/dist/controller/helpers/index.d.ts.map +1 -0
  437. package/dist/controller/helpers/index.js +29 -0
  438. package/dist/controller/helpers/index.js.map +1 -0
  439. package/dist/controller/helpers/zclFrameConverter.d.ts +8 -0
  440. package/dist/controller/helpers/zclFrameConverter.d.ts.map +1 -0
  441. package/dist/controller/helpers/zclFrameConverter.js +32 -0
  442. package/dist/controller/helpers/zclFrameConverter.js.map +1 -0
  443. package/dist/controller/helpers/zclTransactionSequenceNumber.d.ts +6 -0
  444. package/dist/controller/helpers/zclTransactionSequenceNumber.d.ts.map +1 -0
  445. package/dist/controller/helpers/zclTransactionSequenceNumber.js +14 -0
  446. package/dist/controller/helpers/zclTransactionSequenceNumber.js.map +1 -0
  447. package/dist/controller/index.d.ts +6 -0
  448. package/dist/controller/index.d.ts.map +1 -0
  449. package/dist/controller/index.js +9 -0
  450. package/dist/controller/index.js.map +1 -0
  451. package/dist/controller/logger-stub.d.ts +7 -0
  452. package/dist/controller/logger-stub.d.ts.map +1 -0
  453. package/dist/controller/logger-stub.js +3 -0
  454. package/dist/controller/logger-stub.js.map +1 -0
  455. package/dist/controller/model/device.d.ts +128 -0
  456. package/dist/controller/model/device.d.ts.map +1 -0
  457. package/dist/controller/model/device.js +682 -0
  458. package/dist/controller/model/device.js.map +1 -0
  459. package/dist/controller/model/endpoint.d.ts +129 -0
  460. package/dist/controller/model/endpoint.d.ts.map +1 -0
  461. package/dist/controller/model/endpoint.js +666 -0
  462. package/dist/controller/model/endpoint.js.map +1 -0
  463. package/dist/controller/model/entity.d.ts +15 -0
  464. package/dist/controller/model/entity.d.ts.map +1 -0
  465. package/dist/controller/model/entity.js +27 -0
  466. package/dist/controller/model/entity.js.map +1 -0
  467. package/dist/controller/model/group.d.ts +40 -0
  468. package/dist/controller/model/group.d.ts.map +1 -0
  469. package/dist/controller/model/group.js +222 -0
  470. package/dist/controller/model/group.js.map +1 -0
  471. package/dist/controller/model/index.d.ts +6 -0
  472. package/dist/controller/model/index.d.ts.map +1 -0
  473. package/dist/controller/model/index.js +15 -0
  474. package/dist/controller/model/index.js.map +1 -0
  475. package/dist/controller/touchlink.d.ts +20 -0
  476. package/dist/controller/touchlink.d.ts.map +1 -0
  477. package/dist/controller/touchlink.js +158 -0
  478. package/dist/controller/touchlink.js.map +1 -0
  479. package/dist/controller/tstype.d.ts +21 -0
  480. package/dist/controller/tstype.d.ts.map +1 -0
  481. package/dist/controller/tstype.js +10 -0
  482. package/dist/controller/tstype.js.map +1 -0
  483. package/dist/index.d.ts +4 -0
  484. package/dist/index.d.ts.map +1 -0
  485. package/dist/index.js +34 -0
  486. package/dist/index.js.map +1 -0
  487. package/dist/models/backup-storage-legacy.d.ts +27 -0
  488. package/dist/models/backup-storage-legacy.d.ts.map +1 -0
  489. package/dist/models/backup-storage-legacy.js +3 -0
  490. package/dist/models/backup-storage-legacy.js.map +1 -0
  491. package/dist/models/backup-storage-unified.d.ts +50 -0
  492. package/dist/models/backup-storage-unified.d.ts.map +1 -0
  493. package/dist/models/backup-storage-unified.js +3 -0
  494. package/dist/models/backup-storage-unified.js.map +1 -0
  495. package/dist/models/backup.d.ts +38 -0
  496. package/dist/models/backup.d.ts.map +1 -0
  497. package/dist/models/backup.js +3 -0
  498. package/dist/models/backup.js.map +1 -0
  499. package/dist/models/index.d.ts +5 -0
  500. package/dist/models/index.d.ts.map +1 -0
  501. package/dist/models/index.js +21 -0
  502. package/dist/models/index.js.map +1 -0
  503. package/dist/models/network-options.d.ts +13 -0
  504. package/dist/models/network-options.d.ts.map +1 -0
  505. package/dist/models/network-options.js +3 -0
  506. package/dist/models/network-options.js.map +1 -0
  507. package/dist/utils/assertString.d.ts +3 -0
  508. package/dist/utils/assertString.d.ts.map +1 -0
  509. package/dist/utils/assertString.js +9 -0
  510. package/dist/utils/assertString.js.map +1 -0
  511. package/dist/utils/backup.d.ts +21 -0
  512. package/dist/utils/backup.d.ts.map +1 -0
  513. package/dist/utils/backup.js +188 -0
  514. package/dist/utils/backup.js.map +1 -0
  515. package/dist/utils/equalsPartial.d.ts +3 -0
  516. package/dist/utils/equalsPartial.d.ts.map +1 -0
  517. package/dist/utils/equalsPartial.js +12 -0
  518. package/dist/utils/equalsPartial.js.map +1 -0
  519. package/dist/utils/index.d.ts +10 -0
  520. package/dist/utils/index.d.ts.map +1 -0
  521. package/dist/utils/index.js +46 -0
  522. package/dist/utils/index.js.map +1 -0
  523. package/dist/utils/isNumberArray.d.ts +3 -0
  524. package/dist/utils/isNumberArray.d.ts.map +1 -0
  525. package/dist/utils/isNumberArray.js +7 -0
  526. package/dist/utils/isNumberArray.js.map +1 -0
  527. package/dist/utils/queue.d.ts +12 -0
  528. package/dist/utils/queue.d.ts.map +1 -0
  529. package/dist/utils/queue.js +51 -0
  530. package/dist/utils/queue.js.map +1 -0
  531. package/dist/utils/realpathSync.d.ts +3 -0
  532. package/dist/utils/realpathSync.d.ts.map +1 -0
  533. package/dist/utils/realpathSync.js +13 -0
  534. package/dist/utils/realpathSync.js.map +1 -0
  535. package/dist/utils/wait.d.ts +3 -0
  536. package/dist/utils/wait.d.ts.map +1 -0
  537. package/dist/utils/wait.js +9 -0
  538. package/dist/utils/wait.js.map +1 -0
  539. package/dist/utils/waitress.d.ts +22 -0
  540. package/dist/utils/waitress.d.ts.map +1 -0
  541. package/dist/utils/waitress.js +62 -0
  542. package/dist/utils/waitress.js.map +1 -0
  543. package/dist/zcl/buffaloZcl.d.ts +42 -0
  544. package/dist/zcl/buffaloZcl.d.ts.map +1 -0
  545. package/dist/zcl/buffaloZcl.js +592 -0
  546. package/dist/zcl/buffaloZcl.js.map +1 -0
  547. package/dist/zcl/definition/buffaloZclDataType.d.ts +18 -0
  548. package/dist/zcl/definition/buffaloZclDataType.d.ts.map +1 -0
  549. package/dist/zcl/definition/buffaloZclDataType.js +21 -0
  550. package/dist/zcl/definition/buffaloZclDataType.js.map +1 -0
  551. package/dist/zcl/definition/cluster.d.ts +30 -0
  552. package/dist/zcl/definition/cluster.d.ts.map +1 -0
  553. package/dist/zcl/definition/cluster.js +5216 -0
  554. package/dist/zcl/definition/cluster.js.map +1 -0
  555. package/dist/zcl/definition/dataType.d.ts +60 -0
  556. package/dist/zcl/definition/dataType.d.ts.map +1 -0
  557. package/dist/zcl/definition/dataType.js +65 -0
  558. package/dist/zcl/definition/dataType.js.map +1 -0
  559. package/dist/zcl/definition/direction.d.ts +6 -0
  560. package/dist/zcl/definition/direction.d.ts.map +1 -0
  561. package/dist/zcl/definition/direction.js +9 -0
  562. package/dist/zcl/definition/direction.js.map +1 -0
  563. package/dist/zcl/definition/endpointDeviceType.d.ts +5 -0
  564. package/dist/zcl/definition/endpointDeviceType.d.ts.map +1 -0
  565. package/dist/zcl/definition/endpointDeviceType.js +16 -0
  566. package/dist/zcl/definition/endpointDeviceType.js.map +1 -0
  567. package/dist/zcl/definition/foundation.d.ts +12 -0
  568. package/dist/zcl/definition/foundation.d.ts.map +1 -0
  569. package/dist/zcl/definition/foundation.js +168 -0
  570. package/dist/zcl/definition/foundation.js.map +1 -0
  571. package/dist/zcl/definition/frameControl.d.ts +11 -0
  572. package/dist/zcl/definition/frameControl.d.ts.map +1 -0
  573. package/dist/zcl/definition/frameControl.js +3 -0
  574. package/dist/zcl/definition/frameControl.js.map +1 -0
  575. package/dist/zcl/definition/frameType.d.ts +6 -0
  576. package/dist/zcl/definition/frameType.d.ts.map +1 -0
  577. package/dist/zcl/definition/frameType.js +9 -0
  578. package/dist/zcl/definition/frameType.js.map +1 -0
  579. package/dist/zcl/definition/index.d.ts +14 -0
  580. package/dist/zcl/definition/index.d.ts.map +1 -0
  581. package/dist/zcl/definition/index.js +52 -0
  582. package/dist/zcl/definition/index.js.map +1 -0
  583. package/dist/zcl/definition/manufacturerCode.d.ts +1075 -0
  584. package/dist/zcl/definition/manufacturerCode.d.ts.map +1 -0
  585. package/dist/zcl/definition/manufacturerCode.js +1080 -0
  586. package/dist/zcl/definition/manufacturerCode.js.map +1 -0
  587. package/dist/zcl/definition/powerSource.d.ts +5 -0
  588. package/dist/zcl/definition/powerSource.d.ts.map +1 -0
  589. package/dist/zcl/definition/powerSource.js +13 -0
  590. package/dist/zcl/definition/powerSource.js.map +1 -0
  591. package/dist/zcl/definition/status.d.ts +39 -0
  592. package/dist/zcl/definition/status.d.ts.map +1 -0
  593. package/dist/zcl/definition/status.js +42 -0
  594. package/dist/zcl/definition/status.js.map +1 -0
  595. package/dist/zcl/definition/tstype.d.ts +17 -0
  596. package/dist/zcl/definition/tstype.d.ts.map +1 -0
  597. package/dist/zcl/definition/tstype.js +3 -0
  598. package/dist/zcl/definition/tstype.js.map +1 -0
  599. package/dist/zcl/index.d.ts +16 -0
  600. package/dist/zcl/index.d.ts.map +1 -0
  601. package/dist/zcl/index.js +56 -0
  602. package/dist/zcl/index.js.map +1 -0
  603. package/dist/zcl/tstype.d.ts +57 -0
  604. package/dist/zcl/tstype.d.ts.map +1 -0
  605. package/dist/zcl/tstype.js +11 -0
  606. package/dist/zcl/tstype.js.map +1 -0
  607. package/dist/zcl/utils.d.ts +7 -0
  608. package/dist/zcl/utils.d.ts.map +1 -0
  609. package/dist/zcl/utils.js +166 -0
  610. package/dist/zcl/utils.js.map +1 -0
  611. package/dist/zcl/zclFrame.d.ts +46 -0
  612. package/dist/zcl/zclFrame.d.ts.map +1 -0
  613. package/dist/zcl/zclFrame.js +348 -0
  614. package/dist/zcl/zclFrame.js.map +1 -0
  615. package/dist/zcl/zclStatusError.d.ts +6 -0
  616. package/dist/zcl/zclStatusError.d.ts.map +1 -0
  617. package/dist/zcl/zclStatusError.js +14 -0
  618. package/dist/zcl/zclStatusError.js.map +1 -0
  619. package/examples/join-and-log.js +29 -0
  620. package/package.json +76 -0
  621. package/tsconfig.json +24 -0
  622. package/typedoc-tsconfig.json +44 -0
@@ -0,0 +1,19 @@
1
+ import { DatabaseEntry, EntityType } from './tstype';
2
+ declare class Database {
3
+ private _id;
4
+ private entries;
5
+ private path;
6
+ get id(): number;
7
+ private constructor();
8
+ private generateDatabaseID;
9
+ static open(path: string): Database;
10
+ getEntries(type: EntityType[]): DatabaseEntry[];
11
+ insert(DatabaseEntry: DatabaseEntry): void;
12
+ update(DatabaseEntry: DatabaseEntry, write: boolean): void;
13
+ remove(ID: number): void;
14
+ has(ID: number): boolean;
15
+ newID(): number;
16
+ write(): void;
17
+ }
18
+ export default Database;
19
+ //# sourceMappingURL=database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/controller/database.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,aAAa,EAAE,UAAU,EAAC,MAAM,UAAU,CAAC;AAOnD,cAAM,QAAQ;IACV,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,OAAO,CAAgC;IAC/C,OAAO,CAAC,IAAI,CAAS;IAErB,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,OAAO;IAMP,OAAO,CAAC,kBAAkB;WAQZ,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ;IAgBnC,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE;IAI/C,MAAM,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAS1C,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAY1D,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IASxB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIxB,KAAK,IAAI,MAAM;IAQf,KAAK,IAAI,IAAI;CAevB;AAED,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const fs_1 = __importDefault(require("fs"));
7
+ const debug_1 = __importDefault(require("debug"));
8
+ const model_1 = require("./model");
9
+ const debug = {
10
+ log: (0, debug_1.default)('zigbee-herdsman:controller:database:log'),
11
+ };
12
+ class Database {
13
+ get id() {
14
+ return this._id;
15
+ }
16
+ constructor(entries, path) {
17
+ this._id = this.generateDatabaseID();
18
+ this.entries = entries;
19
+ this.path = path;
20
+ }
21
+ generateDatabaseID() {
22
+ for (let i = 1; i < 100000; i++) {
23
+ if (!model_1.Entity.databaseIDExists(i)) {
24
+ return i;
25
+ }
26
+ }
27
+ }
28
+ static open(path) {
29
+ const entries = {};
30
+ if (fs_1.default.existsSync(path)) {
31
+ const rows = fs_1.default.readFileSync(path, 'utf-8').split('\n').map((r) => r.trim()).filter((r) => r != '');
32
+ for (const row of rows) {
33
+ const json = JSON.parse(row);
34
+ if (json.hasOwnProperty('id')) {
35
+ entries[json.id] = json;
36
+ }
37
+ }
38
+ }
39
+ return new Database(entries, path);
40
+ }
41
+ getEntries(type) {
42
+ return Object.values(this.entries).filter(e => type.includes(e.type));
43
+ }
44
+ insert(DatabaseEntry) {
45
+ if (this.entries[DatabaseEntry.id]) {
46
+ throw new Error(`DatabaseEntry with ID '${DatabaseEntry.id}' already exists`);
47
+ }
48
+ this.entries[DatabaseEntry.id] = DatabaseEntry;
49
+ this.write();
50
+ }
51
+ update(DatabaseEntry, write) {
52
+ if (!this.entries[DatabaseEntry.id]) {
53
+ throw new Error(`DatabaseEntry with ID '${DatabaseEntry.id}' does not exist`);
54
+ }
55
+ this.entries[DatabaseEntry.id] = DatabaseEntry;
56
+ if (write) {
57
+ this.write();
58
+ }
59
+ }
60
+ remove(ID) {
61
+ if (!this.entries[ID]) {
62
+ throw new Error(`DatabaseEntry with ID '${ID}' does not exist`);
63
+ }
64
+ delete this.entries[ID];
65
+ this.write();
66
+ }
67
+ has(ID) {
68
+ return this.entries.hasOwnProperty(ID);
69
+ }
70
+ newID() {
71
+ for (let i = 1; i < 100000; i++) {
72
+ if (!this.entries[i]) {
73
+ return i;
74
+ }
75
+ }
76
+ }
77
+ write() {
78
+ debug.log(`Writing database to '${this.path}'`);
79
+ const lines = [];
80
+ for (const DatabaseEntry of Object.values(this.entries)) {
81
+ const json = JSON.stringify(DatabaseEntry);
82
+ lines.push(json);
83
+ }
84
+ const tmpPath = this.path + '.tmp';
85
+ fs_1.default.writeFileSync(tmpPath, lines.join('\n'));
86
+ // Ensure file is on disk https://github.com/Koenkk/zigbee2mqtt/issues/11759
87
+ const fd = fs_1.default.openSync(tmpPath, 'r+');
88
+ fs_1.default.fsyncSync(fd);
89
+ fs_1.default.closeSync(fd);
90
+ fs_1.default.renameSync(tmpPath, this.path);
91
+ }
92
+ }
93
+ exports.default = Database;
94
+ //# sourceMappingURL=database.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/controller/database.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import { Device, Endpoint } from "./model";
2
+ import { KeyValue } from "./tstype";
3
+ declare enum Events {
4
+ message = "message",
5
+ adapterDisconnected = "adapterDisconnected",
6
+ deviceJoined = "deviceJoined",
7
+ deviceInterview = "deviceInterview",
8
+ deviceAnnounce = "deviceAnnounce",
9
+ deviceNetworkAddressChanged = "deviceNetworkAddressChanged",
10
+ deviceLeave = "deviceLeave",
11
+ permitJoinChanged = "permitJoinChanged",
12
+ lastSeenChanged = "lastSeenChanged"
13
+ }
14
+ interface DeviceJoinedPayload {
15
+ device: Device;
16
+ }
17
+ interface DeviceInterviewPayload {
18
+ status: 'started' | 'successful' | 'failed';
19
+ device: Device;
20
+ }
21
+ interface DeviceNetworkAddressChangedPayload {
22
+ device: Device;
23
+ }
24
+ interface DeviceAnnouncePayload {
25
+ device: Device;
26
+ }
27
+ interface DeviceLeavePayload {
28
+ ieeeAddr: string;
29
+ }
30
+ interface PermitJoinChangedPayload {
31
+ permitted: boolean;
32
+ reason: 'timer_expired' | 'manual';
33
+ timeout: number;
34
+ }
35
+ interface LastSeenChangedPayload {
36
+ device: Device;
37
+ reason: 'deviceAnnounce' | 'networkAddress' | 'deviceJoined' | 'messageEmitted' | 'messageNonEmitted';
38
+ }
39
+ declare const CommandsLookup: {
40
+ [s: string]: MessagePayloadType;
41
+ };
42
+ type MessagePayloadType = 'attributeReport' | 'readResponse' | 'raw' | 'read' | 'write' | 'commandOn' | 'commandOffWithEffect' | 'commandStep' | 'commandStop' | 'commandHueNotification' | 'commandOff' | 'commandStepColorTemp' | 'commandMoveWithOnOff' | 'commandMove' | 'commandMoveHue' | 'commandStepHue' | 'commandStepSaturation' | 'commandMoveToSaturation' | 'commandStopWithOnOff' | 'commandMoveToLevelWithOnOff' | 'commandToggle' | 'commandTradfriArrowSingle' | 'commandTradfriArrowHold' | 'commandTradfriArrowRelease' | 'commandStepWithOnOff' | 'commandMoveToColorTemp' | 'commandMoveToColor' | 'commandOnWithTimedOff' | 'commandRecall' | 'commandArm' | 'commandPanic' | 'commandEmergency' | 'commandColorLoopSet' | 'commandOperationEventNotification' | 'commandStatusChangeNotification' | 'commandEnhancedMoveToHueAndSaturation' | 'commandUpOpen' | 'commandDownClose' | 'commandMoveToLevel' | 'commandMoveColorTemp' | 'commandDataResponse' | 'commandDataReport' | 'commandGetWeeklyScheduleRsp' | 'commandQueryNextImageRequest' | 'commandNotification' | 'commandAlertsNotification' | 'commandProgrammingEventNotification' | 'commandGetPinCodeRsp' | 'commandArrivalSensorNotify' | 'commandCommisioningNotification' | 'commandGetUserStatusRsp' | 'commandAlarm' | 'commandUnlockDoorRsp' | 'commandAtHome' | 'commandGoOut' | 'commandCinema' | 'commandRepast' | 'commandSleep' | 'commandStudyKeyRsp' | 'commandCreateIdRsp' | 'commandGetIdAndKeyCodeListRsp' | 'commandMcuSyncTime' | 'commandGetPanelStatus' | 'commandCheckIn' | 'commandActiveStatusReport' | 'commandActiveStatusReportAlt' | 'commandMoveToHue' | 'commandStore' | 'commandWiserSmartSetSetpoint' | 'commandWiserSmartCalibrateValve' | 'commandSiglisZigfredButtonEvent' | 'commandDanfossSetpointCommand' | 'commandZosungSendIRCode00' | 'commandZosungSendIRCode01' | 'commandZosungSendIRCode02' | 'commandZosungSendIRCode04' | 'zosungSendIRCode03Resp' | 'zosungSendIRCode05Resp' | 'commandMcuGatewayConnectionStatus';
43
+ interface MessagePayload {
44
+ type: MessagePayloadType;
45
+ device: Device;
46
+ endpoint: Endpoint;
47
+ linkquality: number;
48
+ groupID: number;
49
+ cluster: string | number;
50
+ data: KeyValue | Array<string | number>;
51
+ meta: {
52
+ zclTransactionSequenceNumber?: number;
53
+ };
54
+ }
55
+ export { Events, MessagePayload, MessagePayloadType, CommandsLookup, DeviceInterviewPayload, DeviceAnnouncePayload, DeviceLeavePayload, DeviceJoinedPayload, PermitJoinChangedPayload, DeviceNetworkAddressChangedPayload, LastSeenChangedPayload, };
56
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/controller/events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommandsLookup = exports.Events = void 0;
4
+ var Events;
5
+ (function (Events) {
6
+ Events["message"] = "message";
7
+ Events["adapterDisconnected"] = "adapterDisconnected";
8
+ Events["deviceJoined"] = "deviceJoined";
9
+ Events["deviceInterview"] = "deviceInterview";
10
+ Events["deviceAnnounce"] = "deviceAnnounce";
11
+ Events["deviceNetworkAddressChanged"] = "deviceNetworkAddressChanged";
12
+ Events["deviceLeave"] = "deviceLeave";
13
+ Events["permitJoinChanged"] = "permitJoinChanged";
14
+ Events["lastSeenChanged"] = "lastSeenChanged";
15
+ })(Events || (Events = {}));
16
+ exports.Events = Events;
17
+ const CommandsLookup = {
18
+ 'notification': 'commandNotification',
19
+ 'commisioningNotification': 'commandCommisioningNotification',
20
+ 'on': 'commandOn',
21
+ 'offWithEffect': 'commandOffWithEffect',
22
+ 'step': 'commandStep',
23
+ 'stop': 'commandStop',
24
+ 'hueNotification': 'commandHueNotification',
25
+ 'off': 'commandOff',
26
+ 'stepColorTemp': 'commandStepColorTemp',
27
+ 'stepHue': 'commandStepHue',
28
+ 'stepSaturation': 'commandStepSaturation',
29
+ 'moveWithOnOff': 'commandMoveWithOnOff',
30
+ 'move': 'commandMove',
31
+ 'moveColorTemp': 'commandMoveColorTemp',
32
+ 'moveHue': 'commandMoveHue',
33
+ 'moveToSaturation': 'commandMoveToSaturation',
34
+ 'stopWithOnOff': 'commandStopWithOnOff',
35
+ 'moveToLevel': 'commandMoveToLevel',
36
+ 'moveToLevelWithOnOff': 'commandMoveToLevelWithOnOff',
37
+ 'toggle': 'commandToggle',
38
+ 'tradfriArrowSingle': 'commandTradfriArrowSingle',
39
+ 'tradfriArrowHold': 'commandTradfriArrowHold',
40
+ 'tradfriArrowRelease': 'commandTradfriArrowRelease',
41
+ 'stepWithOnOff': 'commandStepWithOnOff',
42
+ 'moveToColorTemp': 'commandMoveToColorTemp',
43
+ 'moveToColor': 'commandMoveToColor',
44
+ 'onWithTimedOff': 'commandOnWithTimedOff',
45
+ 'recall': 'commandRecall',
46
+ 'arm': 'commandArm',
47
+ 'panic': 'commandPanic',
48
+ 'emergency': 'commandEmergency',
49
+ 'operationEventNotification': 'commandOperationEventNotification',
50
+ 'statusChangeNotification': 'commandStatusChangeNotification',
51
+ 'colorLoopSet': 'commandColorLoopSet',
52
+ 'enhancedMoveToHueAndSaturation': 'commandEnhancedMoveToHueAndSaturation',
53
+ 'downClose': 'commandDownClose',
54
+ 'upOpen': 'commandUpOpen',
55
+ 'dataResponse': 'commandDataResponse',
56
+ 'dataReport': 'commandDataReport',
57
+ 'getWeeklyScheduleRsp': 'commandGetWeeklyScheduleRsp',
58
+ 'queryNextImageRequest': 'commandQueryNextImageRequest',
59
+ 'alertsNotification': 'commandAlertsNotification',
60
+ 'programmingEventNotification': 'commandProgrammingEventNotification',
61
+ 'getPinCodeRsp': 'commandGetPinCodeRsp',
62
+ 'getUserStatusRsp': 'commandGetUserStatusRsp',
63
+ 'arrivalSensorNotify': 'commandArrivalSensorNotify',
64
+ 'getPanelStatus': 'commandGetPanelStatus',
65
+ 'checkin': 'commandCheckIn',
66
+ 'moveToHue': 'commandMoveToHue',
67
+ 'store': 'commandStore',
68
+ 'alarm': 'commandAlarm',
69
+ 'unlockDoorRsp': 'commandUnlockDoorRsp',
70
+ // HEIMAN scenes cluster
71
+ 'atHome': 'commandAtHome',
72
+ 'goOut': 'commandGoOut',
73
+ 'cinema': 'commandCinema',
74
+ 'repast': 'commandRepast',
75
+ 'sleep': 'commandSleep',
76
+ // HEIMAN IR remote cluster
77
+ 'studyKeyRsp': 'commandStudyKeyRsp',
78
+ 'createIdRsp': 'commandCreateIdRsp',
79
+ 'getIdAndKeyCodeListRsp': 'commandGetIdAndKeyCodeListRsp',
80
+ 'mcuGatewayConnectionStatus': 'commandMcuGatewayConnectionStatus',
81
+ 'mcuSyncTime': 'commandMcuSyncTime',
82
+ 'activeStatusReport': 'commandActiveStatusReport',
83
+ 'activeStatusReportAlt': 'commandActiveStatusReportAlt',
84
+ // Wiser Smart HVAC Commmands
85
+ 'wiserSmartSetSetpoint': 'commandWiserSmartSetSetpoint',
86
+ 'wiserSmartCalibrateValve': 'commandWiserSmartCalibrateValve',
87
+ // Dafoss Ally/Hive TRV Commands
88
+ 'danfossSetpointCommand': 'commandDanfossSetpointCommand',
89
+ // Siglis zigfred Commands
90
+ 'siglisZigfredButtonEvent': 'commandSiglisZigfredButtonEvent',
91
+ // Zosung IR remote cluster commands and responses
92
+ 'zosungSendIRCode01': 'commandZosungSendIRCode01',
93
+ 'zosungSendIRCode02': 'commandZosungSendIRCode02',
94
+ 'zosungSendIRCode04': 'commandZosungSendIRCode04',
95
+ 'zosungSendIRCode00': 'commandZosungSendIRCode00',
96
+ 'zosungSendIRCode03Resp': 'zosungSendIRCode03Resp',
97
+ 'zosungSendIRCode05Resp': 'zosungSendIRCode05Resp',
98
+ };
99
+ exports.CommandsLookup = CommandsLookup;
100
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/controller/events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /// <reference types="node" />
2
+ import { Adapter, Events as AdapterEvents } from '../adapter';
3
+ import events from 'events';
4
+ declare class GreenPower extends events.EventEmitter {
5
+ private adapter;
6
+ constructor(adapter: Adapter);
7
+ private encryptSecurityKey;
8
+ private sendPairingCommand;
9
+ onZclGreenPowerData(dataPayload: AdapterEvents.ZclDataPayload): Promise<void>;
10
+ permitJoin(time: number, networkAddress: number): Promise<void>;
11
+ }
12
+ export default GreenPower;
13
+ //# sourceMappingURL=greenPower.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"greenPower.d.ts","sourceRoot":"","sources":["../../src/controller/greenPower.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,OAAO,EAAE,MAAM,IAAI,aAAa,EAAC,MAAM,YAAY,CAAC;AAI5D,OAAO,MAAM,MAAM,QAAQ,CAAC;AAa5B,cAAM,UAAW,SAAQ,MAAM,CAAC,YAAY;IACxC,OAAO,CAAC,OAAO,CAAU;gBAEN,OAAO,EAAE,OAAO;IAKnC,OAAO,CAAC,kBAAkB;YAyBZ,kBAAkB;IAwCnB,mBAAmB,CAAC,WAAW,EAAE,aAAa,CAAC,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAsI7E,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAiB/E;AAED,eAAe,UAAU,CAAC"}
@@ -0,0 +1,221 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const Zcl = __importStar(require("../zcl"));
30
+ const crypto_1 = __importDefault(require("crypto"));
31
+ const zclTransactionSequenceNumber_1 = __importDefault(require("./helpers/zclTransactionSequenceNumber"));
32
+ const events_1 = __importDefault(require("events"));
33
+ const tstype_1 = require("./tstype");
34
+ const debug_1 = __importDefault(require("debug"));
35
+ const debug = {
36
+ info: (0, debug_1.default)('zigbee-herdsman:controller:greenpower'),
37
+ error: (0, debug_1.default)('zigbee-herdsman:controller:greenpower'),
38
+ };
39
+ const zigBeeLinkKey = Buffer.from([
40
+ 0x5A, 0x69, 0x67, 0x42, 0x65, 0x65, 0x41, 0x6C, 0x6C, 0x69, 0x61, 0x6E, 0x63, 0x65, 0x30, 0x39
41
+ ]);
42
+ class GreenPower extends events_1.default.EventEmitter {
43
+ constructor(adapter) {
44
+ super();
45
+ this.adapter = adapter;
46
+ }
47
+ encryptSecurityKey(sourceID, securityKey) {
48
+ const sourceIDInBytes = Buffer.from([
49
+ (sourceID & 0x000000ff),
50
+ (sourceID & 0x0000ff00) >> 8,
51
+ (sourceID & 0x00ff0000) >> 16,
52
+ (sourceID & 0xff000000) >> 24
53
+ ]);
54
+ const nonce = Buffer.alloc(13);
55
+ for (let i = 0; i < 3; i++) {
56
+ for (let j = 0; j < 4; j++) {
57
+ nonce[4 * i + j] = sourceIDInBytes[j];
58
+ }
59
+ }
60
+ nonce[12] = 0x05;
61
+ const cipher = crypto_1.default.createCipheriv('aes-128-ccm', zigBeeLinkKey, nonce, { authTagLength: 16 });
62
+ const encrypted = cipher.update(securityKey);
63
+ return Buffer.concat([encrypted, cipher.final()]);
64
+ }
65
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
66
+ async sendPairingCommand(payload, dataPayload) {
67
+ debug.info("Payload.Options: " + payload.options + " wasBroadcast: " + dataPayload.wasBroadcast);
68
+ // Set sink address based on communication mode
69
+ switch ((payload.options >> 5) & 3) {
70
+ case 0b10: // Groupcast to pre-commissioned GroupID
71
+ case 0b01: // Groupcast to DGroupID
72
+ payload.sinkGroupID = this.adapter.greenPowerGroup;
73
+ break;
74
+ /* istanbul ignore next */
75
+ case 0b00: // Full unicast forwarding
76
+ case 0b11: // Lightweight unicast forwarding
77
+ const coordinator = await this.adapter.getCoordinator();
78
+ payload.sinkIEEEAddr = coordinator.ieeeAddr;
79
+ payload.sinkNwkAddr = coordinator.networkAddress;
80
+ break;
81
+ /* istanbul ignore next */
82
+ default:
83
+ debug.error("Unhandled applicationID: " + (payload.options & 7));
84
+ return;
85
+ }
86
+ const frame = Zcl.ZclFrame.create(Zcl.FrameType.SPECIFIC, Zcl.Direction.SERVER_TO_CLIENT, true, null, zclTransactionSequenceNumber_1.default.next(), 'pairing', 33, payload);
87
+ // Not sure how correct this is - according to GP spec Pairing command is
88
+ // to be sent as broadcast unless communication mode is 0b11 - in which case
89
+ // the proxy MAY send it as unicast to selected proxy.
90
+ // This attempts to mirror logic from commit 92f77cc5.
91
+ if (dataPayload.wasBroadcast) {
92
+ return this.adapter.sendZclFrameToAll(242, frame, 242);
93
+ }
94
+ else {
95
+ return this.adapter.sendZclFrameToEndpoint(null, dataPayload.frame.Payload.gppNwkAddr, 242, frame, 10000, false, false, 242);
96
+ }
97
+ }
98
+ async onZclGreenPowerData(dataPayload) {
99
+ let payload = {};
100
+ try {
101
+ switch (dataPayload.frame.Payload.commandID) {
102
+ /* istanbul ignore next */
103
+ case undefined:
104
+ debug.error("GP Undefined Command");
105
+ break;
106
+ case 0xE0: // GP Commissioning
107
+ debug.info("GP Commissioning");
108
+ /* istanbul ignore if */
109
+ if (typeof dataPayload.address !== 'number') {
110
+ debug.info("Warning: commissioning request with string type address");
111
+ break;
112
+ }
113
+ const rxOnCap = dataPayload.frame.Payload.commandFrame.options & 0b10;
114
+ const key = this.encryptSecurityKey(dataPayload.frame.Payload.srcID, dataPayload.frame.Payload.commandFrame.securityKey);
115
+ // RX capable GPD needs GP Commissioning Reply
116
+ if (rxOnCap) {
117
+ debug.info("RxOnCap set -> supports bidirectional communication");
118
+ // NOTE: currently encryption is disabled for RX capable GPDs
119
+ const networkParameters = await this.adapter.getNetworkParameters();
120
+ // Commissioning reply
121
+ payload = {
122
+ options: 0,
123
+ tempMaster: dataPayload.frame.Payload.gppNwkAddr,
124
+ tempMasterTx: networkParameters.channel - 11,
125
+ srcID: dataPayload.frame.Payload.srcID,
126
+ gpdCmd: 0xf0,
127
+ gpdPayload: {
128
+ commandID: 0xf0,
129
+ options: 0b00000000, // Disable encryption
130
+ // securityKey: [...dataPayload.frame.Payload.commandFrame.securityKey],
131
+ // keyMic: dataPayload.frame.Payload.commandFrame.keyMic,
132
+ }
133
+ };
134
+ const frame = Zcl.ZclFrame.create(Zcl.FrameType.SPECIFIC, Zcl.Direction.SERVER_TO_CLIENT, true, null, zclTransactionSequenceNumber_1.default.next(), 'response', 33, payload);
135
+ await this.adapter.sendZclFrameToAll(242, frame, 242);
136
+ payload = {
137
+ options: 0b0000000110101000,
138
+ srcID: dataPayload.frame.Payload.srcID,
139
+ deviceID: dataPayload.frame.Payload.commandFrame.deviceID,
140
+ };
141
+ await this.sendPairingCommand(payload, dataPayload);
142
+ }
143
+ else {
144
+ // Communication mode:
145
+ // Broadcast: Groupcast to precommissioned ID (0b10)
146
+ // !Broadcast: Lightweight unicast (0b11)
147
+ let opt = 0b1110010101101000;
148
+ if (dataPayload.wasBroadcast) {
149
+ opt = 0b1110010101001000;
150
+ }
151
+ payload = {
152
+ options: opt,
153
+ srcID: dataPayload.frame.Payload.srcID,
154
+ deviceID: dataPayload.frame.Payload.commandFrame.deviceID,
155
+ frameCounter: dataPayload.frame.Payload.commandFrame.outgoingCounter,
156
+ gpdKey: [...key],
157
+ };
158
+ await this.sendPairingCommand(payload, dataPayload);
159
+ }
160
+ const eventData = {
161
+ sourceID: dataPayload.frame.Payload.srcID,
162
+ deviceID: dataPayload.frame.Payload.commandFrame.deviceID,
163
+ networkAddress: dataPayload.frame.Payload.srcID & 0xFFFF,
164
+ };
165
+ this.emit(tstype_1.GreenPowerEvents.deviceJoined, eventData);
166
+ break;
167
+ /* istanbul ignore next */
168
+ case 0xE2: // GP Success
169
+ debug.info("GP Success");
170
+ if (typeof dataPayload.address !== 'number') {
171
+ debug.info("Warning: commissioning request with string type address");
172
+ break;
173
+ }
174
+ break;
175
+ case 0xE3: // GP Channel Request
176
+ debug.info("GP Channel Request");
177
+ const networkParameters = await this.adapter.getNetworkParameters();
178
+ // Channel notification
179
+ payload = {
180
+ options: 0,
181
+ tempMaster: dataPayload.frame.Payload.gppNwkAddr,
182
+ tempMasterTx: dataPayload.frame.Payload.commandFrame.nextChannel,
183
+ srcID: dataPayload.frame.Payload.srcID,
184
+ gpdCmd: 0xf3,
185
+ gpdPayload: {
186
+ commandID: 0xf3,
187
+ options: networkParameters.channel - 11,
188
+ }
189
+ };
190
+ const frame = Zcl.ZclFrame.create(Zcl.FrameType.SPECIFIC, Zcl.Direction.SERVER_TO_CLIENT, true, null, zclTransactionSequenceNumber_1.default.next(), 'response', 33, payload);
191
+ await this.adapter.sendZclFrameToAll(242, frame, 242);
192
+ break;
193
+ /* istanbul ignore next */
194
+ case 0xA1: // GP Manufacturer-specific Attribute Reporting
195
+ break;
196
+ default:
197
+ debug.info("Unhandled Zigbee GreenPower command: 0x" +
198
+ dataPayload.frame.Payload.commandID.toString(16));
199
+ }
200
+ }
201
+ catch (error) {
202
+ /* istanbul ignore next */
203
+ debug.error(`onZclGreenPowerData failed with error '${error}'`);
204
+ }
205
+ }
206
+ async permitJoin(time, networkAddress) {
207
+ const payload = {
208
+ options: time ? (networkAddress === null ? 0x0b : 0x2b) : 0x0a,
209
+ commisioningWindow: time,
210
+ };
211
+ const frame = Zcl.ZclFrame.create(Zcl.FrameType.SPECIFIC, Zcl.Direction.SERVER_TO_CLIENT, true, null, zclTransactionSequenceNumber_1.default.next(), 'commisioningMode', 33, payload);
212
+ if (networkAddress === null) {
213
+ await this.adapter.sendZclFrameToAll(242, frame, 242);
214
+ }
215
+ else {
216
+ await this.adapter.sendZclFrameToEndpoint(null, networkAddress, 242, frame, 10000, false, false, 242);
217
+ }
218
+ }
219
+ }
220
+ exports.default = GreenPower;
221
+ //# sourceMappingURL=greenPower.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"greenPower.js","sourceRoot":"","sources":["../../src/controller/greenPower.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import * as ZclFrameConverter from './zclFrameConverter';
2
+ export { ZclFrameConverter, };
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/controller/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,iBAAiB,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EACH,iBAAiB,GACpB,CAAC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.ZclFrameConverter = void 0;
27
+ const ZclFrameConverter = __importStar(require("./zclFrameConverter"));
28
+ exports.ZclFrameConverter = ZclFrameConverter;
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/controller/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uEAAyD;AAGrD,8CAAiB"}
@@ -0,0 +1,8 @@
1
+ import { ZclFrame } from '../../zcl';
2
+ interface KeyValue {
3
+ [s: string]: number | string;
4
+ }
5
+ declare function attributeKeyValue(frame: ZclFrame): KeyValue;
6
+ declare function attributeList(frame: ZclFrame): Array<string | number>;
7
+ export { attributeKeyValue, attributeList, };
8
+ //# sourceMappingURL=zclFrameConverter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zclFrameConverter.d.ts","sourceRoot":"","sources":["../../../src/controller/helpers/zclFrameConverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,WAAW,CAAC;AAEnC,UAAU,QAAQ;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;CAAC;AAEjD,iBAAS,iBAAiB,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAapD;AAED,iBAAS,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAa9D;AAED,OAAO,EACH,iBAAiB,EACjB,aAAa,GAChB,CAAC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.attributeList = exports.attributeKeyValue = void 0;
4
+ function attributeKeyValue(frame) {
5
+ const payload = {};
6
+ for (const item of frame.Payload) {
7
+ try {
8
+ const attribute = frame.Cluster.getAttribute(item.attrId);
9
+ payload[attribute.name] = item.attrData;
10
+ }
11
+ catch (error) {
12
+ payload[item.attrId] = item.attrData;
13
+ }
14
+ }
15
+ return payload;
16
+ }
17
+ exports.attributeKeyValue = attributeKeyValue;
18
+ function attributeList(frame) {
19
+ const payload = [];
20
+ for (const item of frame.Payload) {
21
+ try {
22
+ const attribute = frame.Cluster.getAttribute(item.attrId);
23
+ payload.push(attribute.name);
24
+ }
25
+ catch (error) {
26
+ payload.push(item.attrId);
27
+ }
28
+ }
29
+ return payload;
30
+ }
31
+ exports.attributeList = attributeList;
32
+ //# sourceMappingURL=zclFrameConverter.js.map