zigbee-herdsman-converters 20.12.1 → 20.14.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 (534) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/converters/fromZigbee.d.ts.map +1 -1
  3. package/converters/fromZigbee.js +345 -334
  4. package/converters/fromZigbee.js.map +1 -1
  5. package/converters/toZigbee.d.ts +1 -1
  6. package/converters/toZigbee.d.ts.map +1 -1
  7. package/converters/toZigbee.js +80 -82
  8. package/converters/toZigbee.js.map +1 -1
  9. package/devices/ITCommander.d.ts.map +1 -1
  10. package/devices/ITCommander.js +1 -1
  11. package/devices/ITCommander.js.map +1 -1
  12. package/devices/acova.d.ts.map +1 -1
  13. package/devices/acova.js.map +1 -1
  14. package/devices/akuvox.d.ts.map +1 -1
  15. package/devices/akuvox.js.map +1 -1
  16. package/devices/aldi.d.ts.map +1 -1
  17. package/devices/aldi.js.map +1 -1
  18. package/devices/alecto.d.ts.map +1 -1
  19. package/devices/alecto.js.map +1 -1
  20. package/devices/atlantic.d.ts.map +1 -1
  21. package/devices/atlantic.js.map +1 -1
  22. package/devices/aubess.d.ts.map +1 -1
  23. package/devices/aubess.js.map +1 -1
  24. package/devices/aurora_lighting.d.ts.map +1 -1
  25. package/devices/aurora_lighting.js +2 -2
  26. package/devices/aurora_lighting.js.map +1 -1
  27. package/devices/avatto.js +0 -1
  28. package/devices/avatto.js.map +1 -1
  29. package/devices/axis.d.ts.map +1 -1
  30. package/devices/axis.js.map +1 -1
  31. package/devices/bitron.d.ts.map +1 -1
  32. package/devices/bitron.js +9 -9
  33. package/devices/bitron.js.map +1 -1
  34. package/devices/bituo_technik.d.ts.map +1 -1
  35. package/devices/bituo_technik.js +2 -2
  36. package/devices/bituo_technik.js.map +1 -1
  37. package/devices/blaupunkt.d.ts.map +1 -1
  38. package/devices/blaupunkt.js +1 -1
  39. package/devices/blaupunkt.js.map +1 -1
  40. package/devices/blitzwolf.d.ts.map +1 -1
  41. package/devices/blitzwolf.js.map +1 -1
  42. package/devices/bosch.d.ts.map +1 -1
  43. package/devices/bosch.js +25 -25
  44. package/devices/bosch.js.map +1 -1
  45. package/devices/brimate.d.ts.map +1 -1
  46. package/devices/brimate.js.map +1 -1
  47. package/devices/bseed.d.ts.map +1 -1
  48. package/devices/bseed.js.map +1 -1
  49. package/devices/bticino.d.ts.map +1 -1
  50. package/devices/bticino.js.map +1 -1
  51. package/devices/busch_jaeger.d.ts.map +1 -1
  52. package/devices/busch_jaeger.js.map +1 -1
  53. package/devices/byun.d.ts.map +1 -1
  54. package/devices/byun.js.map +1 -1
  55. package/devices/casaia.d.ts.map +1 -1
  56. package/devices/casaia.js +2 -2
  57. package/devices/casaia.js.map +1 -1
  58. package/devices/centralite.d.ts.map +1 -1
  59. package/devices/centralite.js +5 -5
  60. package/devices/centralite.js.map +1 -1
  61. package/devices/cleverio.d.ts.map +1 -1
  62. package/devices/cleverio.js.map +1 -1
  63. package/devices/ctm.d.ts.map +1 -1
  64. package/devices/ctm.js +62 -62
  65. package/devices/ctm.js.map +1 -1
  66. package/devices/current_products_corp.d.ts.map +1 -1
  67. package/devices/current_products_corp.js.map +1 -1
  68. package/devices/custom_devices_diy.d.ts.map +1 -1
  69. package/devices/custom_devices_diy.js +12 -12
  70. package/devices/custom_devices_diy.js.map +1 -1
  71. package/devices/danalock.d.ts.map +1 -1
  72. package/devices/danalock.js.map +1 -1
  73. package/devices/danfoss.d.ts.map +1 -1
  74. package/devices/danfoss.js +2 -2
  75. package/devices/danfoss.js.map +1 -1
  76. package/devices/datek.d.ts.map +1 -1
  77. package/devices/datek.js +1 -1
  78. package/devices/datek.js.map +1 -1
  79. package/devices/dawon_dns.d.ts.map +1 -1
  80. package/devices/dawon_dns.js.map +1 -1
  81. package/devices/develco.d.ts.map +1 -1
  82. package/devices/develco.js +15 -14
  83. package/devices/develco.js.map +1 -1
  84. package/devices/digi.d.ts.map +1 -1
  85. package/devices/digi.js.map +1 -1
  86. package/devices/dlink.d.ts.map +1 -1
  87. package/devices/dlink.js.map +1 -1
  88. package/devices/easyaccess.d.ts.map +1 -1
  89. package/devices/easyaccess.js.map +1 -1
  90. package/devices/easyiot.d.ts.map +1 -1
  91. package/devices/easyiot.js.map +1 -1
  92. package/devices/echostar.d.ts.map +1 -1
  93. package/devices/echostar.js.map +1 -1
  94. package/devices/ecodim.d.ts.map +1 -1
  95. package/devices/ecodim.js +1 -1
  96. package/devices/ecodim.js.map +1 -1
  97. package/devices/ecolink.d.ts.map +1 -1
  98. package/devices/ecolink.js.map +1 -1
  99. package/devices/ecozy.d.ts.map +1 -1
  100. package/devices/ecozy.js.map +1 -1
  101. package/devices/enocean.d.ts.map +1 -1
  102. package/devices/enocean.js.map +1 -1
  103. package/devices/envilar.d.ts.map +1 -1
  104. package/devices/envilar.js +2 -2
  105. package/devices/envilar.js.map +1 -1
  106. package/devices/eurotronic.d.ts.map +1 -1
  107. package/devices/eurotronic.js.map +1 -1
  108. package/devices/evanell.d.ts.map +1 -1
  109. package/devices/evanell.js.map +1 -1
  110. package/devices/evology.d.ts.map +1 -1
  111. package/devices/evology.js.map +1 -1
  112. package/devices/ewelink.d.ts.map +1 -1
  113. package/devices/ewelink.js +1 -1
  114. package/devices/ewelink.js.map +1 -1
  115. package/devices/fantem.d.ts.map +1 -1
  116. package/devices/fantem.js +2 -2
  117. package/devices/fantem.js.map +1 -1
  118. package/devices/fireangel.d.ts.map +1 -1
  119. package/devices/fireangel.js.map +1 -1
  120. package/devices/frankever.d.ts.map +1 -1
  121. package/devices/frankever.js.map +1 -1
  122. package/devices/frient.d.ts.map +1 -1
  123. package/devices/frient.js.map +1 -1
  124. package/devices/gewiss.d.ts.map +1 -1
  125. package/devices/gewiss.js.map +1 -1
  126. package/devices/giex.d.ts.map +1 -1
  127. package/devices/giex.js.map +1 -1
  128. package/devices/gledopto.js +2 -2
  129. package/devices/gledopto.js.map +1 -1
  130. package/devices/gmmts.d.ts.map +1 -1
  131. package/devices/gmmts.js +23 -23
  132. package/devices/gmmts.js.map +1 -1
  133. package/devices/gumax.d.ts +4 -0
  134. package/devices/gumax.d.ts.map +1 -0
  135. package/devices/gumax.js +15 -0
  136. package/devices/gumax.js.map +1 -0
  137. package/devices/heiman.d.ts.map +1 -1
  138. package/devices/heiman.js +2 -2
  139. package/devices/heiman.js.map +1 -1
  140. package/devices/heimgard_technologies.d.ts.map +1 -1
  141. package/devices/heimgard_technologies.js +2 -2
  142. package/devices/heimgard_technologies.js.map +1 -1
  143. package/devices/hive.js +1 -1
  144. package/devices/hive.js.map +1 -1
  145. package/devices/hommyn.d.ts.map +1 -1
  146. package/devices/hommyn.js.map +1 -1
  147. package/devices/hzc.d.ts.map +1 -1
  148. package/devices/hzc.js.map +1 -1
  149. package/devices/hzc_electric.d.ts.map +1 -1
  150. package/devices/hzc_electric.js.map +1 -1
  151. package/devices/ihorn.d.ts.map +1 -1
  152. package/devices/ihorn.js.map +1 -1
  153. package/devices/imhotepcreation.d.ts.map +1 -1
  154. package/devices/index.d.ts.map +1 -1
  155. package/devices/index.js +4 -2
  156. package/devices/index.js.map +1 -1
  157. package/devices/innr.d.ts.map +1 -1
  158. package/devices/innr.js +3 -3
  159. package/devices/innr.js.map +1 -1
  160. package/devices/inovelli.d.ts.map +1 -1
  161. package/devices/inovelli.js +38 -38
  162. package/devices/inovelli.js.map +1 -1
  163. package/devices/insta.d.ts.map +1 -1
  164. package/devices/insta.js.map +1 -1
  165. package/devices/iotperfect.d.ts.map +1 -1
  166. package/devices/iotperfect.js.map +1 -1
  167. package/devices/iris.d.ts.map +1 -1
  168. package/devices/iris.js +1 -1
  169. package/devices/iris.js.map +1 -1
  170. package/devices/javis.d.ts.map +1 -1
  171. package/devices/javis.js.map +1 -1
  172. package/devices/jxuan.d.ts.map +1 -1
  173. package/devices/jxuan.js +2 -2
  174. package/devices/jxuan.js.map +1 -1
  175. package/devices/kami.d.ts.map +1 -1
  176. package/devices/kami.js.map +1 -1
  177. package/devices/keen_home.d.ts.map +1 -1
  178. package/devices/keen_home.js.map +1 -1
  179. package/devices/kmpcil.d.ts.map +1 -1
  180. package/devices/kmpcil.js +5 -5
  181. package/devices/kmpcil.js.map +1 -1
  182. package/devices/kwikset.d.ts.map +1 -1
  183. package/devices/kwikset.js.map +1 -1
  184. package/devices/led_trading.d.ts.map +1 -1
  185. package/devices/led_trading.js +1 -8
  186. package/devices/led_trading.js.map +1 -1
  187. package/devices/legrand.d.ts.map +1 -1
  188. package/devices/legrand.js +2 -2
  189. package/devices/legrand.js.map +1 -1
  190. package/devices/lellki.d.ts.map +1 -1
  191. package/devices/lellki.js +2 -2
  192. package/devices/lellki.js.map +1 -1
  193. package/devices/letv.d.ts.map +1 -1
  194. package/devices/letv.js.map +1 -1
  195. package/devices/leviton.d.ts.map +1 -1
  196. package/devices/leviton.js +1 -1
  197. package/devices/leviton.js.map +1 -1
  198. package/devices/lidl.d.ts.map +1 -1
  199. package/devices/lidl.js +15 -15
  200. package/devices/lidl.js.map +1 -1
  201. package/devices/lifecontrol.d.ts.map +1 -1
  202. package/devices/lifecontrol.js +1 -1
  203. package/devices/lifecontrol.js.map +1 -1
  204. package/devices/linkind.d.ts.map +1 -1
  205. package/devices/linkind.js +2 -2
  206. package/devices/linkind.js.map +1 -1
  207. package/devices/linptech.d.ts.map +1 -1
  208. package/devices/linptech.js +5 -5
  209. package/devices/linptech.js.map +1 -1
  210. package/devices/livolo.d.ts.map +1 -1
  211. package/devices/livolo.js +1 -1
  212. package/devices/livolo.js.map +1 -1
  213. package/devices/lixee.d.ts.map +1 -1
  214. package/devices/lixee.js +29 -28
  215. package/devices/lixee.js.map +1 -1
  216. package/devices/ls.d.ts.map +1 -1
  217. package/devices/ls.js.map +1 -1
  218. package/devices/lumi.d.ts.map +1 -1
  219. package/devices/lumi.js +7 -7
  220. package/devices/lumi.js.map +1 -1
  221. package/devices/lupus.d.ts.map +1 -1
  222. package/devices/lupus.js +2 -2
  223. package/devices/lupus.js.map +1 -1
  224. package/devices/lutron.d.ts.map +1 -1
  225. package/devices/lutron.js.map +1 -1
  226. package/devices/lux.d.ts.map +1 -1
  227. package/devices/lux.js.map +1 -1
  228. package/devices/lytko.js +6 -6
  229. package/devices/lytko.js.map +1 -1
  230. package/devices/meazon.d.ts.map +1 -1
  231. package/devices/meazon.js.map +1 -1
  232. package/devices/mercator.d.ts.map +1 -1
  233. package/devices/mercator.js +2 -2
  234. package/devices/mercator.js.map +1 -1
  235. package/devices/miboxer.d.ts.map +1 -1
  236. package/devices/miboxer.js +1 -1
  237. package/devices/miboxer.js.map +1 -1
  238. package/devices/moes.d.ts.map +1 -1
  239. package/devices/moes.js +3 -3
  240. package/devices/moes.js.map +1 -1
  241. package/devices/multiterm.js +1 -1
  242. package/devices/multiterm.js.map +1 -1
  243. package/devices/namron.js +6 -6
  244. package/devices/namron.js.map +1 -1
  245. package/devices/neo.d.ts.map +1 -1
  246. package/devices/neo.js +1 -1
  247. package/devices/neo.js.map +1 -1
  248. package/devices/net2grid.d.ts.map +1 -1
  249. package/devices/net2grid.js.map +1 -1
  250. package/devices/netvox.d.ts.map +1 -1
  251. package/devices/netvox.js.map +1 -1
  252. package/devices/niko.d.ts.map +1 -1
  253. package/devices/niko.js +10 -10
  254. package/devices/niko.js.map +1 -1
  255. package/devices/ninja_blocks.d.ts.map +1 -1
  256. package/devices/ninja_blocks.js.map +1 -1
  257. package/devices/nodon.d.ts.map +1 -1
  258. package/devices/nodon.js +2 -2
  259. package/devices/nodon.js.map +1 -1
  260. package/devices/nous.d.ts.map +1 -1
  261. package/devices/nous.js.map +1 -1
  262. package/devices/novo.d.ts.map +1 -1
  263. package/devices/novo.js.map +1 -1
  264. package/devices/nue_3a.js +2 -2
  265. package/devices/nue_3a.js.map +1 -1
  266. package/devices/nyce.d.ts.map +1 -1
  267. package/devices/nyce.js.map +1 -1
  268. package/devices/onesti.d.ts.map +1 -1
  269. package/devices/onesti.js.map +1 -1
  270. package/devices/openlumi.d.ts.map +1 -1
  271. package/devices/openlumi.js.map +1 -1
  272. package/devices/orvibo.d.ts.map +1 -1
  273. package/devices/orvibo.js +9 -0
  274. package/devices/orvibo.js.map +1 -1
  275. package/devices/oujiabao.d.ts.map +1 -1
  276. package/devices/oujiabao.js.map +1 -1
  277. package/devices/owon.d.ts.map +1 -1
  278. package/devices/owon.js +35 -26
  279. package/devices/owon.js.map +1 -1
  280. package/devices/peq.d.ts.map +1 -1
  281. package/devices/peq.js.map +1 -1
  282. package/devices/perenio.d.ts.map +1 -1
  283. package/devices/perenio.js +21 -21
  284. package/devices/perenio.js.map +1 -1
  285. package/devices/philips.d.ts.map +1 -1
  286. package/devices/philips.js +28 -0
  287. package/devices/philips.js.map +1 -1
  288. package/devices/plaid.d.ts.map +1 -1
  289. package/devices/plaid.js.map +1 -1
  290. package/devices/plugwise.d.ts.map +1 -1
  291. package/devices/plugwise.js +1 -1
  292. package/devices/plugwise.js.map +1 -1
  293. package/devices/qa.d.ts.map +1 -1
  294. package/devices/qa.js.map +1 -1
  295. package/devices/qmotion.d.ts.map +1 -1
  296. package/devices/qmotion.js +1 -1
  297. package/devices/qmotion.js.map +1 -1
  298. package/devices/qoto.d.ts.map +1 -1
  299. package/devices/qoto.js.map +1 -1
  300. package/devices/rgb_genie.d.ts.map +1 -1
  301. package/devices/rgb_genie.js +2 -2
  302. package/devices/rgb_genie.js.map +1 -1
  303. package/devices/roome.d.ts.map +1 -1
  304. package/devices/roome.js.map +1 -1
  305. package/devices/rtx.d.ts.map +1 -1
  306. package/devices/rtx.js.map +1 -1
  307. package/devices/salus_controls.d.ts.map +1 -1
  308. package/devices/salus_controls.js.map +1 -1
  309. package/devices/saswell.d.ts.map +1 -1
  310. package/devices/saswell.js +1 -1
  311. package/devices/saswell.js.map +1 -1
  312. package/devices/sber.d.ts.map +1 -1
  313. package/devices/sber.js.map +1 -1
  314. package/devices/schlage.d.ts.map +1 -1
  315. package/devices/schlage.js.map +1 -1
  316. package/devices/schneider_electric.d.ts.map +1 -1
  317. package/devices/schneider_electric.js +22 -22
  318. package/devices/schneider_electric.js.map +1 -1
  319. package/devices/securifi.d.ts.map +1 -1
  320. package/devices/securifi.js.map +1 -1
  321. package/devices/sengled.d.ts.map +1 -1
  322. package/devices/sercomm.d.ts.map +1 -1
  323. package/devices/sercomm.js.map +1 -1
  324. package/devices/shade_control.d.ts.map +1 -1
  325. package/devices/shade_control.js.map +1 -1
  326. package/devices/shinasystem.js +1 -1
  327. package/devices/shinasystem.js.map +1 -1
  328. package/devices/siglis.d.ts.map +1 -1
  329. package/devices/siglis.js +4 -5
  330. package/devices/siglis.js.map +1 -1
  331. package/devices/sinope.d.ts.map +1 -1
  332. package/devices/sinope.js +76 -84
  333. package/devices/sinope.js.map +1 -1
  334. package/devices/siterwell.d.ts.map +1 -1
  335. package/devices/siterwell.js.map +1 -1
  336. package/devices/skydance.d.ts.map +1 -1
  337. package/devices/skydance.js.map +1 -1
  338. package/devices/smart9.d.ts.map +1 -1
  339. package/devices/smart9.js.map +1 -1
  340. package/devices/smartenit.d.ts.map +1 -1
  341. package/devices/smartenit.js.map +1 -1
  342. package/devices/smartthings.js +1 -1
  343. package/devices/smartthings.js.map +1 -1
  344. package/devices/smartwings.d.ts.map +1 -1
  345. package/devices/smartwings.js.map +1 -1
  346. package/devices/somgoms.d.ts.map +1 -1
  347. package/devices/somgoms.js.map +1 -1
  348. package/devices/sonoff.d.ts.map +1 -1
  349. package/devices/sonoff.js +2 -2
  350. package/devices/sonoff.js.map +1 -1
  351. package/devices/stelpro.d.ts.map +1 -1
  352. package/devices/stelpro.js +3 -3
  353. package/devices/stelpro.js.map +1 -1
  354. package/devices/sunricher.d.ts.map +1 -1
  355. package/devices/sunricher.js +3 -8
  356. package/devices/sunricher.js.map +1 -1
  357. package/devices/swann.d.ts.map +1 -1
  358. package/devices/swann.js.map +1 -1
  359. package/devices/tapestry.d.ts.map +1 -1
  360. package/devices/tapestry.js.map +1 -1
  361. package/devices/technicolor.d.ts.map +1 -1
  362. package/devices/technicolor.js.map +1 -1
  363. package/devices/third_reality.d.ts.map +1 -1
  364. package/devices/third_reality.js +185 -13
  365. package/devices/third_reality.js.map +1 -1
  366. package/devices/titan_products.d.ts.map +1 -1
  367. package/devices/titan_products.js.map +1 -1
  368. package/devices/tplink.d.ts.map +1 -1
  369. package/devices/tplink.js.map +1 -1
  370. package/devices/tuya.d.ts.map +1 -1
  371. package/devices/tuya.js +48 -41
  372. package/devices/tuya.js.map +1 -1
  373. package/devices/ubisys.d.ts.map +1 -1
  374. package/devices/ubisys.js +37 -28
  375. package/devices/ubisys.js.map +1 -1
  376. package/devices/uhome.d.ts.map +1 -1
  377. package/devices/uhome.js.map +1 -1
  378. package/devices/universal_electronics_inc.d.ts.map +1 -1
  379. package/devices/universal_electronics_inc.js +1 -1
  380. package/devices/universal_electronics_inc.js.map +1 -1
  381. package/devices/vesternet.d.ts.map +1 -1
  382. package/devices/vesternet.js.map +1 -1
  383. package/devices/viessmann.d.ts.map +1 -1
  384. package/devices/viessmann.js.map +1 -1
  385. package/devices/vimar.d.ts.map +1 -1
  386. package/devices/vimar.js.map +1 -1
  387. package/devices/visonic.d.ts.map +1 -1
  388. package/devices/visonic.js.map +1 -1
  389. package/devices/wally.d.ts.map +1 -1
  390. package/devices/wally.js.map +1 -1
  391. package/devices/waxman.d.ts.map +1 -1
  392. package/devices/waxman.js.map +1 -1
  393. package/devices/weiser.d.ts.map +1 -1
  394. package/devices/weiser.js.map +1 -1
  395. package/devices/wirenboard.d.ts.map +1 -1
  396. package/devices/wirenboard.js +11 -11
  397. package/devices/wirenboard.js.map +1 -1
  398. package/devices/woolley.d.ts.map +1 -1
  399. package/devices/woolley.js +1 -1
  400. package/devices/woolley.js.map +1 -1
  401. package/devices/woox.d.ts.map +1 -1
  402. package/devices/woox.js.map +1 -1
  403. package/devices/wyze.d.ts.map +1 -1
  404. package/devices/wyze.js.map +1 -1
  405. package/devices/xyzroe.d.ts.map +1 -1
  406. package/devices/xyzroe.js +6 -6
  407. package/devices/xyzroe.js.map +1 -1
  408. package/devices/yale.d.ts.map +1 -1
  409. package/devices/yale.js +3 -3
  410. package/devices/yale.js.map +1 -1
  411. package/devices/yookee.d.ts.map +1 -1
  412. package/devices/yookee.js.map +1 -1
  413. package/devices/zemismart.d.ts.map +1 -1
  414. package/devices/zemismart.js +2 -2
  415. package/devices/zemismart.js.map +1 -1
  416. package/devices/zen.d.ts.map +1 -1
  417. package/devices/zen.js.map +1 -1
  418. package/index.d.ts +5 -5
  419. package/index.d.ts.map +1 -1
  420. package/index.js +31 -16
  421. package/index.js.map +1 -1
  422. package/lib/color.d.ts +1 -1
  423. package/lib/color.d.ts.map +1 -1
  424. package/lib/color.js +47 -50
  425. package/lib/color.js.map +1 -1
  426. package/lib/configureKey.js +2 -2
  427. package/lib/configureKey.js.map +1 -1
  428. package/lib/develco.d.ts.map +1 -1
  429. package/lib/develco.js +5 -6
  430. package/lib/develco.js.map +1 -1
  431. package/lib/ewelink.d.ts.map +1 -1
  432. package/lib/exposes.js +1 -1
  433. package/lib/exposes.js.map +1 -1
  434. package/lib/ikea.d.ts +1 -1
  435. package/lib/ikea.d.ts.map +1 -1
  436. package/lib/ikea.js +10 -10
  437. package/lib/ikea.js.map +1 -1
  438. package/lib/ledvance.d.ts +1 -1
  439. package/lib/ledvance.d.ts.map +1 -1
  440. package/lib/legacy.d.ts +3 -16
  441. package/lib/legacy.d.ts.map +1 -1
  442. package/lib/legacy.js +121 -131
  443. package/lib/legacy.js.map +1 -1
  444. package/lib/legrand.d.ts +1 -1
  445. package/lib/legrand.d.ts.map +1 -1
  446. package/lib/legrand.js +4 -4
  447. package/lib/legrand.js.map +1 -1
  448. package/lib/light.d.ts +1 -1
  449. package/lib/light.js +5 -5
  450. package/lib/light.js.map +1 -1
  451. package/lib/logger.d.ts.map +1 -1
  452. package/lib/logger.js +4 -4
  453. package/lib/logger.js.map +1 -1
  454. package/lib/lumi.d.ts +1 -1
  455. package/lib/lumi.d.ts.map +1 -1
  456. package/lib/lumi.js +90 -92
  457. package/lib/lumi.js.map +1 -1
  458. package/lib/modernExtend.d.ts +1 -1
  459. package/lib/modernExtend.d.ts.map +1 -1
  460. package/lib/modernExtend.js +15 -15
  461. package/lib/modernExtend.js.map +1 -1
  462. package/lib/ota/common.d.ts +1 -1
  463. package/lib/ota/common.d.ts.map +1 -1
  464. package/lib/ota/common.js +5 -5
  465. package/lib/ota/common.js.map +1 -1
  466. package/lib/ota/gmmts.d.ts +1 -1
  467. package/lib/ota/gmmts.d.ts.map +1 -1
  468. package/lib/ota/gmmts.js +2 -2
  469. package/lib/ota/gmmts.js.map +1 -1
  470. package/lib/ota/index.d.ts +5 -5
  471. package/lib/ota/index.d.ts.map +1 -1
  472. package/lib/ota/index.js +7 -7
  473. package/lib/ota/index.js.map +1 -1
  474. package/lib/ota/inovelli.d.ts +1 -6
  475. package/lib/ota/inovelli.d.ts.map +1 -1
  476. package/lib/ota/inovelli.js +11 -11
  477. package/lib/ota/inovelli.js.map +1 -1
  478. package/lib/ota/jethome.d.ts +1 -1
  479. package/lib/ota/jethome.d.ts.map +1 -1
  480. package/lib/ota/jethome.js +4 -4
  481. package/lib/ota/jethome.js.map +1 -1
  482. package/lib/ota/ledvance.d.ts +1 -1
  483. package/lib/ota/ledvance.d.ts.map +1 -1
  484. package/lib/ota/ledvance.js +4 -4
  485. package/lib/ota/ledvance.js.map +1 -1
  486. package/lib/ota/lixee.d.ts +1 -1
  487. package/lib/ota/lixee.d.ts.map +1 -1
  488. package/lib/ota/lixee.js +3 -3
  489. package/lib/ota/lixee.js.map +1 -1
  490. package/lib/ota/salus.d.ts +1 -1
  491. package/lib/ota/salus.d.ts.map +1 -1
  492. package/lib/ota/salus.js +5 -5
  493. package/lib/ota/salus.js.map +1 -1
  494. package/lib/ota/securifi.d.ts +1 -1
  495. package/lib/ota/securifi.d.ts.map +1 -1
  496. package/lib/ota/securifi.js +2 -2
  497. package/lib/ota/securifi.js.map +1 -1
  498. package/lib/ota/tradfri.d.ts.map +1 -1
  499. package/lib/ota/tradfri.js +4 -4
  500. package/lib/ota/tradfri.js.map +1 -1
  501. package/lib/ota/ubisys.d.ts.map +1 -1
  502. package/lib/ota/ubisys.js +4 -4
  503. package/lib/ota/ubisys.js.map +1 -1
  504. package/lib/ota/zigbeeOTA.d.ts +1 -1
  505. package/lib/ota/zigbeeOTA.d.ts.map +1 -1
  506. package/lib/ota/zigbeeOTA.js +9 -9
  507. package/lib/ota/zigbeeOTA.js.map +1 -1
  508. package/lib/philips.js +12 -12
  509. package/lib/philips.js.map +1 -1
  510. package/lib/reporting.d.ts +1 -1
  511. package/lib/reporting.d.ts.map +1 -1
  512. package/lib/reporting.js +7 -7
  513. package/lib/reporting.js.map +1 -1
  514. package/lib/store.d.ts +1 -1
  515. package/lib/store.d.ts.map +1 -1
  516. package/lib/store.js +2 -2
  517. package/lib/store.js.map +1 -1
  518. package/lib/tuya.d.ts +1 -1
  519. package/lib/tuya.d.ts.map +1 -1
  520. package/lib/tuya.js +24 -56
  521. package/lib/tuya.js.map +1 -1
  522. package/lib/types.d.ts +4 -4
  523. package/lib/types.d.ts.map +1 -1
  524. package/lib/types.js +1 -0
  525. package/lib/types.js.map +1 -1
  526. package/lib/ubisys.d.ts +1 -1
  527. package/lib/ubisys.d.ts.map +1 -1
  528. package/lib/ubisys.js +1 -1
  529. package/lib/ubisys.js.map +1 -1
  530. package/lib/utils.d.ts +1 -1
  531. package/lib/utils.d.ts.map +1 -1
  532. package/lib/utils.js +26 -26
  533. package/lib/utils.js.map +1 -1
  534. package/package.json +8 -9
