@willieee802/zigbee-herdsman-converters 19.44.0 → 19.44.2

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 (1609) hide show
  1. package/dist/converters/actions.d.ts +36 -0
  2. package/dist/converters/actions.d.ts.map +1 -0
  3. package/dist/converters/actions.js +137 -0
  4. package/dist/converters/actions.js.map +1 -0
  5. package/dist/converters/fromZigbee.d.ts +293 -0
  6. package/dist/converters/fromZigbee.d.ts.map +1 -0
  7. package/dist/converters/fromZigbee.js +5192 -0
  8. package/dist/converters/fromZigbee.js.map +1 -0
  9. package/dist/converters/toZigbee.d.ts +235 -0
  10. package/dist/converters/toZigbee.d.ts.map +1 -0
  11. package/dist/converters/toZigbee.js +4577 -0
  12. package/dist/converters/toZigbee.js.map +1 -0
  13. package/dist/devices/ITCommander.d.ts +3 -0
  14. package/dist/devices/ITCommander.d.ts.map +1 -0
  15. package/dist/devices/ITCommander.js +73 -0
  16. package/dist/devices/ITCommander.js.map +1 -0
  17. package/dist/devices/acova.d.ts +3 -0
  18. package/dist/devices/acova.d.ts.map +1 -0
  19. package/dist/devices/acova.js +124 -0
  20. package/dist/devices/acova.js.map +1 -0
  21. package/dist/devices/acuity_brands_lighting.d.ts +3 -0
  22. package/dist/devices/acuity_brands_lighting.d.ts.map +1 -0
  23. package/dist/devices/acuity_brands_lighting.js +61 -0
  24. package/dist/devices/acuity_brands_lighting.js.map +1 -0
  25. package/dist/devices/adeo.d.ts +3 -0
  26. package/dist/devices/adeo.d.ts.map +1 -0
  27. package/dist/devices/adeo.js +518 -0
  28. package/dist/devices/adeo.js.map +1 -0
  29. package/dist/devices/adurosmart.d.ts +3 -0
  30. package/dist/devices/adurosmart.d.ts.map +1 -0
  31. package/dist/devices/adurosmart.js +235 -0
  32. package/dist/devices/adurosmart.js.map +1 -0
  33. package/dist/devices/aeotec.d.ts +3 -0
  34. package/dist/devices/aeotec.d.ts.map +1 -0
  35. package/dist/devices/aeotec.js +95 -0
  36. package/dist/devices/aeotec.js.map +1 -0
  37. package/dist/devices/airam.d.ts +3 -0
  38. package/dist/devices/airam.d.ts.map +1 -0
  39. package/dist/devices/airam.js +102 -0
  40. package/dist/devices/airam.js.map +1 -0
  41. package/dist/devices/airzone_aidoo.d.ts +3 -0
  42. package/dist/devices/airzone_aidoo.d.ts.map +1 -0
  43. package/dist/devices/airzone_aidoo.js +77 -0
  44. package/dist/devices/airzone_aidoo.js.map +1 -0
  45. package/dist/devices/ajax_online.d.ts +3 -0
  46. package/dist/devices/ajax_online.d.ts.map +1 -0
  47. package/dist/devices/ajax_online.js +83 -0
  48. package/dist/devices/ajax_online.js.map +1 -0
  49. package/dist/devices/akuvox.d.ts +3 -0
  50. package/dist/devices/akuvox.d.ts.map +1 -0
  51. package/dist/devices/akuvox.js +65 -0
  52. package/dist/devices/akuvox.js.map +1 -0
  53. package/dist/devices/alchemy.d.ts +3 -0
  54. package/dist/devices/alchemy.d.ts.map +1 -0
  55. package/dist/devices/alchemy.js +54 -0
  56. package/dist/devices/alchemy.js.map +1 -0
  57. package/dist/devices/aldi.d.ts +3 -0
  58. package/dist/devices/aldi.d.ts.map +1 -0
  59. package/dist/devices/aldi.js +54 -0
  60. package/dist/devices/aldi.js.map +1 -0
  61. package/dist/devices/alecto.d.ts +3 -0
  62. package/dist/devices/alecto.d.ts.map +1 -0
  63. package/dist/devices/alecto.js +91 -0
  64. package/dist/devices/alecto.js.map +1 -0
  65. package/dist/devices/amina.d.ts +3 -0
  66. package/dist/devices/amina.d.ts.map +1 -0
  67. package/dist/devices/amina.js +360 -0
  68. package/dist/devices/amina.js.map +1 -0
  69. package/dist/devices/anchor.d.ts +3 -0
  70. package/dist/devices/anchor.d.ts.map +1 -0
  71. package/dist/devices/anchor.js +47 -0
  72. package/dist/devices/anchor.js.map +1 -0
  73. package/dist/devices/atlantic.d.ts +3 -0
  74. package/dist/devices/atlantic.d.ts.map +1 -0
  75. package/dist/devices/atlantic.js +147 -0
  76. package/dist/devices/atlantic.js.map +1 -0
  77. package/dist/devices/atsmart.d.ts +3 -0
  78. package/dist/devices/atsmart.d.ts.map +1 -0
  79. package/dist/devices/atsmart.js +47 -0
  80. package/dist/devices/atsmart.js.map +1 -0
  81. package/dist/devices/aubess.d.ts +3 -0
  82. package/dist/devices/aubess.d.ts.map +1 -0
  83. package/dist/devices/aubess.js +60 -0
  84. package/dist/devices/aubess.js.map +1 -0
  85. package/dist/devices/aurora_lighting.d.ts +3 -0
  86. package/dist/devices/aurora_lighting.d.ts.map +1 -0
  87. package/dist/devices/aurora_lighting.js +347 -0
  88. package/dist/devices/aurora_lighting.js.map +1 -0
  89. package/dist/devices/automaton.d.ts +3 -0
  90. package/dist/devices/automaton.d.ts.map +1 -0
  91. package/dist/devices/automaton.js +64 -0
  92. package/dist/devices/automaton.js.map +1 -0
  93. package/dist/devices/avatto.d.ts +3 -0
  94. package/dist/devices/avatto.d.ts.map +1 -0
  95. package/dist/devices/avatto.js +635 -0
  96. package/dist/devices/avatto.js.map +1 -0
  97. package/dist/devices/awox.d.ts +3 -0
  98. package/dist/devices/awox.d.ts.map +1 -0
  99. package/dist/devices/awox.js +352 -0
  100. package/dist/devices/awox.js.map +1 -0
  101. package/dist/devices/axis.d.ts +3 -0
  102. package/dist/devices/axis.d.ts.map +1 -0
  103. package/dist/devices/axis.js +59 -0
  104. package/dist/devices/axis.js.map +1 -0
  105. package/dist/devices/bacchus.d.ts +3 -0
  106. package/dist/devices/bacchus.d.ts.map +1 -0
  107. package/dist/devices/bacchus.js +902 -0
  108. package/dist/devices/bacchus.js.map +1 -0
  109. package/dist/devices/bankamp.d.ts +3 -0
  110. package/dist/devices/bankamp.d.ts.map +1 -0
  111. package/dist/devices/bankamp.js +47 -0
  112. package/dist/devices/bankamp.js.map +1 -0
  113. package/dist/devices/bega.d.ts +3 -0
  114. package/dist/devices/bega.d.ts.map +1 -0
  115. package/dist/devices/bega.js +68 -0
  116. package/dist/devices/bega.js.map +1 -0
  117. package/dist/devices/belkin.d.ts +3 -0
  118. package/dist/devices/belkin.d.ts.map +1 -0
  119. package/dist/devices/belkin.js +47 -0
  120. package/dist/devices/belkin.js.map +1 -0
  121. package/dist/devices/bitron.d.ts +3 -0
  122. package/dist/devices/bitron.d.ts.map +1 -0
  123. package/dist/devices/bitron.js +357 -0
  124. package/dist/devices/bitron.js.map +1 -0
  125. package/dist/devices/bituo_technik.d.ts +3 -0
  126. package/dist/devices/bituo_technik.d.ts.map +1 -0
  127. package/dist/devices/bituo_technik.js +487 -0
  128. package/dist/devices/bituo_technik.js.map +1 -0
  129. package/dist/devices/blaupunkt.d.ts +3 -0
  130. package/dist/devices/blaupunkt.d.ts.map +1 -0
  131. package/dist/devices/blaupunkt.js +64 -0
  132. package/dist/devices/blaupunkt.js.map +1 -0
  133. package/dist/devices/blitzwolf.d.ts +3 -0
  134. package/dist/devices/blitzwolf.d.ts.map +1 -0
  135. package/dist/devices/blitzwolf.js +77 -0
  136. package/dist/devices/blitzwolf.js.map +1 -0
  137. package/dist/devices/bosch.d.ts +3 -0
  138. package/dist/devices/bosch.d.ts.map +1 -0
  139. package/dist/devices/bosch.js +1381 -0
  140. package/dist/devices/bosch.js.map +1 -0
  141. package/dist/devices/bouffalo_lab.d.ts +3 -0
  142. package/dist/devices/bouffalo_lab.d.ts.map +1 -0
  143. package/dist/devices/bouffalo_lab.js +47 -0
  144. package/dist/devices/bouffalo_lab.js.map +1 -0
  145. package/dist/devices/box.d.ts +3 -0
  146. package/dist/devices/box.d.ts.map +1 -0
  147. package/dist/devices/box.js +370 -0
  148. package/dist/devices/box.js.map +1 -0
  149. package/dist/devices/brimate.d.ts +3 -0
  150. package/dist/devices/brimate.d.ts.map +1 -0
  151. package/dist/devices/brimate.js +51 -0
  152. package/dist/devices/brimate.js.map +1 -0
  153. package/dist/devices/brun_holding.d.ts +3 -0
  154. package/dist/devices/brun_holding.d.ts.map +1 -0
  155. package/dist/devices/brun_holding.js +59 -0
  156. package/dist/devices/brun_holding.js.map +1 -0
  157. package/dist/devices/bseed.d.ts +3 -0
  158. package/dist/devices/bseed.d.ts.map +1 -0
  159. package/dist/devices/bseed.js +53 -0
  160. package/dist/devices/bseed.js.map +1 -0
  161. package/dist/devices/bticino.d.ts +3 -0
  162. package/dist/devices/bticino.d.ts.map +1 -0
  163. package/dist/devices/bticino.js +111 -0
  164. package/dist/devices/bticino.js.map +1 -0
  165. package/dist/devices/bubendorff.d.ts +3 -0
  166. package/dist/devices/bubendorff.d.ts.map +1 -0
  167. package/dist/devices/bubendorff.js +47 -0
  168. package/dist/devices/bubendorff.js.map +1 -0
  169. package/dist/devices/busch_jaeger.d.ts +3 -0
  170. package/dist/devices/busch_jaeger.d.ts.map +1 -0
  171. package/dist/devices/busch_jaeger.js +163 -0
  172. package/dist/devices/busch_jaeger.js.map +1 -0
  173. package/dist/devices/byun.d.ts +3 -0
  174. package/dist/devices/byun.d.ts.map +1 -0
  175. package/dist/devices/byun.js +60 -0
  176. package/dist/devices/byun.js.map +1 -0
  177. package/dist/devices/calex.d.ts +3 -0
  178. package/dist/devices/calex.d.ts.map +1 -0
  179. package/dist/devices/calex.js +87 -0
  180. package/dist/devices/calex.js.map +1 -0
  181. package/dist/devices/candeo.d.ts +3 -0
  182. package/dist/devices/candeo.d.ts.map +1 -0
  183. package/dist/devices/candeo.js +887 -0
  184. package/dist/devices/candeo.js.map +1 -0
  185. package/dist/devices/casaia.d.ts +3 -0
  186. package/dist/devices/casaia.d.ts.map +1 -0
  187. package/dist/devices/casaia.js +95 -0
  188. package/dist/devices/casaia.js.map +1 -0
  189. package/dist/devices/cel.d.ts +3 -0
  190. package/dist/devices/cel.d.ts.map +1 -0
  191. package/dist/devices/cel.js +49 -0
  192. package/dist/devices/cel.js.map +1 -0
  193. package/dist/devices/centralite.d.ts +28 -0
  194. package/dist/devices/centralite.d.ts.map +1 -0
  195. package/dist/devices/centralite.js +440 -0
  196. package/dist/devices/centralite.js.map +1 -0
  197. package/dist/devices/chacon.d.ts +3 -0
  198. package/dist/devices/chacon.d.ts.map +1 -0
  199. package/dist/devices/chacon.js +57 -0
  200. package/dist/devices/chacon.js.map +1 -0
  201. package/dist/devices/cleode.d.ts +3 -0
  202. package/dist/devices/cleode.d.ts.map +1 -0
  203. package/dist/devices/cleode.js +47 -0
  204. package/dist/devices/cleode.js.map +1 -0
  205. package/dist/devices/cleverio.d.ts +3 -0
  206. package/dist/devices/cleverio.d.ts.map +1 -0
  207. package/dist/devices/cleverio.js +74 -0
  208. package/dist/devices/cleverio.js.map +1 -0
  209. package/dist/devices/climax.d.ts +3 -0
  210. package/dist/devices/climax.d.ts.map +1 -0
  211. package/dist/devices/climax.js +184 -0
  212. package/dist/devices/climax.js.map +1 -0
  213. package/dist/devices/commercial_electric.d.ts +3 -0
  214. package/dist/devices/commercial_electric.d.ts.map +1 -0
  215. package/dist/devices/commercial_electric.js +47 -0
  216. package/dist/devices/commercial_electric.js.map +1 -0
  217. package/dist/devices/cree.d.ts +3 -0
  218. package/dist/devices/cree.d.ts.map +1 -0
  219. package/dist/devices/cree.js +47 -0
  220. package/dist/devices/cree.js.map +1 -0
  221. package/dist/devices/ctm.d.ts +3 -0
  222. package/dist/devices/ctm.d.ts.map +1 -0
  223. package/dist/devices/ctm.js +1411 -0
  224. package/dist/devices/ctm.js.map +1 -0
  225. package/dist/devices/current_products_corp.d.ts +3 -0
  226. package/dist/devices/current_products_corp.d.ts.map +1 -0
  227. package/dist/devices/current_products_corp.js +60 -0
  228. package/dist/devices/current_products_corp.js.map +1 -0
  229. package/dist/devices/custom_devices_diy.d.ts +3 -0
  230. package/dist/devices/custom_devices_diy.d.ts.map +1 -0
  231. package/dist/devices/custom_devices_diy.js +1302 -0
  232. package/dist/devices/custom_devices_diy.js.map +1 -0
  233. package/dist/devices/cwd.d.ts +3 -0
  234. package/dist/devices/cwd.d.ts.map +1 -0
  235. package/dist/devices/cwd.js +47 -0
  236. package/dist/devices/cwd.js.map +1 -0
  237. package/dist/devices/cy_lighting.d.ts +3 -0
  238. package/dist/devices/cy_lighting.d.ts.map +1 -0
  239. package/dist/devices/cy_lighting.js +47 -0
  240. package/dist/devices/cy_lighting.js.map +1 -0
  241. package/dist/devices/danalock.d.ts +3 -0
  242. package/dist/devices/danalock.d.ts.map +1 -0
  243. package/dist/devices/danalock.js +61 -0
  244. package/dist/devices/danalock.js.map +1 -0
  245. package/dist/devices/danfoss.d.ts +3 -0
  246. package/dist/devices/danfoss.d.ts.map +1 -0
  247. package/dist/devices/danfoss.js +793 -0
  248. package/dist/devices/danfoss.js.map +1 -0
  249. package/dist/devices/databyte.d.ts +3 -0
  250. package/dist/devices/databyte.d.ts.map +1 -0
  251. package/dist/devices/databyte.js +90 -0
  252. package/dist/devices/databyte.js.map +1 -0
  253. package/dist/devices/datek.d.ts +3 -0
  254. package/dist/devices/datek.d.ts.map +1 -0
  255. package/dist/devices/datek.js +303 -0
  256. package/dist/devices/datek.js.map +1 -0
  257. package/dist/devices/dawon_dns.d.ts +3 -0
  258. package/dist/devices/dawon_dns.d.ts.map +1 -0
  259. package/dist/devices/dawon_dns.js +314 -0
  260. package/dist/devices/dawon_dns.js.map +1 -0
  261. package/dist/devices/develco.d.ts +3 -0
  262. package/dist/devices/develco.d.ts.map +1 -0
  263. package/dist/devices/develco.js +1113 -0
  264. package/dist/devices/develco.js.map +1 -0
  265. package/dist/devices/digi.d.ts +3 -0
  266. package/dist/devices/digi.d.ts.map +1 -0
  267. package/dist/devices/digi.js +24 -0
  268. package/dist/devices/digi.js.map +1 -0
  269. package/dist/devices/direct_signs.d.ts +3 -0
  270. package/dist/devices/direct_signs.d.ts.map +1 -0
  271. package/dist/devices/direct_signs.js +47 -0
  272. package/dist/devices/direct_signs.js.map +1 -0
  273. package/dist/devices/diyruz.d.ts +3 -0
  274. package/dist/devices/diyruz.d.ts.map +1 -0
  275. package/dist/devices/diyruz.js +397 -0
  276. package/dist/devices/diyruz.js.map +1 -0
  277. package/dist/devices/dlink.d.ts +3 -0
  278. package/dist/devices/dlink.d.ts.map +1 -0
  279. package/dist/devices/dlink.js +72 -0
  280. package/dist/devices/dlink.js.map +1 -0
  281. package/dist/devices/dnake.d.ts +3 -0
  282. package/dist/devices/dnake.d.ts.map +1 -0
  283. package/dist/devices/dnake.js +47 -0
  284. package/dist/devices/dnake.js.map +1 -0
  285. package/dist/devices/domraem.d.ts +3 -0
  286. package/dist/devices/domraem.d.ts.map +1 -0
  287. package/dist/devices/domraem.js +75 -0
  288. package/dist/devices/domraem.js.map +1 -0
  289. package/dist/devices/dowsing_reynolds.d.ts +3 -0
  290. package/dist/devices/dowsing_reynolds.d.ts.map +1 -0
  291. package/dist/devices/dowsing_reynolds.js +47 -0
  292. package/dist/devices/dowsing_reynolds.js.map +1 -0
  293. package/dist/devices/dqsmart.d.ts +3 -0
  294. package/dist/devices/dqsmart.d.ts.map +1 -0
  295. package/dist/devices/dqsmart.js +50 -0
  296. package/dist/devices/dqsmart.js.map +1 -0
  297. package/dist/devices/dresden_elektronik.d.ts +3 -0
  298. package/dist/devices/dresden_elektronik.d.ts.map +1 -0
  299. package/dist/devices/dresden_elektronik.js +167 -0
  300. package/dist/devices/dresden_elektronik.js.map +1 -0
  301. package/dist/devices/easyaccess.d.ts +3 -0
  302. package/dist/devices/easyaccess.d.ts.map +1 -0
  303. package/dist/devices/easyaccess.js +67 -0
  304. package/dist/devices/easyaccess.js.map +1 -0
  305. package/dist/devices/easyiot.d.ts +3 -0
  306. package/dist/devices/easyiot.d.ts.map +1 -0
  307. package/dist/devices/easyiot.js +359 -0
  308. package/dist/devices/easyiot.js.map +1 -0
  309. package/dist/devices/eatonhalo_led.d.ts +3 -0
  310. package/dist/devices/eatonhalo_led.d.ts.map +1 -0
  311. package/dist/devices/eatonhalo_led.js +47 -0
  312. package/dist/devices/eatonhalo_led.js.map +1 -0
  313. package/dist/devices/echostar.d.ts +3 -0
  314. package/dist/devices/echostar.d.ts.map +1 -0
  315. package/dist/devices/echostar.js +61 -0
  316. package/dist/devices/echostar.js.map +1 -0
  317. package/dist/devices/ecodim.d.ts +3 -0
  318. package/dist/devices/ecodim.d.ts.map +1 -0
  319. package/dist/devices/ecodim.js +274 -0
  320. package/dist/devices/ecodim.js.map +1 -0
  321. package/dist/devices/ecolink.d.ts +3 -0
  322. package/dist/devices/ecolink.d.ts.map +1 -0
  323. package/dist/devices/ecolink.js +57 -0
  324. package/dist/devices/ecolink.js.map +1 -0
  325. package/dist/devices/ecosmart.d.ts +3 -0
  326. package/dist/devices/ecosmart.d.ts.map +1 -0
  327. package/dist/devices/ecosmart.js +115 -0
  328. package/dist/devices/ecosmart.js.map +1 -0
  329. package/dist/devices/ecozy.d.ts +3 -0
  330. package/dist/devices/ecozy.d.ts.map +1 -0
  331. package/dist/devices/ecozy.js +85 -0
  332. package/dist/devices/ecozy.js.map +1 -0
  333. package/dist/devices/edp.d.ts +3 -0
  334. package/dist/devices/edp.d.ts.map +1 -0
  335. package/dist/devices/edp.js +70 -0
  336. package/dist/devices/edp.js.map +1 -0
  337. package/dist/devices/efekta.d.ts +3 -0
  338. package/dist/devices/efekta.d.ts.map +1 -0
  339. package/dist/devices/efekta.js +8230 -0
  340. package/dist/devices/efekta.js.map +1 -0
  341. package/dist/devices/eglo.d.ts +3 -0
  342. package/dist/devices/eglo.d.ts.map +1 -0
  343. package/dist/devices/eglo.js +142 -0
  344. package/dist/devices/eglo.js.map +1 -0
  345. package/dist/devices/elko.d.ts +27 -0
  346. package/dist/devices/elko.d.ts.map +1 -0
  347. package/dist/devices/elko.js +306 -0
  348. package/dist/devices/elko.js.map +1 -0
  349. package/dist/devices/enbrighten.d.ts +3 -0
  350. package/dist/devices/enbrighten.d.ts.map +1 -0
  351. package/dist/devices/enbrighten.js +152 -0
  352. package/dist/devices/enbrighten.js.map +1 -0
  353. package/dist/devices/engo.d.ts +3 -0
  354. package/dist/devices/engo.d.ts.map +1 -0
  355. package/dist/devices/engo.js +1041 -0
  356. package/dist/devices/engo.js.map +1 -0
  357. package/dist/devices/enkin.d.ts +3 -0
  358. package/dist/devices/enkin.d.ts.map +1 -0
  359. package/dist/devices/enkin.js +14 -0
  360. package/dist/devices/enkin.js.map +1 -0
  361. package/dist/devices/enocean.d.ts +3 -0
  362. package/dist/devices/enocean.d.ts.map +1 -0
  363. package/dist/devices/enocean.js +150 -0
  364. package/dist/devices/enocean.js.map +1 -0
  365. package/dist/devices/envilar.d.ts +3 -0
  366. package/dist/devices/envilar.d.ts.map +1 -0
  367. package/dist/devices/envilar.js +131 -0
  368. package/dist/devices/envilar.js.map +1 -0
  369. package/dist/devices/espressif.d.ts +3 -0
  370. package/dist/devices/espressif.d.ts.map +1 -0
  371. package/dist/devices/espressif.js +61 -0
  372. package/dist/devices/espressif.js.map +1 -0
  373. package/dist/devices/essentialb.d.ts +3 -0
  374. package/dist/devices/essentialb.d.ts.map +1 -0
  375. package/dist/devices/essentialb.js +133 -0
  376. package/dist/devices/essentialb.js.map +1 -0
  377. package/dist/devices/essentials.d.ts +3 -0
  378. package/dist/devices/essentials.d.ts.map +1 -0
  379. package/dist/devices/essentials.js +150 -0
  380. package/dist/devices/essentials.js.map +1 -0
  381. package/dist/devices/eucontrols.d.ts +3 -0
  382. package/dist/devices/eucontrols.d.ts.map +1 -0
  383. package/dist/devices/eucontrols.js +47 -0
  384. package/dist/devices/eucontrols.js.map +1 -0
  385. package/dist/devices/eurotronic.d.ts +3 -0
  386. package/dist/devices/eurotronic.d.ts.map +1 -0
  387. package/dist/devices/eurotronic.js +278 -0
  388. package/dist/devices/eurotronic.js.map +1 -0
  389. package/dist/devices/evanell.d.ts +3 -0
  390. package/dist/devices/evanell.d.ts.map +1 -0
  391. package/dist/devices/evanell.js +66 -0
  392. package/dist/devices/evanell.js.map +1 -0
  393. package/dist/devices/evn.d.ts +3 -0
  394. package/dist/devices/evn.d.ts.map +1 -0
  395. package/dist/devices/evn.js +97 -0
  396. package/dist/devices/evn.js.map +1 -0
  397. package/dist/devices/evology.d.ts +3 -0
  398. package/dist/devices/evology.d.ts.map +1 -0
  399. package/dist/devices/evology.js +60 -0
  400. package/dist/devices/evology.js.map +1 -0
  401. package/dist/devices/evvr.d.ts +3 -0
  402. package/dist/devices/evvr.d.ts.map +1 -0
  403. package/dist/devices/evvr.js +47 -0
  404. package/dist/devices/evvr.js.map +1 -0
  405. package/dist/devices/ewelink.d.ts +3 -0
  406. package/dist/devices/ewelink.d.ts.map +1 -0
  407. package/dist/devices/ewelink.js +326 -0
  408. package/dist/devices/ewelink.js.map +1 -0
  409. package/dist/devices/ezex.d.ts +3 -0
  410. package/dist/devices/ezex.d.ts.map +1 -0
  411. package/dist/devices/ezex.js +47 -0
  412. package/dist/devices/ezex.js.map +1 -0
  413. package/dist/devices/ezviz.d.ts +3 -0
  414. package/dist/devices/ezviz.d.ts.map +1 -0
  415. package/dist/devices/ezviz.js +47 -0
  416. package/dist/devices/ezviz.js.map +1 -0
  417. package/dist/devices/fantem.d.ts +3 -0
  418. package/dist/devices/fantem.d.ts.map +1 -0
  419. package/dist/devices/fantem.js +112 -0
  420. package/dist/devices/fantem.js.map +1 -0
  421. package/dist/devices/feibit.d.ts +3 -0
  422. package/dist/devices/feibit.d.ts.map +1 -0
  423. package/dist/devices/feibit.js +335 -0
  424. package/dist/devices/feibit.js.map +1 -0
  425. package/dist/devices/fireangel.d.ts +3 -0
  426. package/dist/devices/fireangel.d.ts.map +1 -0
  427. package/dist/devices/fireangel.js +96 -0
  428. package/dist/devices/fireangel.js.map +1 -0
  429. package/dist/devices/frankever.d.ts +3 -0
  430. package/dist/devices/frankever.d.ts.map +1 -0
  431. package/dist/devices/frankever.js +67 -0
  432. package/dist/devices/frankever.js.map +1 -0
  433. package/dist/devices/frient.d.ts +3 -0
  434. package/dist/devices/frient.d.ts.map +1 -0
  435. package/dist/devices/frient.js +84 -0
  436. package/dist/devices/frient.js.map +1 -0
  437. package/dist/devices/futurehome.d.ts +3 -0
  438. package/dist/devices/futurehome.d.ts.map +1 -0
  439. package/dist/devices/futurehome.js +137 -0
  440. package/dist/devices/futurehome.js.map +1 -0
  441. package/dist/devices/ge.d.ts +3 -0
  442. package/dist/devices/ge.d.ts.map +1 -0
  443. package/dist/devices/ge.js +130 -0
  444. package/dist/devices/ge.js.map +1 -0
  445. package/dist/devices/gewiss.d.ts +3 -0
  446. package/dist/devices/gewiss.d.ts.map +1 -0
  447. package/dist/devices/gewiss.js +148 -0
  448. package/dist/devices/gewiss.js.map +1 -0
  449. package/dist/devices/gidealed.d.ts +3 -0
  450. package/dist/devices/gidealed.d.ts.map +1 -0
  451. package/dist/devices/gidealed.js +47 -0
  452. package/dist/devices/gidealed.js.map +1 -0
  453. package/dist/devices/giderwel.d.ts +3 -0
  454. package/dist/devices/giderwel.d.ts.map +1 -0
  455. package/dist/devices/giderwel.js +47 -0
  456. package/dist/devices/giderwel.js.map +1 -0
  457. package/dist/devices/giex.d.ts +3 -0
  458. package/dist/devices/giex.d.ts.map +1 -0
  459. package/dist/devices/giex.js +114 -0
  460. package/dist/devices/giex.js.map +1 -0
  461. package/dist/devices/girier.d.ts +3 -0
  462. package/dist/devices/girier.d.ts.map +1 -0
  463. package/dist/devices/girier.js +51 -0
  464. package/dist/devices/girier.js.map +1 -0
  465. package/dist/devices/gledopto.d.ts +3 -0
  466. package/dist/devices/gledopto.d.ts.map +1 -0
  467. package/dist/devices/gledopto.js +1395 -0
  468. package/dist/devices/gledopto.js.map +1 -0
  469. package/dist/devices/gmmts.d.ts +3 -0
  470. package/dist/devices/gmmts.d.ts.map +1 -0
  471. package/dist/devices/gmmts.js +2267 -0
  472. package/dist/devices/gmmts.js.map +1 -0
  473. package/dist/devices/gmy.d.ts +3 -0
  474. package/dist/devices/gmy.d.ts.map +1 -0
  475. package/dist/devices/gmy.js +47 -0
  476. package/dist/devices/gmy.js.map +1 -0
  477. package/dist/devices/gs.d.ts +3 -0
  478. package/dist/devices/gs.d.ts.map +1 -0
  479. package/dist/devices/gs.js +121 -0
  480. package/dist/devices/gs.js.map +1 -0
  481. package/dist/devices/gumax.d.ts +3 -0
  482. package/dist/devices/gumax.d.ts.map +1 -0
  483. package/dist/devices/gumax.js +47 -0
  484. package/dist/devices/gumax.js.map +1 -0
  485. package/dist/devices/halemeier.d.ts +3 -0
  486. package/dist/devices/halemeier.d.ts.map +1 -0
  487. package/dist/devices/halemeier.js +142 -0
  488. package/dist/devices/halemeier.js.map +1 -0
  489. package/dist/devices/hampton_bay.d.ts +3 -0
  490. package/dist/devices/hampton_bay.d.ts.map +1 -0
  491. package/dist/devices/hampton_bay.js +68 -0
  492. package/dist/devices/hampton_bay.js.map +1 -0
  493. package/dist/devices/heatit.d.ts +3 -0
  494. package/dist/devices/heatit.d.ts.map +1 -0
  495. package/dist/devices/heatit.js +47 -0
  496. package/dist/devices/heatit.js.map +1 -0
  497. package/dist/devices/heiman.d.ts +3 -0
  498. package/dist/devices/heiman.d.ts.map +1 -0
  499. package/dist/devices/heiman.js +2092 -0
  500. package/dist/devices/heiman.js.map +1 -0
  501. package/dist/devices/heimgard_technologies.d.ts +3 -0
  502. package/dist/devices/heimgard_technologies.d.ts.map +1 -0
  503. package/dist/devices/heimgard_technologies.js +189 -0
  504. package/dist/devices/heimgard_technologies.js.map +1 -0
  505. package/dist/devices/hej.d.ts +3 -0
  506. package/dist/devices/hej.d.ts.map +1 -0
  507. package/dist/devices/hej.js +126 -0
  508. package/dist/devices/hej.js.map +1 -0
  509. package/dist/devices/hfh.d.ts +3 -0
  510. package/dist/devices/hfh.d.ts.map +1 -0
  511. package/dist/devices/hfh.js +47 -0
  512. package/dist/devices/hfh.js.map +1 -0
  513. package/dist/devices/hilux.d.ts +3 -0
  514. package/dist/devices/hilux.d.ts.map +1 -0
  515. package/dist/devices/hilux.js +54 -0
  516. package/dist/devices/hilux.js.map +1 -0
  517. package/dist/devices/hive.d.ts +3 -0
  518. package/dist/devices/hive.d.ts.map +1 -0
  519. package/dist/devices/hive.js +798 -0
  520. package/dist/devices/hive.js.map +1 -0
  521. package/dist/devices/hoftronic.d.ts +3 -0
  522. package/dist/devices/hoftronic.d.ts.map +1 -0
  523. package/dist/devices/hoftronic.js +56 -0
  524. package/dist/devices/hoftronic.js.map +1 -0
  525. package/dist/devices/homeseer.d.ts +3 -0
  526. package/dist/devices/homeseer.d.ts.map +1 -0
  527. package/dist/devices/homeseer.js +53 -0
  528. package/dist/devices/homeseer.js.map +1 -0
  529. package/dist/devices/hommyn.d.ts +3 -0
  530. package/dist/devices/hommyn.d.ts.map +1 -0
  531. package/dist/devices/hommyn.js +60 -0
  532. package/dist/devices/hommyn.js.map +1 -0
  533. package/dist/devices/honyar.d.ts +3 -0
  534. package/dist/devices/honyar.d.ts.map +1 -0
  535. package/dist/devices/honyar.js +167 -0
  536. package/dist/devices/honyar.js.map +1 -0
  537. package/dist/devices/hornbach.d.ts +3 -0
  538. package/dist/devices/hornbach.d.ts.map +1 -0
  539. package/dist/devices/hornbach.js +138 -0
  540. package/dist/devices/hornbach.js.map +1 -0
  541. package/dist/devices/hzc_electric.d.ts +3 -0
  542. package/dist/devices/hzc_electric.d.ts.map +1 -0
  543. package/dist/devices/hzc_electric.js +102 -0
  544. package/dist/devices/hzc_electric.js.map +1 -0
  545. package/dist/devices/icasa.d.ts +3 -0
  546. package/dist/devices/icasa.d.ts.map +1 -0
  547. package/dist/devices/icasa.js +174 -0
  548. package/dist/devices/icasa.js.map +1 -0
  549. package/dist/devices/idinio.d.ts +3 -0
  550. package/dist/devices/idinio.d.ts.map +1 -0
  551. package/dist/devices/idinio.js +47 -0
  552. package/dist/devices/idinio.js.map +1 -0
  553. package/dist/devices/ihorn.d.ts +3 -0
  554. package/dist/devices/ihorn.d.ts.map +1 -0
  555. package/dist/devices/ihorn.js +105 -0
  556. package/dist/devices/ihorn.js.map +1 -0
  557. package/dist/devices/ikea.d.ts +3 -0
  558. package/dist/devices/ikea.d.ts.map +1 -0
  559. package/dist/devices/ikea.js +1241 -0
  560. package/dist/devices/ikea.js.map +1 -0
  561. package/dist/devices/ilightsin.d.ts +3 -0
  562. package/dist/devices/ilightsin.d.ts.map +1 -0
  563. package/dist/devices/ilightsin.js +59 -0
  564. package/dist/devices/ilightsin.js.map +1 -0
  565. package/dist/devices/iluminize.d.ts +3 -0
  566. package/dist/devices/iluminize.d.ts.map +1 -0
  567. package/dist/devices/iluminize.js +385 -0
  568. package/dist/devices/iluminize.js.map +1 -0
  569. package/dist/devices/ilux.d.ts +3 -0
  570. package/dist/devices/ilux.d.ts.map +1 -0
  571. package/dist/devices/ilux.js +47 -0
  572. package/dist/devices/ilux.js.map +1 -0
  573. package/dist/devices/imhotepcreation.d.ts +3 -0
  574. package/dist/devices/imhotepcreation.d.ts.map +1 -0
  575. package/dist/devices/imhotepcreation.js +240 -0
  576. package/dist/devices/imhotepcreation.js.map +1 -0
  577. package/dist/devices/immax.d.ts +3 -0
  578. package/dist/devices/immax.d.ts.map +1 -0
  579. package/dist/devices/immax.js +471 -0
  580. package/dist/devices/immax.js.map +1 -0
  581. package/dist/devices/imou.d.ts +3 -0
  582. package/dist/devices/imou.d.ts.map +1 -0
  583. package/dist/devices/imou.js +109 -0
  584. package/dist/devices/imou.js.map +1 -0
  585. package/dist/devices/index.d.ts +4 -0
  586. package/dist/devices/index.d.ts.map +1 -0
  587. package/dist/devices/index.js +738 -0
  588. package/dist/devices/index.js.map +1 -0
  589. package/dist/devices/innr.d.ts +3 -0
  590. package/dist/devices/innr.d.ts.map +1 -0
  591. package/dist/devices/innr.js +1033 -0
  592. package/dist/devices/innr.js.map +1 -0
  593. package/dist/devices/inovelli.d.ts +3 -0
  594. package/dist/devices/inovelli.d.ts.map +1 -0
  595. package/dist/devices/inovelli.js +2474 -0
  596. package/dist/devices/inovelli.js.map +1 -0
  597. package/dist/devices/insta.d.ts +3 -0
  598. package/dist/devices/insta.d.ts.map +1 -0
  599. package/dist/devices/insta.js +182 -0
  600. package/dist/devices/insta.js.map +1 -0
  601. package/dist/devices/intuis.d.ts +3 -0
  602. package/dist/devices/intuis.d.ts.map +1 -0
  603. package/dist/devices/intuis.js +95 -0
  604. package/dist/devices/intuis.js.map +1 -0
  605. package/dist/devices/iolloi.d.ts +3 -0
  606. package/dist/devices/iolloi.d.ts.map +1 -0
  607. package/dist/devices/iolloi.js +48 -0
  608. package/dist/devices/iolloi.js.map +1 -0
  609. package/dist/devices/iotperfect.d.ts +3 -0
  610. package/dist/devices/iotperfect.d.ts.map +1 -0
  611. package/dist/devices/iotperfect.js +60 -0
  612. package/dist/devices/iotperfect.js.map +1 -0
  613. package/dist/devices/iris.d.ts +3 -0
  614. package/dist/devices/iris.d.ts.map +1 -0
  615. package/dist/devices/iris.js +208 -0
  616. package/dist/devices/iris.js.map +1 -0
  617. package/dist/devices/istar.d.ts +3 -0
  618. package/dist/devices/istar.d.ts.map +1 -0
  619. package/dist/devices/istar.js +61 -0
  620. package/dist/devices/istar.js.map +1 -0
  621. package/dist/devices/jasco.d.ts +3 -0
  622. package/dist/devices/jasco.d.ts.map +1 -0
  623. package/dist/devices/jasco.js +63 -0
  624. package/dist/devices/jasco.js.map +1 -0
  625. package/dist/devices/javis.d.ts +3 -0
  626. package/dist/devices/javis.d.ts.map +1 -0
  627. package/dist/devices/javis.js +77 -0
  628. package/dist/devices/javis.js.map +1 -0
  629. package/dist/devices/jethome.d.ts +3 -0
  630. package/dist/devices/jethome.d.ts.map +1 -0
  631. package/dist/devices/jethome.js +120 -0
  632. package/dist/devices/jethome.js.map +1 -0
  633. package/dist/devices/jiawen.d.ts +3 -0
  634. package/dist/devices/jiawen.d.ts.map +1 -0
  635. package/dist/devices/jiawen.js +54 -0
  636. package/dist/devices/jiawen.js.map +1 -0
  637. package/dist/devices/jumitech.d.ts +3 -0
  638. package/dist/devices/jumitech.d.ts.map +1 -0
  639. package/dist/devices/jumitech.js +47 -0
  640. package/dist/devices/jumitech.js.map +1 -0
  641. package/dist/devices/jxuan.d.ts +3 -0
  642. package/dist/devices/jxuan.d.ts.map +1 -0
  643. package/dist/devices/jxuan.js +85 -0
  644. package/dist/devices/jxuan.js.map +1 -0
  645. package/dist/devices/kami.d.ts +3 -0
  646. package/dist/devices/kami.d.ts.map +1 -0
  647. package/dist/devices/kami.js +51 -0
  648. package/dist/devices/kami.js.map +1 -0
  649. package/dist/devices/keen_home.d.ts +3 -0
  650. package/dist/devices/keen_home.d.ts.map +1 -0
  651. package/dist/devices/keen_home.js +155 -0
  652. package/dist/devices/keen_home.js.map +1 -0
  653. package/dist/devices/klikaanklikuit.d.ts +3 -0
  654. package/dist/devices/klikaanklikuit.d.ts.map +1 -0
  655. package/dist/devices/klikaanklikuit.js +54 -0
  656. package/dist/devices/klikaanklikuit.js.map +1 -0
  657. package/dist/devices/kmpcil.d.ts +3 -0
  658. package/dist/devices/kmpcil.d.ts.map +1 -0
  659. package/dist/devices/kmpcil.js +212 -0
  660. package/dist/devices/kmpcil.js.map +1 -0
  661. package/dist/devices/konke.d.ts +3 -0
  662. package/dist/devices/konke.d.ts.map +1 -0
  663. package/dist/devices/konke.js +207 -0
  664. package/dist/devices/konke.js.map +1 -0
  665. package/dist/devices/ksentry.d.ts +3 -0
  666. package/dist/devices/ksentry.d.ts.map +1 -0
  667. package/dist/devices/ksentry.js +47 -0
  668. package/dist/devices/ksentry.js.map +1 -0
  669. package/dist/devices/kurvia.d.ts +3 -0
  670. package/dist/devices/kurvia.d.ts.map +1 -0
  671. package/dist/devices/kurvia.js +49 -0
  672. package/dist/devices/kurvia.js.map +1 -0
  673. package/dist/devices/kwikset.d.ts +3 -0
  674. package/dist/devices/kwikset.d.ts.map +1 -0
  675. package/dist/devices/kwikset.js +153 -0
  676. package/dist/devices/kwikset.js.map +1 -0
  677. package/dist/devices/lanesto.d.ts +3 -0
  678. package/dist/devices/lanesto.d.ts.map +1 -0
  679. package/dist/devices/lanesto.js +47 -0
  680. package/dist/devices/lanesto.js.map +1 -0
  681. package/dist/devices/lds.d.ts +3 -0
  682. package/dist/devices/lds.d.ts.map +1 -0
  683. package/dist/devices/lds.js +54 -0
  684. package/dist/devices/lds.js.map +1 -0
  685. package/dist/devices/led_trading.d.ts +3 -0
  686. package/dist/devices/led_trading.d.ts.map +1 -0
  687. package/dist/devices/led_trading.js +108 -0
  688. package/dist/devices/led_trading.js.map +1 -0
  689. package/dist/devices/ledvance.d.ts +3 -0
  690. package/dist/devices/ledvance.d.ts.map +1 -0
  691. package/dist/devices/ledvance.js +407 -0
  692. package/dist/devices/ledvance.js.map +1 -0
  693. package/dist/devices/leedarson.d.ts +3 -0
  694. package/dist/devices/leedarson.d.ts.map +1 -0
  695. package/dist/devices/leedarson.js +180 -0
  696. package/dist/devices/leedarson.js.map +1 -0
  697. package/dist/devices/legrand.d.ts +3 -0
  698. package/dist/devices/legrand.d.ts.map +1 -0
  699. package/dist/devices/legrand.js +809 -0
  700. package/dist/devices/legrand.js.map +1 -0
  701. package/dist/devices/lellki.d.ts +3 -0
  702. package/dist/devices/lellki.d.ts.map +1 -0
  703. package/dist/devices/lellki.js +162 -0
  704. package/dist/devices/lellki.js.map +1 -0
  705. package/dist/devices/letsled.d.ts +3 -0
  706. package/dist/devices/letsled.d.ts.map +1 -0
  707. package/dist/devices/letsled.js +47 -0
  708. package/dist/devices/letsled.js.map +1 -0
  709. package/dist/devices/letv.d.ts +3 -0
  710. package/dist/devices/letv.d.ts.map +1 -0
  711. package/dist/devices/letv.js +86 -0
  712. package/dist/devices/letv.js.map +1 -0
  713. package/dist/devices/leviton.d.ts +3 -0
  714. package/dist/devices/leviton.d.ts.map +1 -0
  715. package/dist/devices/leviton.js +160 -0
  716. package/dist/devices/leviton.js.map +1 -0
  717. package/dist/devices/lg.d.ts +3 -0
  718. package/dist/devices/lg.d.ts.map +1 -0
  719. package/dist/devices/lg.js +61 -0
  720. package/dist/devices/lg.js.map +1 -0
  721. package/dist/devices/lidl.d.ts +3 -0
  722. package/dist/devices/lidl.d.ts.map +1 -0
  723. package/dist/devices/lidl.js +669 -0
  724. package/dist/devices/lidl.js.map +1 -0
  725. package/dist/devices/lifecontrol.d.ts +3 -0
  726. package/dist/devices/lifecontrol.d.ts.map +1 -0
  727. package/dist/devices/lifecontrol.js +141 -0
  728. package/dist/devices/lifecontrol.js.map +1 -0
  729. package/dist/devices/lightsolutions.d.ts +3 -0
  730. package/dist/devices/lightsolutions.d.ts.map +1 -0
  731. package/dist/devices/lightsolutions.js +90 -0
  732. package/dist/devices/lightsolutions.js.map +1 -0
  733. package/dist/devices/lincukoo.d.ts +3 -0
  734. package/dist/devices/lincukoo.d.ts.map +1 -0
  735. package/dist/devices/lincukoo.js +788 -0
  736. package/dist/devices/lincukoo.js.map +1 -0
  737. package/dist/devices/linkind.d.ts +3 -0
  738. package/dist/devices/linkind.d.ts.map +1 -0
  739. package/dist/devices/linkind.js +251 -0
  740. package/dist/devices/linkind.js.map +1 -0
  741. package/dist/devices/linptech.d.ts +3 -0
  742. package/dist/devices/linptech.d.ts.map +1 -0
  743. package/dist/devices/linptech.js +157 -0
  744. package/dist/devices/linptech.js.map +1 -0
  745. package/dist/devices/livingwise.d.ts +3 -0
  746. package/dist/devices/livingwise.d.ts.map +1 -0
  747. package/dist/devices/livingwise.js +115 -0
  748. package/dist/devices/livingwise.js.map +1 -0
  749. package/dist/devices/livolo.d.ts +3 -0
  750. package/dist/devices/livolo.d.ts.map +1 -0
  751. package/dist/devices/livolo.js +263 -0
  752. package/dist/devices/livolo.js.map +1 -0
  753. package/dist/devices/lixee.d.ts +3 -0
  754. package/dist/devices/lixee.d.ts.map +1 -0
  755. package/dist/devices/lixee.js +2038 -0
  756. package/dist/devices/lixee.js.map +1 -0
  757. package/dist/devices/lonsonho.d.ts +3 -0
  758. package/dist/devices/lonsonho.d.ts.map +1 -0
  759. package/dist/devices/lonsonho.js +310 -0
  760. package/dist/devices/lonsonho.js.map +1 -0
  761. package/dist/devices/ls.d.ts +3 -0
  762. package/dist/devices/ls.d.ts.map +1 -0
  763. package/dist/devices/ls.js +152 -0
  764. package/dist/devices/ls.js.map +1 -0
  765. package/dist/devices/lubeez.d.ts +3 -0
  766. package/dist/devices/lubeez.d.ts.map +1 -0
  767. package/dist/devices/lubeez.js +47 -0
  768. package/dist/devices/lubeez.js.map +1 -0
  769. package/dist/devices/lumi.d.ts +3 -0
  770. package/dist/devices/lumi.d.ts.map +1 -0
  771. package/dist/devices/lumi.js +5345 -0
  772. package/dist/devices/lumi.js.map +1 -0
  773. package/dist/devices/lupus.d.ts +3 -0
  774. package/dist/devices/lupus.d.ts.map +1 -0
  775. package/dist/devices/lupus.js +94 -0
  776. package/dist/devices/lupus.js.map +1 -0
  777. package/dist/devices/lutron.d.ts +3 -0
  778. package/dist/devices/lutron.d.ts.map +1 -0
  779. package/dist/devices/lutron.js +81 -0
  780. package/dist/devices/lutron.js.map +1 -0
  781. package/dist/devices/lux.d.ts +3 -0
  782. package/dist/devices/lux.d.ts.map +1 -0
  783. package/dist/devices/lux.js +87 -0
  784. package/dist/devices/lux.js.map +1 -0
  785. package/dist/devices/lytko.d.ts +3 -0
  786. package/dist/devices/lytko.d.ts.map +1 -0
  787. package/dist/devices/lytko.js +1809 -0
  788. package/dist/devices/lytko.js.map +1 -0
  789. package/dist/devices/m_elec.d.ts +3 -0
  790. package/dist/devices/m_elec.d.ts.map +1 -0
  791. package/dist/devices/m_elec.js +68 -0
  792. package/dist/devices/m_elec.js.map +1 -0
  793. package/dist/devices/makegood.d.ts +3 -0
  794. package/dist/devices/makegood.d.ts.map +1 -0
  795. package/dist/devices/makegood.js +117 -0
  796. package/dist/devices/makegood.js.map +1 -0
  797. package/dist/devices/matcall_bv.d.ts +3 -0
  798. package/dist/devices/matcall_bv.d.ts.map +1 -0
  799. package/dist/devices/matcall_bv.js +54 -0
  800. package/dist/devices/matcall_bv.js.map +1 -0
  801. package/dist/devices/mazda.d.ts +3 -0
  802. package/dist/devices/mazda.d.ts.map +1 -0
  803. package/dist/devices/mazda.js +146 -0
  804. package/dist/devices/mazda.js.map +1 -0
  805. package/dist/devices/meazon.d.ts +3 -0
  806. package/dist/devices/meazon.d.ts.map +1 -0
  807. package/dist/devices/meazon.js +95 -0
  808. package/dist/devices/meazon.js.map +1 -0
  809. package/dist/devices/mercator.d.ts +3 -0
  810. package/dist/devices/mercator.d.ts.map +1 -0
  811. package/dist/devices/mercator.js +242 -0
  812. package/dist/devices/mercator.js.map +1 -0
  813. package/dist/devices/miboxer.d.ts +3 -0
  814. package/dist/devices/miboxer.d.ts.map +1 -0
  815. package/dist/devices/miboxer.js +304 -0
  816. package/dist/devices/miboxer.js.map +1 -0
  817. package/dist/devices/micromatic.d.ts +3 -0
  818. package/dist/devices/micromatic.d.ts.map +1 -0
  819. package/dist/devices/micromatic.js +47 -0
  820. package/dist/devices/micromatic.js.map +1 -0
  821. package/dist/devices/mill.d.ts +3 -0
  822. package/dist/devices/mill.d.ts.map +1 -0
  823. package/dist/devices/mill.js +52 -0
  824. package/dist/devices/mill.js.map +1 -0
  825. package/dist/devices/mindy.d.ts +3 -0
  826. package/dist/devices/mindy.d.ts.map +1 -0
  827. package/dist/devices/mindy.js +379 -0
  828. package/dist/devices/mindy.js.map +1 -0
  829. package/dist/devices/modular.d.ts +3 -0
  830. package/dist/devices/modular.d.ts.map +1 -0
  831. package/dist/devices/modular.js +47 -0
  832. package/dist/devices/modular.js.map +1 -0
  833. package/dist/devices/moes.d.ts +3 -0
  834. package/dist/devices/moes.d.ts.map +1 -0
  835. package/dist/devices/moes.js +2368 -0
  836. package/dist/devices/moes.js.map +1 -0
  837. package/dist/devices/muller_licht.d.ts +3 -0
  838. package/dist/devices/muller_licht.d.ts.map +1 -0
  839. package/dist/devices/muller_licht.js +366 -0
  840. package/dist/devices/muller_licht.js.map +1 -0
  841. package/dist/devices/multir.d.ts +3 -0
  842. package/dist/devices/multir.d.ts.map +1 -0
  843. package/dist/devices/multir.js +152 -0
  844. package/dist/devices/multir.js.map +1 -0
  845. package/dist/devices/multiterm.d.ts +3 -0
  846. package/dist/devices/multiterm.d.ts.map +1 -0
  847. package/dist/devices/multiterm.js +119 -0
  848. package/dist/devices/multiterm.js.map +1 -0
  849. package/dist/devices/namron.d.ts +3 -0
  850. package/dist/devices/namron.d.ts.map +1 -0
  851. package/dist/devices/namron.js +2004 -0
  852. package/dist/devices/namron.js.map +1 -0
  853. package/dist/devices/nanoleaf.d.ts +3 -0
  854. package/dist/devices/nanoleaf.d.ts.map +1 -0
  855. package/dist/devices/nanoleaf.js +47 -0
  856. package/dist/devices/nanoleaf.js.map +1 -0
  857. package/dist/devices/nedis.d.ts +3 -0
  858. package/dist/devices/nedis.d.ts.map +1 -0
  859. package/dist/devices/nedis.js +87 -0
  860. package/dist/devices/nedis.js.map +1 -0
  861. package/dist/devices/neo.d.ts +3 -0
  862. package/dist/devices/neo.d.ts.map +1 -0
  863. package/dist/devices/neo.js +526 -0
  864. package/dist/devices/neo.js.map +1 -0
  865. package/dist/devices/net2grid.d.ts +3 -0
  866. package/dist/devices/net2grid.d.ts.map +1 -0
  867. package/dist/devices/net2grid.js +64 -0
  868. package/dist/devices/net2grid.js.map +1 -0
  869. package/dist/devices/netvox.d.ts +3 -0
  870. package/dist/devices/netvox.d.ts.map +1 -0
  871. package/dist/devices/netvox.js +71 -0
  872. package/dist/devices/netvox.js.map +1 -0
  873. package/dist/devices/nexelec.d.ts +3 -0
  874. package/dist/devices/nexelec.d.ts.map +1 -0
  875. package/dist/devices/nexelec.js +47 -0
  876. package/dist/devices/nexelec.js.map +1 -0
  877. package/dist/devices/niko.d.ts +3 -0
  878. package/dist/devices/niko.d.ts.map +1 -0
  879. package/dist/devices/niko.js +769 -0
  880. package/dist/devices/niko.js.map +1 -0
  881. package/dist/devices/ninja_blocks.d.ts +3 -0
  882. package/dist/devices/ninja_blocks.d.ts.map +1 -0
  883. package/dist/devices/ninja_blocks.js +60 -0
  884. package/dist/devices/ninja_blocks.js.map +1 -0
  885. package/dist/devices/niviss.d.ts +3 -0
  886. package/dist/devices/niviss.d.ts.map +1 -0
  887. package/dist/devices/niviss.js +47 -0
  888. package/dist/devices/niviss.js.map +1 -0
  889. package/dist/devices/nobo.d.ts +3 -0
  890. package/dist/devices/nobo.d.ts.map +1 -0
  891. package/dist/devices/nobo.js +88 -0
  892. package/dist/devices/nobo.js.map +1 -0
  893. package/dist/devices/nodon.d.ts +3 -0
  894. package/dist/devices/nodon.d.ts.map +1 -0
  895. package/dist/devices/nodon.js +483 -0
  896. package/dist/devices/nodon.js.map +1 -0
  897. package/dist/devices/nordtronic.d.ts +3 -0
  898. package/dist/devices/nordtronic.d.ts.map +1 -0
  899. package/dist/devices/nordtronic.js +95 -0
  900. package/dist/devices/nordtronic.js.map +1 -0
  901. package/dist/devices/nous.d.ts +3 -0
  902. package/dist/devices/nous.d.ts.map +1 -0
  903. package/dist/devices/nous.js +367 -0
  904. package/dist/devices/nous.js.map +1 -0
  905. package/dist/devices/novo.d.ts +3 -0
  906. package/dist/devices/novo.d.ts.map +1 -0
  907. package/dist/devices/novo.js +53 -0
  908. package/dist/devices/novo.js.map +1 -0
  909. package/dist/devices/nue_3a.d.ts +3 -0
  910. package/dist/devices/nue_3a.d.ts.map +1 -0
  911. package/dist/devices/nue_3a.js +359 -0
  912. package/dist/devices/nue_3a.js.map +1 -0
  913. package/dist/devices/nyce.d.ts +3 -0
  914. package/dist/devices/nyce.d.ts.map +1 -0
  915. package/dist/devices/nyce.js +124 -0
  916. package/dist/devices/nyce.js.map +1 -0
  917. package/dist/devices/onenuo.d.ts +3 -0
  918. package/dist/devices/onenuo.d.ts.map +1 -0
  919. package/dist/devices/onenuo.js +83 -0
  920. package/dist/devices/onenuo.js.map +1 -0
  921. package/dist/devices/onesti.d.ts +3 -0
  922. package/dist/devices/onesti.d.ts.map +1 -0
  923. package/dist/devices/onesti.js +265 -0
  924. package/dist/devices/onesti.js.map +1 -0
  925. package/dist/devices/onokom.d.ts +3 -0
  926. package/dist/devices/onokom.d.ts.map +1 -0
  927. package/dist/devices/onokom.js +2715 -0
  928. package/dist/devices/onokom.js.map +1 -0
  929. package/dist/devices/openlumi.d.ts +3 -0
  930. package/dist/devices/openlumi.d.ts.map +1 -0
  931. package/dist/devices/openlumi.js +47 -0
  932. package/dist/devices/openlumi.js.map +1 -0
  933. package/dist/devices/orvibo.d.ts +12 -0
  934. package/dist/devices/orvibo.d.ts.map +1 -0
  935. package/dist/devices/orvibo.js +715 -0
  936. package/dist/devices/orvibo.js.map +1 -0
  937. package/dist/devices/orztech.d.ts +3 -0
  938. package/dist/devices/orztech.d.ts.map +1 -0
  939. package/dist/devices/orztech.js +195 -0
  940. package/dist/devices/orztech.js.map +1 -0
  941. package/dist/devices/osram.d.ts +3 -0
  942. package/dist/devices/osram.d.ts.map +1 -0
  943. package/dist/devices/osram.js +513 -0
  944. package/dist/devices/osram.js.map +1 -0
  945. package/dist/devices/oujiabao.d.ts +3 -0
  946. package/dist/devices/oujiabao.d.ts.map +1 -0
  947. package/dist/devices/oujiabao.js +51 -0
  948. package/dist/devices/oujiabao.js.map +1 -0
  949. package/dist/devices/owon.d.ts +3 -0
  950. package/dist/devices/owon.d.ts.map +1 -0
  951. package/dist/devices/owon.js +888 -0
  952. package/dist/devices/owon.js.map +1 -0
  953. package/dist/devices/ozsmartthings.d.ts +3 -0
  954. package/dist/devices/ozsmartthings.d.ts.map +1 -0
  955. package/dist/devices/ozsmartthings.js +47 -0
  956. package/dist/devices/ozsmartthings.js.map +1 -0
  957. package/dist/devices/paul_neuhaus.d.ts +3 -0
  958. package/dist/devices/paul_neuhaus.d.ts.map +1 -0
  959. package/dist/devices/paul_neuhaus.js +190 -0
  960. package/dist/devices/paul_neuhaus.js.map +1 -0
  961. package/dist/devices/paulmann.d.ts +3 -0
  962. package/dist/devices/paulmann.d.ts.map +1 -0
  963. package/dist/devices/paulmann.js +426 -0
  964. package/dist/devices/paulmann.js.map +1 -0
  965. package/dist/devices/peq.d.ts +3 -0
  966. package/dist/devices/peq.d.ts.map +1 -0
  967. package/dist/devices/peq.js +60 -0
  968. package/dist/devices/peq.js.map +1 -0
  969. package/dist/devices/perenio.d.ts +3 -0
  970. package/dist/devices/perenio.d.ts.map +1 -0
  971. package/dist/devices/perenio.js +461 -0
  972. package/dist/devices/perenio.js.map +1 -0
  973. package/dist/devices/philio.d.ts +3 -0
  974. package/dist/devices/philio.d.ts.map +1 -0
  975. package/dist/devices/philio.js +48 -0
  976. package/dist/devices/philio.js.map +1 -0
  977. package/dist/devices/philips.d.ts +3 -0
  978. package/dist/devices/philips.d.ts.map +1 -0
  979. package/dist/devices/philips.js +4948 -0
  980. package/dist/devices/philips.js.map +1 -0
  981. package/dist/devices/plaid.d.ts +3 -0
  982. package/dist/devices/plaid.d.ts.map +1 -0
  983. package/dist/devices/plaid.js +61 -0
  984. package/dist/devices/plaid.js.map +1 -0
  985. package/dist/devices/plugwise.d.ts +3 -0
  986. package/dist/devices/plugwise.d.ts.map +1 -0
  987. package/dist/devices/plugwise.js +217 -0
  988. package/dist/devices/plugwise.js.map +1 -0
  989. package/dist/devices/profalux.d.ts +3 -0
  990. package/dist/devices/profalux.d.ts.map +1 -0
  991. package/dist/devices/profalux.js +215 -0
  992. package/dist/devices/profalux.js.map +1 -0
  993. package/dist/devices/prolight.d.ts +3 -0
  994. package/dist/devices/prolight.d.ts.map +1 -0
  995. package/dist/devices/prolight.js +111 -0
  996. package/dist/devices/prolight.js.map +1 -0
  997. package/dist/devices/purmo.d.ts +3 -0
  998. package/dist/devices/purmo.d.ts.map +1 -0
  999. package/dist/devices/purmo.js +91 -0
  1000. package/dist/devices/purmo.js.map +1 -0
  1001. package/dist/devices/pushok.d.ts +3 -0
  1002. package/dist/devices/pushok.d.ts.map +1 -0
  1003. package/dist/devices/pushok.js +736 -0
  1004. package/dist/devices/pushok.js.map +1 -0
  1005. package/dist/devices/qa.d.ts +3 -0
  1006. package/dist/devices/qa.d.ts.map +1 -0
  1007. package/dist/devices/qa.js +445 -0
  1008. package/dist/devices/qa.js.map +1 -0
  1009. package/dist/devices/qmotion.d.ts +3 -0
  1010. package/dist/devices/qmotion.d.ts.map +1 -0
  1011. package/dist/devices/qmotion.js +69 -0
  1012. package/dist/devices/qmotion.js.map +1 -0
  1013. package/dist/devices/qoto.d.ts +3 -0
  1014. package/dist/devices/qoto.d.ts.map +1 -0
  1015. package/dist/devices/qoto.js +83 -0
  1016. package/dist/devices/qoto.js.map +1 -0
  1017. package/dist/devices/quirky.d.ts +8 -0
  1018. package/dist/devices/quirky.d.ts.map +1 -0
  1019. package/dist/devices/quirky.js +47 -0
  1020. package/dist/devices/quirky.js.map +1 -0
  1021. package/dist/devices/quotra.d.ts +3 -0
  1022. package/dist/devices/quotra.d.ts.map +1 -0
  1023. package/dist/devices/quotra.js +54 -0
  1024. package/dist/devices/quotra.js.map +1 -0
  1025. package/dist/devices/rademacher.d.ts +3 -0
  1026. package/dist/devices/rademacher.d.ts.map +1 -0
  1027. package/dist/devices/rademacher.js +61 -0
  1028. package/dist/devices/rademacher.js.map +1 -0
  1029. package/dist/devices/radium.d.ts +3 -0
  1030. package/dist/devices/radium.d.ts.map +1 -0
  1031. package/dist/devices/radium.js +47 -0
  1032. package/dist/devices/radium.js.map +1 -0
  1033. package/dist/devices/raex.d.ts +3 -0
  1034. package/dist/devices/raex.d.ts.map +1 -0
  1035. package/dist/devices/raex.js +47 -0
  1036. package/dist/devices/raex.js.map +1 -0
  1037. package/dist/devices/rgb_genie.d.ts +3 -0
  1038. package/dist/devices/rgb_genie.d.ts.map +1 -0
  1039. package/dist/devices/rgb_genie.js +277 -0
  1040. package/dist/devices/rgb_genie.js.map +1 -0
  1041. package/dist/devices/robb.d.ts +3 -0
  1042. package/dist/devices/robb.d.ts.map +1 -0
  1043. package/dist/devices/robb.js +492 -0
  1044. package/dist/devices/robb.js.map +1 -0
  1045. package/dist/devices/roome.d.ts +3 -0
  1046. package/dist/devices/roome.d.ts.map +1 -0
  1047. package/dist/devices/roome.js +51 -0
  1048. package/dist/devices/roome.js.map +1 -0
  1049. package/dist/devices/rtx.d.ts +3 -0
  1050. package/dist/devices/rtx.d.ts.map +1 -0
  1051. package/dist/devices/rtx.js +143 -0
  1052. package/dist/devices/rtx.js.map +1 -0
  1053. package/dist/devices/salus_controls.d.ts +3 -0
  1054. package/dist/devices/salus_controls.d.ts.map +1 -0
  1055. package/dist/devices/salus_controls.js +222 -0
  1056. package/dist/devices/salus_controls.js.map +1 -0
  1057. package/dist/devices/samotech.d.ts +3 -0
  1058. package/dist/devices/samotech.d.ts.map +1 -0
  1059. package/dist/devices/samotech.js +123 -0
  1060. package/dist/devices/samotech.js.map +1 -0
  1061. package/dist/devices/saswell.d.ts +3 -0
  1062. package/dist/devices/saswell.d.ts.map +1 -0
  1063. package/dist/devices/saswell.js +120 -0
  1064. package/dist/devices/saswell.js.map +1 -0
  1065. package/dist/devices/sber.d.ts +3 -0
  1066. package/dist/devices/sber.d.ts.map +1 -0
  1067. package/dist/devices/sber.js +1921 -0
  1068. package/dist/devices/sber.js.map +1 -0
  1069. package/dist/devices/scanproducts.d.ts +3 -0
  1070. package/dist/devices/scanproducts.d.ts.map +1 -0
  1071. package/dist/devices/scanproducts.js +54 -0
  1072. package/dist/devices/scanproducts.js.map +1 -0
  1073. package/dist/devices/schlage.d.ts +3 -0
  1074. package/dist/devices/schlage.d.ts.map +1 -0
  1075. package/dist/devices/schlage.js +60 -0
  1076. package/dist/devices/schlage.js.map +1 -0
  1077. package/dist/devices/schneider_electric.d.ts +10 -0
  1078. package/dist/devices/schneider_electric.d.ts.map +1 -0
  1079. package/dist/devices/schneider_electric.js +2801 -0
  1080. package/dist/devices/schneider_electric.js.map +1 -0
  1081. package/dist/devices/schwaiger.d.ts +3 -0
  1082. package/dist/devices/schwaiger.d.ts.map +1 -0
  1083. package/dist/devices/schwaiger.js +105 -0
  1084. package/dist/devices/schwaiger.js.map +1 -0
  1085. package/dist/devices/seastar_intelligence.d.ts +3 -0
  1086. package/dist/devices/seastar_intelligence.d.ts.map +1 -0
  1087. package/dist/devices/seastar_intelligence.js +52 -0
  1088. package/dist/devices/seastar_intelligence.js.map +1 -0
  1089. package/dist/devices/securifi.d.ts +3 -0
  1090. package/dist/devices/securifi.d.ts.map +1 -0
  1091. package/dist/devices/securifi.js +79 -0
  1092. package/dist/devices/securifi.js.map +1 -0
  1093. package/dist/devices/sengled.d.ts +6 -0
  1094. package/dist/devices/sengled.d.ts.map +1 -0
  1095. package/dist/devices/sengled.js +395 -0
  1096. package/dist/devices/sengled.js.map +1 -0
  1097. package/dist/devices/senoro.d.ts +3 -0
  1098. package/dist/devices/senoro.d.ts.map +1 -0
  1099. package/dist/devices/senoro.js +64 -0
  1100. package/dist/devices/senoro.js.map +1 -0
  1101. package/dist/devices/sercomm.d.ts +3 -0
  1102. package/dist/devices/sercomm.d.ts.map +1 -0
  1103. package/dist/devices/sercomm.js +193 -0
  1104. package/dist/devices/sercomm.js.map +1 -0
  1105. package/dist/devices/shade_control.d.ts +3 -0
  1106. package/dist/devices/shade_control.d.ts.map +1 -0
  1107. package/dist/devices/shade_control.js +61 -0
  1108. package/dist/devices/shade_control.js.map +1 -0
  1109. package/dist/devices/shelly.d.ts +3 -0
  1110. package/dist/devices/shelly.d.ts.map +1 -0
  1111. package/dist/devices/shelly.js +1304 -0
  1112. package/dist/devices/shelly.js.map +1 -0
  1113. package/dist/devices/shenzhen_homa.d.ts +3 -0
  1114. package/dist/devices/shenzhen_homa.d.ts.map +1 -0
  1115. package/dist/devices/shenzhen_homa.js +143 -0
  1116. package/dist/devices/shenzhen_homa.js.map +1 -0
  1117. package/dist/devices/shinasystem.d.ts +3 -0
  1118. package/dist/devices/shinasystem.d.ts.map +1 -0
  1119. package/dist/devices/shinasystem.js +1322 -0
  1120. package/dist/devices/shinasystem.js.map +1 -0
  1121. package/dist/devices/shyugj.d.ts +3 -0
  1122. package/dist/devices/shyugj.d.ts.map +1 -0
  1123. package/dist/devices/shyugj.js +53 -0
  1124. package/dist/devices/shyugj.js.map +1 -0
  1125. package/dist/devices/siglis.d.ts +3 -0
  1126. package/dist/devices/siglis.d.ts.map +1 -0
  1127. package/dist/devices/siglis.js +440 -0
  1128. package/dist/devices/siglis.js.map +1 -0
  1129. package/dist/devices/sikom.d.ts +3 -0
  1130. package/dist/devices/sikom.d.ts.map +1 -0
  1131. package/dist/devices/sikom.js +64 -0
  1132. package/dist/devices/sikom.js.map +1 -0
  1133. package/dist/devices/silicon_labs.d.ts +3 -0
  1134. package/dist/devices/silicon_labs.d.ts.map +1 -0
  1135. package/dist/devices/silicon_labs.js +47 -0
  1136. package/dist/devices/silicon_labs.js.map +1 -0
  1137. package/dist/devices/simon.d.ts +3 -0
  1138. package/dist/devices/simon.d.ts.map +1 -0
  1139. package/dist/devices/simon.js +54 -0
  1140. package/dist/devices/simon.js.map +1 -0
  1141. package/dist/devices/simpla_home.d.ts +3 -0
  1142. package/dist/devices/simpla_home.d.ts.map +1 -0
  1143. package/dist/devices/simpla_home.js +97 -0
  1144. package/dist/devices/simpla_home.js.map +1 -0
  1145. package/dist/devices/sinope.d.ts +3 -0
  1146. package/dist/devices/sinope.d.ts.map +1 -0
  1147. package/dist/devices/sinope.js +2015 -0
  1148. package/dist/devices/sinope.js.map +1 -0
  1149. package/dist/devices/siterwell.d.ts +3 -0
  1150. package/dist/devices/siterwell.d.ts.map +1 -0
  1151. package/dist/devices/siterwell.js +107 -0
  1152. package/dist/devices/siterwell.js.map +1 -0
  1153. package/dist/devices/skydance.d.ts +3 -0
  1154. package/dist/devices/skydance.d.ts.map +1 -0
  1155. package/dist/devices/skydance.js +138 -0
  1156. package/dist/devices/skydance.js.map +1 -0
  1157. package/dist/devices/slacky_diy.d.ts +3 -0
  1158. package/dist/devices/slacky_diy.d.ts.map +1 -0
  1159. package/dist/devices/slacky_diy.js +3694 -0
  1160. package/dist/devices/slacky_diy.js.map +1 -0
  1161. package/dist/devices/slv.d.ts +3 -0
  1162. package/dist/devices/slv.d.ts.map +1 -0
  1163. package/dist/devices/slv.js +77 -0
  1164. package/dist/devices/slv.js.map +1 -0
  1165. package/dist/devices/smarli.d.ts +3 -0
  1166. package/dist/devices/smarli.d.ts.map +1 -0
  1167. package/dist/devices/smarli.js +99 -0
  1168. package/dist/devices/smarli.js.map +1 -0
  1169. package/dist/devices/smart9.d.ts +3 -0
  1170. package/dist/devices/smart9.d.ts.map +1 -0
  1171. package/dist/devices/smart9.js +58 -0
  1172. package/dist/devices/smart9.js.map +1 -0
  1173. package/dist/devices/smart_home_pty.d.ts +3 -0
  1174. package/dist/devices/smart_home_pty.d.ts.map +1 -0
  1175. package/dist/devices/smart_home_pty.js +54 -0
  1176. package/dist/devices/smart_home_pty.js.map +1 -0
  1177. package/dist/devices/smartenit.d.ts +3 -0
  1178. package/dist/devices/smartenit.d.ts.map +1 -0
  1179. package/dist/devices/smartenit.js +77 -0
  1180. package/dist/devices/smartenit.js.map +1 -0
  1181. package/dist/devices/smartthings.d.ts +26 -0
  1182. package/dist/devices/smartthings.d.ts.map +1 -0
  1183. package/dist/devices/smartthings.js +571 -0
  1184. package/dist/devices/smartthings.js.map +1 -0
  1185. package/dist/devices/smartwings.d.ts +3 -0
  1186. package/dist/devices/smartwings.d.ts.map +1 -0
  1187. package/dist/devices/smartwings.js +60 -0
  1188. package/dist/devices/smartwings.js.map +1 -0
  1189. package/dist/devices/smlight.d.ts +3 -0
  1190. package/dist/devices/smlight.d.ts.map +1 -0
  1191. package/dist/devices/smlight.js +73 -0
  1192. package/dist/devices/smlight.js.map +1 -0
  1193. package/dist/devices/soanalarm.d.ts +3 -0
  1194. package/dist/devices/soanalarm.d.ts.map +1 -0
  1195. package/dist/devices/soanalarm.js +58 -0
  1196. package/dist/devices/soanalarm.js.map +1 -0
  1197. package/dist/devices/sohan_electric.d.ts +3 -0
  1198. package/dist/devices/sohan_electric.d.ts.map +1 -0
  1199. package/dist/devices/sohan_electric.js +49 -0
  1200. package/dist/devices/sohan_electric.js.map +1 -0
  1201. package/dist/devices/solaredge.d.ts +3 -0
  1202. package/dist/devices/solaredge.d.ts.map +1 -0
  1203. package/dist/devices/solaredge.js +47 -0
  1204. package/dist/devices/solaredge.js.map +1 -0
  1205. package/dist/devices/soma.d.ts +3 -0
  1206. package/dist/devices/soma.d.ts.map +1 -0
  1207. package/dist/devices/soma.js +47 -0
  1208. package/dist/devices/soma.js.map +1 -0
  1209. package/dist/devices/somfy.d.ts +3 -0
  1210. package/dist/devices/somfy.d.ts.map +1 -0
  1211. package/dist/devices/somfy.js +173 -0
  1212. package/dist/devices/somfy.js.map +1 -0
  1213. package/dist/devices/somgoms.d.ts +3 -0
  1214. package/dist/devices/somgoms.d.ts.map +1 -0
  1215. package/dist/devices/somgoms.js +80 -0
  1216. package/dist/devices/somgoms.js.map +1 -0
  1217. package/dist/devices/sonoff.d.ts +42 -0
  1218. package/dist/devices/sonoff.d.ts.map +1 -0
  1219. package/dist/devices/sonoff.js +4921 -0
  1220. package/dist/devices/sonoff.js.map +1 -0
  1221. package/dist/devices/sowilo.d.ts +3 -0
  1222. package/dist/devices/sowilo.d.ts.map +1 -0
  1223. package/dist/devices/sowilo.js +47 -0
  1224. package/dist/devices/sowilo.js.map +1 -0
  1225. package/dist/devices/spacetronik.d.ts +3 -0
  1226. package/dist/devices/spacetronik.d.ts.map +1 -0
  1227. package/dist/devices/spacetronik.js +53 -0
  1228. package/dist/devices/spacetronik.js.map +1 -0
  1229. package/dist/devices/spotmau.d.ts +3 -0
  1230. package/dist/devices/spotmau.d.ts.map +1 -0
  1231. package/dist/devices/spotmau.js +74 -0
  1232. package/dist/devices/spotmau.js.map +1 -0
  1233. package/dist/devices/sprut.d.ts +3 -0
  1234. package/dist/devices/sprut.d.ts.map +1 -0
  1235. package/dist/devices/sprut.js +328 -0
  1236. package/dist/devices/sprut.js.map +1 -0
  1237. package/dist/devices/stello.d.ts +3 -0
  1238. package/dist/devices/stello.d.ts.map +1 -0
  1239. package/dist/devices/stello.js +142 -0
  1240. package/dist/devices/stello.js.map +1 -0
  1241. package/dist/devices/stelpro.d.ts +3 -0
  1242. package/dist/devices/stelpro.d.ts.map +1 -0
  1243. package/dist/devices/stelpro.js +376 -0
  1244. package/dist/devices/stelpro.js.map +1 -0
  1245. package/dist/devices/sunricher.d.ts +30 -0
  1246. package/dist/devices/sunricher.d.ts.map +1 -0
  1247. package/dist/devices/sunricher.js +2337 -0
  1248. package/dist/devices/sunricher.js.map +1 -0
  1249. package/dist/devices/superled.d.ts +3 -0
  1250. package/dist/devices/superled.d.ts.map +1 -0
  1251. package/dist/devices/superled.js +47 -0
  1252. package/dist/devices/superled.js.map +1 -0
  1253. package/dist/devices/swann.d.ts +3 -0
  1254. package/dist/devices/swann.d.ts.map +1 -0
  1255. package/dist/devices/swann.js +69 -0
  1256. package/dist/devices/swann.js.map +1 -0
  1257. package/dist/devices/sylvania.d.ts +3 -0
  1258. package/dist/devices/sylvania.d.ts.map +1 -0
  1259. package/dist/devices/sylvania.js +223 -0
  1260. package/dist/devices/sylvania.js.map +1 -0
  1261. package/dist/devices/tapestry.d.ts +3 -0
  1262. package/dist/devices/tapestry.d.ts.map +1 -0
  1263. package/dist/devices/tapestry.js +52 -0
  1264. package/dist/devices/tapestry.js.map +1 -0
  1265. package/dist/devices/task_lighting.d.ts +3 -0
  1266. package/dist/devices/task_lighting.d.ts.map +1 -0
  1267. package/dist/devices/task_lighting.js +47 -0
  1268. package/dist/devices/task_lighting.js.map +1 -0
  1269. package/dist/devices/tci.d.ts +3 -0
  1270. package/dist/devices/tci.d.ts.map +1 -0
  1271. package/dist/devices/tci.js +68 -0
  1272. package/dist/devices/tci.js.map +1 -0
  1273. package/dist/devices/tcl.d.ts +3 -0
  1274. package/dist/devices/tcl.d.ts.map +1 -0
  1275. package/dist/devices/tcl.js +47 -0
  1276. package/dist/devices/tcl.js.map +1 -0
  1277. package/dist/devices/tech.d.ts +3 -0
  1278. package/dist/devices/tech.d.ts.map +1 -0
  1279. package/dist/devices/tech.js +213 -0
  1280. package/dist/devices/tech.js.map +1 -0
  1281. package/dist/devices/technicolor.d.ts +3 -0
  1282. package/dist/devices/technicolor.d.ts.map +1 -0
  1283. package/dist/devices/technicolor.js +85 -0
  1284. package/dist/devices/technicolor.js.map +1 -0
  1285. package/dist/devices/terncy.d.ts +3 -0
  1286. package/dist/devices/terncy.d.ts.map +1 -0
  1287. package/dist/devices/terncy.js +192 -0
  1288. package/dist/devices/terncy.js.map +1 -0
  1289. package/dist/devices/the_light_group.d.ts +3 -0
  1290. package/dist/devices/the_light_group.d.ts.map +1 -0
  1291. package/dist/devices/the_light_group.js +145 -0
  1292. package/dist/devices/the_light_group.js.map +1 -0
  1293. package/dist/devices/third_reality.d.ts +3 -0
  1294. package/dist/devices/third_reality.d.ts.map +1 -0
  1295. package/dist/devices/third_reality.js +1067 -0
  1296. package/dist/devices/third_reality.js.map +1 -0
  1297. package/dist/devices/tis_control.d.ts +3 -0
  1298. package/dist/devices/tis_control.d.ts.map +1 -0
  1299. package/dist/devices/tis_control.js +47 -0
  1300. package/dist/devices/tis_control.js.map +1 -0
  1301. package/dist/devices/titan_products.d.ts +3 -0
  1302. package/dist/devices/titan_products.d.ts.map +1 -0
  1303. package/dist/devices/titan_products.js +58 -0
  1304. package/dist/devices/titan_products.js.map +1 -0
  1305. package/dist/devices/tlwglobal.d.ts +3 -0
  1306. package/dist/devices/tlwglobal.d.ts.map +1 -0
  1307. package/dist/devices/tlwglobal.js +64 -0
  1308. package/dist/devices/tlwglobal.js.map +1 -0
  1309. package/dist/devices/tnce.d.ts +3 -0
  1310. package/dist/devices/tnce.d.ts.map +1 -0
  1311. package/dist/devices/tnce.js +54 -0
  1312. package/dist/devices/tnce.js.map +1 -0
  1313. package/dist/devices/tplink.d.ts +3 -0
  1314. package/dist/devices/tplink.d.ts.map +1 -0
  1315. package/dist/devices/tplink.js +77 -0
  1316. package/dist/devices/tplink.js.map +1 -0
  1317. package/dist/devices/trust.d.ts +3 -0
  1318. package/dist/devices/trust.d.ts.map +1 -0
  1319. package/dist/devices/trust.js +180 -0
  1320. package/dist/devices/trust.js.map +1 -0
  1321. package/dist/devices/tubeszb.d.ts +3 -0
  1322. package/dist/devices/tubeszb.d.ts.map +1 -0
  1323. package/dist/devices/tubeszb.js +56 -0
  1324. package/dist/devices/tubeszb.js.map +1 -0
  1325. package/dist/devices/tuya.d.ts +3 -0
  1326. package/dist/devices/tuya.d.ts.map +1 -0
  1327. package/dist/devices/tuya.js +24771 -0
  1328. package/dist/devices/tuya.js.map +1 -0
  1329. package/dist/devices/ubisys.d.ts +3 -0
  1330. package/dist/devices/ubisys.d.ts.map +1 -0
  1331. package/dist/devices/ubisys.js +1295 -0
  1332. package/dist/devices/ubisys.js.map +1 -0
  1333. package/dist/devices/uhome.d.ts +3 -0
  1334. package/dist/devices/uhome.d.ts.map +1 -0
  1335. package/dist/devices/uhome.js +60 -0
  1336. package/dist/devices/uhome.js.map +1 -0
  1337. package/dist/devices/universal_electronics_inc.d.ts +3 -0
  1338. package/dist/devices/universal_electronics_inc.d.ts.map +1 -0
  1339. package/dist/devices/universal_electronics_inc.js +156 -0
  1340. package/dist/devices/universal_electronics_inc.js.map +1 -0
  1341. package/dist/devices/vav.d.ts +3 -0
  1342. package/dist/devices/vav.d.ts.map +1 -0
  1343. package/dist/devices/vav.js +57 -0
  1344. package/dist/devices/vav.js.map +1 -0
  1345. package/dist/devices/vbled.d.ts +3 -0
  1346. package/dist/devices/vbled.d.ts.map +1 -0
  1347. package/dist/devices/vbled.js +47 -0
  1348. package/dist/devices/vbled.js.map +1 -0
  1349. package/dist/devices/vesternet.d.ts +3 -0
  1350. package/dist/devices/vesternet.d.ts.map +1 -0
  1351. package/dist/devices/vesternet.js +355 -0
  1352. package/dist/devices/vesternet.js.map +1 -0
  1353. package/dist/devices/viessmann.d.ts +3 -0
  1354. package/dist/devices/viessmann.d.ts.map +1 -0
  1355. package/dist/devices/viessmann.js +120 -0
  1356. package/dist/devices/viessmann.js.map +1 -0
  1357. package/dist/devices/villeroy_boch.d.ts +3 -0
  1358. package/dist/devices/villeroy_boch.d.ts.map +1 -0
  1359. package/dist/devices/villeroy_boch.js +54 -0
  1360. package/dist/devices/villeroy_boch.js.map +1 -0
  1361. package/dist/devices/vimar.d.ts +3 -0
  1362. package/dist/devices/vimar.d.ts.map +1 -0
  1363. package/dist/devices/vimar.js +140 -0
  1364. package/dist/devices/vimar.js.map +1 -0
  1365. package/dist/devices/visonic.d.ts +3 -0
  1366. package/dist/devices/visonic.d.ts.map +1 -0
  1367. package/dist/devices/visonic.js +134 -0
  1368. package/dist/devices/visonic.js.map +1 -0
  1369. package/dist/devices/vrey.d.ts +3 -0
  1370. package/dist/devices/vrey.d.ts.map +1 -0
  1371. package/dist/devices/vrey.js +48 -0
  1372. package/dist/devices/vrey.js.map +1 -0
  1373. package/dist/devices/vsmart.d.ts +3 -0
  1374. package/dist/devices/vsmart.d.ts.map +1 -0
  1375. package/dist/devices/vsmart.js +442 -0
  1376. package/dist/devices/vsmart.js.map +1 -0
  1377. package/dist/devices/wally.d.ts +3 -0
  1378. package/dist/devices/wally.d.ts.map +1 -0
  1379. package/dist/devices/wally.js +60 -0
  1380. package/dist/devices/wally.js.map +1 -0
  1381. package/dist/devices/waxman.d.ts +3 -0
  1382. package/dist/devices/waxman.d.ts.map +1 -0
  1383. package/dist/devices/waxman.js +83 -0
  1384. package/dist/devices/waxman.js.map +1 -0
  1385. package/dist/devices/weiser.d.ts +3 -0
  1386. package/dist/devices/weiser.d.ts.map +1 -0
  1387. package/dist/devices/weiser.js +54 -0
  1388. package/dist/devices/weiser.js.map +1 -0
  1389. package/dist/devices/weten.d.ts +3 -0
  1390. package/dist/devices/weten.d.ts.map +1 -0
  1391. package/dist/devices/weten.js +83 -0
  1392. package/dist/devices/weten.js.map +1 -0
  1393. package/dist/devices/wirenboard.d.ts +3 -0
  1394. package/dist/devices/wirenboard.d.ts.map +1 -0
  1395. package/dist/devices/wirenboard.js +715 -0
  1396. package/dist/devices/wirenboard.js.map +1 -0
  1397. package/dist/devices/wisdom.d.ts +3 -0
  1398. package/dist/devices/wisdom.d.ts.map +1 -0
  1399. package/dist/devices/wisdom.js +47 -0
  1400. package/dist/devices/wisdom.js.map +1 -0
  1401. package/dist/devices/wmun.d.ts +3 -0
  1402. package/dist/devices/wmun.d.ts.map +1 -0
  1403. package/dist/devices/wmun.js +61 -0
  1404. package/dist/devices/wmun.js.map +1 -0
  1405. package/dist/devices/woolley.d.ts +3 -0
  1406. package/dist/devices/woolley.d.ts.map +1 -0
  1407. package/dist/devices/woolley.js +96 -0
  1408. package/dist/devices/woolley.js.map +1 -0
  1409. package/dist/devices/woox.d.ts +3 -0
  1410. package/dist/devices/woox.d.ts.map +1 -0
  1411. package/dist/devices/woox.js +194 -0
  1412. package/dist/devices/woox.js.map +1 -0
  1413. package/dist/devices/wyze.d.ts +3 -0
  1414. package/dist/devices/wyze.d.ts.map +1 -0
  1415. package/dist/devices/wyze.js +59 -0
  1416. package/dist/devices/wyze.js.map +1 -0
  1417. package/dist/devices/xal.d.ts +3 -0
  1418. package/dist/devices/xal.d.ts.map +1 -0
  1419. package/dist/devices/xal.js +61 -0
  1420. package/dist/devices/xal.js.map +1 -0
  1421. package/dist/devices/xenon.d.ts +4 -0
  1422. package/dist/devices/xenon.d.ts.map +1 -0
  1423. package/dist/devices/xenon.js +65 -0
  1424. package/dist/devices/xenon.js.map +1 -0
  1425. package/dist/devices/xinghuoyuan.d.ts +3 -0
  1426. package/dist/devices/xinghuoyuan.d.ts.map +1 -0
  1427. package/dist/devices/xinghuoyuan.js +47 -0
  1428. package/dist/devices/xinghuoyuan.js.map +1 -0
  1429. package/dist/devices/xyzroe.d.ts +3 -0
  1430. package/dist/devices/xyzroe.d.ts.map +1 -0
  1431. package/dist/devices/xyzroe.js +511 -0
  1432. package/dist/devices/xyzroe.js.map +1 -0
  1433. package/dist/devices/yale.d.ts +3 -0
  1434. package/dist/devices/yale.d.ts.map +1 -0
  1435. package/dist/devices/yale.js +686 -0
  1436. package/dist/devices/yale.js.map +1 -0
  1437. package/dist/devices/yandex.d.ts +3 -0
  1438. package/dist/devices/yandex.d.ts.map +1 -0
  1439. package/dist/devices/yandex.js +677 -0
  1440. package/dist/devices/yandex.js.map +1 -0
  1441. package/dist/devices/ynoa.d.ts +3 -0
  1442. package/dist/devices/ynoa.d.ts.map +1 -0
  1443. package/dist/devices/ynoa.js +116 -0
  1444. package/dist/devices/ynoa.js.map +1 -0
  1445. package/dist/devices/yokis.d.ts +3 -0
  1446. package/dist/devices/yokis.d.ts.map +1 -0
  1447. package/dist/devices/yokis.js +2972 -0
  1448. package/dist/devices/yokis.js.map +1 -0
  1449. package/dist/devices/yookee.d.ts +3 -0
  1450. package/dist/devices/yookee.d.ts.map +1 -0
  1451. package/dist/devices/yookee.js +59 -0
  1452. package/dist/devices/yookee.js.map +1 -0
  1453. package/dist/devices/ysrsai.d.ts +3 -0
  1454. package/dist/devices/ysrsai.d.ts.map +1 -0
  1455. package/dist/devices/ysrsai.js +68 -0
  1456. package/dist/devices/ysrsai.js.map +1 -0
  1457. package/dist/devices/zbeacon.d.ts +3 -0
  1458. package/dist/devices/zbeacon.d.ts.map +1 -0
  1459. package/dist/devices/zbeacon.js +54 -0
  1460. package/dist/devices/zbeacon.js.map +1 -0
  1461. package/dist/devices/zemismart.d.ts +3 -0
  1462. package/dist/devices/zemismart.d.ts.map +1 -0
  1463. package/dist/devices/zemismart.js +1061 -0
  1464. package/dist/devices/zemismart.js.map +1 -0
  1465. package/dist/devices/zen.d.ts +3 -0
  1466. package/dist/devices/zen.d.ts.map +1 -0
  1467. package/dist/devices/zen.js +93 -0
  1468. package/dist/devices/zen.js.map +1 -0
  1469. package/dist/devices/zigbeetlc.d.ts +3 -0
  1470. package/dist/devices/zigbeetlc.d.ts.map +1 -0
  1471. package/dist/devices/zigbeetlc.js +374 -0
  1472. package/dist/devices/zigbeetlc.js.map +1 -0
  1473. package/dist/devices/zipato.d.ts +3 -0
  1474. package/dist/devices/zipato.d.ts.map +1 -0
  1475. package/dist/devices/zipato.js +47 -0
  1476. package/dist/devices/zipato.js.map +1 -0
  1477. package/dist/devices/zunzunbee.d.ts +3 -0
  1478. package/dist/devices/zunzunbee.d.ts.map +1 -0
  1479. package/dist/devices/zunzunbee.js +97 -0
  1480. package/dist/devices/zunzunbee.js.map +1 -0
  1481. package/dist/index.d.ts +19 -0
  1482. package/dist/index.d.ts.map +1 -0
  1483. package/dist/index.js.map +1 -0
  1484. package/dist/indexer.d.ts +5 -0
  1485. package/dist/indexer.d.ts.map +1 -0
  1486. package/dist/indexer.js +135 -0
  1487. package/dist/indexer.js.map +1 -0
  1488. package/dist/lib/adurosmart.d.ts +15 -0
  1489. package/dist/lib/adurosmart.d.ts.map +1 -0
  1490. package/dist/lib/adurosmart.js +669 -0
  1491. package/dist/lib/adurosmart.js.map +1 -0
  1492. package/dist/lib/bosch.d.ts +353 -0
  1493. package/dist/lib/bosch.d.ts.map +1 -0
  1494. package/dist/lib/bosch.js +3163 -0
  1495. package/dist/lib/bosch.js.map +1 -0
  1496. package/dist/lib/color.d.ts +272 -0
  1497. package/dist/lib/color.d.ts.map +1 -0
  1498. package/dist/lib/color.js +766 -0
  1499. package/dist/lib/color.js.map +1 -0
  1500. package/dist/lib/constants.d.ts +78 -0
  1501. package/dist/lib/constants.d.ts.map +1 -0
  1502. package/dist/lib/constants.js +317 -0
  1503. package/dist/lib/constants.js.map +1 -0
  1504. package/dist/lib/develco.d.ts +50 -0
  1505. package/dist/lib/develco.d.ts.map +1 -0
  1506. package/dist/lib/develco.js +433 -0
  1507. package/dist/lib/develco.js.map +1 -0
  1508. package/dist/lib/ewelink.d.ts +30 -0
  1509. package/dist/lib/ewelink.d.ts.map +1 -0
  1510. package/dist/lib/ewelink.js +722 -0
  1511. package/dist/lib/ewelink.js.map +1 -0
  1512. package/dist/lib/exposes.d.ts +376 -0
  1513. package/dist/lib/exposes.d.ts.map +1 -0
  1514. package/dist/lib/exposes.js +1136 -0
  1515. package/dist/lib/exposes.js.map +1 -0
  1516. package/dist/lib/generateDefinition.d.ts +10 -0
  1517. package/dist/lib/generateDefinition.d.ts.map +1 -0
  1518. package/dist/lib/generateDefinition.js +773 -0
  1519. package/dist/lib/generateDefinition.js.map +1 -0
  1520. package/dist/lib/heiman.d.ts +92 -0
  1521. package/dist/lib/heiman.d.ts.map +1 -0
  1522. package/dist/lib/heiman.js +211 -0
  1523. package/dist/lib/heiman.js.map +1 -0
  1524. package/dist/lib/ikea.d.ts +106 -0
  1525. package/dist/lib/ikea.d.ts.map +1 -0
  1526. package/dist/lib/ikea.js +984 -0
  1527. package/dist/lib/ikea.js.map +1 -0
  1528. package/dist/lib/kelvinToXy.d.ts +8 -0
  1529. package/dist/lib/kelvinToXy.d.ts.map +1 -0
  1530. package/dist/lib/kelvinToXy.js +1913 -0
  1531. package/dist/lib/kelvinToXy.js.map +1 -0
  1532. package/dist/lib/ledvance.d.ts +20 -0
  1533. package/dist/lib/ledvance.d.ts.map +1 -0
  1534. package/dist/lib/ledvance.js +100 -0
  1535. package/dist/lib/ledvance.js.map +1 -0
  1536. package/dist/lib/legacy.d.ts +5197 -0
  1537. package/dist/lib/legacy.d.ts.map +1 -0
  1538. package/dist/lib/legacy.js +6865 -0
  1539. package/dist/lib/legacy.js.map +1 -0
  1540. package/dist/lib/legrand.d.ts +132 -0
  1541. package/dist/lib/legrand.d.ts.map +1 -0
  1542. package/dist/lib/legrand.js +404 -0
  1543. package/dist/lib/legrand.js.map +1 -0
  1544. package/dist/lib/light.d.ts +9 -0
  1545. package/dist/lib/light.d.ts.map +1 -0
  1546. package/dist/lib/light.js +144 -0
  1547. package/dist/lib/light.js.map +1 -0
  1548. package/dist/lib/logger.d.ts +4 -0
  1549. package/dist/lib/logger.d.ts.map +1 -0
  1550. package/dist/lib/logger.js +14 -0
  1551. package/dist/lib/logger.js.map +1 -0
  1552. package/dist/lib/lumi.d.ts +1093 -0
  1553. package/dist/lib/lumi.d.ts.map +1 -0
  1554. package/dist/lib/lumi.js +6479 -0
  1555. package/dist/lib/lumi.js.map +1 -0
  1556. package/dist/lib/modernExtend.d.ts +436 -0
  1557. package/dist/lib/modernExtend.d.ts.map +1 -0
  1558. package/dist/lib/modernExtend.js +2702 -0
  1559. package/dist/lib/modernExtend.js.map +1 -0
  1560. package/dist/lib/namron.d.ts +56 -0
  1561. package/dist/lib/namron.d.ts.map +1 -0
  1562. package/dist/lib/namron.js +433 -0
  1563. package/dist/lib/namron.js.map +1 -0
  1564. package/dist/lib/nodon.d.ts +3 -0
  1565. package/dist/lib/nodon.d.ts.map +1 -0
  1566. package/dist/lib/nodon.js +130 -0
  1567. package/dist/lib/nodon.js.map +1 -0
  1568. package/dist/lib/philips.d.ts +321 -0
  1569. package/dist/lib/philips.d.ts.map +1 -0
  1570. package/dist/lib/philips.js +876 -0
  1571. package/dist/lib/philips.js.map +1 -0
  1572. package/dist/lib/reporting.d.ts +57 -0
  1573. package/dist/lib/reporting.d.ts.map +1 -0
  1574. package/dist/lib/reporting.js +294 -0
  1575. package/dist/lib/reporting.js.map +1 -0
  1576. package/dist/lib/sonoff.d.ts +30 -0
  1577. package/dist/lib/sonoff.d.ts.map +1 -0
  1578. package/dist/lib/sonoff.js +91 -0
  1579. package/dist/lib/sonoff.js.map +1 -0
  1580. package/dist/lib/store.d.ts +7 -0
  1581. package/dist/lib/store.d.ts.map +1 -0
  1582. package/dist/lib/store.js +59 -0
  1583. package/dist/lib/store.js.map +1 -0
  1584. package/dist/lib/sunricher.d.ts +29 -0
  1585. package/dist/lib/sunricher.d.ts.map +1 -0
  1586. package/dist/lib/sunricher.js +838 -0
  1587. package/dist/lib/sunricher.js.map +1 -0
  1588. package/dist/lib/tuya.d.ts +998 -0
  1589. package/dist/lib/tuya.d.ts.map +1 -0
  1590. package/dist/lib/tuya.js +3043 -0
  1591. package/dist/lib/tuya.js.map +1 -0
  1592. package/dist/lib/types.d.ts +429 -0
  1593. package/dist/lib/types.d.ts.map +1 -0
  1594. package/dist/lib/types.js +3 -0
  1595. package/dist/lib/types.js.map +1 -0
  1596. package/dist/lib/ubisys.d.ts +107 -0
  1597. package/dist/lib/ubisys.d.ts.map +1 -0
  1598. package/dist/lib/ubisys.js +576 -0
  1599. package/dist/lib/ubisys.js.map +1 -0
  1600. package/dist/lib/utils.d.ts +95 -0
  1601. package/dist/lib/utils.d.ts.map +1 -0
  1602. package/dist/lib/utils.js +736 -0
  1603. package/dist/lib/utils.js.map +1 -0
  1604. package/dist/lib/zosung.d.ts +52 -0
  1605. package/dist/lib/zosung.d.ts.map +1 -0
  1606. package/dist/lib/zosung.js +264 -0
  1607. package/dist/lib/zosung.js.map +1 -0
  1608. package/dist/models-index.json +1 -0
  1609. package/package.json +2 -8
