zigbee-herdsman 0.28.0 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/.babelrc.js +0 -4
  2. package/.release-please-manifest.json +1 -1
  3. package/CHANGELOG.md +16 -0
  4. package/dist/adapter/adapter.js +21 -45
  5. package/dist/adapter/adapter.js.map +1 -1
  6. package/dist/adapter/deconz/adapter/deconzAdapter.js +76 -98
  7. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
  8. package/dist/adapter/deconz/adapter/index.js +2 -8
  9. package/dist/adapter/deconz/adapter/index.js.map +1 -1
  10. package/dist/adapter/deconz/driver/constants.js +1 -3
  11. package/dist/adapter/deconz/driver/constants.js.map +1 -1
  12. package/dist/adapter/deconz/driver/driver.js +77 -72
  13. package/dist/adapter/deconz/driver/driver.js.map +1 -1
  14. package/dist/adapter/deconz/driver/frame.js +1 -3
  15. package/dist/adapter/deconz/driver/frame.js.map +1 -1
  16. package/dist/adapter/deconz/driver/frameParser.js +36 -41
  17. package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
  18. package/dist/adapter/deconz/driver/parser.js +8 -34
  19. package/dist/adapter/deconz/driver/parser.js.map +1 -1
  20. package/dist/adapter/deconz/driver/writer.js +6 -34
  21. package/dist/adapter/deconz/driver/writer.js.map +1 -1
  22. package/dist/adapter/events.js +2 -4
  23. package/dist/adapter/events.js.map +1 -1
  24. package/dist/adapter/ezsp/adapter/backup.js +10 -15
  25. package/dist/adapter/ezsp/adapter/backup.js.map +1 -1
  26. package/dist/adapter/ezsp/adapter/ezspAdapter.js +59 -81
  27. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
  28. package/dist/adapter/ezsp/adapter/index.js +2 -8
  29. package/dist/adapter/ezsp/adapter/index.js.map +1 -1
  30. package/dist/adapter/ezsp/driver/commands.js +629 -628
  31. package/dist/adapter/ezsp/driver/commands.js.map +1 -1
  32. package/dist/adapter/ezsp/driver/consts.js +10 -13
  33. package/dist/adapter/ezsp/driver/consts.js.map +1 -1
  34. package/dist/adapter/ezsp/driver/driver.js +100 -96
  35. package/dist/adapter/ezsp/driver/driver.js.map +1 -1
  36. package/dist/adapter/ezsp/driver/ezsp.js +85 -104
  37. package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
  38. package/dist/adapter/ezsp/driver/index.js +3 -7
  39. package/dist/adapter/ezsp/driver/index.js.map +1 -1
  40. package/dist/adapter/ezsp/driver/multicast.js +17 -19
  41. package/dist/adapter/ezsp/driver/multicast.js.map +1 -1
  42. package/dist/adapter/ezsp/driver/parser.js +6 -35
  43. package/dist/adapter/ezsp/driver/parser.js.map +1 -1
  44. package/dist/adapter/ezsp/driver/types/basic.js +35 -57
  45. package/dist/adapter/ezsp/driver/types/basic.js.map +1 -1
  46. package/dist/adapter/ezsp/driver/types/index.js +12 -119
  47. package/dist/adapter/ezsp/driver/types/index.js.map +1 -1
  48. package/dist/adapter/ezsp/driver/types/named.js +1548 -1627
  49. package/dist/adapter/ezsp/driver/types/named.js.map +1 -1
  50. package/dist/adapter/ezsp/driver/types/struct.js +649 -668
  51. package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
  52. package/dist/adapter/ezsp/driver/uart.js +35 -57
  53. package/dist/adapter/ezsp/driver/uart.js.map +1 -1
  54. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js +1 -3
  55. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js.map +1 -1
  56. package/dist/adapter/ezsp/driver/utils/index.js +23 -27
  57. package/dist/adapter/ezsp/driver/utils/index.js.map +1 -1
  58. package/dist/adapter/ezsp/driver/writer.js +7 -37
  59. package/dist/adapter/ezsp/driver/writer.js.map +1 -1
  60. package/dist/adapter/index.js +4 -35
  61. package/dist/adapter/index.js.map +1 -1
  62. package/dist/adapter/serialPort.js +6 -10
  63. package/dist/adapter/serialPort.js.map +1 -1
  64. package/dist/adapter/serialPortUtils.js +7 -9
  65. package/dist/adapter/serialPortUtils.js.map +1 -1
  66. package/dist/adapter/socketPortUtils.js +1 -3
  67. package/dist/adapter/socketPortUtils.js.map +1 -1
  68. package/dist/adapter/tstype.js +1 -2
  69. package/dist/adapter/z-stack/adapter/adapter-backup.js +79 -108
  70. package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -1
  71. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +23 -27
  72. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js.map +1 -1
  73. package/dist/adapter/z-stack/adapter/endpoints.js +3 -29
  74. package/dist/adapter/z-stack/adapter/endpoints.js.map +1 -1
  75. package/dist/adapter/z-stack/adapter/index.js +2 -8
  76. package/dist/adapter/z-stack/adapter/index.js.map +1 -1
  77. package/dist/adapter/z-stack/adapter/manager.js +77 -102
  78. package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
  79. package/dist/adapter/z-stack/adapter/tstype.js +2 -4
  80. package/dist/adapter/z-stack/adapter/tstype.js.map +1 -1
  81. package/dist/adapter/z-stack/adapter/zStackAdapter.js +62 -79
  82. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
  83. package/dist/adapter/z-stack/constants/af.js +1 -3
  84. package/dist/adapter/z-stack/constants/af.js.map +1 -1
  85. package/dist/adapter/z-stack/constants/common.js +16 -19
  86. package/dist/adapter/z-stack/constants/common.js.map +1 -1
  87. package/dist/adapter/z-stack/constants/dbg.js +1 -3
  88. package/dist/adapter/z-stack/constants/dbg.js.map +1 -1
  89. package/dist/adapter/z-stack/constants/index.js +10 -47
  90. package/dist/adapter/z-stack/constants/index.js.map +1 -1
  91. package/dist/adapter/z-stack/constants/mac.js +1 -3
  92. package/dist/adapter/z-stack/constants/mac.js.map +1 -1
  93. package/dist/adapter/z-stack/constants/sapi.js +1 -3
  94. package/dist/adapter/z-stack/constants/sapi.js.map +1 -1
  95. package/dist/adapter/z-stack/constants/sys.js +1 -3
  96. package/dist/adapter/z-stack/constants/sys.js.map +1 -1
  97. package/dist/adapter/z-stack/constants/util.js +1 -3
  98. package/dist/adapter/z-stack/constants/util.js.map +1 -1
  99. package/dist/adapter/z-stack/constants/utils.js +3 -7
  100. package/dist/adapter/z-stack/constants/utils.js.map +1 -1
  101. package/dist/adapter/z-stack/constants/zdo.js +1 -3
  102. package/dist/adapter/z-stack/constants/zdo.js.map +1 -1
  103. package/dist/adapter/z-stack/models/index.js +1 -17
  104. package/dist/adapter/z-stack/models/index.js.map +1 -1
  105. package/dist/adapter/z-stack/models/startup-options.js +1 -2
  106. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +5 -9
  107. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js.map +1 -1
  108. package/dist/adapter/z-stack/structs/entries/address-manager-table.js +5 -9
  109. package/dist/adapter/z-stack/structs/entries/address-manager-table.js.map +1 -1
  110. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js +3 -7
  111. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js.map +1 -1
  112. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js +5 -9
  113. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js.map +1 -1
  114. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js +3 -7
  115. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js.map +1 -1
  116. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js +5 -9
  117. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js.map +1 -1
  118. package/dist/adapter/z-stack/structs/entries/channel-list.js +2 -6
  119. package/dist/adapter/z-stack/structs/entries/channel-list.js.map +1 -1
  120. package/dist/adapter/z-stack/structs/entries/has-configured.js +2 -6
  121. package/dist/adapter/z-stack/structs/entries/has-configured.js.map +1 -1
  122. package/dist/adapter/z-stack/structs/entries/index.js +16 -32
  123. package/dist/adapter/z-stack/structs/entries/index.js.map +1 -1
  124. package/dist/adapter/z-stack/structs/entries/nib.js +6 -10
  125. package/dist/adapter/z-stack/structs/entries/nib.js.map +1 -1
  126. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +2 -6
  127. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js.map +1 -1
  128. package/dist/adapter/z-stack/structs/entries/nwk-key.js +2 -6
  129. package/dist/adapter/z-stack/structs/entries/nwk-key.js.map +1 -1
  130. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +2 -6
  131. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js.map +1 -1
  132. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js +2 -6
  133. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js.map +1 -1
  134. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js +5 -9
  135. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js.map +1 -1
  136. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js +5 -9
  137. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js.map +1 -1
  138. package/dist/adapter/z-stack/structs/entries/security-manager-table.js +6 -10
  139. package/dist/adapter/z-stack/structs/entries/security-manager-table.js.map +1 -1
  140. package/dist/adapter/z-stack/structs/index.js +4 -20
  141. package/dist/adapter/z-stack/structs/index.js.map +1 -1
  142. package/dist/adapter/z-stack/structs/serializable-memory-object.js +1 -2
  143. package/dist/adapter/z-stack/structs/struct.js +8 -11
  144. package/dist/adapter/z-stack/structs/struct.js.map +1 -1
  145. package/dist/adapter/z-stack/structs/table.js +7 -9
  146. package/dist/adapter/z-stack/structs/table.js.map +1 -1
  147. package/dist/adapter/z-stack/unpi/constants.js +3 -12
  148. package/dist/adapter/z-stack/unpi/constants.js.map +1 -1
  149. package/dist/adapter/z-stack/unpi/frame.js +13 -9
  150. package/dist/adapter/z-stack/unpi/frame.js.map +1 -1
  151. package/dist/adapter/z-stack/unpi/index.js +5 -37
  152. package/dist/adapter/z-stack/unpi/index.js.map +1 -1
  153. package/dist/adapter/z-stack/unpi/parser.js +13 -40
  154. package/dist/adapter/z-stack/unpi/parser.js.map +1 -1
  155. package/dist/adapter/z-stack/unpi/writer.js +4 -32
  156. package/dist/adapter/z-stack/unpi/writer.js.map +1 -1
  157. package/dist/adapter/z-stack/utils/channel-list.js +5 -11
  158. package/dist/adapter/z-stack/utils/channel-list.js.map +1 -1
  159. package/dist/adapter/z-stack/utils/index.js +2 -18
  160. package/dist/adapter/z-stack/utils/index.js.map +1 -1
  161. package/dist/adapter/z-stack/utils/network-options.js +3 -7
  162. package/dist/adapter/z-stack/utils/network-options.js.map +1 -1
  163. package/dist/adapter/z-stack/znp/buffaloZnp.js +3 -5
  164. package/dist/adapter/z-stack/znp/buffaloZnp.js.map +1 -1
  165. package/dist/adapter/z-stack/znp/definition.js +1280 -1285
  166. package/dist/adapter/z-stack/znp/definition.js.map +1 -1
  167. package/dist/adapter/z-stack/znp/index.js +3 -10
  168. package/dist/adapter/z-stack/znp/index.js.map +1 -1
  169. package/dist/adapter/z-stack/znp/parameterType.js +1 -3
  170. package/dist/adapter/z-stack/znp/parameterType.js.map +1 -1
  171. package/dist/adapter/z-stack/znp/tstype.js +1 -2
  172. package/dist/adapter/z-stack/znp/znp.js +64 -81
  173. package/dist/adapter/z-stack/znp/znp.js.map +1 -1
  174. package/dist/adapter/z-stack/znp/zpiObject.js +30 -29
  175. package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
  176. package/dist/adapter/zigate/adapter/index.js +2 -8
  177. package/dist/adapter/zigate/adapter/index.js.map +1 -1
  178. package/dist/adapter/zigate/adapter/zigateAdapter.js +64 -87
  179. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
  180. package/dist/adapter/zigate/debug.js +3 -9
  181. package/dist/adapter/zigate/debug.js.map +1 -1
  182. package/dist/adapter/zigate/driver/buffaloZiGate.js +7 -9
  183. package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
  184. package/dist/adapter/zigate/driver/commandType.js +45 -50
  185. package/dist/adapter/zigate/driver/commandType.js.map +1 -1
  186. package/dist/adapter/zigate/driver/constants.js +31 -34
  187. package/dist/adapter/zigate/driver/constants.js.map +1 -1
  188. package/dist/adapter/zigate/driver/frame.js +11 -14
  189. package/dist/adapter/zigate/driver/frame.js.map +1 -1
  190. package/dist/adapter/zigate/driver/messageType.js +27 -30
  191. package/dist/adapter/zigate/driver/messageType.js.map +1 -1
  192. package/dist/adapter/zigate/driver/parameterType.js +1 -3
  193. package/dist/adapter/zigate/driver/parameterType.js.map +1 -1
  194. package/dist/adapter/zigate/driver/ziGateObject.js +17 -18
  195. package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -1
  196. package/dist/adapter/zigate/driver/zigate.js +55 -47
  197. package/dist/adapter/zigate/driver/zigate.js.map +1 -1
  198. package/dist/buffalo/buffalo.js +5 -5
  199. package/dist/buffalo/buffalo.js.map +1 -1
  200. package/dist/buffalo/index.js +3 -33
  201. package/dist/buffalo/index.js.map +1 -1
  202. package/dist/buffalo/tstype.js +1 -2
  203. package/dist/controller/controller.js +99 -110
  204. package/dist/controller/controller.js.map +1 -1
  205. package/dist/controller/database.js +13 -16
  206. package/dist/controller/database.js.map +1 -1
  207. package/dist/controller/events.js +2 -5
  208. package/dist/controller/events.js.map +1 -1
  209. package/dist/controller/greenPower.js +17 -44
  210. package/dist/controller/greenPower.js.map +1 -1
  211. package/dist/controller/helpers/index.js +2 -28
  212. package/dist/controller/helpers/index.js.map +1 -1
  213. package/dist/controller/helpers/request.js +38 -32
  214. package/dist/controller/helpers/request.js.map +1 -1
  215. package/dist/controller/helpers/requestQueue.js +8 -11
  216. package/dist/controller/helpers/requestQueue.js.map +1 -1
  217. package/dist/controller/helpers/zclFrameConverter.js +5 -13
  218. package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
  219. package/dist/controller/helpers/zclTransactionSequenceNumber.js +2 -4
  220. package/dist/controller/helpers/zclTransactionSequenceNumber.js.map +1 -1
  221. package/dist/controller/index.js +5 -8
  222. package/dist/controller/index.js.map +1 -1
  223. package/dist/controller/logger-stub.js +1 -2
  224. package/dist/controller/model/device.js +86 -90
  225. package/dist/controller/model/device.js.map +1 -1
  226. package/dist/controller/model/endpoint.d.ts.map +1 -1
  227. package/dist/controller/model/endpoint.js +60 -79
  228. package/dist/controller/model/endpoint.js.map +1 -1
  229. package/dist/controller/model/entity.js +5 -10
  230. package/dist/controller/model/entity.js.map +1 -1
  231. package/dist/controller/model/group.js +32 -57
  232. package/dist/controller/model/group.js.map +1 -1
  233. package/dist/controller/model/index.js +5 -14
  234. package/dist/controller/model/index.js.map +1 -1
  235. package/dist/controller/touchlink.js +11 -37
  236. package/dist/controller/touchlink.js.map +1 -1
  237. package/dist/controller/tstype.js +2 -4
  238. package/dist/controller/tstype.js.map +1 -1
  239. package/dist/index.js +3 -33
  240. package/dist/index.js.map +1 -1
  241. package/dist/models/backup-storage-legacy.js +1 -2
  242. package/dist/models/backup-storage-unified.js +1 -2
  243. package/dist/models/backup.js +1 -2
  244. package/dist/models/index.js +4 -20
  245. package/dist/models/index.js.map +1 -1
  246. package/dist/models/network-options.js +1 -2
  247. package/dist/utils/assertString.js +1 -3
  248. package/dist/utils/assertString.js.map +1 -1
  249. package/dist/utils/backup.js +15 -46
  250. package/dist/utils/backup.js.map +1 -1
  251. package/dist/utils/equalsPartial.js +3 -8
  252. package/dist/utils/equalsPartial.js.map +1 -1
  253. package/dist/utils/index.js +9 -45
  254. package/dist/utils/index.js.map +1 -1
  255. package/dist/utils/isNumberArray.js +1 -3
  256. package/dist/utils/isNumberArray.js.map +1 -1
  257. package/dist/utils/queue.js +3 -3
  258. package/dist/utils/queue.js.map +1 -1
  259. package/dist/utils/realpathSync.js +3 -8
  260. package/dist/utils/realpathSync.js.map +1 -1
  261. package/dist/utils/wait.js +1 -3
  262. package/dist/utils/wait.js.map +1 -1
  263. package/dist/utils/waitress.js +5 -3
  264. package/dist/utils/waitress.js.map +1 -1
  265. package/dist/zcl/buffaloZcl.js +17 -45
  266. package/dist/zcl/buffaloZcl.js.map +1 -1
  267. package/dist/zcl/definition/buffaloZclDataType.js +1 -3
  268. package/dist/zcl/definition/buffaloZclDataType.js.map +1 -1
  269. package/dist/zcl/definition/cluster.d.ts.map +1 -1
  270. package/dist/zcl/definition/cluster.js +2364 -2336
  271. package/dist/zcl/definition/cluster.js.map +1 -1
  272. package/dist/zcl/definition/dataType.js +1 -3
  273. package/dist/zcl/definition/dataType.js.map +1 -1
  274. package/dist/zcl/definition/direction.js +1 -3
  275. package/dist/zcl/definition/direction.js.map +1 -1
  276. package/dist/zcl/definition/endpointDeviceType.js +1 -3
  277. package/dist/zcl/definition/endpointDeviceType.js.map +1 -1
  278. package/dist/zcl/definition/foundation.js +53 -58
  279. package/dist/zcl/definition/foundation.js.map +1 -1
  280. package/dist/zcl/definition/frameControl.js +1 -2
  281. package/dist/zcl/definition/frameType.js +1 -3
  282. package/dist/zcl/definition/frameType.js.map +1 -1
  283. package/dist/zcl/definition/index.js +12 -51
  284. package/dist/zcl/definition/index.js.map +1 -1
  285. package/dist/zcl/definition/manufacturerCode.js +1 -3
  286. package/dist/zcl/definition/manufacturerCode.js.map +1 -1
  287. package/dist/zcl/definition/powerSource.js +1 -3
  288. package/dist/zcl/definition/powerSource.js.map +1 -1
  289. package/dist/zcl/definition/status.js +1 -3
  290. package/dist/zcl/definition/status.js.map +1 -1
  291. package/dist/zcl/definition/tstype.js +1 -2
  292. package/dist/zcl/index.js +14 -55
  293. package/dist/zcl/index.js.map +1 -1
  294. package/dist/zcl/tstype.js +2 -4
  295. package/dist/zcl/tstype.js.map +1 -1
  296. package/dist/zcl/utils.js +23 -29
  297. package/dist/zcl/utils.js.map +1 -1
  298. package/dist/zcl/zclFrame.js +46 -70
  299. package/dist/zcl/zclFrame.js.map +1 -1
  300. package/dist/zcl/zclHeader.js +1 -2
  301. package/dist/zcl/zclStatusError.js +4 -8
  302. package/dist/zcl/zclStatusError.js.map +1 -1
  303. package/package.json +1 -4
  304. package/tsconfig.json +4 -3
