zigbee-herdsman-converters 21.0.0-pre.0 → 21.0.0-pre.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 (368) hide show
  1. package/CHANGELOG.md +191 -0
  2. package/converters/fromZigbee.d.ts +6 -7
  3. package/converters/fromZigbee.d.ts.map +1 -1
  4. package/converters/fromZigbee.js +58 -34
  5. package/converters/fromZigbee.js.map +1 -1
  6. package/converters/toZigbee.js +1 -1
  7. package/converters/toZigbee.js.map +1 -1
  8. package/devices/adeo.d.ts.map +1 -1
  9. package/devices/adeo.js +1 -2
  10. package/devices/adeo.js.map +1 -1
  11. package/devices/adurosmart.d.ts.map +1 -1
  12. package/devices/adurosmart.js +22 -2
  13. package/devices/adurosmart.js.map +1 -1
  14. package/devices/aeotec.js +1 -1
  15. package/devices/aeotec.js.map +1 -1
  16. package/devices/airam.d.ts.map +1 -1
  17. package/devices/airam.js +1 -13
  18. package/devices/airam.js.map +1 -1
  19. package/devices/amina.d.ts.map +1 -1
  20. package/devices/amina.js +1 -2
  21. package/devices/amina.js.map +1 -1
  22. package/devices/aurora_lighting.d.ts.map +1 -1
  23. package/devices/aurora_lighting.js +2 -3
  24. package/devices/aurora_lighting.js.map +1 -1
  25. package/devices/bitron.d.ts.map +1 -1
  26. package/devices/bitron.js +1 -2
  27. package/devices/bitron.js.map +1 -1
  28. package/devices/bosch.d.ts.map +1 -1
  29. package/devices/bosch.js +11 -10
  30. package/devices/bosch.js.map +1 -1
  31. package/devices/bticino.d.ts.map +1 -1
  32. package/devices/bticino.js +2 -3
  33. package/devices/bticino.js.map +1 -1
  34. package/devices/busch_jaeger.d.ts.map +1 -1
  35. package/devices/busch_jaeger.js +1 -11
  36. package/devices/busch_jaeger.js.map +1 -1
  37. package/devices/candeo.d.ts.map +1 -1
  38. package/devices/candeo.js +22 -72
  39. package/devices/candeo.js.map +1 -1
  40. package/devices/chacon.js +1 -1
  41. package/devices/chacon.js.map +1 -1
  42. package/devices/ctm.d.ts.map +1 -1
  43. package/devices/ctm.js +5 -8
  44. package/devices/ctm.js.map +1 -1
  45. package/devices/custom_devices_diy.d.ts.map +1 -1
  46. package/devices/custom_devices_diy.js +14 -11
  47. package/devices/custom_devices_diy.js.map +1 -1
  48. package/devices/danalock.d.ts.map +1 -1
  49. package/devices/danalock.js +1 -2
  50. package/devices/danalock.js.map +1 -1
  51. package/devices/danfoss.d.ts.map +1 -1
  52. package/devices/danfoss.js +1 -2
  53. package/devices/danfoss.js.map +1 -1
  54. package/devices/datek.d.ts.map +1 -1
  55. package/devices/datek.js +2 -4
  56. package/devices/datek.js.map +1 -1
  57. package/devices/develco.d.ts.map +1 -1
  58. package/devices/develco.js +17 -18
  59. package/devices/develco.js.map +1 -1
  60. package/devices/diyruz.d.ts.map +1 -1
  61. package/devices/diyruz.js +1 -2
  62. package/devices/diyruz.js.map +1 -1
  63. package/devices/dresden_elektronik.d.ts.map +1 -1
  64. package/devices/dresden_elektronik.js +3 -27
  65. package/devices/dresden_elektronik.js.map +1 -1
  66. package/devices/ecodim.d.ts.map +1 -1
  67. package/devices/ecodim.js +3 -4
  68. package/devices/ecodim.js.map +1 -1
  69. package/devices/ecozy.d.ts.map +1 -1
  70. package/devices/ecozy.js +1 -2
  71. package/devices/ecozy.js.map +1 -1
  72. package/devices/elko.js +3 -3
  73. package/devices/elko.js.map +1 -1
  74. package/devices/eurotronic.d.ts.map +1 -1
  75. package/devices/eurotronic.js +1 -2
  76. package/devices/eurotronic.js.map +1 -1
  77. package/devices/fantem.d.ts.map +1 -1
  78. package/devices/fantem.js +0 -1
  79. package/devices/fantem.js.map +1 -1
  80. package/devices/frient.js +1 -1
  81. package/devices/frient.js.map +1 -1
  82. package/devices/futurehome.d.ts.map +1 -1
  83. package/devices/futurehome.js +1 -2
  84. package/devices/futurehome.js.map +1 -1
  85. package/devices/gledopto.d.ts.map +1 -1
  86. package/devices/gledopto.js +44 -34
  87. package/devices/gledopto.js.map +1 -1
  88. package/devices/gmmts.d.ts.map +1 -1
  89. package/devices/gmmts.js +1 -2
  90. package/devices/gmmts.js.map +1 -1
  91. package/devices/heiman.d.ts.map +1 -1
  92. package/devices/heiman.js +3 -4
  93. package/devices/heiman.js.map +1 -1
  94. package/devices/heimgard_technologies.d.ts.map +1 -1
  95. package/devices/heimgard_technologies.js +5 -6
  96. package/devices/heimgard_technologies.js.map +1 -1
  97. package/devices/icasa.d.ts.map +1 -1
  98. package/devices/icasa.js +2 -25
  99. package/devices/icasa.js.map +1 -1
  100. package/devices/ikea.d.ts.map +1 -1
  101. package/devices/ikea.js +65 -60
  102. package/devices/ikea.js.map +1 -1
  103. package/devices/iluminize.d.ts.map +1 -1
  104. package/devices/iluminize.js +1 -2
  105. package/devices/iluminize.js.map +1 -1
  106. package/devices/immax.d.ts.map +1 -1
  107. package/devices/immax.js +3 -4
  108. package/devices/immax.js.map +1 -1
  109. package/devices/index.d.ts +1 -0
  110. package/devices/index.d.ts.map +1 -1
  111. package/devices/index.js +4 -0
  112. package/devices/index.js.map +1 -1
  113. package/devices/innr.d.ts.map +1 -1
  114. package/devices/innr.js +35 -35
  115. package/devices/innr.js.map +1 -1
  116. package/devices/inovelli.d.ts.map +1 -1
  117. package/devices/inovelli.js +3 -4
  118. package/devices/inovelli.js.map +1 -1
  119. package/devices/insta.d.ts.map +1 -1
  120. package/devices/insta.js +3 -12
  121. package/devices/insta.js.map +1 -1
  122. package/devices/javis.js +1 -1
  123. package/devices/javis.js.map +1 -1
  124. package/devices/jethome.d.ts.map +1 -1
  125. package/devices/jethome.js +1 -2
  126. package/devices/jethome.js.map +1 -1
  127. package/devices/kmpcil.d.ts.map +1 -1
  128. package/devices/kmpcil.js +1 -10
  129. package/devices/kmpcil.js.map +1 -1
  130. package/devices/konke.d.ts.map +1 -1
  131. package/devices/konke.js +2 -3
  132. package/devices/konke.js.map +1 -1
  133. package/devices/leedarson.d.ts.map +1 -1
  134. package/devices/leedarson.js +3 -11
  135. package/devices/leedarson.js.map +1 -1
  136. package/devices/legrand.d.ts.map +1 -1
  137. package/devices/legrand.js +31 -32
  138. package/devices/legrand.js.map +1 -1
  139. package/devices/leviton.d.ts.map +1 -1
  140. package/devices/leviton.js +1 -2
  141. package/devices/leviton.js.map +1 -1
  142. package/devices/lidl.d.ts.map +1 -1
  143. package/devices/lidl.js +1 -2
  144. package/devices/lidl.js.map +1 -1
  145. package/devices/lixee.d.ts.map +1 -1
  146. package/devices/lixee.js +1 -2
  147. package/devices/lixee.js.map +1 -1
  148. package/devices/lumi.d.ts.map +1 -1
  149. package/devices/lumi.js +25 -81
  150. package/devices/lumi.js.map +1 -1
  151. package/devices/lupus.d.ts.map +1 -1
  152. package/devices/lupus.js +3 -4
  153. package/devices/lupus.js.map +1 -1
  154. package/devices/lutron.d.ts.map +1 -1
  155. package/devices/lutron.js +7 -5
  156. package/devices/lutron.js.map +1 -1
  157. package/devices/lytko.d.ts.map +1 -1
  158. package/devices/lytko.js +6 -7
  159. package/devices/lytko.js.map +1 -1
  160. package/devices/meazon.d.ts.map +1 -1
  161. package/devices/meazon.js +2 -3
  162. package/devices/meazon.js.map +1 -1
  163. package/devices/moes.js +2 -2
  164. package/devices/moes.js.map +1 -1
  165. package/devices/muller_licht.d.ts.map +1 -1
  166. package/devices/muller_licht.js +5 -6
  167. package/devices/muller_licht.js.map +1 -1
  168. package/devices/namron.d.ts.map +1 -1
  169. package/devices/namron.js +18 -19
  170. package/devices/namron.js.map +1 -1
  171. package/devices/neo.d.ts.map +1 -1
  172. package/devices/neo.js +68 -0
  173. package/devices/neo.js.map +1 -1
  174. package/devices/net2grid.d.ts.map +1 -1
  175. package/devices/net2grid.js +1 -2
  176. package/devices/net2grid.js.map +1 -1
  177. package/devices/nodon.d.ts.map +1 -1
  178. package/devices/nodon.js +13 -14
  179. package/devices/nodon.js.map +1 -1
  180. package/devices/nue_3a.d.ts.map +1 -1
  181. package/devices/nue_3a.js +3 -4
  182. package/devices/nue_3a.js.map +1 -1
  183. package/devices/osram.d.ts.map +1 -1
  184. package/devices/osram.js +20 -27
  185. package/devices/osram.js.map +1 -1
  186. package/devices/owon.d.ts.map +1 -1
  187. package/devices/owon.js +2 -3
  188. package/devices/owon.js.map +1 -1
  189. package/devices/perenio.d.ts.map +1 -1
  190. package/devices/perenio.js +3 -4
  191. package/devices/perenio.js.map +1 -1
  192. package/devices/philips.d.ts.map +1 -1
  193. package/devices/philips.js +31 -16
  194. package/devices/philips.js.map +1 -1
  195. package/devices/pushok.d.ts.map +1 -1
  196. package/devices/pushok.js +13 -11
  197. package/devices/pushok.js.map +1 -1
  198. package/devices/salus_controls.d.ts.map +1 -1
  199. package/devices/salus_controls.js +9 -10
  200. package/devices/salus_controls.js.map +1 -1
  201. package/devices/saswell.d.ts.map +1 -1
  202. package/devices/saswell.js +2 -1
  203. package/devices/saswell.js.map +1 -1
  204. package/devices/schneider_electric.d.ts.map +1 -1
  205. package/devices/schneider_electric.js +117 -17
  206. package/devices/schneider_electric.js.map +1 -1
  207. package/devices/securifi.d.ts.map +1 -1
  208. package/devices/securifi.js +1 -2
  209. package/devices/securifi.js.map +1 -1
  210. package/devices/sengled.d.ts.map +1 -1
  211. package/devices/sengled.js +46 -27
  212. package/devices/sengled.js.map +1 -1
  213. package/devices/shinasystem.d.ts.map +1 -1
  214. package/devices/shinasystem.js +22 -23
  215. package/devices/shinasystem.js.map +1 -1
  216. package/devices/sinope.d.ts.map +1 -1
  217. package/devices/sinope.js +7 -9
  218. package/devices/sinope.js.map +1 -1
  219. package/devices/smartthings.d.ts.map +1 -1
  220. package/devices/smartthings.js +3 -10
  221. package/devices/smartthings.js.map +1 -1
  222. package/devices/somfy.d.ts.map +1 -1
  223. package/devices/somfy.js +2 -9
  224. package/devices/somfy.js.map +1 -1
  225. package/devices/sonoff.d.ts.map +1 -1
  226. package/devices/sonoff.js +240 -11
  227. package/devices/sonoff.js.map +1 -1
  228. package/devices/stelpro.d.ts.map +1 -1
  229. package/devices/stelpro.js +4 -5
  230. package/devices/stelpro.js.map +1 -1
  231. package/devices/sunricher.d.ts.map +1 -1
  232. package/devices/sunricher.js +23 -15
  233. package/devices/sunricher.js.map +1 -1
  234. package/devices/swann.d.ts.map +1 -1
  235. package/devices/swann.js +1 -2
  236. package/devices/swann.js.map +1 -1
  237. package/devices/sylvania.d.ts.map +1 -1
  238. package/devices/sylvania.js +2 -11
  239. package/devices/sylvania.js.map +1 -1
  240. package/devices/tech.d.ts +4 -0
  241. package/devices/tech.d.ts.map +1 -0
  242. package/devices/tech.js +118 -0
  243. package/devices/tech.js.map +1 -0
  244. package/devices/terncy.d.ts.map +1 -1
  245. package/devices/terncy.js +5 -7
  246. package/devices/terncy.js.map +1 -1
  247. package/devices/third_reality.d.ts.map +1 -1
  248. package/devices/third_reality.js +19 -20
  249. package/devices/third_reality.js.map +1 -1
  250. package/devices/tplink.js +1 -1
  251. package/devices/tplink.js.map +1 -1
  252. package/devices/trust.d.ts.map +1 -1
  253. package/devices/trust.js +1 -2
  254. package/devices/trust.js.map +1 -1
  255. package/devices/tuya.d.ts.map +1 -1
  256. package/devices/tuya.js +157 -83
  257. package/devices/tuya.js.map +1 -1
  258. package/devices/ubisys.d.ts.map +1 -1
  259. package/devices/ubisys.js +8 -9
  260. package/devices/ubisys.js.map +1 -1
  261. package/devices/uhome.d.ts.map +1 -1
  262. package/devices/uhome.js +1 -2
  263. package/devices/uhome.js.map +1 -1
  264. package/devices/viessmann.d.ts.map +1 -1
  265. package/devices/viessmann.js +1 -2
  266. package/devices/viessmann.js.map +1 -1
  267. package/devices/wirenboard.d.ts.map +1 -1
  268. package/devices/wirenboard.js +3 -4
  269. package/devices/wirenboard.js.map +1 -1
  270. package/devices/xyzroe.d.ts.map +1 -1
  271. package/devices/xyzroe.js +1 -4
  272. package/devices/xyzroe.js.map +1 -1
  273. package/devices/yandex.d.ts +4 -0
  274. package/devices/yandex.d.ts.map +1 -0
  275. package/devices/yandex.js +398 -0
  276. package/devices/yandex.js.map +1 -0
  277. package/devices/zen.d.ts.map +1 -1
  278. package/devices/zen.js +2 -4
  279. package/devices/zen.js.map +1 -1
  280. package/devices/zigbeetlc.d.ts +1 -0
  281. package/devices/zigbeetlc.d.ts.map +1 -1
  282. package/devices/zigbeetlc.js +3 -3
  283. package/devices/zigbeetlc.js.map +1 -1
  284. package/index.d.ts +8 -6
  285. package/index.d.ts.map +1 -1
  286. package/index.js +105 -58
  287. package/index.js.map +1 -1
  288. package/lib/exposes.d.ts +2 -3
  289. package/lib/exposes.d.ts.map +1 -1
  290. package/lib/exposes.js +11 -10
  291. package/lib/exposes.js.map +1 -1
  292. package/lib/ikea.d.ts +1 -49
  293. package/lib/ikea.d.ts.map +1 -1
  294. package/lib/ikea.js +3 -72
  295. package/lib/ikea.js.map +1 -1
  296. package/lib/ledvance.d.ts.map +1 -1
  297. package/lib/ledvance.js +5 -3
  298. package/lib/ledvance.js.map +1 -1
  299. package/lib/legacy.d.ts +203 -924
  300. package/lib/legacy.d.ts.map +1 -1
  301. package/lib/legacy.js +177 -1924
  302. package/lib/legacy.js.map +1 -1
  303. package/lib/lumi.d.ts +0 -142
  304. package/lib/lumi.d.ts.map +1 -1
  305. package/lib/lumi.js +6 -292
  306. package/lib/lumi.js.map +1 -1
  307. package/lib/modernExtend.d.ts +4 -7
  308. package/lib/modernExtend.d.ts.map +1 -1
  309. package/lib/modernExtend.js +71 -116
  310. package/lib/modernExtend.js.map +1 -1
  311. package/lib/ota.d.ts +71 -0
  312. package/lib/ota.d.ts.map +1 -0
  313. package/lib/ota.js +663 -0
  314. package/lib/ota.js.map +1 -0
  315. package/lib/philips.d.ts.map +1 -1
  316. package/lib/philips.js +2 -3
  317. package/lib/philips.js.map +1 -1
  318. package/lib/types.d.ts +55 -47
  319. package/lib/types.d.ts.map +1 -1
  320. package/lib/utils.d.ts +1 -2
  321. package/lib/utils.d.ts.map +1 -1
  322. package/lib/utils.js +1 -7
  323. package/lib/utils.js.map +1 -1
  324. package/package.json +26 -12
  325. package/lib/ota/common.d.ts +0 -31
  326. package/lib/ota/common.d.ts.map +0 -1
  327. package/lib/ota/common.js +0 -630
  328. package/lib/ota/common.js.map +0 -1
  329. package/lib/ota/gmmts.d.ts +0 -8
  330. package/lib/ota/gmmts.d.ts.map +0 -1
  331. package/lib/ota/gmmts.js +0 -62
  332. package/lib/ota/gmmts.js.map +0 -1
  333. package/lib/ota/index.d.ts +0 -15
  334. package/lib/ota/index.d.ts.map +0 -1
  335. package/lib/ota/index.js +0 -48
  336. package/lib/ota/index.js.map +0 -1
  337. package/lib/ota/inovelli.d.ts +0 -8
  338. package/lib/ota/inovelli.d.ts.map +0 -1
  339. package/lib/ota/inovelli.js +0 -91
  340. package/lib/ota/inovelli.js.map +0 -1
  341. package/lib/ota/jethome.d.ts +0 -9
  342. package/lib/ota/jethome.d.ts.map +0 -1
  343. package/lib/ota/jethome.js +0 -92
  344. package/lib/ota/jethome.js.map +0 -1
  345. package/lib/ota/ledvance.d.ts +0 -11
  346. package/lib/ota/ledvance.d.ts.map +0 -1
  347. package/lib/ota/ledvance.js +0 -75
  348. package/lib/ota/ledvance.js.map +0 -1
  349. package/lib/ota/salus.d.ts +0 -11
  350. package/lib/ota/salus.d.ts.map +0 -1
  351. package/lib/ota/salus.js +0 -99
  352. package/lib/ota/salus.js.map +0 -1
  353. package/lib/ota/securifi.d.ts +0 -4
  354. package/lib/ota/securifi.d.ts.map +0 -1
  355. package/lib/ota/securifi.js +0 -48
  356. package/lib/ota/securifi.js.map +0 -1
  357. package/lib/ota/tradfri.d.ts +0 -13
  358. package/lib/ota/tradfri.d.ts.map +0 -1
  359. package/lib/ota/tradfri.js +0 -72
  360. package/lib/ota/tradfri.js.map +0 -1
  361. package/lib/ota/ubisys.d.ts +0 -20
  362. package/lib/ota/ubisys.d.ts.map +0 -1
  363. package/lib/ota/ubisys.js +0 -93
  364. package/lib/ota/ubisys.js.map +0 -1
  365. package/lib/ota/zigbeeOTA.d.ts +0 -12
  366. package/lib/ota/zigbeeOTA.d.ts.map +0 -1
  367. package/lib/ota/zigbeeOTA.js +0 -143
  368. package/lib/ota/zigbeeOTA.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/lib/ota/common.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import { Ota, Zh } from '../types';