@@ -0,0 +1,1381 @@
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 () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.definitions = void 0;
37
+ const zigbee_herdsman_1 = require("@willieee802/zigbee-herdsman");
38
+ const fz = __importStar(require("../converters/fromZigbee"));
39
+ const bosch_1 = require("../lib/bosch");
40
+ const constants_1 = require("../lib/constants");
41
+ const exposes = __importStar(require("../lib/exposes"));
42
+ const logger_1 = require("../lib/logger");
43
+ const m = __importStar(require("../lib/modernExtend"));
44
+ const reporting = __importStar(require("../lib/reporting"));
45
+ const reporting_1 = require("../lib/reporting");
46
+ const globalStore = __importStar(require("../lib/store"));
47
+ const utils = __importStar(require("../lib/utils"));
48
+ const e = exposes.presets;
49
+ const ea = exposes.access;
50
+ const NS = "zhc:bosch";
51
+ // Universal Switch II
52
+ const buttonMap = {
53
+ config_led_top_left_press: 0x10,
54
+ config_led_top_right_press: 0x11,
55
+ config_led_bottom_left_press: 0x12,
56
+ config_led_bottom_right_press: 0x13,
57
+ config_led_top_left_longpress: 0x20,
58
+ config_led_top_right_longpress: 0x21,
59
+ config_led_bottom_left_longpress: 0x22,
60
+ config_led_bottom_right_longpress: 0x23,
61
+ };
62
+ // Universal Switch II
63
+ const labelShortPress = `Specifies LED color (rgb) and pattern on short press as hex string.
64
+ 0-2: RGB value (e.g. ffffff = white)
65
+ 3: Light position (01=top, 02=bottom, 00=full)
66
+ 4-7: Durations for sequence fade-in -> on -> fade-out -> off (e.g. 01020102)
67
+ 8: Number of Repetitions (01=1 to ff=255)
68
+ Example: ff1493000104010001`;
69
+ // Universal Switch II
70
+ const labelLongPress = `Specifies LED color (rgb) and pattern on long press as hex string.
71
+ 0-2: RGB value (e.g. ffffff = white)
72
+ 3: Light position (01=top, 02=bottom, 00=full)
73
+ 4-7: Durations for sequence fade-in -> on -> fade-out -> off (e.g. 01020102)
74
+ 8: Number of Repetitions (01=1 to ff=255)
75
+ Example: ff4200000502050001`;
76
+ // Universal Switch II
77
+ const labelConfirmation = `Specifies LED color (rgb) and pattern of the confirmation response as hex string.
78
+ 0-2: RGB value (e.g. ffffff = white)
79
+ 3: Light position (01=top, 02=bottom, 00=full)
80
+ 4-7: Durations for sequence fade-in -> on -> fade-out -> off (e.g. 01020102)
81
+ 8: Number of Repetitions (01=1 to ff=255)
82
+ Example: 30ff00000102010001`;
83
+ const boschBmctRzSettings = {
84
+ deviceModes: {
85
+ switch: 0x00,
86
+ pulsed: 0x01,
87
+ },
88
+ switchTypes: {
89
+ button: 0x05,
90
+ rocker_switch: 0x07,
91
+ none: 0x00,
92
+ },
93
+ switchModes: {
94
+ coupled: 0x00,
95
+ decoupled: 0x01,
96
+ },
97
+ hasDualSwitchInputs: false,
98
+ };
99
+ const boschBmctDzSettings = {
100
+ switchTypes: {
101
+ button: 0x05,
102
+ none: 0x00,
103
+ },
104
+ switchModes: {
105
+ coupled: 0x00,
106
+ decoupled: 0x01,
107
+ },
108
+ hasDualSwitchInputs: false,
109
+ };
110
+ const boschExtend = {
111
+ broadcastAlarm: () => {
112
+ const sirenState = {
113
+ smoke_off: 0x0000,
114
+ smoke_on: 0x3c00,
115
+ burglar_off: 0x0001,
116
+ burglar_on: 0xb401,
117
+ };
118
+ const exposes = [
119
+ e
120
+ .enum("broadcast_alarm", ea.SET, Object.keys(sirenState))
121
+ .withDescription("Set siren state of all BSD-2 via broadcast")
122
+ .withCategory("config"),
123
+ ];
124
+ const toZigbee = [
125
+ {
126
+ key: ["broadcast_alarm"],
127
+ convertSet: async (entity, key, value, meta) => {
128
+ if (key === "broadcast_alarm") {
129
+ const index = utils.getFromLookup(value, sirenState);
130
+ utils.assertEndpoint(entity);
131
+ await entity.zclCommandBroadcast(255, zigbee_herdsman_1.ZSpec.BroadcastAddress.SLEEPY, "ssIasZone", "boschSmokeAlarmSiren", { data: index }, bosch_1.manufacturerOptions);
132
+ return;
133
+ }
134
+ },
135
+ },
136
+ ];
137
+ return {
138
+ exposes,
139
+ toZigbee,
140
+ isModernExtend: true,
141
+ };
142
+ },
143
+ twinguard: () => {
144
+ const smokeSensitivity = {
145
+ low: 0x03,
146
+ medium: 0x02,
147
+ high: 0x01,
148
+ };
149
+ const sirenState = {
150
+ stop: 0x00,
151
+ pre_alarm: 0x01,
152
+ fire: 0x02,
153
+ burglar: 0x03,
154
+ };
155
+ const stateOffOn = {
156
+ OFF: 0x00,
157
+ ON: 0x01,
158
+ };
159
+ const exposes = [
160
+ e.binary("smoke", ea.STATE, true, false).withDescription("Indicates whether the device detected smoke"),
161
+ e.numeric("temperature", ea.STATE).withValueMin(0).withValueMax(65).withValueStep(0.1).withUnit("°C").withDescription("Temperature"),
162
+ e.numeric("humidity", ea.STATE).withValueMin(0).withValueMax(100).withValueStep(0.1).withUnit("%").withDescription("Relative humidity"),
163
+ e
164
+ .numeric("eco2", ea.STATE)
165
+ .withValueMin(500)
166
+ .withValueMax(5500)
167
+ .withValueStep(1)
168
+ .withLabel("eCO₂")
169
+ .withUnit("ppm")
170
+ .withDescription("TVOC-derived CO₂-equivalent"),
171
+ e.numeric("aqi", ea.STATE).withValueMin(0).withValueMax(500).withValueStep(1).withLabel("IAQ").withDescription("Index for Air Quality"),
172
+ e.illuminance(),
173
+ e
174
+ .numeric("battery", ea.STATE)
175
+ .withUnit("%")
176
+ .withValueMin(0)
177
+ .withValueMax(100)
178
+ .withDescription("Remaining battery in %")
179
+ .withCategory("diagnostic"),
180
+ e.text("siren_state", ea.STATE).withDescription("Siren state").withCategory("diagnostic"),
181
+ e.enum("alarm", ea.ALL, Object.keys(sirenState)).withDescription("Alarm mode for siren"),
182
+ e.binary("self_test", ea.ALL, true, false).withDescription("Initiate self-test").withCategory("config"),
183
+ e.enum("sensitivity", ea.ALL, Object.keys(smokeSensitivity)).withDescription("Sensitivity of the smoke detector").withCategory("config"),
184
+ e.binary("pre_alarm", ea.ALL, "ON", "OFF").withDescription("Enable/disable pre-alarm").withCategory("config"),
185
+ e.binary("heartbeat", ea.ALL, "ON", "OFF").withDescription("Enable/disable heartbeat (blue LED)").withCategory("config"),
186
+ ];
187
+ const fromZigbee = [
188
+ {
189
+ cluster: "twinguardSmokeDetector",
190
+ type: ["attributeReport", "readResponse"],
191
+ convert: (model, msg, publish, options, meta) => {
192
+ const result = {};
193
+ if (msg.data.sensitivity !== undefined) {
194
+ result.sensitivity = Object.keys(smokeSensitivity)[msg.data.sensitivity];
195
+ }
196
+ return result;
197
+ },
198
+ },
199
+ {
200
+ cluster: "twinguardMeasurements",
201
+ type: ["attributeReport", "readResponse"],
202
+ convert: (model, msg, publish, options, meta) => {
203
+ const result = {};
204
+ if (msg.data.humidity !== undefined) {
205
+ const humidity = utils.toNumber(msg.data.humidity) / 100.0;
206
+ if (utils.isInRange(0, 100, humidity)) {
207
+ result.humidity = humidity;
208
+ }
209
+ }
210
+ if (msg.data.airpurity !== undefined) {
211
+ const iaq = utils.toNumber(msg.data.airpurity);
212
+ result.aqi = iaq;
213
+ const factorCo2 = 10;
214
+ result.eco2 = iaq * factorCo2 + 500;
215
+ }
216
+ if (msg.data.temperature !== undefined) {
217
+ result.temperature = utils.toNumber(msg.data.temperature) / 100.0;
218
+ }
219
+ if (msg.data.illuminance !== undefined) {
220
+ result.illuminance = utils.precisionRound(msg.data.illuminance / 2, 2);
221
+ }
222
+ if (msg.data.battery !== undefined) {
223
+ result.battery = utils.precisionRound(msg.data.battery / 2, 2);
224
+ }
225
+ return result;
226
+ },
227
+ },
228
+ {
229
+ cluster: "twinguardOptions",
230
+ type: ["attributeReport", "readResponse"],
231
+ convert: (model, msg, publish, options, meta) => {
232
+ const result = {};
233
+ if (msg.data.pre_alarm !== undefined) {
234
+ result.pre_alarm = Object.keys(stateOffOn)[msg.data.pre_alarm];
235
+ }
236
+ return result;
237
+ },
238
+ },
239
+ {
240
+ cluster: "twinguardSetup",
241
+ type: ["attributeReport", "readResponse"],
242
+ convert: (model, msg, publish, options, meta) => {
243
+ const result = {};
244
+ if (msg.data.heartbeat !== undefined) {
245
+ result.heartbeat = Object.keys(stateOffOn)[msg.data.heartbeat];
246
+ }
247
+ return result;
248
+ },
249
+ },
250
+ {
251
+ cluster: "twinguardAlarm",
252
+ type: ["attributeReport", "readResponse"],
253
+ convert: (model, msg, publish, options, meta) => {
254
+ const result = {};
255
+ const lookup = {
256
+ 2097184: "clear",
257
+ 18874400: "self_test",
258
+ 35651616: "burglar",
259
+ 2097282: "pre_alarm",
260
+ 2097281: "fire",
261
+ 2097216: "silenced",
262
+ };
263
+ if (msg.data.alarm_status !== undefined) {
264
+ result.self_test = (msg.data.alarm_status & (1 << 24)) > 0;
265
+ result.smoke = (msg.data.alarm_status & (1 << 7)) > 0;
266
+ result.siren_state = lookup[msg.data.alarm_status];
267
+ }
268
+ return result;
269
+ },
270
+ },
271
+ {
272
+ cluster: "genAlarms",
273
+ type: ["commandAlarm", "readResponse"],
274
+ convert: async (model, msg, publish, options, meta) => {
275
+ const result = {};
276
+ const lookup = {
277
+ 16: "fire",
278
+ 17: "pre_alarm",
279
+ 20: "clear",
280
+ 22: "silenced",
281
+ };
282
+ if ("alarmcode" in msg.data) {
283
+ result.siren_state = lookup[msg.data.alarmcode];
284
+ if (msg.data.alarmcode === 0x10 || msg.data.alarmcode === 0x11) {
285
+ await msg.endpoint.commandResponse("genAlarms", "alarm", { alarmcode: msg.data.alarmcode, clusterid: 0xe000 }, { direction: 1 });
286
+ }
287
+ return result;
288
+ }
289
+ },
290
+ },
291
+ ];
292
+ const toZigbee = [
293
+ {
294
+ key: ["sensitivity", "pre_alarm", "self_test", "alarm", "heartbeat"],
295
+ convertSet: async (entity, key, value, meta) => {
296
+ if (key === "sensitivity") {
297
+ const index = utils.getFromLookup(value, smokeSensitivity);
298
+ await entity.write("twinguardSmokeDetector", { sensitivity: index }, bosch_1.manufacturerOptions);
299
+ return { state: { sensitivity: value } };
300
+ }
301
+ if (key === "pre_alarm") {
302
+ const index = utils.getFromLookup(value, stateOffOn);
303
+ await entity.write("twinguardOptions", { pre_alarm: index }, bosch_1.manufacturerOptions);
304
+ return { state: { pre_alarm: value } };
305
+ }
306
+ if (key === "heartbeat") {
307
+ const endpoint = meta.device.getEndpoint(12);
308
+ const index = utils.getFromLookup(value, stateOffOn);
309
+ await endpoint.write("twinguardSetup", { heartbeat: index }, bosch_1.manufacturerOptions);
310
+ return { state: { heartbeat: value } };
311
+ }
312
+ if (key === "self_test") {
313
+ if (value) {
314
+ await entity.command("twinguardSmokeDetector", "initiateTestMode", {}, bosch_1.manufacturerOptions);
315
+ }
316
+ }
317
+ if (key === "alarm") {
318
+ const endpoint = meta.device.getEndpoint(12);
319
+ const index = utils.getFromLookup(value, sirenState);
320
+ utils.assertEndpoint(entity);
321
+ if (index === 0x00) {
322
+ await entity.commandResponse("genAlarms", "alarm", { alarmcode: 0x16, clusterid: 0xe000 }, { direction: 1 });
323
+ await entity.commandResponse("genAlarms", "alarm", { alarmcode: 0x14, clusterid: 0xe000 }, { direction: 1 });
324
+ await endpoint.command("twinguardAlarm", "burglarAlarm", { data: 0x00 }, bosch_1.manufacturerOptions);
325
+ }
326
+ else if (index === 0x01) {
327
+ await entity.commandResponse("genAlarms", "alarm", { alarmcode: 0x11, clusterid: 0xe000 }, { direction: 1 });
328
+ return { state: { siren_state: "pre_alarm" } };
329
+ }
330
+ else if (index === 0x02) {
331
+ await entity.commandResponse("genAlarms", "alarm", { alarmcode: 0x10, clusterid: 0xe000 }, { direction: 1 });
332
+ return { state: { siren_state: "fire" } };
333
+ }
334
+ else if (index === 0x03) {
335
+ await endpoint.command("twinguardAlarm", "burglarAlarm", { data: 0x01 }, bosch_1.manufacturerOptions);
336
+ }
337
+ }
338
+ },
339
+ convertGet: async (entity, key, meta) => {
340
+ switch (key) {
341
+ case "sensitivity":
342
+ await entity.read("twinguardSmokeDetector", ["sensitivity"], bosch_1.manufacturerOptions);
343
+ break;
344
+ case "pre_alarm":
345
+ await entity.read("twinguardOptions", ["pre_alarm"], bosch_1.manufacturerOptions);
346
+ break;
347
+ case "heartbeat":
348
+ await meta.device
349
+ .getEndpoint(12)
350
+ .read("twinguardSetup", ["heartbeat"], bosch_1.manufacturerOptions);
351
+ break;
352
+ case "alarm":
353
+ case "self_test":
354
+ await meta.device
355
+ .getEndpoint(12)
356
+ .read("twinguardAlarm", ["alarm_status"], bosch_1.manufacturerOptions);
357
+ break;
358
+ default:
359
+ throw new Error(`Unhandled key boschExtend.twinguard.toZigbee.convertGet ${key}`);
360
+ }
361
+ },
362
+ },
363
+ ];
364
+ return {
365
+ exposes,
366
+ fromZigbee,
367
+ toZigbee,
368
+ isModernExtend: true,
369
+ };
370
+ },
371
+ };
372
+ const tzLocal = {
373
+ bhius_config: {
374
+ key: Object.keys(buttonMap),
375
+ convertGet: async (entity, key, meta) => {
376
+ if (buttonMap[key] === undefined) {
377
+ throw new Error(`Unknown key ${key}`);
378
+ }
379
+ await entity.read("boschSpecific", [buttonMap[key]], bosch_1.manufacturerOptions);
380
+ },
381
+ convertSet: async (entity, key, value, meta) => {
382
+ if (buttonMap[key] === undefined) {
383
+ return;
384
+ }
385
+ const buffer = Buffer.from(value, "hex");
386
+ if (buffer.length !== 9)
387
+ throw new Error(`Invalid configuration length: ${buffer.length} (should be 9)`);
388
+ const payload = {
389
+ [buttonMap[key]]: { value: buffer, type: 65 },
390
+ };
391
+ await entity.write("boschSpecific", payload, bosch_1.manufacturerOptions);
392
+ const result = {};
393
+ result[key] = value;
394
+ return { state: result };
395
+ },
396
+ },
397
+ };
398
+ const fzLocal = {
399
+ bhius_button_press: {
400
+ cluster: "boschSpecific",
401
+ type: "raw",
402
+ options: [e.text("led_response", ea.ALL).withLabel("LED config (confirmation response)").withDescription(labelConfirmation)],
403
+ convert: (model, msg, publish, options, meta) => {
404
+ const sequenceNumber = msg.data.readUInt8(3);
405
+ const buttonId = msg.data.readUInt8(4);
406
+ const longPress = msg.data.readUInt8(5);
407
+ const duration = msg.data.readUInt16LE(6);
408
+ // biome-ignore lint/suspicious/noImplicitAnyLet: ignored using `--suppress`
409
+ let buffer;
410
+ if (options.led_response != null) {
411
+ buffer = Buffer.from(options.led_response, "hex");
412
+ if (buffer.length !== 9) {
413
+ logger_1.logger.error(`Invalid length of led_response: ${buffer.length} (should be 9)`, NS);
414
+ buffer = Buffer.from("30ff00000102010001", "hex");
415
+ }
416
+ }
417
+ else {
418
+ buffer = Buffer.from("30ff00000102010001", "hex");
419
+ }
420
+ if (utils.hasAlreadyProcessedMessage(msg, model, sequenceNumber))
421
+ return;
422
+ const buttons = { 0: "top_left", 1: "top_right", 2: "bottom_left", 3: "bottom_right" };
423
+ let command = "";
424
+ if (buttonId in buttons) {
425
+ if (longPress && duration > 0) {
426
+ if (globalStore.hasValue(msg.endpoint, buttons[buttonId]))
427
+ return;
428
+ globalStore.putValue(msg.endpoint, buttons[buttonId], duration);
429
+ command = "longpress";
430
+ }
431
+ else {
432
+ globalStore.clearValue(msg.endpoint, buttons[buttonId]);
433
+ command = longPress ? "longpress_release" : "release";
434
+ msg.endpoint
435
+ .command("boschSpecific", "confirmButtonPressed", { data: buffer }, { sendPolicy: "immediate" })
436
+ .catch((error) => { });
437
+ }
438
+ return { action: `button_${buttons[buttonId]}_${command}` };
439
+ }
440
+ logger_1.logger.error(`Received message with unknown command ID ${buttonId}. Data: 0x${msg.data.toString("hex")}`, NS);
441
+ },
442
+ },
443
+ bhius_config: {
444
+ cluster: "boschSpecific",
445
+ type: ["attributeReport", "readResponse"],
446
+ convert: (model, msg, publish, options, meta) => {
447
+ const result = {};
448
+ for (const id of Object.values(buttonMap)) {
449
+ if (msg.data[id] !== undefined) {
450
+ // TODO: type is assumed "Buffer" since using `toString("hex")`
451
+ result[Object.keys(buttonMap).find((key) => buttonMap[key] === id)] = msg.data[id].toString("hex");
452
+ }
453
+ }
454
+ return result;
455
+ },
456
+ },
457
+ };
458
+ exports.definitions = [
459
+ {
460
+ zigbeeModel: ["RBSH-OS-ZB-EU"],
461
+ model: "BSIR-EZ",
462
+ vendor: "Bosch",
463
+ description: "Outdoor siren",
464
+ extend: [
465
+ bosch_1.boschBsirExtend.customPowerCfgCluster(),
466
+ bosch_1.boschBsirExtend.customIasZoneCluster(),
467
+ bosch_1.boschBsirExtend.customIasWdCluster(),
468
+ bosch_1.boschBsirExtend.deviceState(),
469
+ bosch_1.boschBsirExtend.alarmControl(),
470
+ bosch_1.boschBsirExtend.iasZoneStatus(),
471
+ bosch_1.boschBsirExtend.alarmMode(),
472
+ bosch_1.boschBsirExtend.sirenVolume(),
473
+ bosch_1.boschBsirExtend.sirenDuration(),
474
+ bosch_1.boschBsirExtend.lightDuration(),
475
+ bosch_1.boschBsirExtend.sirenDelay(),
476
+ bosch_1.boschBsirExtend.lightDelay(),
477
+ bosch_1.boschBsirExtend.primaryPowerSource(),
478
+ bosch_1.boschBsirExtend.currentPowerSource(),
479
+ bosch_1.boschBsirExtend.solarPanelVoltage(),
480
+ bosch_1.boschGeneralExtend.batteryWithPercentageAndLowStatus({
481
+ percentageReportingConfig: { min: "MIN", max: "MAX", change: 1 },
482
+ }),
483
+ ],
484
+ ota: true,
485
+ },
486
+ {
487
+ zigbeeModel: ["RBSH-WS-ZB-EU"],
488
+ model: "BSEN-W",
489
+ vendor: "Bosch",
490
+ description: "Water alarm (formerly known as BWA-1)",
491
+ extend: [
492
+ bosch_1.boschWaterAlarmExtend.changedSensitivityLevel(),
493
+ bosch_1.boschWaterAlarmExtend.waterAlarmCluster(),
494
+ bosch_1.boschGeneralExtend.handleRenamedCustomCluster("boschSpecific", "boschWaterAlarm"),
495
+ bosch_1.boschWaterAlarmExtend.waterAndTamperAlarm(),
496
+ bosch_1.boschWaterAlarmExtend.muteAlarmControl(),
497
+ bosch_1.boschWaterAlarmExtend.alarmOnMotion(),
498
+ bosch_1.boschWaterAlarmExtend.testMode(),
499
+ bosch_1.boschGeneralExtend.batteryWithPercentageAndLowStatus(),
500
+ ],
501
+ ota: true,
502
+ },
503
+ {
504
+ zigbeeModel: ["RBSH-SD-ZB-EU"],
505
+ model: "BSD-2",
506
+ vendor: "Bosch",
507
+ description: "Smoke alarm II",
508
+ extend: [
509
+ bosch_1.boschSmokeAlarmExtend.enforceDefaultSensitivityLevel(),
510
+ bosch_1.boschSmokeAlarmExtend.customIasZoneCluster(),
511
+ bosch_1.boschSmokeAlarmExtend.smokeAlarmAndButtonPushes(),
512
+ bosch_1.boschSmokeAlarmExtend.alarmControl(),
513
+ bosch_1.boschSmokeAlarmExtend.testMode(),
514
+ bosch_1.boschSmokeAlarmExtend.battery(),
515
+ ],
516
+ },
517
+ {
518
+ zigbeeModel: [
519
+ "RFDL-ZB",
520
+ "RFDL-ZB-EU",
521
+ "RFDL-ZB-H",
522
+ "RFDL-ZB-K",
523
+ "RFDL-ZB-CHI",
524
+ "RFDL-ZB-MS",
525
+ "RFDL-ZB-ES",
526
+ "RFPR-ZB",
527
+ "RFPR-ZB-EU",
528
+ "RFPR-ZB-CHI",
529
+ "RFPR-ZB-ES",
530
+ "RFPR-ZB-MS",
531
+ ],
532
+ model: "RADION TriTech ZB",
533
+ vendor: "Bosch",
534
+ description: "Wireless motion detector",
535
+ fromZigbee: [fz.temperature, fz.battery, fz.ias_occupancy_alarm_1],
536
+ toZigbee: [],
537
+ meta: { battery: { voltageToPercentage: { min: 2500, max: 3000 } } },
538
+ configure: async (device, coordinatorEndpoint) => {
539
+ const endpoint = device.getEndpoint(1);
540
+ await reporting.bind(endpoint, coordinatorEndpoint, ["msTemperatureMeasurement", "genPowerCfg"]);
541
+ await reporting.temperature(endpoint);
542
+ await reporting.batteryVoltage(endpoint);
543
+ },
544
+ exposes: [e.temperature(), e.battery(), e.occupancy(), e.battery_low(), e.tamper()],
545
+ extend: [m.illuminance()],
546
+ },
547
+ {
548
+ zigbeeModel: ["ISW-ZPR1-WP13"],
549
+ model: "ISW-ZPR1-WP13",
550
+ vendor: "Bosch",
551
+ description: "Motion sensor",
552
+ fromZigbee: [fz.temperature, fz.battery, fz.ias_occupancy_alarm_1, fz.ignore_iaszone_report],
553
+ toZigbee: [],
554
+ meta: { battery: { voltageToPercentage: { min: 2500, max: 3000 } } },
555
+ configure: async (device, coordinatorEndpoint) => {
556
+ const endpoint = device.getEndpoint(5);
557
+ await reporting.bind(endpoint, coordinatorEndpoint, ["msTemperatureMeasurement", "genPowerCfg"]);
558
+ await reporting.temperature(endpoint);
559
+ await reporting.batteryVoltage(endpoint);
560
+ },
561
+ exposes: [e.temperature(), e.battery(), e.occupancy(), e.battery_low(), e.tamper()],
562
+ },
563
+ {
564
+ zigbeeModel: ["RBSH-TRV0-ZB-EU", "RBSH-TRV1-ZB-EU"],
565
+ model: "BTH-RA",
566
+ vendor: "Bosch",
567
+ description: "Radiator thermostat II",
568
+ meta: {
569
+ overrideHaDiscoveryPayload: (payload) => {
570
+ // Override climate discovery
571
+ // https://github.com/Koenkk/zigbee2mqtt/pull/23075#issue-2355829475
572
+ if (payload.mode_command_topic?.endsWith("/system_mode")) {
573
+ payload.mode_command_topic = payload.mode_command_topic.substring(0, payload.mode_command_topic.lastIndexOf("/system_mode"));
574
+ payload.mode_command_template =
575
+ "{% set values = " +
576
+ `{ 'auto':'schedule','heat':'manual','off':'pause'} %}` +
577
+ `{"operating_mode": "{{ values[value] if value in values.keys() else 'pause' }}"}`;
578
+ payload.mode_state_template =
579
+ "{% set values = " +
580
+ `{'schedule':'auto','manual':'heat','pause':'off'} %}` +
581
+ `{% set value = value_json.operating_mode %}{{ values[value] if value in values.keys() else 'off' }}`;
582
+ payload.modes = ["off", "heat", "auto"];
583
+ }
584
+ },
585
+ },
586
+ extend: [
587
+ bosch_1.boschThermostatExtend.customThermostatCluster(),
588
+ bosch_1.boschThermostatExtend.customUserInterfaceCfgCluster(),
589
+ bosch_1.boschThermostatExtend.raThermostat(),
590
+ bosch_1.boschThermostatExtend.setpointChangeSource({ enableReporting: true }),
591
+ bosch_1.boschThermostatExtend.operatingMode({ enableReporting: true }),
592
+ bosch_1.boschThermostatExtend.windowOpenMode({ enableReporting: true }),
593
+ bosch_1.boschThermostatExtend.boostHeating({ enableReporting: true }),
594
+ bosch_1.boschThermostatExtend.remoteTemperature(),
595
+ bosch_1.boschThermostatExtend.childLock(),
596
+ bosch_1.boschThermostatExtend.displayBrightness(),
597
+ bosch_1.boschThermostatExtend.displaySwitchOnDuration(),
598
+ bosch_1.boschThermostatExtend.displayOrientation(),
599
+ bosch_1.boschThermostatExtend.displayedTemperature(),
600
+ bosch_1.boschThermostatExtend.valveAdaptation(),
601
+ bosch_1.boschThermostatExtend.errorState({ enableReporting: true }),
602
+ bosch_1.boschGeneralExtend.batteryWithPercentageAndLowStatus(),
603
+ ],
604
+ ota: true,
605
+ },
606
+ {
607
+ zigbeeModel: ["RBSH-RTH0-BAT-ZB-EU"],
608
+ model: "BTH-RM",
609
+ vendor: "Bosch",
610
+ description: "Room thermostat II",
611
+ meta: {
612
+ overrideHaDiscoveryPayload: (payload) => {
613
+ if (payload.mode_command_topic?.endsWith("/system_mode")) {
614
+ payload.mode_command_topic = payload.mode_command_topic.substring(0, payload.mode_command_topic.lastIndexOf("/system_mode"));
615
+ payload.mode_command_template =
616
+ "{% set values = " +
617
+ `{ 'auto':'schedule','heat':'manual','cool':'manual','off':'pause'} %}` +
618
+ `{% if value == "heat" or value == "cool" %}` +
619
+ `{"operating_mode": "manual", "system_mode": "{{ value }}"}` +
620
+ "{% else %}" +
621
+ `{"operating_mode": "{{ values[value] if value in values.keys() else 'pause' }}"}` +
622
+ "{% endif %}";
623
+ payload.mode_state_template =
624
+ "{% set values = " +
625
+ `{'schedule':'auto','manual':'heat','pause':'off'} %}` +
626
+ "{% set value = value_json.operating_mode %}" +
627
+ `{% if value == "manual" %}` +
628
+ "{{ value_json.system_mode }}" +
629
+ "{% else %}" +
630
+ `{{ values[value] if value in values.keys() else 'off' }}` +
631
+ "{% endif %}";
632
+ payload.modes = ["off", "heat", "cool", "auto"];
633
+ }
634
+ },
635
+ },
636
+ extend: [
637
+ bosch_1.boschGeneralExtend.handleZclVersionReadRequest(),
638
+ bosch_1.boschThermostatExtend.customThermostatCluster(),
639
+ bosch_1.boschThermostatExtend.customUserInterfaceCfgCluster(),
640
+ bosch_1.boschThermostatExtend.operatingMode({ enableReporting: true }),
641
+ bosch_1.boschThermostatExtend.rmThermostat(),
642
+ bosch_1.boschThermostatExtend.setpointChangeSource({ enableReporting: true }),
643
+ bosch_1.boschThermostatExtend.humidity(),
644
+ bosch_1.boschThermostatExtend.cableSensorMode(),
645
+ bosch_1.boschThermostatExtend.cableSensorTemperature(),
646
+ bosch_1.boschThermostatExtend.windowOpenMode(),
647
+ bosch_1.boschThermostatExtend.boostHeating(),
648
+ bosch_1.boschThermostatExtend.childLock(),
649
+ bosch_1.boschThermostatExtend.displayBrightness(),
650
+ bosch_1.boschThermostatExtend.displaySwitchOnDuration(),
651
+ bosch_1.boschThermostatExtend.activityLedState(),
652
+ bosch_1.boschThermostatExtend.errorState({ enableReporting: true }),
653
+ bosch_1.boschThermostatExtend.rmBattery(),
654
+ ],
655
+ ota: true,
656
+ },
657
+ {
658
+ zigbeeModel: ["RBSH-RTH0-ZB-EU"],
659
+ model: "BTH-RM230Z",
660
+ vendor: "Bosch",
661
+ description: "Room thermostat II 230V",
662
+ meta: {
663
+ overrideHaDiscoveryPayload: (payload) => {
664
+ if (payload.mode_command_topic?.endsWith("/system_mode")) {
665
+ payload.mode_command_topic = payload.mode_command_topic.substring(0, payload.mode_command_topic.lastIndexOf("/system_mode"));
666
+ payload.mode_command_template =
667
+ "{% set values = " +
668
+ `{ 'auto':'schedule','heat':'manual','cool':'manual','off':'pause'} %}` +
669
+ `{% if value == "heat" or value == "cool" %}` +
670
+ `{"operating_mode": "manual", "system_mode": "{{ value }}"}` +
671
+ "{% else %}" +
672
+ `{"operating_mode": "{{ values[value] if value in values.keys() else 'pause' }}"}` +
673
+ "{% endif %}";
674
+ payload.mode_state_template =
675
+ "{% set values = " +
676
+ `{'schedule':'auto','manual':'heat','pause':'off'} %}` +
677
+ "{% set value = value_json.operating_mode %}" +
678
+ `{% if value == "manual" %}` +
679
+ "{{ value_json.system_mode }}" +
680
+ "{% else %}" +
681
+ `{{ values[value] if value in values.keys() else 'off' }}` +
682
+ "{% endif %}";
683
+ payload.modes = ["off", "heat", "cool", "auto"];
684
+ }
685
+ },
686
+ },
687
+ extend: [
688
+ bosch_1.boschGeneralExtend.handleZclVersionReadRequest(),
689
+ bosch_1.boschThermostatExtend.customThermostatCluster(),
690
+ bosch_1.boschThermostatExtend.customUserInterfaceCfgCluster(),
691
+ bosch_1.boschThermostatExtend.relayState(),
692
+ bosch_1.boschThermostatExtend.operatingMode({ enableReporting: true }),
693
+ bosch_1.boschThermostatExtend.rmThermostat(),
694
+ bosch_1.boschThermostatExtend.setpointChangeSource({ enableReporting: true }),
695
+ bosch_1.boschThermostatExtend.humidity(),
696
+ bosch_1.boschThermostatExtend.heaterType(),
697
+ bosch_1.boschThermostatExtend.valveType(),
698
+ bosch_1.boschThermostatExtend.cableSensorMode(),
699
+ bosch_1.boschThermostatExtend.cableSensorTemperature(),
700
+ bosch_1.boschThermostatExtend.windowOpenMode(),
701
+ bosch_1.boschThermostatExtend.boostHeating(),
702
+ bosch_1.boschThermostatExtend.childLock(),
703
+ bosch_1.boschThermostatExtend.displayBrightness(),
704
+ bosch_1.boschThermostatExtend.displaySwitchOnDuration(),
705
+ bosch_1.boschThermostatExtend.activityLedState(),
706
+ bosch_1.boschThermostatExtend.errorState({ enableReporting: true }),
707
+ ],
708
+ ota: true,
709
+ },
710
+ {
711
+ zigbeeModel: ["Champion"],
712
+ model: "8750001213",
713
+ vendor: "Bosch",
714
+ description: "Twinguard",
715
+ extend: [
716
+ m.deviceAddCustomCluster("twinguardSmokeDetector", {
717
+ ID: 0xe000,
718
+ manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.ROBERT_BOSCH_GMBH,
719
+ attributes: {
720
+ sensitivity: { ID: 0x4003, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
721
+ },
722
+ commands: {
723
+ initiateTestMode: {
724
+ ID: 0x00,
725
+ parameters: [],
726
+ },
727
+ },
728
+ commandsResponse: {},
729
+ }),
730
+ m.deviceAddCustomCluster("twinguardMeasurements", {
731
+ ID: 0xe002,
732
+ manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.ROBERT_BOSCH_GMBH,
733
+ attributes: {
734
+ humidity: { ID: 0x4000, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
735
+ unknown1: { ID: 0x4001, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
736
+ unknown2: { ID: 0x4002, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
737
+ airpurity: { ID: 0x4003, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
738
+ temperature: { ID: 0x4004, type: zigbee_herdsman_1.Zcl.DataType.INT16, write: true, min: -32768 },
739
+ illuminance: { ID: 0x4005, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
740
+ battery: { ID: 0x4006, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
741
+ unknown3: { ID: 0x4007, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
742
+ unknown4: { ID: 0x4008, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
743
+ pressure: { ID: 0x4009, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff }, // Not yet confirmed
744
+ unknown6: { ID: 0x400a, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
745
+ unknown7: { ID: 0x400b, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
746
+ unknown8: { ID: 0x400c, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
747
+ },
748
+ commands: {},
749
+ commandsResponse: {},
750
+ }),
751
+ m.deviceAddCustomCluster("twinguardOptions", {
752
+ ID: 0xe004,
753
+ manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.ROBERT_BOSCH_GMBH,
754
+ attributes: {
755
+ unknown1: { ID: 0x4000, type: zigbee_herdsman_1.Zcl.DataType.BITMAP8, write: true }, // 0,1 ??? read during pairing
756
+ pre_alarm: { ID: 0x4001, type: zigbee_herdsman_1.Zcl.DataType.BITMAP8, write: true }, // 0,1 on/off
757
+ },
758
+ commands: {},
759
+ commandsResponse: {},
760
+ }),
761
+ m.deviceAddCustomCluster("twinguardSetup", {
762
+ ID: 0xe006,
763
+ manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.ROBERT_BOSCH_GMBH,
764
+ attributes: {
765
+ unknown1: { ID: 0x5003, type: zigbee_herdsman_1.Zcl.DataType.INT8, write: true, min: -128 }, // perhaps signal strength? -7?
766
+ unknown2: { ID: 0x5004, type: zigbee_herdsman_1.Zcl.DataType.UINT8, write: true, max: 0xff }, // ????
767
+ heartbeat: { ID: 0x5005, type: zigbee_herdsman_1.Zcl.DataType.BITMAP8, write: true }, // 0
768
+ },
769
+ commands: {
770
+ pairingCompleted: {
771
+ ID: 0x01,
772
+ parameters: [],
773
+ },
774
+ },
775
+ commandsResponse: {},
776
+ }),
777
+ m.deviceAddCustomCluster("twinguardAlarm", {
778
+ ID: 0xe007,
779
+ manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.ROBERT_BOSCH_GMBH,
780
+ attributes: {
781
+ alarm_status: { ID: 0x5000, type: zigbee_herdsman_1.Zcl.DataType.BITMAP32, write: true },
782
+ },
783
+ commands: {
784
+ burglarAlarm: {
785
+ ID: 0x01,
786
+ parameters: [
787
+ { name: "data", type: zigbee_herdsman_1.Zcl.DataType.UINT8, max: 0xff }, // data:1 trips the siren data:0 should stop the siren
788
+ ],
789
+ },
790
+ },
791
+ commandsResponse: {},
792
+ }),
793
+ boschExtend.twinguard(),
794
+ ],
795
+ configure: async (device, coordinatorEndpoint) => {
796
+ await reporting.bind(device.getEndpoint(7), coordinatorEndpoint, ["genPollCtrl"]);
797
+ await reporting.bind(device.getEndpoint(1), coordinatorEndpoint, ["genAlarms", "twinguardSmokeDetector", "twinguardOptions"]);
798
+ await reporting.bind(device.getEndpoint(3), coordinatorEndpoint, ["twinguardMeasurements"]);
799
+ await reporting.bind(device.getEndpoint(12), coordinatorEndpoint, ["twinguardSetup", "twinguardAlarm"]);
800
+ await device.getEndpoint(1).read("twinguardOptions", ["unknown1"], bosch_1.manufacturerOptions); // Needed for pairing
801
+ await device
802
+ .getEndpoint(12)
803
+ .command("twinguardSetup", "pairingCompleted", {}, bosch_1.manufacturerOptions); // Needed for pairing
804
+ await device
805
+ .getEndpoint(1)
806
+ .write("twinguardSmokeDetector", { sensitivity: 0x0002 }, bosch_1.manufacturerOptions); // Setting defaults
807
+ await device.getEndpoint(1).write("twinguardOptions", { pre_alarm: 0x01 }, bosch_1.manufacturerOptions); // Setting defaults
808
+ await device.getEndpoint(12).write("twinguardSetup", { heartbeat: 0x01 }, bosch_1.manufacturerOptions); // Setting defaults
809
+ await device
810
+ .getEndpoint(1)
811
+ .read("twinguardSmokeDetector", ["sensitivity"], bosch_1.manufacturerOptions);
812
+ await device.getEndpoint(1).read("twinguardOptions", ["pre_alarm"], bosch_1.manufacturerOptions);
813
+ await device.getEndpoint(12).read("twinguardSetup", ["heartbeat"], bosch_1.manufacturerOptions);
814
+ },
815
+ },
816
+ {
817
+ zigbeeModel: ["RFPR-ZB-SH-EU"],
818
+ model: "BSEN-M",
819
+ vendor: "Bosch",
820
+ description: "Motion detector",
821
+ extend: [
822
+ bosch_1.boschBsenExtend.changedCheckinInterval(),
823
+ bosch_1.boschBsenExtend.tamperAndOccupancyAlarm(),
824
+ bosch_1.boschBsenExtend.battery(),
825
+ bosch_1.boschBsenExtend.sensitivityLevel(),
826
+ bosch_1.boschBsenExtend.testMode(),
827
+ bosch_1.boschBsenExtend.illuminance(),
828
+ bosch_1.boschBsenExtend.temperature(),
829
+ ],
830
+ },
831
+ {
832
+ zigbeeModel: ["RBSH-SP-ZB-EU", "RBSH-SP-ZB-FR", "RBSH-SP-ZB-GB"],
833
+ model: "BSP-FZ2",
834
+ vendor: "Bosch",
835
+ description: "Smart plug compact (type F plug)",
836
+ extend: [
837
+ bosch_1.boschGeneralEnergyDeviceExtend.customMeteringCluster(),
838
+ bosch_1.boschSmartPlugExtend.smartPlugCluster(),
839
+ bosch_1.boschGeneralExtend.handleRenamedCustomCluster("boschSpecific", "boschEnergyDevice"),
840
+ bosch_1.boschSmartPlugExtend.onOff(),
841
+ bosch_1.boschGeneralEnergyDeviceExtend.autoOff(),
842
+ bosch_1.boschSmartPlugExtend.electricityMeter(),
843
+ bosch_1.boschGeneralEnergyDeviceExtend.resetEnergyMeters(),
844
+ ],
845
+ version: "0.0.1",
846
+ ota: true,
847
+ whiteLabel: [
848
+ { vendor: "Bosch", model: "BSP-EZ2", description: "Smart plug compact (type E plug)", fingerprint: [{ modelID: "RBSH-SP-ZB-FR" }] },
849
+ { vendor: "Bosch", model: "BSP-GZ2", description: "Smart plug compact (type G plug)", fingerprint: [{ modelID: "RBSH-SP-ZB-GB" }] },
850
+ ],
851
+ },
852
+ {
853
+ zigbeeModel: ["RBSH-SP2-ZB-EU"],
854
+ model: "BSP-FD",
855
+ vendor: "Bosch",
856
+ description: "Smart plug compact [+M]",
857
+ extend: [
858
+ bosch_1.boschGeneralExtend.handleZclVersionReadRequest(),
859
+ bosch_1.boschGeneralEnergyDeviceExtend.customMeteringCluster(),
860
+ bosch_1.boschSmartPlugExtend.smartPlugCluster(),
861
+ bosch_1.boschSmartPlugExtend.onOff(),
862
+ bosch_1.boschGeneralEnergyDeviceExtend.autoOff(),
863
+ bosch_1.boschSmartPlugExtend.ledBrightness(),
864
+ bosch_1.boschSmartPlugExtend.energySavingMode(),
865
+ bosch_1.boschSmartPlugExtend.electricityMeter({ producedEnergy: true }),
866
+ bosch_1.boschGeneralEnergyDeviceExtend.resetEnergyMeters(),
867
+ ],
868
+ },
869
+ {
870
+ zigbeeModel: ["RBSH-SWD-ZB"],
871
+ model: "BSEN-C2",
872
+ vendor: "Bosch",
873
+ description: "Door/window contact II",
874
+ extend: [
875
+ bosch_1.boschDoorWindowContactExtend.doorWindowContactCluster(),
876
+ bosch_1.boschGeneralExtend.handleRenamedCustomCluster("boschSpecific", "boschDoorWindowContactCluster"),
877
+ bosch_1.boschDoorWindowContactExtend.reportContactState(),
878
+ bosch_1.boschDoorWindowContactExtend.reportButtonActions(),
879
+ bosch_1.boschDoorWindowContactExtend.breakFunctionality(),
880
+ bosch_1.boschGeneralExtend.batteryWithPercentageAndLowStatus(),
881
+ ],
882
+ ota: true,
883
+ },
884
+ {
885
+ zigbeeModel: ["RBSH-SWDV-ZB"],
886
+ model: "BSEN-CV",
887
+ vendor: "Bosch",
888
+ description: "Door/window contact II plus",
889
+ extend: [
890
+ bosch_1.boschDoorWindowContactExtend.doorWindowContactCluster(),
891
+ bosch_1.boschGeneralExtend.handleRenamedCustomCluster("boschSpecific", "boschDoorWindowContactCluster"),
892
+ bosch_1.boschDoorWindowContactExtend.reportContactState(),
893
+ bosch_1.boschDoorWindowContactExtend.reportButtonActions(),
894
+ bosch_1.boschDoorWindowContactExtend.vibrationDetection(),
895
+ bosch_1.boschDoorWindowContactExtend.breakFunctionality(),
896
+ bosch_1.boschGeneralExtend.batteryWithPercentageAndLowStatus(),
897
+ ],
898
+ },
899
+ {
900
+ zigbeeModel: ["RBSH-SWD2-ZB"],
901
+ model: "BSEN-C2D",
902
+ vendor: "Bosch",
903
+ description: "Door/window contact II [+M]",
904
+ extend: [
905
+ bosch_1.boschDoorWindowContactExtend.doorWindowContactCluster(),
906
+ bosch_1.boschGeneralExtend.handleRenamedCustomCluster("boschSpecific", "boschDoorWindowContactCluster"),
907
+ bosch_1.boschDoorWindowContactExtend.reportContactState(),
908
+ bosch_1.boschDoorWindowContactExtend.reportButtonActions({ doublePressSupported: true }),
909
+ bosch_1.boschDoorWindowContactExtend.breakFunctionality(),
910
+ bosch_1.boschGeneralExtend.batteryWithPercentageAndLowStatus(),
911
+ ],
912
+ },
913
+ {
914
+ zigbeeModel: ["RBSH-MMD-ZB-EU"],
915
+ model: "BMCT-DZ",
916
+ vendor: "Bosch",
917
+ description: "Phase-cut dimmer",
918
+ extend: [
919
+ bosch_1.boschGeneralExtend.handleZclVersionReadRequest(),
920
+ m.deviceAddCustomCluster("boschEnergyDevice", {
921
+ ID: 0xfca0,
922
+ manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.ROBERT_BOSCH_GMBH,
923
+ attributes: {
924
+ switchType: { ID: 0x0001, type: zigbee_herdsman_1.Zcl.DataType.ENUM8, write: true, max: 0xff },
925
+ childLock: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN, write: true },
926
+ dimmerType: { ID: 0x0022, type: zigbee_herdsman_1.Zcl.DataType.ENUM8, write: true, max: 0xff },
927
+ minimumBrightness: { ID: 0x0025, type: zigbee_herdsman_1.Zcl.DataType.UINT8, write: true, max: 0xff },
928
+ maximumBrightness: { ID: 0x0026, type: zigbee_herdsman_1.Zcl.DataType.UINT8, write: true, max: 0xff },
929
+ switchMode: { ID: 0x0031, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN, write: true },
930
+ },
931
+ commands: {},
932
+ commandsResponse: {},
933
+ }),
934
+ bosch_1.boschGeneralExtend.handleRenamedCustomCluster("boschSpecific", "boschEnergyDevice"),
935
+ m.light({
936
+ configureReporting: true,
937
+ levelConfig: { features: ["on_level", "current_level_startup"] },
938
+ powerOnBehavior: true,
939
+ effect: false,
940
+ }),
941
+ bosch_1.boschBmctExtend.switchType({
942
+ switchTypeLookup: boschBmctDzSettings.switchTypes,
943
+ }),
944
+ bosch_1.boschBmctExtend.reportSwitchAction({
945
+ switchTypeLookup: boschBmctDzSettings.switchTypes,
946
+ hasDualSwitchInputs: boschBmctDzSettings.hasDualSwitchInputs,
947
+ }),
948
+ bosch_1.boschBmctExtend.switchMode({
949
+ switchModeLookup: boschBmctDzSettings.switchModes,
950
+ switchTypeLookup: boschBmctDzSettings.switchTypes,
951
+ }),
952
+ bosch_1.boschBmctExtend.childLock(),
953
+ bosch_1.boschBmctExtend.brightnessRange(),
954
+ bosch_1.boschBmctExtend.dimmerType(),
955
+ ],
956
+ ota: true,
957
+ },
958
+ {
959
+ zigbeeModel: ["RBSH-MMR-ZB-EU"],
960
+ model: "BMCT-RZ",
961
+ vendor: "Bosch",
962
+ description: "Relay (potential free)",
963
+ extend: [
964
+ bosch_1.boschGeneralExtend.handleZclVersionReadRequest(),
965
+ m.deviceAddCustomCluster("boschEnergyDevice", {
966
+ ID: 0xfca0,
967
+ manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.ROBERT_BOSCH_GMBH,
968
+ attributes: {
969
+ switchType: { ID: 0x0001, type: zigbee_herdsman_1.Zcl.DataType.ENUM8, write: true, max: 0xff },
970
+ childLock: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN, write: true },
971
+ pulseLength: { ID: 0x0024, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
972
+ switchMode: { ID: 0x0031, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN, write: true },
973
+ actuatorType: { ID: 0x0034, type: zigbee_herdsman_1.Zcl.DataType.ENUM8, write: true, max: 0xff },
974
+ },
975
+ commands: {},
976
+ commandsResponse: {},
977
+ }),
978
+ bosch_1.boschGeneralExtend.handleRenamedCustomCluster("boschSpecific", "boschEnergyDevice"),
979
+ bosch_1.boschBmctExtend.rzDeviceModes({
980
+ deviceModesLookup: boschBmctRzSettings.deviceModes,
981
+ }),
982
+ m.onOff({ powerOnBehavior: false }),
983
+ bosch_1.boschBmctExtend.switchType({
984
+ switchTypeLookup: boschBmctRzSettings.switchTypes,
985
+ }),
986
+ bosch_1.boschBmctExtend.reportSwitchAction({
987
+ switchTypeLookup: boschBmctRzSettings.switchTypes,
988
+ hasDualSwitchInputs: boschBmctRzSettings.hasDualSwitchInputs,
989
+ }),
990
+ bosch_1.boschBmctExtend.switchMode({
991
+ switchModeLookup: boschBmctRzSettings.switchModes,
992
+ switchTypeLookup: boschBmctRzSettings.switchTypes,
993
+ }),
994
+ bosch_1.boschBmctExtend.childLock(),
995
+ bosch_1.boschGeneralEnergyDeviceExtend.autoOff(),
996
+ bosch_1.boschBmctExtend.pulseLength({
997
+ updateDeviceMode: true,
998
+ deviceModesLookup: boschBmctRzSettings.deviceModes,
999
+ }),
1000
+ bosch_1.boschBmctExtend.actuatorType(),
1001
+ ],
1002
+ ota: true,
1003
+ },
1004
+ {
1005
+ zigbeeModel: ["RBSH-MMS-ZB-EU"],
1006
+ model: "BMCT-SLZ",
1007
+ vendor: "Bosch",
1008
+ description: "Light/shutter control unit II",
1009
+ extend: [
1010
+ m.deviceEndpoints({ endpoints: { left: 2, right: 3 } }),
1011
+ m.electricityMeter({
1012
+ voltage: false,
1013
+ current: false,
1014
+ power: { change: 1 },
1015
+ energy: { change: 1 },
1016
+ }),
1017
+ m.deviceAddCustomCluster("boschEnergyDevice", {
1018
+ ID: 0xfca0,
1019
+ manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.ROBERT_BOSCH_GMBH,
1020
+ attributes: {
1021
+ deviceMode: { ID: 0x0000, type: zigbee_herdsman_1.Zcl.DataType.ENUM8, write: true, max: 0xff },
1022
+ switchType: { ID: 0x0001, type: zigbee_herdsman_1.Zcl.DataType.ENUM8, write: true, max: 0xff },
1023
+ switchMode: { ID: 0x0031, type: zigbee_herdsman_1.Zcl.DataType.UINT8, write: true, max: 0xff },
1024
+ calibrationOpeningTime: { ID: 0x0002, type: zigbee_herdsman_1.Zcl.DataType.UINT32, write: true, max: 0xffffffff },
1025
+ calibrationClosingTime: { ID: 0x0003, type: zigbee_herdsman_1.Zcl.DataType.UINT32, write: true, max: 0xffffffff },
1026
+ // 0x0005 isn't used at all when using the Bosch SHC as of 30-06-2025.
1027
+ // As I don't have any shutters, I can't run all calibration steps
1028
+ // successfully. So, keep any comments regarding these
1029
+ // attributes with caution.
1030
+ calibrationButtonHoldTime: { ID: 0x0005, type: zigbee_herdsman_1.Zcl.DataType.UINT8, write: true, max: 0xff },
1031
+ autoOffEnabled: { ID: 0x0006, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN, write: true },
1032
+ autoOffTime: { ID: 0x0007, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
1033
+ childLock: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN, write: true },
1034
+ // 0x000f is only being set when using the automatic calibration.
1035
+ // It's being set to 0 then before sending the calibration
1036
+ // command. Additionally, when changing
1037
+ // the calibrationOpeningTime or calibrationClosingTime in the
1038
+ // Bosch app, it's also being set to 0.
1039
+ // I couldn't find any way to set 0x000f manually in the Bosch app.
1040
+ calibrationMotorStartDelay: { ID: 0x000f, type: zigbee_herdsman_1.Zcl.DataType.UINT8, write: true, max: 0xff },
1041
+ calibrationMotorReverseDirection: { ID: 0x0032, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN, write: true },
1042
+ motorState: { ID: 0x0013, type: zigbee_herdsman_1.Zcl.DataType.ENUM8, write: true, max: 0xff },
1043
+ // unknownAttributeOne is always being configured as reporting
1044
+ // attribute on endpoint 1 when using the Bosch SHC.
1045
+ // Can't tell what this attribute does (always received
1046
+ // 0x00 as answer on manual lookup).
1047
+ unknownAttributeOne: { ID: 0x0004, type: zigbee_herdsman_1.Zcl.DataType.BITMAP8, write: true },
1048
+ // Attribute is being set to 255 when deactivating the automatic
1049
+ // detection of the motor end position by the Bosch SHC. After
1050
+ // activating the automatic end position detection it's being set
1051
+ // to 0 by the Bosch SHC. Apart from that, there's no way to manually
1052
+ // change the value.
1053
+ calibrationMotorEndPosition: { ID: 0x0021, type: zigbee_herdsman_1.Zcl.DataType.UINT8, write: true, max: 0xff },
1054
+ // 0x0033 is used when setting the motor start delay manually
1055
+ // using the Bosch SHC as of 30-06-2025.
1056
+ // If the user wants to automatically detect the delay during
1057
+ // calibration, it's being set to 0 over the Bosch app.
1058
+ calibrationNewMotorStartDelay: { ID: 0x0033, type: zigbee_herdsman_1.Zcl.DataType.UINT16, write: true, max: 0xffff },
1059
+ // 0x0010 and 0x0011 is being set simultaneously with the same value
1060
+ // when changing the delay for the rotation of the slats on venetian
1061
+ // blinds. Maybe one attribute for each direction?
1062
+ // It's also being configured as reporting attribute when using
1063
+ // venetian blinds.
1064
+ slatRotationDurationOne: { ID: 0x0010, type: zigbee_herdsman_1.Zcl.DataType.UINT32, write: true, max: 0xffffffff },
1065
+ slatRotationDurationTwo: { ID: 0x0011, type: zigbee_herdsman_1.Zcl.DataType.UINT32, write: true, max: 0xffffffff },
1066
+ // 0x002a is only being used when doing an automatic calibration
1067
+ // with the Bosch specific startAutomaticMotorCalibration command.
1068
+ // It's being set to true before starting the calibration process.
1069
+ // This happens regardless of the shutter type. I didn't capture
1070
+ // any packages where this attribute is being actively set to false.
1071
+ // Maybe this activates some "full calibration" flag which is being
1072
+ // set to false by the device itself afterward?
1073
+ unknownAttributeTwo: { ID: 0x002a, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN, write: true },
1074
+ },
1075
+ commands: {
1076
+ // Command being sent by the Bosch SHC when starting an
1077
+ // automatic shutter calibration.
1078
+ startAutomaticMotorCalibration: { ID: 0x00, parameters: [] },
1079
+ },
1080
+ commandsResponse: {},
1081
+ }),
1082
+ bosch_1.boschGeneralExtend.handleRenamedCustomCluster("boschSpecific", "boschEnergyDevice"),
1083
+ bosch_1.boschGeneralExtend.handleZclVersionReadRequest(),
1084
+ bosch_1.boschBmctExtend.slzExtends(),
1085
+ bosch_1.boschGeneralEnergyDeviceExtend.customMeteringCluster(),
1086
+ bosch_1.boschGeneralEnergyDeviceExtend.resetEnergyMeters(),
1087
+ ],
1088
+ ota: true,
1089
+ configure: async (device, coordinatorEndpoint) => {
1090
+ const lightConfiguration = async () => {
1091
+ const endpoint1 = device.getEndpoint(1);
1092
+ await reporting.bind(endpoint1, coordinatorEndpoint, ["genIdentify"]);
1093
+ await endpoint1.read("boschEnergyDevice", ["switchType"]);
1094
+ const endpoint2 = device.getEndpoint(2);
1095
+ await reporting.bind(endpoint2, coordinatorEndpoint, ["genIdentify", "genOnOff", "boschEnergyDevice"]);
1096
+ await reporting.onOff(endpoint2);
1097
+ await endpoint2.read("genOnOff", ["onOff", "startUpOnOff"]);
1098
+ await endpoint2.read("boschEnergyDevice", [
1099
+ "switchMode",
1100
+ "childLock",
1101
+ "autoOffEnabled",
1102
+ "autoOffTime",
1103
+ ]);
1104
+ const endpoint3 = device.getEndpoint(3);
1105
+ await reporting.bind(endpoint3, coordinatorEndpoint, ["genIdentify", "genOnOff", "boschEnergyDevice"]);
1106
+ await reporting.onOff(endpoint3);
1107
+ await endpoint3.read("genOnOff", ["onOff", "startUpOnOff"]);
1108
+ await endpoint3.read("boschEnergyDevice", [
1109
+ "switchMode",
1110
+ "childLock",
1111
+ "autoOffEnabled",
1112
+ "autoOffTime",
1113
+ ]);
1114
+ };
1115
+ const shutterConfiguration = async () => {
1116
+ const endpoint1 = device.getEndpoint(1);
1117
+ await reporting.bind(endpoint1, coordinatorEndpoint, ["genIdentify", "closuresWindowCovering", "boschEnergyDevice"]);
1118
+ await reporting.currentPositionLiftPercentage(endpoint1);
1119
+ await endpoint1.read("closuresWindowCovering", ["currentPositionLiftPercentage"]);
1120
+ const payloadMotorState = (0, reporting_1.payload)("motorState", 0, constants_1.repInterval.MAX, 0);
1121
+ await endpoint1.configureReporting("boschEnergyDevice", payloadMotorState);
1122
+ await endpoint1.read("boschEnergyDevice", [
1123
+ "switchType",
1124
+ "switchMode",
1125
+ "motorState",
1126
+ "calibrationOpeningTime",
1127
+ "calibrationClosingTime",
1128
+ "calibrationButtonHoldTime",
1129
+ "calibrationMotorStartDelay",
1130
+ "childLock",
1131
+ ]);
1132
+ };
1133
+ const endpoint1 = device.getEndpoint(1);
1134
+ await endpoint1.read("boschEnergyDevice", ["deviceMode"]);
1135
+ await lightConfiguration();
1136
+ await shutterConfiguration();
1137
+ },
1138
+ exposes: (device, options) => {
1139
+ const stateDeviceMode = {
1140
+ light: 0x04,
1141
+ shutter: 0x01,
1142
+ disabled: 0x00,
1143
+ };
1144
+ const stateMotor = {
1145
+ stopped: 0x00,
1146
+ opening: 0x01,
1147
+ closing: 0x02,
1148
+ };
1149
+ const stateSwitchType = {
1150
+ button: 0x01,
1151
+ button_key_change: 0x02,
1152
+ rocker_switch: 0x03,
1153
+ rocker_switch_key_change: 0x04,
1154
+ none: 0x00,
1155
+ };
1156
+ const stateSwitchMode = {
1157
+ coupled: 0x00,
1158
+ decoupled: 0x01,
1159
+ only_short_press_decoupled: 0x02,
1160
+ only_long_press_decoupled: 0x03,
1161
+ };
1162
+ const commonExposes = (switchType) => {
1163
+ const exposeList = [];
1164
+ exposeList.push(e.enum("switch_type", ea.ALL, Object.keys(stateSwitchType)).withDescription("Module controlled by a rocker switch or a button"));
1165
+ if (switchType !== "none") {
1166
+ let supportedActionTypes;
1167
+ switch (switchType) {
1168
+ case "button":
1169
+ case "button_key_change":
1170
+ supportedActionTypes = [
1171
+ "press_released_left",
1172
+ "press_released_right",
1173
+ "hold_left",
1174
+ "hold_right",
1175
+ "hold_released_left",
1176
+ "hold_released_right",
1177
+ ];
1178
+ break;
1179
+ case "rocker_switch":
1180
+ case "rocker_switch_key_change":
1181
+ supportedActionTypes = ["opened_left", "opened_right", "closed_left", "closed_right"];
1182
+ break;
1183
+ }
1184
+ exposeList.push(e.action(supportedActionTypes), e.action_duration());
1185
+ }
1186
+ return exposeList;
1187
+ };
1188
+ const lightExposes = (endpoint, switchType) => {
1189
+ const exposeList = [];
1190
+ exposeList.push(e.switch().withEndpoint(endpoint), e.power_on_behavior().withEndpoint(endpoint), e
1191
+ .binary("auto_off_enabled", ea.ALL, "ON", "OFF")
1192
+ .withEndpoint(endpoint)
1193
+ .withDescription("Enable/Disable the automatic turn-off feature"), e
1194
+ .numeric("auto_off_time", ea.ALL)
1195
+ .withValueMin(0)
1196
+ .withValueMax(720)
1197
+ .withValueStep(1)
1198
+ .withUnit("min")
1199
+ .withDescription("Turn off the output after the specified amount of time. Only in action when the automatic turn-off is enabled.")
1200
+ .withEndpoint(endpoint));
1201
+ if (switchType !== "none") {
1202
+ let supportedSwitchModes;
1203
+ switch (switchType) {
1204
+ case "button":
1205
+ case "button_key_change":
1206
+ supportedSwitchModes = Object.keys(stateSwitchMode);
1207
+ break;
1208
+ case "rocker_switch":
1209
+ case "rocker_switch_key_change":
1210
+ supportedSwitchModes = Object.keys(stateSwitchMode).filter((switchMode) => switchMode === "coupled" || switchMode === "decoupled");
1211
+ break;
1212
+ }
1213
+ exposeList.push(e
1214
+ .enum("switch_mode", ea.ALL, supportedSwitchModes)
1215
+ .withEndpoint(endpoint)
1216
+ .withDescription("Decouple the switch from the corresponding output to use it for other purposes. Please keep in mind that the available options depend on the used switch type."), e.binary("child_lock", ea.ALL, "ON", "OFF").withEndpoint(endpoint).withDescription("Enable/Disable child lock"));
1217
+ }
1218
+ return exposeList;
1219
+ };
1220
+ const coverExposes = (switchType) => {
1221
+ const exposeList = [];
1222
+ exposeList.push(e.cover_position(), e.enum("motor_state", ea.STATE, Object.keys(stateMotor)).withDescription("Current shutter motor state"), e
1223
+ .numeric("calibration_closing_time", ea.ALL)
1224
+ .withUnit("s")
1225
+ .withDescription("Calibrate shutter closing time")
1226
+ .withValueMin(1)
1227
+ .withValueMax(90)
1228
+ .withValueStep(0.1), e
1229
+ .numeric("calibration_opening_time", ea.ALL)
1230
+ .withUnit("s")
1231
+ .withDescription("Calibrate shutter opening time")
1232
+ .withValueMin(1)
1233
+ .withValueMax(90)
1234
+ .withValueStep(0.1), e
1235
+ .numeric("calibration_button_hold_time", ea.ALL)
1236
+ .withUnit("s")
1237
+ .withDescription("Time to hold for long press")
1238
+ .withValueMin(0.1)
1239
+ .withValueMax(2)
1240
+ .withValueStep(0.1), e
1241
+ .numeric("calibration_motor_start_delay", ea.ALL)
1242
+ .withUnit("s")
1243
+ .withDescription("Delay between command and motor start")
1244
+ .withValueMin(0)
1245
+ .withValueMax(20)
1246
+ .withValueStep(0.1));
1247
+ if (switchType !== "none") {
1248
+ let supportedSwitchModes;
1249
+ switch (switchType) {
1250
+ case "button":
1251
+ case "button_key_change":
1252
+ supportedSwitchModes = Object.keys(stateSwitchMode).filter((switchMode) => switchMode === "coupled" || switchMode === "only_long_press_decoupled");
1253
+ break;
1254
+ case "rocker_switch":
1255
+ case "rocker_switch_key_change":
1256
+ supportedSwitchModes = Object.keys(stateSwitchMode).filter((switchMode) => switchMode === "coupled");
1257
+ break;
1258
+ }
1259
+ exposeList.push(e
1260
+ .enum("switch_mode", ea.ALL, supportedSwitchModes)
1261
+ .withDescription("Decouple the switch from the corresponding output to use it for other purposes. Please keep in mind that the available options depend on the used switch type."), e.binary("child_lock", ea.ALL, "ON", "OFF").withDescription("Enable/Disable child lock"));
1262
+ }
1263
+ return exposeList;
1264
+ };
1265
+ if (!utils.isDummyDevice(device)) {
1266
+ const deviceModeKey = device.getEndpoint(1).getClusterAttributeValue("boschEnergyDevice", "deviceMode");
1267
+ const deviceMode = Object.keys(stateDeviceMode).find((key) => stateDeviceMode[key] === deviceModeKey);
1268
+ const switchTypeKey = device.getEndpoint(1).getClusterAttributeValue("boschEnergyDevice", "switchType");
1269
+ const switchType = Object.keys(stateSwitchType).find((key) => stateSwitchType[key] === switchTypeKey);
1270
+ if (deviceMode === "light") {
1271
+ return [...commonExposes(switchType), ...lightExposes("left", switchType), ...lightExposes("right", switchType)];
1272
+ }
1273
+ if (deviceMode === "shutter") {
1274
+ return [...commonExposes(switchType), ...coverExposes(switchType)];
1275
+ }
1276
+ }
1277
+ return [e.enum("device_mode", ea.ALL, Object.keys(stateDeviceMode)).withDescription("Device mode")];
1278
+ },
1279
+ },
1280
+ {
1281
+ zigbeeModel: ["RBSH-US4BTN-ZB-EU"],
1282
+ model: "BHI-US",
1283
+ vendor: "Bosch",
1284
+ description: "Universal Switch II",
1285
+ fromZigbee: [fzLocal.bhius_button_press, fzLocal.bhius_config, fz.battery],
1286
+ toZigbee: [tzLocal.bhius_config],
1287
+ exposes: [
1288
+ e.battery_low(),
1289
+ e.battery_voltage(),
1290
+ e
1291
+ .text("config_led_top_left_press", ea.ALL)
1292
+ .withLabel("LED config (top left short press)")
1293
+ .withDescription(labelShortPress)
1294
+ .withCategory("config"),
1295
+ e
1296
+ .text("config_led_top_right_press", ea.ALL)
1297
+ .withLabel("LED config (top right short press)")
1298
+ .withDescription(labelShortPress)
1299
+ .withCategory("config"),
1300
+ e
1301
+ .text("config_led_bottom_left_press", ea.ALL)
1302
+ .withLabel("LED config (bottom left short press)")
1303
+ .withDescription(labelShortPress)
1304
+ .withCategory("config"),
1305
+ e
1306
+ .text("config_led_bottom_right_press", ea.ALL)
1307
+ .withLabel("LED config (bottom right short press)")
1308
+ .withDescription(labelShortPress)
1309
+ .withCategory("config"),
1310
+ e
1311
+ .text("config_led_top_left_longpress", ea.ALL)
1312
+ .withLabel("LED config (top left long press)")
1313
+ .withDescription(labelLongPress)
1314
+ .withCategory("config"),
1315
+ e
1316
+ .text("config_led_top_right_longpress", ea.ALL)
1317
+ .withLabel("LED config (top right long press)")
1318
+ .withDescription(labelLongPress)
1319
+ .withCategory("config"),
1320
+ e
1321
+ .text("config_led_bottom_left_longpress", ea.ALL)
1322
+ .withLabel("LED config (bottom left long press)")
1323
+ .withDescription(labelLongPress)
1324
+ .withCategory("config"),
1325
+ e
1326
+ .text("config_led_bottom_right_longpress", ea.ALL)
1327
+ .withLabel("LED config (bottom right long press)")
1328
+ .withDescription(labelLongPress)
1329
+ .withCategory("config"),
1330
+ e.action([
1331
+ "button_top_left_release",
1332
+ "button_top_right_release",
1333
+ "button_bottom_left_release",
1334
+ "button_bottom_right_release",
1335
+ "button_top_left_longpress",
1336
+ "button_top_right_longpress",
1337
+ "button_bottom_left_longpress",
1338
+ "button_bottom_right_longpress",
1339
+ "button_top_left_longpress_release",
1340
+ "button_top_right_longpress_release",
1341
+ "button_bottom_left_longpress_release",
1342
+ "button_bottom_right_longpress_release",
1343
+ ]),
1344
+ ],
1345
+ extend: [
1346
+ m.deviceAddCustomCluster("boschSpecific", {
1347
+ ID: 0xfca1,
1348
+ manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.ROBERT_BOSCH_GMBH,
1349
+ attributes: {},
1350
+ commands: {
1351
+ confirmButtonPressed: {
1352
+ ID: 0x0010,
1353
+ parameters: [{ name: "data", type: zigbee_herdsman_1.Zcl.BuffaloZclDataType.BUFFER }],
1354
+ },
1355
+ pairingCompleted: {
1356
+ ID: 0x0012,
1357
+ parameters: [{ name: "data", type: zigbee_herdsman_1.Zcl.BuffaloZclDataType.BUFFER }],
1358
+ },
1359
+ },
1360
+ commandsResponse: {},
1361
+ }),
1362
+ ],
1363
+ configure: async (device, coordinatorEndpoint) => {
1364
+ const endpoint = device.getEndpoint(1);
1365
+ // Read default LED configuration
1366
+ await endpoint
1367
+ .read("boschSpecific", [0x0010, 0x0011, 0x0012, 0x0013], { ...bosch_1.manufacturerOptions, sendPolicy: "immediate" })
1368
+ .catch((error) => { });
1369
+ await endpoint
1370
+ .read("boschSpecific", [0x0020, 0x0021, 0x0022, 0x0023], { ...bosch_1.manufacturerOptions, sendPolicy: "immediate" })
1371
+ .catch((error) => { });
1372
+ // We also have to read this one. Value reads 0x0f, looks like a bitmap
1373
+ await endpoint.read("boschSpecific", [0x0024], { ...bosch_1.manufacturerOptions, sendPolicy: "immediate" });
1374
+ await endpoint.command("boschSpecific", "pairingCompleted", { data: Buffer.from([0x00]) }, { sendPolicy: "immediate" });
1375
+ await reporting.bind(endpoint, coordinatorEndpoint, ["genPowerCfg", "genBasic", "boschSpecific"]);
1376
+ await reporting.batteryPercentageRemaining(endpoint);
1377
+ await reporting.batteryVoltage(endpoint);
1378
+ },
1379
+ },
1380
+ ];
1381
+ //# sourceMappingURL=bosch.js.map