@@ -1,21 +1,14 @@
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
- exports.attributeList = exports.attributeKeyValue = void 0;
7
- const zcl_1 = require("../../zcl");
8
- const manufacturerCode_1 = __importDefault(require("../../zcl/definition/manufacturerCode"));
1
+ import { Utils as ZclUtils } from '../../zcl';
2
+ import ManufacturerCode from '../../zcl/definition/manufacturerCode';
9
3
  // Legrand devices (e.g. 4129) fail to set the manufacturerSpecific flag and
10
4
  // manufacturerCode in the frame header, despite using specific attributes.
11
5
  // This leads to incorrect reported attribute names.
12
6
  // Remap the attributes using the target device's manufacturer ID
13
7
  // if the header is lacking the information.
14
8
  function getCluster(frame, deviceManufacturerID) {
15
- var _a;
16
9
  let cluster = frame.Cluster;
17
- if (!((_a = frame === null || frame === void 0 ? void 0 : frame.Header) === null || _a === void 0 ? void 0 : _a.manufacturerCode) && (frame === null || frame === void 0 ? void 0 : frame.Cluster) && deviceManufacturerID == manufacturerCode_1.default.LegrandNetatmo) {
18
- cluster = zcl_1.Utils.getCluster(frame.Cluster.ID, deviceManufacturerID);
10
+ if (!frame?.Header?.manufacturerCode && frame?.Cluster && deviceManufacturerID == ManufacturerCode.LegrandNetatmo) {
11
+ cluster = ZclUtils.getCluster(frame.Cluster.ID, deviceManufacturerID);
19
12
  }
20
13
  return cluster;
21
14
  }
@@ -33,7 +26,6 @@ function attributeKeyValue(frame, deviceManufacturerID) {
33
26
  }
34
27
  return payload;
35
28
  }