package/devices/tuya.js CHANGED
@@ -139,7 +139,7 @@ const storeLocal = {
139
139
  // Only publish if the set is complete otherwise discard everything.
140
140
  if (sign !== null && power !== null && current !== null && powerFactor !== null) {
141
141
  const signedPowerKey = 'signed_power_' + channel;
142
- const signedPower = options.hasOwnProperty(signedPowerKey) ? options[signedPowerKey] : false;
142
+ const signedPower = options[signedPowerKey] !== undefined ? options[signedPowerKey] : false;
143
143
  if (signedPower) {
144
144
  result['power_' + channel] = sign * power;
145
145
  result['energy_flow_' + channel] = 'sign';
@@ -197,7 +197,7 @@ const convLocal = {
197
197
  const result = {};
198
198
  priv['sign_' + channel] = v == 1 ? -1 : +1;
199
199
  const lateEnergyFlowKey = 'late_energy_flow_' + channel;
200
- const lateEnergyFlow = options.hasOwnProperty(lateEnergyFlowKey) ? options[lateEnergyFlowKey] : false;
200
+ const lateEnergyFlow = options[lateEnergyFlowKey] !== undefined ? options[lateEnergyFlowKey] : false;
201
201
  if (lateEnergyFlow) {
202
202
  priv.flush(result, channel, options);
203
203
  }
@@ -241,7 +241,7 @@ const convLocal = {
241
241
  const result = {};
242
242
  priv['power_factor_' + channel] = v;
243
243
  const lateEnergyFlowKey = 'late_energy_flow_' + channel;
244
- const lateEnergyFlow = options.hasOwnProperty(lateEnergyFlowKey) ? options[lateEnergyFlowKey] : false;
244
+ const lateEnergyFlow = options[lateEnergyFlowKey] !== undefined ? options[lateEnergyFlowKey] : false;
245
245
  if (!lateEnergyFlow) {
246
246
  priv.flush(result, channel, options);
247
247
  }
@@ -316,9 +316,9 @@ const tzLocal = {
316
316
  // Load current state or defaults
317
317
  const newSettings = {
318
318
  brightness: meta.state.brightness ?? 254, // full brightness
319
- // @ts-expect-error
319
+ // @ts-expect-error ignore
320
320
  hue: (meta.state.color ?? {}).hue ?? 0, // red
321
- // @ts-expect-error
321
+ // @ts-expect-error ignore
322
322
  saturation: (meta.state.color ?? {}).saturation ?? 100, // full saturation
323
323
  };
324
324
  // Apply changes
@@ -522,7 +522,7 @@ const fzLocal = {
522
522
  TS0222_humidity: {
523
523
  ...fromZigbee_1.default.humidity,
524
524
  convert: async (model, msg, publish, options, meta) => {
525
- const result = await fromZigbee_1.default.humidity.convert(model, msg, publish, options, meta);
525
+ const result = fromZigbee_1.default.humidity.convert(model, msg, publish, options, meta);
526
526
  if (result)
527
527
  result.humidity *= 10;
528
528
  return result;
@@ -581,7 +581,7 @@ const fzLocal = {
581
581
  type: ['attributeReport', 'readResponse'],
582
582
  convert: (model, msg, publish, options, meta) => {
583
583
  const result = {};
584
- if (msg.data.hasOwnProperty('57355')) {
584
+ if (msg.data['57355'] !== undefined) {
585
585
  result.temperature_unit = utils.getFromLookup(msg.data['57355'], { '0': 'celsius', '1': 'fahrenheit' });
586
586
  }
587
587
  return result;
@@ -590,7 +590,7 @@ const fzLocal = {
590
590
  TS011F_electrical_measurement: {
591
591
  ...fromZigbee_1.default.electrical_measurement,
592
592
  convert: async (model, msg, publish, options, meta) => {
593
- const result = (await fromZigbee_1.default.electrical_measurement.convert(model, msg, publish, options, meta)) ?? {};
593
+ const result = fromZigbee_1.default.electrical_measurement.convert(model, msg, publish, options, meta) ?? {};
594
594
  const lookup = { power: 'activePower', current: 'rmsCurrent', voltage: 'rmsVoltage' };
595
595
  // Wait 5 seconds before reporting a 0 value as this could be an invalid measurement.
596
596
  // https://github.com/Koenkk/zigbee2mqtt/issues/16709#issuecomment-1509599046
@@ -644,12 +644,16 @@ const fzLocal = {
644
644
  const data = msg.data.slice(3);
645
645
  if (command == 0xe6) {
646
646
  const value = splitToAttributes(data);
647
- return {
648
- temperature_threshold: value[0x05][1],
649
- temperature_breaker: lookup[value[0x05][0]],
650
- power_threshold: value[0x07][1],
651
- power_breaker: lookup[value[0x07][0]],
652
- };
647
+ const result = {};
648
+ if (0x05 in value) {
649
+ result.temperature_threshold = value[0x05][1];
650
+ result.temperature_breaker = lookup[value[0x05][0]];
651
+ }
652
+ if (0x07 in value) {
653
+ result.power_threshold = value[0x07][1];
654
+ result.power_breaker = lookup[value[0x07][0]];
655
+ }
656
+ return result;
653
657
  }
654
658
  if (command == 0xe7) {
655
659
  const value = splitToAttributes(data);
@@ -871,7 +875,7 @@ const definitions = [
871
875
  await reporting.batteryPercentageRemaining(endpoint);
872
876
  await reporting.batteryVoltage(endpoint);
873
877
  }
874
- catch (error) {
878
+ catch {
875
879
  /* Fails for some*/
876
880
  }
877
881
  },
@@ -927,10 +931,7 @@ const definitions = [
927
931
  [10, 'battery', tuya.valueConverter.raw],
928
932
  ],
929
933
  },
930
- whiteLabel: [
931
- tuya.whitelabel('Linkoze', 'LKWSZ211', 'Wireless switch (2-key)', ['_TZ3210_3ulg9kpo']),
932
- tuya.whitelabel('Adaprox', 'LKWSZ211', 'Remote wireless switch (2-key)', ['_TZ3210_3ulg9kpo']),
933
- ],
934
+ whiteLabel: [tuya.whitelabel('Linkoze', 'LKWSZ211', 'Wireless switch (2-key)', ['_TZ3210_3ulg9kpo'])],
934
935
  },
935
936
  {
936
937
  fingerprint: [
@@ -1735,7 +1736,7 @@ const definitions = [
1735
1736
  await reporting.batteryPercentageRemaining(endpoint);
1736
1737
  await reporting.batteryVoltage(endpoint);
1737
1738
  }
1738
- catch (error) {
1739
+ catch {
1739
1740
  /* Fails for some https://github.com/Koenkk/zigbee2mqtt/issues/13708 */
1740
1741
  }
1741
1742
  },
@@ -1874,7 +1875,7 @@ const definitions = [
1874
1875
  e.illuminance().withUnit('lx'),
1875
1876
  e.numeric('illuminance_average_20min', ea.STATE).withUnit('lx').withDescription('Illuminance average for the last 20 minutes'),
1876
1877
  e.numeric('illuminance_maximum_today', ea.STATE).withUnit('lx').withDescription('Illuminance maximum for the last 24 hours'),
1877
- e.binary('cleaning_reminder', ea.STATE, 'ON', 'OFF').withDescription('Cleaning reminder'),
1878
+ e.binary('cleaning_reminder', ea.STATE, true, false).withDescription('Cleaning reminder'),
1878
1879
  e.numeric('rain_intensity', ea.STATE).withUnit('mV').withDescription('Rainfall intensity'),
1879
1880
  ],
1880
1881
  meta: {
@@ -2520,7 +2521,7 @@ const definitions = [
2520
2521
  e.binary('motor_reversal', ea.ALL, 'ON', 'OFF'),
2521
2522
  e.numeric('calibration_time', ea.STATE).withUnit('s').withDescription('Calibration time'),
2522
2523
  ];
2523
- if (!device || device.manufacturerName !== ('_TZ3210_xbpt8ewc' || '_TZ3000_1dd0d5yi')) {
2524
+ if (device?.manufacturerName !== '_TZ3210_xbpt8ewc' && device?.manufacturerName !== '_TZ3000_1dd0d5yi') {
2524
2525
  exps.push(tuya.exposes.indicatorMode(), tuya.exposes.backlightModeOffOn());
2525
2526
  }
2526
2527
  exps.push(e.linkquality());
@@ -3243,7 +3244,7 @@ const definitions = [
3243
3244
  try {
3244
3245
  await endpoint.read(0xe001, [0xd011]);
3245
3246
  }
3246
- catch (err) {
3247
+ catch {
3247
3248
  /* do nothing */
3248
3249
  }
3249
3250
  await endpoint.read('genPowerCfg', ['batteryVoltage', 'batteryPercentageRemaining']);
@@ -3305,7 +3306,7 @@ const definitions = [
3305
3306
  try {
3306
3307
  await endpoint.read(0xe001, [0xd011]);
3307
3308
  }
3308
- catch (err) {
3309
+ catch {
3309
3310
  /* do nothing */
3310
3311
  }
3311
3312
  await endpoint.read('genPowerCfg', ['batteryVoltage', 'batteryPercentageRemaining']);
@@ -3686,8 +3687,8 @@ const definitions = [
3686
3687
  tuya.whitelabel('AVATTO', 'ZWSM16-2-Zigbee', '2 gang switch module', ['_TZ3000_mtnpt6ws']),
3687
3688
  tuya.whitelabel('PSMART', 'T442', '2 gang switch module', ['_TZ3000_mufwv0ry']),
3688
3689
  tuya.whitelabel('Lonsonho', 'X702A', '2 gang switch with backlight', ['_TZ3000_54hjn4vs', '_TZ3000_aa5t61rh']),
3689
- tuya.whitelabel('Homeetec', '37022463', '2 Gang switch with backlight', ['_TZ3000_in5qxhtt']),
3690
- tuya.whitelabel('RoomsAI', '37022463', '2 Gang switch with backlight', ['_TZ3000_ogpla3lh']),
3690
+ tuya.whitelabel('Homeetec', '37022463-1', '2 Gang switch with backlight', ['_TZ3000_in5qxhtt']),
3691
+ tuya.whitelabel('RoomsAI', '37022463-2', '2 Gang switch with backlight', ['_TZ3000_ogpla3lh']),
3691
3692
  ],
3692
3693
  },
3693
3694
  {
@@ -4105,6 +4106,7 @@ const definitions = [
4105
4106
  { modelID: 'TS0601', manufacturerName: '_TZE200_7fqkphoq' }, // AFINTEK
4106
4107
  { modelID: 'TS0601', manufacturerName: '_TZE200_rufdtfyv' },
4107
4108
  { modelID: 'TS0601', manufacturerName: '_TZE200_lpwgshtl' },
4109
+ { modelID: 'TS0601', manufacturerName: '_TZE200_rk1wojce' }, // Emos P5630S
4108
4110
  ],
4109
4111
  model: 'TS0601_thermostat',
4110
4112
  vendor: 'Tuya',
@@ -4117,6 +4119,7 @@ const definitions = [
4117
4119
  { vendor: 'Immax', model: '07732B' },
4118
4120
  tuya.whitelabel('Immax', '07732L', 'Radiator valve with thermostat', ['_TZE200_rufdtfyv']),
4119
4121
  { vendor: 'Evolveo', model: 'Heat M30' },
4122
+ tuya.whitelabel('Emos', 'P5630S', 'Radiator valve with thermostat', ['_TZE200_rk1wojce']),
4120
4123
  ],
4121
4124
  meta: { tuyaThermostatPreset: legacy.thermostatPresets, tuyaThermostatSystemMode: legacy.thermostatSystemModes3 },
4122
4125
  ota: ota.zigbeeOTA,
@@ -5003,7 +5006,7 @@ const definitions = [
5003
5006
  await reporting.rmsCurrent(endpoint, { change: 50 });
5004
5007
  await reporting.activePower(endpoint, { change: 10 });
5005
5008
  }
5006
- catch (error) {
5009
+ catch {
5007
5010
  /* fails for some https://github.com/Koenkk/zigbee2mqtt/issues/11179
5008
5011
  and https://github.com/Koenkk/zigbee2mqtt/issues/16864 */
5009
5012
  }
@@ -5866,7 +5869,7 @@ const definitions = [
5866
5869
  await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
5867
5870
  }
5868
5871
  }
5869
- catch (e) {
5872
+ catch {
5870
5873
  // Fails for some: https://github.com/Koenkk/zigbee2mqtt/issues/4872
5871
5874
  }
5872
5875
  device.powerSource = 'Mains (single phase)';
@@ -5899,7 +5902,7 @@ const definitions = [
5899
5902
  await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
5900
5903
  }
5901
5904
  }
5902
- catch (e) {
5905
+ catch {
5903
5906
  // Fails for some: https://github.com/Koenkk/zigbee2mqtt/issues/4872
5904
5907
  }
5905
5908
  device.powerSource = 'Mains (single phase)';
@@ -5930,7 +5933,7 @@ const definitions = [
5930
5933
  await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
5931
5934
  }
5932
5935
  }
5933
- catch (e) {
5936
+ catch {
5934
5937
  // Fails for some: https://github.com/Koenkk/zigbee2mqtt/issues/4872
5935
5938
  }
5936
5939
  device.powerSource = 'Mains (single phase)';
@@ -6343,7 +6346,7 @@ const definitions = [
6343
6346
  return { auto: tuya.enum(1), manual: tuya.enum(0), temporary_manual: tuya.enum(2) };
6344
6347
  }
6345
6348
  else {
6346
- return { manual: tuya.enum(0), auto: tuya.enum(1), temporary_manual: tuya.enum(2) };
6349
+ return { auto: tuya.enum(0), manual: tuya.enum(1), temporary_manual: tuya.enum(2) };
6347
6350
  }
6348
6351
  }),
6349
6352
  ],
@@ -6848,7 +6851,7 @@ const definitions = [
6848
6851
  try {
6849
6852
  await endpoint.read(0xe001, [0xd011]);
6850
6853
  }
6851
- catch (err) {
6854
+ catch {
6852
6855
  /* do nothing */
6853
6856
  }
6854
6857
  await endpoint.read('genPowerCfg', ['batteryVoltage', 'batteryPercentageRemaining']);
@@ -6944,7 +6947,7 @@ const definitions = [
6944
6947
  try {
6945
6948
  await endpoint.read(0xe001, [0xd011]);
6946
6949
  }
6947
- catch (err) {
6950
+ catch {
6948
6951
  /* do nothing */
6949
6952
  }
6950
6953
  await endpoint.read('genPowerCfg', ['batteryVoltage', 'batteryPercentageRemaining']);
@@ -8278,15 +8281,15 @@ const definitions = [
8278
8281
  .withValueMax(100)
8279
8282
  .withValueStep(1)
8280
8283
  .withUnit('*C')
8281
- .withDescription('High temperature threshold'), e.binary('temperature_breaker', ea.STATE_SET, 'ON', 'OFF').withDescription('High temperature breaker'), e
8282
- .numeric('power_threshold', ea.STATE_SET)
8283
- .withValueMin(1)
8284
- .withValueMax(26)
8285
- .withValueStep(1)
8286
- .withUnit('kW')
8287
- .withDescription('High power threshold'), e.binary('power_breaker', ea.STATE_SET, 'ON', 'OFF').withDescription('High power breaker'));
8284
+ .withDescription('High temperature threshold'), e.binary('temperature_breaker', ea.STATE_SET, 'ON', 'OFF').withDescription('High temperature breaker'));
8288
8285
  }
8289
8286
  exposes.push(e
8287
+ .numeric('power_threshold', ea.STATE_SET)
8288
+ .withValueMin(1)
8289
+ .withValueMax(26)
8290
+ .withValueStep(1)
8291
+ .withUnit('kW')
8292
+ .withDescription('High power threshold'), e.binary('power_breaker', ea.STATE_SET, 'ON', 'OFF').withDescription('High power breaker'), e
8290
8293
  .numeric('over_current_threshold', ea.STATE_SET)
8291
8294
  .withValueMin(1)
8292
8295
  .withValueMax(64)
@@ -11325,7 +11328,10 @@ const definitions = [
11325
11328
  },
11326
11329
  },
11327
11330
  {
11328
- fingerprint: tuya.fingerprint('TS0601', ['_TZE204_fhvdgeuh']),
11331
+ fingerprint: [
11332
+ { modelID: 'TS0601', manufacturerName: '_TZE204_fhvdgeuh' },
11333
+ { modelID: 'TS0601', manufacturerName: '_TZE200_abatw3kj' },
11334
+ ],
11329
11335
  model: 'TS0601_din_4',
11330
11336
  vendor: 'Tuya',
11331
11337
  description: 'Din rail switch with power monitoring and threshold settings',
@@ -11336,6 +11342,7 @@ const definitions = [
11336
11342
  // Required to get the device to start reporting
11337
11343
  await device.getEndpoint(1).command('manuSpecificTuya', 'dataQuery', {});
11338
11344
  },
11345
+ whiteLabel: [tuya.whitelabel('RTX', 'TS0601_RTX_DIN', 'Din rail switch', ['_TZE200_abatw3kj'])],
11339
11346
  exposes: [
11340
11347
  e.switch().setAccess('state', ea.STATE_SET),
11341
11348
  e.power(),