2
- export declare function getImageMeta(current: Ota.ImageInfo, device: Zh.Device): Promise<Ota.ImageMeta>;
3
- /**
4
- * Interface implementation
5
- */
6
- export declare function isUpdateAvailable(device: Zh.Device, requestPayload?: Ota.ImageInfo): Promise<import("../types").OtaUpdateAvailableResult>;
7
- export declare function updateToLatest(device: Zh.Device, onProgress: Ota.OnProgress): Promise<number>;
8
- //# sourceMappingURL=gmmts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gmmts.d.ts","sourceRoot":"","sources":["../../src/lib/ota/gmmts.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAE,EAAE,EAAC,MAAM,UAAU,CAAC;AAOjC,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAyBpG;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,cAAc,GAAE,GAAG,CAAC,SAAgB,wDAE9F;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjF"}
package/lib/ota/gmmts.js DELETED
@@ -1,62 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getImageMeta = getImageMeta;
27
- exports.isUpdateAvailable = isUpdateAvailable;
28
- exports.updateToLatest = updateToLatest;
29
- const logger_1 = require("../logger");
30
- const common = __importStar(require("./common"));
31
- const axios = common.getAxios();
32
- const firmwareManifest = 'https://update.gammatroniques.fr/ticmeter/manifest.json';
33
- async function getImageMeta(current, device) {
34
- logger_1.logger.info(`GMMTS OTA: call getImageMeta for ${device.modelID}`, 'TICMeter');
35
- const { data: releases } = await axios.get(firmwareManifest);
36
- if (!releases.builds) {
37
- throw new Error(`GMMTS OTA: No builds available for ${device.modelID}`);
38
- }
39
- const appUrl = releases.builds[0].parts.find((part) => part.type === 'app');
40
- logger_1.logger.info(`GMMTS OTA: Using firmware file ` + appUrl.path + ` for ${device.modelID}`, 'TICMeter');
41
- const image = common.parseImage((await common.getAxios().get(appUrl.ota, { responseType: 'arraybuffer' })).data);
42
- const ret = {
43
- fileVersion: image.header.fileVersion,
44
- fileSize: image.header.totalImageSize,
45
- url: appUrl.ota,
46
- };
47
- logger_1.logger.debug(`GMMTS OTA: Image header ${JSON.stringify(image.header)}`, 'TICMeter');
48
- logger_1.logger.info(`GMMTS OTA: Image metadata for ${device.modelID}: ${JSON.stringify(ret)}`, 'TICMeter');
49
- return ret;
50
- }
51
- /**
52
- * Interface implementation
53
- */
54
- async function isUpdateAvailable(device, requestPayload = null) {
55
- return await common.isUpdateAvailable(device, requestPayload, common.isNewImageAvailable, getImageMeta);
56
- }
57
- async function updateToLatest(device, onProgress) {
58
- return await common.updateToLatest(device, onProgress, common.getNewImage, getImageMeta);
59
- }
60
- exports.isUpdateAvailable = isUpdateAvailable;
61
- exports.updateToLatest = updateToLatest;
62
- //# sourceMappingURL=gmmts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gmmts.js","sourceRoot":"","sources":["../../src/lib/ota/gmmts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAQA,oCAyBC;AAMD,8CAEC;AAED,wCAEC;AA7CD,sCAAiC;AAEjC,iDAAmC;AAEnC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEhC,MAAM,gBAAgB,GAAG,yDAAyD,CAAC;AAE5E,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAiB;IACxE,eAAM,CAAC,IAAI,CAAC,oCAAoC,MAAM,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;IAC9E,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAC,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAE3D,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,sCAAsC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,MAAM,MAAM,GAA0E,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAC/G,CAAC,IAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAChD,CAAC;IAEF,eAAM,CAAC,IAAI,CAAC,iCAAiC,GAAG,MAAM,CAAC,IAAI,GAAG,QAAQ,MAAM,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;IACpG,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,EAAC,YAAY,EAAE,aAAa,EAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAE/G,MAAM,GAAG,GAAG;QACR,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;QACrC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,cAAc;QACrC,GAAG,EAAE,MAAM,CAAC,GAAG;KAClB,CAAC;IAEF,eAAM,CAAC,KAAK,CAAC,4BAA4B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IACrF,eAAM,CAAC,IAAI,CAAC,iCAAiC,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IAEnG,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,iBAAgC,IAAI;IAC3F,OAAO,MAAM,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;AAC5G,CAAC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,UAA0B;IAC9E,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAC7F,CAAC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
@@ -1,15 +0,0 @@
1
- import { Ota } from '../types';
2
- import * as common from './common';
3
- import * as gmmts from './gmmts';
4
- import * as inovelli from './inovelli';
5
- import * as jethome from './jethome';
6
- import * as ledvance from './ledvance';
7
- import * as salus from './salus';
8
- import * as securifi from './securifi';
9
- import * as tradfri from './tradfri';
10
- import * as ubisys from './ubisys';
11
- import * as zigbeeOTA from './zigbeeOTA';
12
- declare const setDataDir: typeof common.setDataDir;
13
- export { inovelli, ledvance, salus, securifi, tradfri, ubisys, zigbeeOTA, jethome, gmmts, setDataDir };
14
- export type ImageInfo = Ota.ImageInfo;
15
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/ota/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,UAAU,CAAC;AAC7B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAEzC,QAAA,MAAO,UAAU,0BAAU,CAAC;AAE5B,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAC,CAAC;AAErG,MAAM,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC"}
package/lib/ota/index.js DELETED
@@ -1,48 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.setDataDir = exports.gmmts = exports.jethome = exports.zigbeeOTA = exports.ubisys = exports.tradfri = exports.securifi = exports.salus = exports.ledvance = exports.inovelli = void 0;
27
- const common = __importStar(require("./common"));
28
- const gmmts = __importStar(require("./gmmts"));
29
- exports.gmmts = gmmts;
30
- const inovelli = __importStar(require("./inovelli"));
31
- exports.inovelli = inovelli;
32
- const jethome = __importStar(require("./jethome"));
33
- exports.jethome = jethome;
34
- const ledvance = __importStar(require("./ledvance"));
35
- exports.ledvance = ledvance;
36
- const salus = __importStar(require("./salus"));
37
- exports.salus = salus;
38
- const securifi = __importStar(require("./securifi"));
39
- exports.securifi = securifi;
40
- const tradfri = __importStar(require("./tradfri"));
41
- exports.tradfri = tradfri;
42
- const ubisys = __importStar(require("./ubisys"));
43
- exports.ubisys = ubisys;
44
- const zigbeeOTA = __importStar(require("./zigbeeOTA"));
45
- exports.zigbeeOTA = zigbeeOTA;
46
- const { setDataDir } = common;
47
- exports.setDataDir = setDataDir;
48
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/ota/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iDAAmC;AACnC,+CAAiC;AAYiD,sBAAK;AAXvF,qDAAuC;AAW/B,4BAAQ;AAVhB,mDAAqC;AAUoC,0BAAO;AAThF,qDAAuC;AASrB,4BAAQ;AAR1B,+CAAiC;AAQL,sBAAK;AAPjC,qDAAuC;AAOJ,4BAAQ;AAN3C,mDAAqC;AAMQ,0BAAO;AALpD,iDAAmC;AAKmB,wBAAM;AAJ5D,uDAAyC;AAIqB,8BAAS;AAFvE,MAAM,EAAC,UAAU,EAAC,GAAG,MAAM,CAAC;AAE6D,gCAAU"}
@@ -1,8 +0,0 @@
1
- import { Ota, Zh } from '../types';
2
- export declare function getImageMeta(current: Ota.ImageInfo, device: Zh.Device): Promise<Ota.ImageMeta>;
3
- /**
4
- * Interface implementation
5
- */
6
- export declare function isUpdateAvailable(device: Zh.Device, requestPayload?: Ota.ImageInfo): Promise<import("../types").OtaUpdateAvailableResult>;
7
- export declare function updateToLatest(device: Zh.Device, onProgress: Ota.OnProgress): Promise<number>;
8
- //# sourceMappingURL=inovelli.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"inovelli.d.ts","sourceRoot":"","sources":["../../src/lib/ota/inovelli.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,GAAG,EAAE,EAAE,EAAC,MAAM,UAAU,CAAC;AAc9C,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CA8CpG;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,cAAc,GAAE,GAAG,CAAC,SAAgB,wDAE9F;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjF"}
@@ -1,91 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getImageMeta = getImageMeta;
27
- exports.isUpdateAvailable = isUpdateAvailable;
28
- exports.updateToLatest = updateToLatest;
29
- const logger_1 = require("../logger");
30
- const common = __importStar(require("./common"));
31
- /**
32
- * Helper functions
33
- *
34
- * @packageDocumentation
35
- */
36
- const url = 'https://files.inovelli.com/firmware/firmware.json';
37
- const NS = 'zhc:ota:inovelli';
38
- const axios = common.getAxios();
39
- async function getImageMeta(current, device) {
40
- logger_1.logger.debug(`Call getImageMeta for ${device.modelID}`, NS);
41
- const { data: images } = await axios.get(url);
42
- if (!images) {
43
- throw new Error(`InovelliOTA: Error getting firmware page at ${url}`);
44
- }
45
- if (Object.keys(images).indexOf(device.modelID) === -1) {
46
- return null;
47
- }
48
- // Force for now. There is only beta firmware at the moment.
49
- const useBetaChannel = true;
50
- const image = images[device.modelID]
51
- .filter((i) => (useBetaChannel ? true : i.channel === 'production'))
52
- .sort((a, b) => {
53
- const aRadix = a.version.match(/[A-F]/) ? 16 : 10;
54
- const bRadix = b.version.match(/[A-F]/) ? 16 : 10;
55
- // @ts-expect-error ignore
56
- const aVersion = parseFloat(a.version, aRadix);
57
- // @ts-expect-error ignore
58
- const bVersion = parseFloat(b.version, bRadix);
59
- // doesn't matter which order they are in
60
- if (aVersion < bVersion) {
61
- return -1;
62
- }
63
- if (aVersion > bVersion) {
64
- return 1;
65
- }
66
- return 0;
67
- })
68
- .pop();
69
- if (!image) {
70
- logger_1.logger.warning(`No image found in the ${useBetaChannel ? 'beta' : 'production'} channel for device '${device.modelID}'`, NS);
71
- return null;
72
- }
73
- // version in the firmware removes the zero padding and support hex versioning
74
- return {
75
- // @ts-expect-error ignore
76
- fileVersion: parseFloat(image.version, image.version.match(/[A-F]/) ? 16 : 10),
77
- url: image.firmware,
78
- };
79
- }
80
- /**
81
- * Interface implementation
82
- */
83
- async function isUpdateAvailable(device, requestPayload = null) {
84
- return await common.isUpdateAvailable(device, requestPayload, common.isNewImageAvailable, getImageMeta);
85
- }
86
- async function updateToLatest(device, onProgress) {
87
- return await common.updateToLatest(device, onProgress, common.getNewImage, getImageMeta);
88
- }
89
- exports.isUpdateAvailable = isUpdateAvailable;
90
- exports.updateToLatest = updateToLatest;
91
- //# sourceMappingURL=inovelli.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"inovelli.js","sourceRoot":"","sources":["../../src/lib/ota/inovelli.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { Ota, Zh } from '../types';
2
- export declare function getImageMeta(current: Ota.ImageInfo, device: Zh.Device): Promise<Ota.ImageMeta>;
3
- /**
4
- * Interface implementation
5
- */
6
- export declare function isUpdateAvailable(device: Zh.Device, requestPayload?: Ota.ImageInfo): Promise<import("../types").OtaUpdateAvailableResult>;
7
- export declare function updateToLatest(device: Zh.Device, onProgress: Ota.OnProgress): Promise<number>;
8
- export declare const useIndexOverride: (indexFileName: string) => void;
9
- //# sourceMappingURL=jethome.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jethome.d.ts","sourceRoot":"","sources":["../../src/lib/ota/jethome.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAE,EAAE,EAAC,MAAM,UAAU,CAAC;AAkCjC,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAuBpG;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,cAAc,GAAE,GAAG,CAAC,SAAgB,wDAE9F;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjF;AAED,eAAO,MAAM,gBAAgB,kBAAmB,MAAM,SAErD,CAAC"}
@@ -1,92 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.useIndexOverride = void 0;
27
- exports.getImageMeta = getImageMeta;
28
- exports.isUpdateAvailable = isUpdateAvailable;
29
- exports.updateToLatest = updateToLatest;
30
- const logger_1 = require("../logger");
31
- const common = __importStar(require("./common"));
32
- const baseurl = 'https://fw.jethome.ru';
33
- const deviceurl = `${baseurl}/api/devices/`;
34
- const NS = 'zhc:ota:jethome';
35
- const axios = common.getAxios();
36
- let overrideIndexFileName = null;
37
- /**
38
- * Helper functions
39
- */
40
- async function getIndex(modelID) {
41
- if (overrideIndexFileName) {
42
- logger_1.logger.debug(`Loading override index ${overrideIndexFileName}`, NS);
43
- const overrideIndex = await common.getOverrideIndexFile(overrideIndexFileName);
44
- return overrideIndex;
45
- }
46
- else {
47
- const url = `${deviceurl}${modelID}/info`;
48
- const { data: index } = await axios.get(url);
49
- if (!index) {
50
- throw new Error(`JetHomeOTA: Error getting firmware page at ${url}`);
51
- }
52
- logger_1.logger.debug(`Downloaded index for ${modelID}`, NS);
53
- return index;
54
- }
55
- }
56
- async function getImageMeta(current, device) {
57
- logger_1.logger.debug(`Call getImageMeta for ${device.modelID}`, NS);
58
- const images = await getIndex(device.modelID);
59
- // XXX: this is assumed to always be present even for devices that support OTA but without images yet available?
60
- if (!images?.latest_firmware?.release?.images) {
61
- throw new Error(`JetHomeOTA: Error getting firmware images`);
62
- }
63
- // we need to return the latest_firmware.release.urls.zigbee.ota
64
- const jetimage = images.latest_firmware.release.images['zigbee.ota'];
65
- if (!jetimage) {
66
- return null;
67
- }
68
- logger_1.logger.debug(`Version: ${images.latest_firmware.release.version} size: ${jetimage.filesize} url: ${baseurl + jetimage.url}`, NS);
69
- return {
70
- fileVersion: Number(images.latest_firmware.release.version),
71
- fileSize: jetimage.filesize,
72
- url: baseurl + jetimage.url,
73
- };
74
- }
75
- /**
76
- * Interface implementation
77
- */
78
- async function isUpdateAvailable(device, requestPayload = null) {
79
- return await common.isUpdateAvailable(device, requestPayload, common.isNewImageAvailable, getImageMeta);
80
- }
81
- async function updateToLatest(device, onProgress) {
82
- return await common.updateToLatest(device, onProgress, common.getNewImage, getImageMeta, common.getFirmwareFile);
83
- }
84
- const useIndexOverride = (indexFileName) => {
85
- overrideIndexFileName = indexFileName;
86
- };
87
- exports.useIndexOverride = useIndexOverride;
88
- exports.getImageMeta = getImageMeta;
89
- exports.isUpdateAvailable = isUpdateAvailable;
90
- exports.updateToLatest = updateToLatest;
91
- exports.useIndexOverride = exports.useIndexOverride;
92
- //# sourceMappingURL=jethome.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jethome.js","sourceRoot":"","sources":["../../src/lib/ota/jethome.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,oCAuBC;AAMD,8CAEC;AAED,wCAEC;AAtED,sCAAiC;AAEjC,iDAAmC;AAEnC,MAAM,OAAO,GAAG,uBAAuB,CAAC;AACxC,MAAM,SAAS,GAAG,GAAG,OAAO,eAAe,CAAC;AAE5C,MAAM,EAAE,GAAG,iBAAiB,CAAC;AAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEhC,IAAI,qBAAqB,GAAW,IAAI,CAAC;AAEzC;;GAEG;AAEH,KAAK,UAAU,QAAQ,CAAC,OAAe;IACnC,IAAI,qBAAqB,EAAE,CAAC;QACxB,eAAM,CAAC,KAAK,CAAC,0BAA0B,qBAAqB,EAAE,EAAE,EAAE,CAAC,CAAC;QACpE,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;QAE/E,OAAO,aAAa,CAAC;IACzB,CAAC;SAAM,CAAC;QACJ,MAAM,GAAG,GAAG,GAAG,SAAS,GAAG,OAAO,OAAO,CAAC;QAC1C,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE3C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,8CAA8C,GAAG,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,eAAM,CAAC,KAAK,CAAC,wBAAwB,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QACpD,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAiB;IACxE,eAAM,CAAC,KAAK,CAAC,yBAAyB,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE9C,gHAAgH;IAChH,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACjE,CAAC;IAED,gEAAgE;IAChE,MAAM,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAErE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,eAAM,CAAC,KAAK,CAAC,YAAY,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,UAAU,QAAQ,CAAC,QAAQ,SAAS,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAEjI,OAAO;QACH,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;QAC3D,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,GAAG,EAAE,OAAO,GAAG,QAAQ,CAAC,GAAG;KAC9B,CAAC;AACN,CAAC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,iBAAgC,IAAI;IAC3F,OAAO,MAAM,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;AAC5G,CAAC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,UAA0B;IAC9E,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;AACrH,CAAC;AAEM,MAAM,gBAAgB,GAAG,CAAC,aAAqB,EAAE,EAAE;IACtD,qBAAqB,GAAG,aAAa,CAAC;AAC1C,CAAC,CAAC;AAFW,QAAA,gBAAgB,oBAE3B;AAEF,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC;AACpC,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;AACxC,OAAO,CAAC,gBAAgB,GAAG,wBAAgB,CAAC"}
@@ -1,11 +0,0 @@
1
- import { Ota, Zh } from '../types';
2
- /**
3
- * Helper functions
4
- */
5
- export declare function getImageMeta(current: Ota.ImageInfo, device: Zh.Device): Promise<Ota.ImageMeta>;
6
- /**
7
- * Interface implementation
8
- */
9
- export declare function isUpdateAvailable(device: Zh.Device, requestPayload?: Ota.ImageInfo): Promise<import("../types").OtaUpdateAvailableResult>;
10
- export declare function updateToLatest(device: Zh.Device, onProgress: Ota.OnProgress): Promise<number>;
11
- //# sourceMappingURL=ledvance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ledvance.d.ts","sourceRoot":"","sources":["../../src/lib/ota/ledvance.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAE,EAAE,EAAC,MAAM,UAAU,CAAC;AASjC;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CA2BpG;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,cAAc,GAAE,GAAG,CAAC,SAAgB,wDAE9F;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAKjF"}
@@ -1,75 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getImageMeta = getImageMeta;
27
- exports.isUpdateAvailable = isUpdateAvailable;
28
- exports.updateToLatest = updateToLatest;
29
- const logger_1 = require("../logger");
30
- const common = __importStar(require("./common"));
31
- const updateCheckUrl = 'https://api.update.ledvance.com/v1/zigbee/firmwares/newer';
32
- const updateDownloadUrl = 'https://api.update.ledvance.com/v1/zigbee/firmwares/download';
33
- const NS = 'zhc:ota:ledvance';
34
- const axios = common.getAxios();
35
- /**
36
- * Helper functions
37
- */
38
- async function getImageMeta(current, device) {
39
- logger_1.logger.debug(`Call getImageMeta for ${device.modelID}`, NS);
40
- const url = `${updateCheckUrl}?company=${current.manufacturerCode}&product=${current.imageType}&version=0.0.0`;
41
- const { data } = await axios.get(url);
42
- // Since URL is product-specific, var checking is soft-fail here ("images unavailable")
43
- if (!data?.firmwares?.length) {
44
- return null;
45
- }
46
- // Ledvance's API docs state the checksum should be `sha_256` but it is actually `shA256`
47
- const { identity, fullName, length, shA256: sha256 } = data.firmwares[0];
48
- // The fileVersion in hex is included in the fullName between the `/`, e.g.:
49
- // - PLUG COMPACT EU T/032b3674/PLUG_COMPACT_EU_T-0x00D6-0x032B3674-MF_DIS.OTA
50
- // - A19 RGBW/00102428/A19_RGBW_IMG0019_00102428-encrypted.ota
51
- const fileVersionMatch = /\/(\d|\w+)\//.exec(fullName);
52
- const fileVersion = parseInt(`0x${fileVersionMatch[1]}`, 16);
53
- const versionString = `${identity.version.major}.${identity.version.minor}.${identity.version.build}.${identity.version.revision}`;
54
- return {
55
- fileVersion,
56
- fileSize: length,
57
- url: `${updateDownloadUrl}?company=${identity.company}&product=${identity.product}&version=${versionString}`,
58
- sha256,
59
- };
60
- }
61
- /**
62
- * Interface implementation
63
- */
64
- async function isUpdateAvailable(device, requestPayload = null) {
65
- return await common.isUpdateAvailable(device, requestPayload, common.isNewImageAvailable, getImageMeta);
66
- }
67
- async function updateToLatest(device, onProgress) {
68
- // Ledvance OTAs are not valid against the Zigbee spec, the last image element fails to parse but the
69
- // update succeeds even without sending it. Therefore set suppressElementImageParseFailure to true
70
- // https://github.com/Koenkk/zigbee2mqtt/issues/16900
71
- return await common.updateToLatest(device, onProgress, common.getNewImage, getImageMeta, null, true);
72
- }
73
- exports.isUpdateAvailable = isUpdateAvailable;
74
- exports.updateToLatest = updateToLatest;
75
- //# sourceMappingURL=ledvance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ledvance.js","sourceRoot":"","sources":["../../src/lib/ota/ledvance.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAcA,oCA2BC;AAMD,8CAEC;AAED,wCAKC;AAxDD,sCAAiC;AAEjC,iDAAmC;AAEnC,MAAM,cAAc,GAAG,2DAA2D,CAAC;AACnF,MAAM,iBAAiB,GAAG,8DAA8D,CAAC;AAEzF,MAAM,EAAE,GAAG,kBAAkB,CAAC;AAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEhC;;GAEG;AAEI,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAiB;IACxE,eAAM,CAAC,KAAK,CAAC,yBAAyB,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5D,MAAM,GAAG,GAAG,GAAG,cAAc,YAAY,OAAO,CAAC,gBAAgB,YAAY,OAAO,CAAC,SAAS,gBAAgB,CAAC;IAC/G,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAEpC,uFAAuF;IACvF,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,yFAAyF;IACzF,MAAM,EAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAEvE,4EAA4E;IAC5E,8EAA8E;IAC9E,8DAA8D;IAC9D,MAAM,gBAAgB,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAE7D,MAAM,aAAa,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAEnI,OAAO;QACH,WAAW;QACX,QAAQ,EAAE,MAAM;QAChB,GAAG,EAAE,GAAG,iBAAiB,YAAY,QAAQ,CAAC,OAAO,YAAY,QAAQ,CAAC,OAAO,YAAY,aAAa,EAAE;QAC5G,MAAM;KACT,CAAC;AACN,CAAC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,iBAAgC,IAAI;IAC3F,OAAO,MAAM,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;AAC5G,CAAC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,UAA0B;IAC9E,qGAAqG;IACrG,kGAAkG;IAClG,qDAAqD;IACrD,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACzG,CAAC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
@@ -1,11 +0,0 @@
1
- import { Ota, Zh } from '../types';
2
- /**
3
- * Helper functions
4
- */
5
- export declare function getImageMeta(current: Ota.ImageInfo, device: Zh.Device): Promise<Ota.ImageMeta>;
6
- /**
7
- * Interface implementation
8
- */
9
- export declare function isUpdateAvailable(device: Zh.Device, requestPayload?: Ota.ImageInfo): Promise<import("../types").OtaUpdateAvailableResult>;
10
- export declare function updateToLatest(device: Zh.Device, onProgress: Ota.OnProgress): Promise<number>;
11
- //# sourceMappingURL=salus.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"salus.d.ts","sourceRoot":"","sources":["../../src/lib/ota/salus.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,GAAG,EAAE,EAAE,EAAC,MAAM,UAAU,CAAC;AAQxD;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAkBpG;AAgDD;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,cAAc,GAAE,GAAG,CAAC,SAAgB,wDAE9F;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjF"}