36
- exports.attributeKeyValue = attributeKeyValue;
37
29
  function attributeList(frame, deviceManufacturerID) {
38
30
  const payload = [];
39
31
  const cluster = getCluster(frame, deviceManufacturerID);
@@ -48,5 +40,5 @@ function attributeList(frame, deviceManufacturerID) {
48
40
  }
49
41
  return payload;
50
42
  }
51
- exports.attributeList = attributeList;
43
+ export { attributeKeyValue, attributeList, };
52
44
  //# sourceMappingURL=zclFrameConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zclFrameConverter.js","sourceRoot":"","sources":["../../../src/controller/helpers/zclFrameConverter.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAsD;AAEtD,6FAAqE;AAIrE,4EAA4E;AAC5E,2EAA2E;AAC3E,oDAAoD;AACpD,iEAAiE;AACjE,4CAA4C;AAC5C,SAAS,UAAU,CAAC,KAAe,EAAE,oBAA4B;;IAC7D,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,IAAI,CAAC,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,gBAAgB,CAAA,KAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAA,IAAI,oBAAoB,IAAI,0BAAgB,CAAC,cAAc,EAAE,CAAC;QAChH,OAAO,GAAG,WAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAe,EAAE,oBAA4B;IACpE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAExD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpD,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QACzC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAkBG,8CAAiB;AAhBrB,SAAS,aAAa,CAAC,KAAe,EAAE,oBAA4B;IAChE,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAExD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAIG,sCAAa"}
1
+ {"version":3,"file":"zclFrameConverter.js","sourceRoot":"","sources":["../../../src/controller/helpers/zclFrameConverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,IAAI,QAAQ,EAAC,MAAM,WAAW,CAAC;AAEtD,OAAO,gBAAgB,MAAM,uCAAuC,CAAC;AAIrE,4EAA4E;AAC5E,2EAA2E;AAC3E,oDAAoD;AACpD,iEAAiE;AACjE,4CAA4C;AAC5C,SAAS,UAAU,CAAC,KAAe,EAAE,oBAA4B;IAC7D,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,gBAAgB,IAAI,KAAK,EAAE,OAAO,IAAI,oBAAoB,IAAI,gBAAgB,CAAC,cAAc,EAAE,CAAC;QAChH,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAe,EAAE,oBAA4B;IACpE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAExD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpD,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QACzC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,aAAa,CAAC,KAAe,EAAE,oBAA4B;IAChE,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAExD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,OAAO,EACH,iBAAiB,EACjB,aAAa,GAChB,CAAC"}
@@ -1,6 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
1
  class ZclTransactionSequenceNumber {
2
+ static number = 1;
4
3
  static next() {
5
4
  this.number++;
6
5
  if (this.number > 255) {
@@ -9,6 +8,5 @@ class ZclTransactionSequenceNumber {
9
8
  return this.number;
10
9
  }
11
10
  }
12
- ZclTransactionSequenceNumber.number = 1;
13
- exports.default = ZclTransactionSequenceNumber;
11
+ export default ZclTransactionSequenceNumber;
14
12
  //# sourceMappingURL=zclTransactionSequenceNumber.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zclTransactionSequenceNumber.js","sourceRoot":"","sources":["../../../src/controller/helpers/zclTransactionSequenceNumber.ts"],"names":[],"mappings":";;AAAA,MAAM,4BAA4B;IAGvB,MAAM,CAAC,IAAI;QACd,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QACpB,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;;AAVc,mCAAM,GAAG,CAAC,CAAC;AAa9B,kBAAe,4BAA4B,CAAC"}
1
+ {"version":3,"file":"zclTransactionSequenceNumber.js","sourceRoot":"","sources":["../../../src/controller/helpers/zclTransactionSequenceNumber.ts"],"names":[],"mappings":"AAAA,MAAM,4BAA4B;IACtB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAEnB,MAAM,CAAC,IAAI;QACd,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QACpB,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;;AAGL,eAAe,4BAA4B,CAAC"}
@@ -1,9 +1,6 @@
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
- exports.Controller = void 0;
7
- const controller_1 = __importDefault(require("./controller"));
8
- exports.Controller = controller_1.default;
1
+ import Controller from './controller';
2
+ /**
3
+ * @internal
4
+ */
5
+ export { Controller, };
9
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/controller/index.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAsC;AAKlC,qBALG,oBAAU,CAKH"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/controller/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC;;GAEG;AACH,OAAO,EACH,UAAU,GACb,CAAC"}
@@ -1,3 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export {};
3
2
  //# sourceMappingURL=logger-stub.js.map
@@ -1,48 +1,46 @@
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 zclTransactionSequenceNumber_1 = __importDefault(require("../helpers/zclTransactionSequenceNumber"));
30
- const endpoint_1 = __importDefault(require("./endpoint"));
31
- const entity_1 = __importDefault(require("./entity"));
32
- const utils_1 = require("../../utils");
33
- const debug_1 = __importDefault(require("debug"));
34
- const Zcl = __importStar(require("../../zcl"));
35
- const assert_1 = __importDefault(require("assert"));
36
- const helpers_1 = require("../helpers");
1
+ import ZclTransactionSequenceNumber from '../helpers/zclTransactionSequenceNumber';
2
+ import Endpoint from './endpoint';
3
+ import Entity from './entity';
4
+ import { Wait } from '../../utils';
5
+ import Debug from "debug";
6
+ import * as Zcl from '../../zcl';
7
+ import assert from 'assert';
8
+ import { ZclFrameConverter } from '../helpers';
37
9
  /**
38
10
  * @ignore
39
11
  */
40
12
  const OneJanuary2000 = new Date('January 01, 2000 00:00:00 UTC+00:00').getTime();
41
13
  const debug = {
42
- error: (0, debug_1.default)('zigbee-herdsman:controller:device:error'),
43
- log: (0, debug_1.default)('zigbee-herdsman:controller:device:log'),
14
+ error: Debug('zigbee-herdsman:controller:device:error'),
15
+ log: Debug('zigbee-herdsman:controller:device:log'),
44
16
  };
45
- class Device extends entity_1.default {
17
+ class Device extends Entity {
18
+ ID;
19
+ _applicationVersion;
20
+ _dateCode;
21
+ _endpoints;
22
+ _hardwareVersion;
23
+ _ieeeAddr;
24
+ _interviewCompleted;
25
+ _interviewing;
26
+ _lastSeen;
27
+ _manufacturerID;
28
+ _manufacturerName;
29
+ _modelID;
30
+ _networkAddress;
31
+ _powerSource;
32
+ _softwareBuildID;
33
+ _stackVersion;
34
+ _type;
35
+ _zclVersion;
36
+ _linkquality;
37
+ _skipDefaultResponse;
38
+ _skipTimeResponse;
39
+ _deleted;
40
+ _defaultSendRequestWhen;
41
+ _lastDefaultResponseSequenceNumber;
42
+ _checkinInterval;
43
+ _pendingRequestTimeout;
46
44
  // Getters/setters
47
45
  get ieeeAddr() { return this._ieeeAddr; }
48
46
  set ieeeAddr(ieeeAddr) { this._ieeeAddr = ieeeAddr; }
@@ -94,6 +92,21 @@ class Device extends entity_1.default {
94
92
  get checkinInterval() { return this._checkinInterval; }
95
93
  get pendingRequestTimeout() { return this._pendingRequestTimeout; }
96
94
  set pendingRequestTimeout(pendingRequestTimeout) { this._pendingRequestTimeout = pendingRequestTimeout; }
95
+ meta;
96
+ // This lookup contains all devices that are queried from the database, this is to ensure that always
97
+ // the same instance is returned.
98
+ static devices = null;
99
+ static ReportablePropertiesMapping = {
100
+ modelId: { key: 'modelID', set: (v, d) => { d.modelID = v; } },
101
+ manufacturerName: { key: 'manufacturerName', set: (v, d) => { d.manufacturerName = v; } },
102
+ powerSource: { key: 'powerSource', set: (v, d) => { d.powerSource = v; } },
103
+ zclVersion: { key: 'zclVersion', set: (v, d) => { d.zclVersion = v; } },
104
+ appVersion: { key: 'applicationVersion', set: (v, d) => { d.applicationVersion = v; } },
105
+ stackVersion: { key: 'stackVersion', set: (v, d) => { d.stackVersion = v; } },
106
+ hwVersion: { key: 'hardwareVersion', set: (v, d) => { d.hardwareVersion = v; } },
107
+ dateCode: { key: 'dateCode', set: (v, d) => { d.dateCode = v; } },
108
+ swBuildId: { key: 'softwareBuildID', set: (v, d) => { d.softwareBuildID = v; } },
109
+ };
97
110
  constructor(ID, type, ieeeAddr, networkAddress, manufacturerID, endpoints, manufacturerName, powerSource, modelID, applicationVersion, stackVersion, zclVersion, hardwareVersion, dateCode, softwareBuildID, interviewCompleted, meta, lastSeen, defaultSendRequestWhen, checkinInterval, pendingRequestTimeout) {
98
111
  super();
99
112
  this.ID = ID;
@@ -125,7 +138,7 @@ class Device extends entity_1.default {
125
138
  if (this.getEndpoint(ID)) {
126
139
  throw new Error(`Device '${this.ieeeAddr}' already has an endpoint '${ID}'`);
127
140
  }
128
- const endpoint = endpoint_1.default.create(ID, undefined, undefined, [], [], this.networkAddress, this.ieeeAddr);
141
+ const endpoint = Endpoint.create(ID, undefined, undefined, [], [], this.networkAddress, this.ieeeAddr);
129
142
  this.endpoints.push(endpoint);
130
143
  this.save();
131
144
  return endpoint;
@@ -155,12 +168,11 @@ class Device extends entity_1.default {
155
168
  return this.endpoints.find(e => e.hasPendingRequests()) !== undefined;
156
169
  }
157
170
  async onZclData(dataPayload, endpoint) {
158
- var _a;
159
171
  const frame = dataPayload.frame;
160
172
  // Update reportable properties
161
173
  if (frame.isCluster('genBasic') && (frame.isCommand('readRsp') || frame.isCommand('report'))) {
162
- for (const [key, val] of Object.entries(helpers_1.ZclFrameConverter.attributeKeyValue(frame, this.manufacturerID))) {
163
- (_a = Device.ReportablePropertiesMapping[key]) === null || _a === void 0 ? void 0 : _a.set(val, this);
174
+ for (const [key, val] of Object.entries(ZclFrameConverter.attributeKeyValue(frame, this.manufacturerID))) {
175
+ Device.ReportablePropertiesMapping[key]?.set(val, this);
164
176
  }
165
177
  }
166
178
  // Respond to enroll requests
@@ -269,7 +281,7 @@ class Device extends entity_1.default {
269
281
  const networkAddress = entry.nwkAddr;
270
282
  const ieeeAddr = entry.ieeeAddr;
271
283
  const endpoints = Object.values(entry.endpoints).map((e) => {
272
- return endpoint_1.default.fromDatabaseRecord(e, networkAddress, ieeeAddr);
284
+ return Endpoint.fromDatabaseRecord(e, networkAddress, ieeeAddr);
273
285
  });
274
286
  const meta = entry.meta ? entry.meta : {};
275
287
  if (entry.type === 'Group') {
@@ -320,12 +332,12 @@ class Device extends entity_1.default {
320
332
  };
321
333
  }
322
334
  save(writeDatabase = true) {
323
- entity_1.default.database.update(this.toDatabaseEntry(), writeDatabase);
335
+ Entity.database.update(this.toDatabaseEntry(), writeDatabase);
324
336
  }
325
337
  static loadFromDatabaseIfNecessary() {
326
338
  if (!Device.devices) {
327
339
  Device.devices = {};
328
- const entries = entity_1.default.database.getEntries(['Coordinator', 'EndDevice', 'Router', 'GreenPower', 'Unknown']);
340
+ const entries = Entity.database.getEntries(['Coordinator', 'EndDevice', 'Router', 'GreenPower', 'Unknown']);
329
341
  for (const entry of entries) {
330
342
  const device = Device.fromDatabaseEntry(entry);
331
343
  Device.devices[device.ieeeAddr] = device;
@@ -335,7 +347,7 @@ class Device extends entity_1.default {
335
347
  static byIeeeAddr(ieeeAddr, includeDeleted = false) {
336
348
  Device.loadFromDatabaseIfNecessary();
337
349
  const device = Device.devices[ieeeAddr];
338
- return (device === null || device === void 0 ? void 0 : device._deleted) && !includeDeleted ? undefined : device;
350
+ return device?._deleted && !includeDeleted ? undefined : device;
339
351
  }
340
352
  static byNetworkAddress(networkAddress) {
341
353
  return Device.all().find(d => d.networkAddress === networkAddress);
@@ -348,10 +360,10 @@ class Device extends entity_1.default {
348
360
  return Object.values(Device.devices).filter(d => !d._deleted);
349
361
  }
350
362
  undelete(interviewCompleted) {
351
- (0, assert_1.default)(this._deleted, `Device '${this.ieeeAddr}' is not deleted`);
363
+ assert(this._deleted, `Device '${this.ieeeAddr}' is not deleted`);
352
364
  this._deleted = false;
353
- this._interviewCompleted = interviewCompleted !== null && interviewCompleted !== void 0 ? interviewCompleted : this._interviewCompleted;
354
- entity_1.default.database.insert(this.toDatabaseEntry());
365
+ this._interviewCompleted = interviewCompleted ?? this._interviewCompleted;
366
+ Entity.database.insert(this.toDatabaseEntry());
355
367
  }
356
368
  static create(type, ieeeAddr, networkAddress, manufacturerID, manufacturerName, powerSource, modelID, interviewCompleted, endpoints) {
357
369
  Device.loadFromDatabaseIfNecessary();
@@ -359,11 +371,11 @@ class Device extends entity_1.default {
359
371
  throw new Error(`Device with ieeeAddr '${ieeeAddr}' already exists`);
360
372
  }
361
373
  const endpointsMapped = endpoints.map((e) => {
362
- return endpoint_1.default.create(e.ID, e.profileID, e.deviceID, e.inputClusters, e.outputClusters, networkAddress, ieeeAddr);
374
+ return Endpoint.create(e.ID, e.profileID, e.deviceID, e.inputClusters, e.outputClusters, networkAddress, ieeeAddr);
363
375
  });
364
- const ID = entity_1.default.database.newID();
376
+ const ID = Entity.database.newID();
365
377
  const device = new Device(ID, type, ieeeAddr, networkAddress, manufacturerID, endpointsMapped, manufacturerName, powerSource, modelID, undefined, undefined, undefined, undefined, undefined, undefined, interviewCompleted, {}, null, 'immediate', undefined, 0);
366
- entity_1.default.database.insert(device.toDatabaseEntry());
378
+ Entity.database.insert(device.toDatabaseEntry());
367
379
  Device.devices[device.ieeeAddr] = device;
368
380
  return device;
369
381
  }
@@ -402,7 +414,6 @@ class Device extends entity_1.default {
402
414
  }
403
415
  }
404
416
  interviewQuirks() {
405
- var _a, _b, _c;
406
417
  debug.log(`Interview - quirks check for '${this.modelID}'-'${this.manufacturerName}'-'${this.type}'`);
407
418
  // TuYa devices are typically hard to interview. They also don't require a full interview to work correctly
408
419
  // e.g. no ias enrolling is required for the devices to work.
@@ -412,8 +423,8 @@ class Device extends entity_1.default {
412
423
  // https://github.com/Koenkk/zigbee2mqtt/issues/4655
413
424
  // Device does not change zoneState after enroll (event with original gateway)
414
425
  // modelID is mostly in the form of e.g. TS0202 and manufacturerName like e.g. _TYZB01_xph99wvr
415
- if (((_a = this.modelID) === null || _a === void 0 ? void 0 : _a.match('^TS\\d*$')) &&
416
- (((_b = this.manufacturerName) === null || _b === void 0 ? void 0 : _b.match('^_TZ.*_.*$')) || ((_c = this.manufacturerName) === null || _c === void 0 ? void 0 : _c.match('^_TYZB01_.*$')))) {
426
+ if (this.modelID?.match('^TS\\d*$') &&
427
+ (this.manufacturerName?.match('^_TZ.*_.*$') || this.manufacturerName?.match('^_TYZB01_.*$'))) {
417
428
  this._powerSource = this._powerSource || 'Battery';
418
429
  this._interviewing = false;
419
430
  this._interviewCompleted = true;
@@ -457,7 +468,7 @@ class Device extends entity_1.default {
457
468
  }
458
469
  async interviewInternal() {
459
470
  const nodeDescriptorQuery = async () => {
460
- const nodeDescriptor = await entity_1.default.adapter.nodeDescriptor(this.networkAddress);
471
+ const nodeDescriptor = await Entity.adapter.nodeDescriptor(this.networkAddress);
461
472
  this._manufacturerID = nodeDescriptor.manufacturerCode;
462
473
  this._type = nodeDescriptor.type;
463
474
  debug.log(`Interview - got node descriptor for device '${this.ieeeAddr}'`);
@@ -491,7 +502,7 @@ class Device extends entity_1.default {
491
502
  // Give TuYa end device some time to pair. Otherwise they leave immediately.
492
503
  // https://github.com/Koenkk/zigbee2mqtt/issues/5814
493
504
  debug.log("Interview - Detected TuYa end device, waiting 10 seconds...");
494
- await (0, utils_1.Wait)(10000);
505
+ await Wait(10000);
495
506
  }
496
507
  else if ([0, 4098].includes(this.manufacturerID)) {
497
508
  // Potentially a TuYa device, some sleep fast so make sure to read the modelId and manufacturerName quickly.
@@ -500,7 +511,7 @@ class Device extends entity_1.default {
500
511
  // https://github.com/Koenkk/zigbee2mqtt/issues/7553
501
512
  debug.log("Interview - Detected potential TuYa end device, reading modelID and manufacturerName...");
502
513
  try {
503
- const endpoint = endpoint_1.default.create(1, undefined, undefined, [], [], this.networkAddress, this.ieeeAddr);
514
+ const endpoint = Endpoint.create(1, undefined, undefined, [], [], this.networkAddress, this.ieeeAddr);
504
515
  const result = await endpoint.read('genBasic', ['modelId', 'manufacturerName'], { sendWhen: 'immediate' });
505
516
  Object.entries(result)
506
517
  .forEach((entry) => Device.ReportablePropertiesMapping[entry[0]].set(entry[1], this));
@@ -515,7 +526,7 @@ class Device extends entity_1.default {
515
526
  let activeEndpoints;
516
527
  for (let attempt = 0; attempt < 2; attempt++) {
517
528
  try {
518
- activeEndpoints = await entity_1.default.adapter.activeEndpoints(this.networkAddress);
529
+ activeEndpoints = await Entity.adapter.activeEndpoints(this.networkAddress);
519
530
  break;
520
531
  }
521
532
  catch (error) {
@@ -530,11 +541,11 @@ class Device extends entity_1.default {
530
541
  // Some devices, e.g. TERNCY return endpoint 0 in the active endpoints request.
531
542
  // This is not a valid endpoint number according to the ZCL, requesting a simple descriptor will result
532
543
  // into an error. Therefore we filter it, more info: https://github.com/Koenkk/zigbee-herdsman/issues/82
533
- activeEndpoints.endpoints.filter((e) => e !== 0 && !this.getEndpoint(e)).forEach((e) => this._endpoints.push(endpoint_1.default.create(e, undefined, undefined, [], [], this.networkAddress, this.ieeeAddr)));
544
+ activeEndpoints.endpoints.filter((e) => e !== 0 && !this.getEndpoint(e)).forEach((e) => this._endpoints.push(Endpoint.create(e, undefined, undefined, [], [], this.networkAddress, this.ieeeAddr)));
534
545
  debug.log(`Interview - got active endpoints for device '${this.ieeeAddr}'`);
535
546
  for (const endpointID of activeEndpoints.endpoints.filter((e) => e !== 0)) {
536
547
  const endpoint = this.getEndpoint(endpointID);
537
- const simpleDescriptor = await entity_1.default.adapter.simpleDescriptor(this.networkAddress, endpoint.ID);
548
+ const simpleDescriptor = await Entity.adapter.simpleDescriptor(this.networkAddress, endpoint.ID);
538
549
  endpoint.profileID = simpleDescriptor.profileID;
539
550
  endpoint.deviceID = simpleDescriptor.deviceID;
540
551
  endpoint.inputClusters = simpleDescriptor.inputClusters;
@@ -558,7 +569,7 @@ class Device extends entity_1.default {
558
569
  if (item.key === 'modelID' || item.key === 'manufacturerName') {
559
570
  debug.log(`Interview - first ${item.key} retrieval attempt failed, ` +
560
571
  `retrying after 10 seconds...`);
561
- await (0, utils_1.Wait)(10000);
572
+ await Wait(10000);
562
573
  result = await endpoint.read('genBasic', [key], { sendWhen: 'immediate' });
563
574
  }
564
575
  else {
@@ -593,13 +604,13 @@ class Device extends entity_1.default {
593
604
  // - Manual enroll: coordinator replies to enroll request with an enroll response.
594
605
  // this case in hanled in onZclData().
595
606
  // https://github.com/Koenkk/zigbee2mqtt/issues/4569#issuecomment-706075676
596
- await (0, utils_1.Wait)(500);
607
+ await Wait(500);
597
608
  debug.log(`IAS - '${this.ieeeAddr}' sending enroll response (auto enroll)`);
598
609
  const payload = { enrollrspcode: 0, zoneid: 23 };
599
610
  await endpoint.command('ssIasZone', 'enrollRsp', payload, { disableDefaultResponse: true, sendWhen: 'immediate' });
600
611
  let enrolled = false;
601
612
  for (let attempt = 0; attempt < 20; attempt++) {
602
- await (0, utils_1.Wait)(500);
613
+ await Wait(500);
603
614
  const stateAfter = await endpoint.read('ssIasZone', ['iasCieAddr', 'zoneState'], { sendWhen: 'immediate' });
604
615
  debug.log(`Interview - IAS - after enrolling state (${attempt}): '${JSON.stringify(stateAfter)}'`);
605
616
  if (stateAfter.zoneState === 1) {
@@ -645,11 +656,11 @@ class Device extends entity_1.default {
645
656
  options: 0x002550,
646
657
  srcID: Number(this.ieeeAddr),
647
658
  };
648
- const frame = Zcl.ZclFrame.create(Zcl.FrameType.SPECIFIC, Zcl.Direction.SERVER_TO_CLIENT, true, null, zclTransactionSequenceNumber_1.default.next(), 'pairing', 33, payload);
649
- await entity_1.default.adapter.sendZclFrameToAll(242, frame, 242);
659
+ const frame = Zcl.ZclFrame.create(Zcl.FrameType.SPECIFIC, Zcl.Direction.SERVER_TO_CLIENT, true, null, ZclTransactionSequenceNumber.next(), 'pairing', 33, payload);
660
+ await Entity.adapter.sendZclFrameToAll(242, frame, 242);
650
661
  }
651
662
  else
652
- await entity_1.default.adapter.removeDevice(this.networkAddress, this.ieeeAddr);
663
+ await Entity.adapter.removeDevice(this.networkAddress, this.ieeeAddr);
653
664
  await this.removeFromDatabase();
654
665
  }
655
666
  async removeFromDatabase() {
@@ -657,8 +668,8 @@ class Device extends entity_1.default {
657
668
  for (const endpoint of this.endpoints) {
658
669
  endpoint.removeFromAllGroupsDatabase();
659
670
  }
660
- if (entity_1.default.database.has(this.ID)) {
661
- entity_1.default.database.remove(this.ID);
671
+ if (Entity.database.has(this.ID)) {
672
+ Entity.database.remove(this.ID);
662
673
  }
663
674
  this._deleted = true;
664
675
  // Clear all data in case device joins again
@@ -667,38 +678,23 @@ class Device extends entity_1.default {
667
678
  this.meta = {};
668
679
  const newEndpoints = [];
669
680
  for (const endpoint of this.endpoints) {
670
- newEndpoints.push(endpoint_1.default.create(endpoint.ID, endpoint.profileID, endpoint.deviceID, endpoint.inputClusters, endpoint.outputClusters, this.networkAddress, this.ieeeAddr));
681
+ newEndpoints.push(Endpoint.create(endpoint.ID, endpoint.profileID, endpoint.deviceID, endpoint.inputClusters, endpoint.outputClusters, this.networkAddress, this.ieeeAddr));
671
682
  }
672
683
  this._endpoints = newEndpoints;
673
684
  }
674
685
  async lqi() {
675
- return entity_1.default.adapter.lqi(this.networkAddress);
686
+ return Entity.adapter.lqi(this.networkAddress);
676
687
  }
677
688
  async routingTable() {
678
- return entity_1.default.adapter.routingTable(this.networkAddress);
689
+ return Entity.adapter.routingTable(this.networkAddress);
679
690
  }
680
691
  async ping(disableRecovery = true) {
681
- var _a;
682
692
  // Zigbee does not have an official pining mechamism. Use a read request
683
693
  // of a mandatory basic cluster attribute to keep it as lightweight as
684
694
  // possible.
685
- const endpoint = (_a = this.endpoints.find((ep) => ep.inputClusters.includes(0))) !== null && _a !== void 0 ? _a : this.endpoints[0];
695
+ const endpoint = this.endpoints.find((ep) => ep.inputClusters.includes(0)) ?? this.endpoints[0];
686
696
  await endpoint.read('genBasic', ['zclVersion'], { disableRecovery });
687
697
  }
688
698
  }
689
- // This lookup contains all devices that are queried from the database, this is to ensure that always
690
- // the same instance is returned.
691
- Device.devices = null;
692
- Device.ReportablePropertiesMapping = {
693
- modelId: { key: 'modelID', set: (v, d) => { d.modelID = v; } },
694
- manufacturerName: { key: 'manufacturerName', set: (v, d) => { d.manufacturerName = v; } },
695
- powerSource: { key: 'powerSource', set: (v, d) => { d.powerSource = v; } },
696
- zclVersion: { key: 'zclVersion', set: (v, d) => { d.zclVersion = v; } },
697
- appVersion: { key: 'applicationVersion', set: (v, d) => { d.applicationVersion = v; } },
698
- stackVersion: { key: 'stackVersion', set: (v, d) => { d.stackVersion = v; } },
699
- hwVersion: { key: 'hardwareVersion', set: (v, d) => { d.hardwareVersion = v; } },
700
- dateCode: { key: 'dateCode', set: (v, d) => { d.dateCode = v; } },
701
- swBuildId: { key: 'softwareBuildID', set: (v, d) => { d.softwareBuildID = v; } },
702
- };
703
- exports.default = Device;
699
+ export default Device;
704
700
  //# sourceMappingURL=device.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../../../src/controller/model/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../../src/controller/model/device.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.d.ts","sourceRoot":"","sources":["../../../src/controller/model/endpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint.d.ts","sourceRoot":"","sources":["../../../src/controller/model/endpoint.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAC,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAC,MAAM,WAAW,CAAC;AAChE,OAAO,KAAK,GAAG,MAAM,WAAW,CAAC;AAMjC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,MAAM,MAAM,UAAU,CAAC;AAS9B,MAAM,WAAW,sBAAsB;IACnC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC;IACxD,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/C;AAED,UAAU,OAAO;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,UAAU,CAAC,EAAE,UAAU,CAAC;CAC3B;AAED,UAAU,QAAQ;IACd,CAAC,OAAO,EAAE,MAAM,GAAG;QACf,UAAU,EAAE;YAAC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;SAAC,CAAC;KACtD,CAAC;CACL;AAUD,UAAU,IAAI;IACV,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;IAC5B,MAAM,EAAE,QAAQ,GAAG,KAAK,CAAC;CAC5B;AAWD,UAAU,mBAAmB;IACzB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;IAC5B,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;IAChC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED,cAAM,QAAS,SAAQ,MAAM;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,QAAQ,EAAE,QAAQ,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IACpC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,qBAAqB,CAAgC;IACtD,IAAI,EAAE,QAAQ,CAAC;IACtB,OAAO,CAAC,eAAe,CAAe;IAGtC,IAAI,KAAK,IAAI,IAAI,EAAE,CAkBlB;IAED,IAAI,oBAAoB,IAAI,mBAAmB,EAAE,CAuBhD;IAED,OAAO;IAqBP;;OAEG;IACI,SAAS,IAAI,MAAM;IAI1B;;;OAGG;IACI,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAK,OAAO;IAKnE;;;OAGG;IACI,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAK,OAAO;IAKpE;;OAEG;IACI,gBAAgB,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE;IAI/C;;OAEG;IACI,iBAAiB,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE;IAIhD,OAAO,CAAC,wBAAwB;WAQlB,kBAAkB,CAC5B,MAAM,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAC1E,QAAQ;IAkBJ,gBAAgB,IAAI,QAAQ;WAQrB,MAAM,CAChB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,EAClG,oBAAoB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GACxD,QAAQ;IAOJ,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI;IAS/E,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM;IAUrG,kBAAkB,IAAI,OAAO;IAIvB,mBAAmB,CAAC,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YAIvD,WAAW;IAgDzB,OAAO,CAAC,WAAW;IAMN,MAAM,CACf,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GACrE,OAAO,CAAC,IAAI,CAAC;IAkCH,KAAK,CACd,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GACrE,OAAO,CAAC,IAAI,CAAC;IAqCH,aAAa,CACtB,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,yBAAyB,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GACxG,OAAO,CAAC,IAAI,CAAC;IAsCH,IAAI,CACb,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,OAAO,GAChF,OAAO,CAAC,QAAQ,CAAC;IAkCP,YAAY,CACrB,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,yBAAyB,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GACxG,OAAO,CAAC,IAAI,CAAC;IAkCT,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,IAAI;IAoB1E,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BzF,IAAI,IAAI,IAAI;IAIN,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCrF,eAAe,CACxB,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,yBAAyB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAC3G,OAAO,CAAC,IAAI,CAAC;IAsBH,kBAAkB,CAC3B,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,OAAO,CAAC,EAAE,OAAO,GAChF,OAAO,CAAC,IAAI,CAAC;IAwEH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BjG,OAAO,CAChB,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,GAC/F,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC;IA8Bd,eAAe,CACxB,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,EAC9F,yBAAyB,CAAC,EAAE,MAAM,GACnC,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC;IAmCpB,cAAc,CACjB,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,yBAAyB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAC7G;QAAC,OAAO,EAAE,OAAO,CAAC;YAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC;YAAC,OAAO,EAAE,QAAQ,CAAA;SAAC,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,IAAI,CAAA;KAAC;IAkBrF,OAAO,CAAC,sBAAsB;IAoBjB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpD;;;;OAIG;IACU,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOrD,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1C,2BAA2B,IAAI,IAAI;CAO7C;AAED,eAAe,QAAQ,CAAC"}