zigbee-herdsman-converters 18.7.0 → 18.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## [18.8.0](https://github.com/Koenkk/zigbee-herdsman-converters/compare/v18.7.0...v18.8.0) (2024-01-06)
4
+
5
+
6
+ ### Features
7
+
8
+ * Expose `action` for MiBoxer FUT089Z https://github.com/Koenkk/zigbee2mqtt-user-extensions/issues/7 ([b881ab3](https://github.com/Koenkk/zigbee-herdsman-converters/commit/b881ab3ece047f96ca55ad15521772d56112abed))
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * Disable configure for Lonsonho QS-Zigbee-S05-LN https://github.com/Koenkk/zigbee2mqtt/issues/20526 ([ae89e9c](https://github.com/Koenkk/zigbee-herdsman-converters/commit/ae89e9cf37e1b17219a8508089b42cf2255fb11c))
14
+ * Improved OTA errors & logging ([#6843](https://github.com/Koenkk/zigbee-herdsman-converters/issues/6843)) ([087f797](https://github.com/Koenkk/zigbee-herdsman-converters/commit/087f7978318fe551a7bb89f019348374319cc86d))
15
+
3
16
  ## [18.7.0](https://github.com/Koenkk/zigbee-herdsman-converters/compare/v18.6.0...v18.7.0) (2024-01-06)
4
17
 
5
18
 
@@ -220,7 +220,7 @@ const definitions = [
220
220
  model: 'QS-Zigbee-S05-LN',
221
221
  vendor: 'Lonsonho',
222
222
  description: '1 gang switch module with neutral wire',
223
- extend: [(0, modernExtend_1.onOff)({ powerOnBehavior: false })],
223
+ extend: [(0, modernExtend_1.onOff)({ powerOnBehavior: false, configureReporting: false })],
224
224
  toZigbee: [toZigbee_1.default.TYZB01_on_off],
225
225
  },
226
226
  {
@@ -1 +1 @@
1
- {"version":3,"file":"lonsonho.js","sourceRoot":"","sources":["../src/devices/lonsonho.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lonsonho.js","sourceRoot":"","sources":["../src/devices/lonsonho.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,wDAA0C;AAC1C,0EAA0C;AAC1C,sDAAwC;AACxC,sEAAwC;AACxC,4DAA8C;AAC9C,2DAAmC;AACnC,kDAAoC;AACpC,sDAAiD;AAEjD,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;AAC1B,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;AAE1B,MAAM,WAAW,GAAiB;IAC9B;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACnI,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,gCAAgC;QAC7C,UAAU,EAAE,CAAC,oBAAE,CAAC,mBAAmB,EAAE,oBAAE,CAAC,kBAAkB,CAAC;QAC3D,QAAQ,EAAE,CAAC,kBAAE,CAAC,WAAW,EAAE,kBAAE,CAAC,mBAAmB,EAAE,kBAAE,CAAC,sBAAsB,EAAE,kBAAE,CAAC,mBAAmB,CAAC;QACrG,IAAI,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC;QAC3B,OAAO,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC5E,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC;YAC7F,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;KACjG;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,gBAAgB;QAC7B,UAAU,EAAE,CAAC,oBAAE,CAAC,mBAAmB,EAAE,IAAI,CAAC,EAAE,CAAC,8BAA8B,EAAE,oBAAE,CAAC,kBAAkB,CAAC;QACnG,QAAQ,EAAE,CAAC,kBAAE,CAAC,WAAW,EAAE,kBAAE,CAAC,mBAAmB,EAAE,kBAAE,CAAC,sBAAsB,EAAE,kBAAE,CAAC,mBAAmB;YAChG,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC;QACvC,IAAI,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC;QAC3B,OAAO,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC5E,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC;YAC7F,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC3D,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;KACjG;IACD;QACI,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;QAC7I,KAAK,EAAE,aAAa;QACpB,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,2BAA2B;QACxC,UAAU,EAAE,CAAC,oBAAE,CAAC,mBAAmB,EAAE,oBAAE,CAAC,kBAAkB,CAAC;QAC3D,QAAQ,EAAE,CAAC,kBAAE,CAAC,WAAW,EAAE,kBAAE,CAAC,mBAAmB,EAAE,kBAAE,CAAC,sBAAsB,EAAE,kBAAE,CAAC,mBAAmB,CAAC;QACrG,IAAI,EAAE,EAAC,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAC;QAChD,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACjB,OAAO,EAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;QACnC,CAAC;QACD,OAAO,EAAE;YACL,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC;YACvE,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC;YACxE,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC;iBACpF,YAAY,CAAC,MAAM,CAAC;YACzB,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC;iBACpF,YAAY,CAAC,OAAO,CAAC;YAC1B,CAAC,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC;iBAChF,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC;YAC/F,CAAC,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC;iBACjF,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC;SACpG;KACJ;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACnI,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,eAAe;QAC5B,MAAM,EAAE,gBAAM,CAAC,MAAM,EAAE;QACvB,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;QACtD,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,oBAAE,CAAC,gBAAgB,CAAC;QACxD,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC;KAC1C;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,eAAe;QAC5B,MAAM,EAAE,gBAAM,CAAC,MAAM,EAAE;QACvB,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC;YACpE,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;QACnE,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,oBAAE,CAAC,gBAAgB,CAAC;QACxD,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC;QACvC,IAAI,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC;QAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACjB,kDAAkD;YAClD,OAAO,EAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC,CAAC;QAC9B,CAAC;KACJ;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,eAAe;QAC5B,MAAM,EAAE,gBAAM,CAAC,MAAM,EAAE;QACvB,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC;YACpE,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;QACnI,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,oBAAE,CAAC,gBAAgB,CAAC;QACxD,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC;QACvC,IAAI,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC;QAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACjB,kDAAkD;YAClD,OAAO,EAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC,CAAC;QACvC,CAAC;KACJ;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,uBAAuB;QAC9B,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,mDAAmD;QAChE,MAAM,EAAE,CAAC,IAAA,oBAAK,GAAE,CAAC;KACpB;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,wBAAwB;QAC/B,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,gDAAgD;QAC7D,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAC,eAAe,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAC,CAAC;KACpH;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,2BAA2B;QAClC,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,gDAAgD;QAC7D,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAC,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,EAAC,CAAC;QAC7G,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACjB,OAAO,EAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC,CAAC;QAC9B,CAAC;QACD,IAAI,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC;QAC3B,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE;YACrD,MAAM,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;YAC1F,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;YAC/F,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;YAC/F,+FAA+F;QACnG,CAAC;KACJ;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,0BAA0B;QACjC,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,mDAAmD;QAChE,MAAM,EAAE,gBAAM,CAAC,sBAAsB,CAAC,EAAC,WAAW,EAAE,IAAI,EAAC,CAAC;QAC1D,OAAO,EAAE,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC3F,IAAI,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC;QAC3B,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE;YACrD,MAAM,gBAAM,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;YACrF,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;YAClF,MAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChC,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,mBAAmB,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;YACnF,MAAM,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACjB,OAAO,EAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAC,CAAC;QAC1B,CAAC;KACJ;IACD;QACI,WAAW,EAAE,CAAC,SAAS,CAAC;QACxB,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,eAAe;QAC5B,MAAM,EAAE,CAAC,IAAA,oBAAK,GAAE,CAAC;KACpB;IACD;QACI,WAAW,EAAE,CAAC,UAAU,CAAC;QACzB,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAC,EAAE,EAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAC;YAC/G,EAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAC,EAAE,EAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,yBAAyB,EAAC;YACrH,EAAC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAC,CAAC;QACzD,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,+BAA+B;QAC5C,MAAM,EAAE,CAAC,IAAA,oBAAK,EAAC,EAAC,SAAS,EAAE,EAAC,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAC,CAAC,CAAC;KACxH;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACnI,KAAK,EAAE,qBAAqB;QAC5B,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,wCAAwC;QACrD,MAAM,EAAE,gBAAM,CAAC,MAAM,EAAE;QACvB,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACvE,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACjB,OAAO,EAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC,CAAC;QAC9B,CAAC;QACD,QAAQ,EAAE,CAAC,kBAAE,CAAC,aAAa,CAAC;QAC5B,IAAI,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC;QAC3B,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE;YACrD,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YAC/E,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QACnF,CAAC;KACJ;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,wCAAwC;QACrD,MAAM,EAAE,CAAC,IAAA,oBAAK,EAAC,EAAC,eAAe,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAC,CAAC,CAAC;QACpE,QAAQ,EAAE,CAAC,kBAAE,CAAC,aAAa,CAAC;KAC/B;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACnI,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,gCAAgC;QAC7C,UAAU,EAAE,CAAC,oBAAE,CAAC,mBAAmB,EAAE,oBAAE,CAAC,kBAAkB,CAAC;QAC3D,QAAQ,EAAE,CAAC,kBAAE,CAAC,WAAW,EAAE,kBAAE,CAAC,mBAAmB,EAAE,kBAAE,CAAC,sBAAsB,EAAE,kBAAE,CAAC,mBAAmB,CAAC;QACrG,IAAI,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC;QAC3B,OAAO,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC5E,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC;YAC7F,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;KACjG;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,wBAAwB,EAAC,CAAC;QAC9E,KAAK,EAAE,qBAAqB;QAC5B,MAAM,EAAE,UAAU;QAClB,WAAW,EAAE,sCAAsC;QACnD,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC;QAChC,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC;QAC9B,OAAO,EAAE;YACL,IAAI,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;YAC3D,IAAI,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;YAC3D,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;YAC3C,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;YAC3C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;YAC5C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;YAC5C,CAAC,CAAC,iBAAiB,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,CAAC;SACjD;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACjB,OAAO,EAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC,CAAC;QACvC,CAAC;QACD,IAAI,EAAE;YACF,aAAa,EAAE,IAAI;YACnB,cAAc,EAAE;gBACZ,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;gBAC1C,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC;gBAC5D,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC;gBAChE,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;gBACrD,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC;gBAChE,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;gBAC5C,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;gBAC1C,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC;gBAC5D,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC;gBAChE,CAAC,EAAE,EAAE,gBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;gBACtD,CAAC,EAAE,EAAE,mBAAmB,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC;gBACjE,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;gBAC7C,CAAC,EAAE,EAAE,mBAAmB,EAAE,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC;aACrE;SACJ;KACJ;CACJ,CAAC;AAEF,kBAAe,WAAW,CAAC;AAC3B,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC"}
@@ -43,9 +43,9 @@ const definitions = [
43
43
  model: 'FUT089Z',
44
44
  vendor: 'MiBoxer',
45
45
  description: 'RGB+CCT Remote',
46
- fromZigbee: [fromZigbee_1.default.battery],
46
+ fromZigbee: [fromZigbee_1.default.battery, fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.command_move_to_level, fromZigbee_1.default.command_move_to_color_temp],
47
47
  toZigbee: [],
48
- exposes: [e.battery(), e.battery_voltage()],
48
+ exposes: [e.battery(), e.battery_voltage(), e.action(['on', 'off', 'brightness_move_to_level', 'color_temperature_move'])],
49
49
  configure: async (device, coordinatorEndpoint, logger) => {
50
50
  const endpoint = device.getEndpoint(1);
51
51
  await tuya.configureMagicPacket(device, coordinatorEndpoint, logger);
@@ -1 +1 @@
1
- {"version":3,"file":"miboxer.js","sourceRoot":"","sources":["../src/devices/miboxer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,wDAA0C;AAC1C,0EAA0C;AAC1C,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;AAC1B,kDAAoC;AAEpC,MAAM,WAAW,GAAiB;IAC9B;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACzE,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,qBAAqB;QAClC,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,sCAAsC,CAAC,EAAC,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAC,CAAC;KAC3F;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,SAAS;QACjB,WAAW,EAAE,gBAAgB;QAC7B,UAAU,EAAE,CAAC,oBAAE,CAAC,OAAO,CAAC;QACxB,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;QAC3C,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE;YACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;YACrE,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAC,KAAK,EAAE;oBAC3D,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;iBAC7B,EAAC,CAAC,CAAC;YACJ,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,EAAE,EAAC,sBAAsB,EAAE,IAAI,EAAC,CAAC,CAAC;QACxF,CAAC;KACJ;CACJ,CAAC;AAEF,kBAAe,WAAW,CAAC;AAC3B,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC"}
1
+ {"version":3,"file":"miboxer.js","sourceRoot":"","sources":["../src/devices/miboxer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,wDAA0C;AAC1C,0EAA0C;AAC1C,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;AAC1B,kDAAoC;AAEpC,MAAM,WAAW,GAAiB;IAC9B;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACzE,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,qBAAqB;QAClC,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,sCAAsC,CAAC,EAAC,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAC,CAAC;KAC3F;IACD;QACI,WAAW,EAAE,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAC,CAAC;QACxE,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,SAAS;QACjB,WAAW,EAAE,gBAAgB;QAC7B,UAAU,EAAE,CAAC,oBAAE,CAAC,OAAO,EAAE,oBAAE,CAAC,UAAU,EAAE,oBAAE,CAAC,WAAW,EAAE,oBAAE,CAAC,qBAAqB,EAAE,oBAAE,CAAC,0BAA0B,CAAC;QAChH,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,0BAA0B,EAAE,wBAAwB,CAAC,CAAC,CAAC;QAC1H,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE;YACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;YACrE,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAC,KAAK,EAAE;oBAC3D,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;oBAC1B,EAAC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAC;iBAC7B,EAAC,CAAC,CAAC;YACJ,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,EAAE,EAAC,sBAAsB,EAAE,IAAI,EAAC,CAAC,CAAC;QACxF,CAAC;KACJ;CACJ,CAAC;AAEF,kBAAe,WAAW,CAAC;AAC3B,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC"}
@@ -20,8 +20,9 @@ export declare function getFirmwareFile(image: KeyValueAny, logger: Logger): Pro
20
20
  data: Buffer;
21
21
  }>;
22
22
  export declare function processCustomCaBundle(uri: string): Promise<string[]>;
23
+ export declare function getOverrideIndexFile(urlOrName: string): Promise<any>;
23
24
  export declare function parseImage(buffer: Buffer): Ota.Image;
24
- export declare function isUpdateAvailable(device: Zh.Device, logger: Logger, isNewImageAvailable: IsNewImageAvailable, requestPayload: Ota.ImageInfo, getImageMeta?: Ota.GetImageMeta): Promise<{
25
+ export declare function isUpdateAvailable(device: Zh.Device, logger: Logger, requestPayload: Ota.ImageInfo, isNewImageAvailable?: IsNewImageAvailable, getImageMeta?: Ota.GetImageMeta): Promise<{
25
26
  available: boolean;
26
27
  currentFileVersion: number;
27
28
  otaFileVersion: number;
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/lib/ota/common.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAiC,MAAM,UAAU,CAAC;AAwBtF,eAAO,MAAM,qBAAqB,QAAwC,CAAC;AAI3E,KAAK,mBAAmB,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,KACjH,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAC,CAAC,CAAA;AACpF,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC;AACtF,KAAK,WAAW,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,aAAa,KAClI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAc1B;;GAEG;AAGH,eAAO,MAAM,UAAU,QAAS,MAAM,SAErC,CAAC;AAEF,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,WAQrC;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAQ7D;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;;GAWvE;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,qBA+BtD;AAkBD,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,KAAK,CA2CpD;AAgLD,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,cAAc,EAAE,GAAG,CAAC,SAAS,EAC9I,YAAY,GAAE,GAAG,CAAC,YAAmB;;;;GAmBxC;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY;;;;GAWlI;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EACxH,YAAY,GAAE,GAAG,CAAC,YAAmB,EAAE,aAAa,GAAE,aAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CAgK/F;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EACvF,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CA6BpF;AAED,wBAAgB,QAAQ,CAAC,QAAQ,GAAE,MAAM,EAAS,iCA+CjD"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/lib/ota/common.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAiC,MAAM,UAAU,CAAC;AAwBtF,eAAO,MAAM,qBAAqB,QAAwC,CAAC;AAI3E,KAAK,mBAAmB,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,KACjH,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAC,CAAC,CAAA;AACpF,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC;AACtF,KAAK,WAAW,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,aAAa,KAClI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAc1B;;GAEG;AAGH,eAAO,MAAM,UAAU,QAAS,MAAM,SAErC,CAAC;AAEF,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,WAQrC;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAQ7D;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;;GAWvE;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,qBA+BtD;AAED,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,gBAY3D;AAkBD,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,KAAK,CA2CpD;AAgLD,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,SAAS,EACpG,mBAAmB,GAAE,mBAA0B,EAAE,YAAY,GAAE,GAAG,CAAC,YAAmB;;;;GAmBzF;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY;;;;GAyBlI;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EACxH,YAAY,GAAE,GAAG,CAAC,YAAmB,EAAE,aAAa,GAAE,aAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CA6J/F;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EACvF,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CA+BpF;AAED,wBAAgB,QAAQ,CAAC,QAAQ,GAAE,MAAM,EAAS,iCA+CjD"}
package/lib/ota/common.js CHANGED
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.getAxios = exports.getNewImage = exports.updateToLatest = exports.isNewImageAvailable = exports.isUpdateAvailable = exports.parseImage = exports.processCustomCaBundle = exports.getFirmwareFile = exports.readLocalFile = exports.isValidUrl = exports.setDataDir = exports.upgradeFileIdentifier = void 0;
29
+ exports.getAxios = exports.getNewImage = exports.updateToLatest = exports.isNewImageAvailable = exports.isUpdateAvailable = exports.parseImage = exports.getOverrideIndexFile = exports.processCustomCaBundle = exports.getFirmwareFile = exports.readLocalFile = exports.isValidUrl = exports.setDataDir = exports.upgradeFileIdentifier = void 0;
30
30
  const crypto_1 = __importDefault(require("crypto"));
31
31
  const https_proxy_agent_1 = require("https-proxy-agent");
32
32
  const assert_1 = __importDefault(require("assert"));
@@ -131,6 +131,17 @@ async function processCustomCaBundle(uri) {
131
131
  return caBundle;
132
132
  }
133
133
  exports.processCustomCaBundle = processCustomCaBundle;
134
+ async function getOverrideIndexFile(urlOrName) {
135
+ if (isValidUrl(urlOrName)) {
136
+ const { data: index } = await getAxios().get(urlOrName);
137
+ if (!index) {
138
+ throw new Error(`OTA: Error getting override index file from ${urlOrName}`);
139
+ }
140
+ return index;
141
+ }
142
+ return JSON.parse(fs_1.default.readFileSync(urlOrName, 'utf-8'));
143
+ }
144
+ exports.getOverrideIndexFile = getOverrideIndexFile;
134
145
  /**
135
146
  * OTA functions
136
147
  */
@@ -215,7 +226,7 @@ function validateSilabsEbl(data) {
215
226
  (0, assert_1.default)(calculatedCrc32 === validSilabsCrc, `Image CRC-32 is invalid`);
216
227
  return;
217
228
  }
218
- throw new Error(`Image is truncated: not long enough to contain a valid tag`);
229
+ throw new Error(`OTA: Image is truncated, not long enough to contain a valid tag`);
219
230
  }
220
231
  function validateSilabsGbl(data) {
221
232
  const dataLength = data.length;
@@ -231,7 +242,7 @@ function validateSilabsGbl(data) {
231
242
  (0, assert_1.default)(calculatedCrc32 === validSilabsCrc, `Image CRC-32 is invalid`);
232
243
  return;
233
244
  }
234
- throw new Error(`Image is truncated: not long enough to contain a valid tag`);
245
+ throw new Error(`OTA: Image is truncated, not long enough to contain a valid tag`);
235
246
  }
236
247
  function cancelWaiters(waiters) {
237
248
  for (const waiter of Object.values(waiters)) {
@@ -249,7 +260,7 @@ function sendQueryNextImageResponse(endpoint, image, requestTransactionSequenceN
249
260
  imageSize: image.header.totalImageSize,
250
261
  };
251
262
  endpoint.commandResponse('genOta', 'queryNextImageResponse', payload, null, requestTransactionSequenceNumber).catch((e) => {
252
- logger.debug(`Failed to send queryNextImageResponse (${e.message})`);
263
+ logger.debug(`OTA: Failed to send queryNextImageResponse (${e.message})`);
253
264
  });
254
265
  }
255
266
  function imageNotify(endpoint) {
@@ -265,7 +276,7 @@ async function requestOTA(endpoint) {
265
276
  }
266
277
  catch (e) {
267
278
  queryNextImageRequest.cancel();
268
- throw new Error(`Device didn't respond to OTA request`);
279
+ throw new Error(`OTA: Device didn't respond to OTA request`);
269
280
  }
270
281
  }
271
282
  function getImageBlockResponsePayload(image, imageBlockRequest, pageOffset, pageSize, logger) {
@@ -283,7 +294,7 @@ function getImageBlockResponsePayload(image, imageBlockRequest, pageOffset, page
283
294
  if (imageBlockRequest.payload.manufacturerCode === 4129 &&
284
295
  imageBlockRequest.payload.fileOffset === 50 &&
285
296
  imageBlockRequest.payload.maximumDataSize === 12) {
286
- logger.info(`Detected Legrand firmware issue, attempting to reset the OTA stack`);
297
+ logger.info(`OTA: Detected Legrand firmware issue, attempting to reset the OTA stack`);
287
298
  // The following vector seems to buffer overflow the device to reset the OTA stack!
288
299
  start = 78;
289
300
  dataSize = 64;
@@ -295,11 +306,11 @@ function getImageBlockResponsePayload(image, imageBlockRequest, pageOffset, page
295
306
  if (end > image.raw.length) {
296
307
  end = image.raw.length;
297
308
  }
298
- logger.debug(`Request offsets:` +
309
+ logger.debug(`OTA: Request offsets:` +
299
310
  ` fileOffset=${imageBlockRequest.payload.fileOffset}` +
300
311
  ` pageOffset=${pageOffset}` +
301
312
  ` dataSize=${imageBlockRequest.payload.maximumDataSize}`);
302
- logger.debug(`Payload offsets: start=${start} end=${end} dataSize=${dataSize}`);
313
+ logger.debug(`OTA: Payload offsets: start=${start} end=${end} dataSize=${dataSize}`);
303
314
  return {
304
315
  status: 0,
305
316
  manufacturerCode: imageBlockRequest.payload.manufacturerCode,
@@ -319,7 +330,7 @@ function callOnProgress(startTime, lastUpdate, imageBlockRequest, image, logger,
319
330
  const remaining = (image.header.totalImageSize - imageBlockRequest.payload.fileOffset) / bytesPerSecond;
320
331
  let percentage = imageBlockRequest.payload.fileOffset / image.header.totalImageSize;
321
332
  percentage = Math.round(percentage * 10000) / 100;
322
- logger.debug(`OTA update at ${percentage}%, remaining ${remaining} seconds`);
333
+ logger.debug(`OTA: Update at ${percentage}%, remaining ${remaining} seconds`);
323
334
  onProgress(percentage, remaining === Infinity ? null : remaining);
324
335
  return now;
325
336
  }
@@ -327,28 +338,39 @@ function callOnProgress(startTime, lastUpdate, imageBlockRequest, image, logger,
327
338
  return lastUpdate;
328
339
  }
329
340
  }
330
- async function isUpdateAvailable(device, logger, isNewImageAvailable, requestPayload, getImageMeta = null) {
331
- logger.debug(`Check if update available for '${device.ieeeAddr}' (${device.modelID})`);
341
+ async function isUpdateAvailable(device, logger, requestPayload, isNewImageAvailable = null, getImageMeta = null) {
342
+ logger.debug(`OTA: Checking if update available for '${device.ieeeAddr}' (${device.modelID})`);
332
343
  if (requestPayload === null) {
333
344
  const endpoint = getOTAEndpoint(device);
334
345
  (0, assert_1.default)(endpoint != null, `Failed to find endpoint which support OTA cluster`);
335
- logger.debug(`Using endpoint '${endpoint.ID}'`);
346
+ logger.debug(`OTA: Using endpoint '${endpoint.ID}'`);
336
347
  const request = await requestOTA(endpoint);
337
- logger.debug(`Got OTA request '${JSON.stringify(request.payload)}'`);
348
+ logger.debug(`OTA: Got request '${JSON.stringify(request.payload)}'`);
338
349
  requestPayload = request.payload;
339
350
  }
340
351
  const availableResult = await isNewImageAvailable(requestPayload, logger, device, getImageMeta);
341
- logger.debug(`Update available for '${device.ieeeAddr}': ${availableResult.available < 0 ? 'YES' : 'NO'}`);
352
+ logger.debug(`OTA: Update available for '${device.ieeeAddr}': ${availableResult.available < 0 ? 'YES' : 'NO'}`);
342
353
  if (availableResult.available > 0) {
343
- logger.warn(`Firmware on '${device.ieeeAddr}' is newer than latest firmware online.`);
354
+ logger.warn(`OTA: Firmware on '${device.ieeeAddr}' is newer than latest firmware online.`);
344
355
  }
345
356
  return { ...availableResult, available: availableResult.available < 0 };
346
357
  }
347
358
  exports.isUpdateAvailable = isUpdateAvailable;
348
359
  async function isNewImageAvailable(current, logger, device, getImageMeta) {
360
+ const currentS = JSON.stringify(current);
361
+ logger.debug(`OTA: Is new image available for '${device.ieeeAddr}', current '${currentS}'`);
349
362
  const meta = await getImageMeta(current, logger, device);
350
- const [currentS, metaS] = [JSON.stringify(current), JSON.stringify(meta)];
351
- logger.debug(`Is new image available for '${device.ieeeAddr}', current '${currentS}', latest meta '${metaS}'`);
363
+ // Soft-fail because no images in repo/URL for specified device
364
+ if (!meta) {
365
+ const metaS = `device '${device.modelID}', hardwareVersion '${device.hardwareVersion}', manufacturerName ${device.manufacturerName}`;
366
+ logger.warn(`OTA: Images currently unavailable for ${metaS}, ${currentS}'`);
367
+ return {
368
+ available: 0,
369
+ currentFileVersion: current.fileVersion,
370
+ otaFileVersion: -1,
371
+ };
372
+ }
373
+ logger.debug(`OTA: Is new image available for '${device.ieeeAddr}', latest meta '${JSON.stringify(meta)}'`);
352
374
  // Negative number means the new firmware is 'newer' than current one
353
375
  return {
354
376
  available: meta.force ? -1 : Math.sign(current.fileVersion - meta.fileVersion),
@@ -358,14 +380,14 @@ async function isNewImageAvailable(current, logger, device, getImageMeta) {
358
380
  }
359
381
  exports.isNewImageAvailable = isNewImageAvailable;
360
382
  async function updateToLatest(device, logger, onProgress, getNewImage, getImageMeta = null, downloadImage = null) {
361
- logger.debug(`Updating to latest '${device.ieeeAddr}' (${device.modelID})`);
383
+ logger.debug(`OTA: Updating to latest '${device.ieeeAddr}' (${device.modelID})`);
362
384
  const endpoint = getOTAEndpoint(device);
363
385
  (0, assert_1.default)(endpoint != null, `Failed to find endpoint which support OTA cluster`);
364
- logger.debug(`Using endpoint '${endpoint.ID}'`);
386
+ logger.debug(`OTA: Using endpoint '${endpoint.ID}'`);
365
387
  const request = await requestOTA(endpoint);
366
- logger.debug(`Got OTA request '${JSON.stringify(request.payload)}'`);
388
+ logger.debug(`OTA: Got request '${JSON.stringify(request.payload)}'`);
367
389
  const image = await getNewImage(request.payload, logger, device, getImageMeta, downloadImage);
368
- logger.debug(`Got new image for '${device.ieeeAddr}'`);
390
+ logger.debug(`OTA: Got new image for '${device.ieeeAddr}'`);
369
391
  const waiters = {};
370
392
  let lastUpdate = null;
371
393
  let lastImageBlockResponse = null;
@@ -411,7 +433,7 @@ async function updateToLatest(device, logger, onProgress, getNewImage, getImageM
411
433
  // Shit happens, device will probably do a new imageBlockRequest so don't care.
412
434
  lastImageBlockResponse = Date.now();
413
435
  thenCallback();
414
- logger.debug(`Image block response failed (${e.message})`);
436
+ logger.debug(`OTA: Image block response failed (${e.message})`);
415
437
  });
416
438
  }, cooldownTime);
417
439
  lastUpdate = callOnProgress(startTime, lastUpdate, imageBlockRequest, image, logger, onProgress);
@@ -435,7 +457,7 @@ async function updateToLatest(device, logger, onProgress, getNewImage, getImageM
435
457
  }
436
458
  }, () => {
437
459
  cancelWaiters(waiters);
438
- reject(new Error('Timeout: device did not request any image blocks'));
460
+ reject(new Error('OTA: Timeout, device did not request any image blocks'));
439
461
  });
440
462
  };
441
463
  const answerNextImageRequest = () => {
@@ -448,7 +470,7 @@ async function updateToLatest(device, logger, onProgress, getNewImage, getImageM
448
470
  // No need to timeout here, will already be done in answerNextImageBlockRequest
449
471
  waiters.upgradeEndRequest = endpoint.waitForCommand('genOta', 'upgradeEndRequest', null, maxTimeout);
450
472
  waiters.upgradeEndRequest.promise.then((data) => {
451
- logger.debug(`Got upgrade end request for '${device.ieeeAddr}': ${JSON.stringify(data.payload)}`);
473
+ logger.debug(`OTA: Got upgrade end request for '${device.ieeeAddr}': ${JSON.stringify(data.payload)}`);
452
474
  cancelWaiters(waiters);
453
475
  if (data.payload.status === 0) {
454
476
  const payload = {
@@ -457,11 +479,11 @@ async function updateToLatest(device, logger, onProgress, getNewImage, getImageM
457
479
  currentTime: 0, upgradeTime: 1,
458
480
  };
459
481
  endpoint.commandResponse('genOta', 'upgradeEndResponse', payload, null, data.header.transactionSequenceNumber).then(() => {
460
- logger.debug(`Update succeeded, waiting for device announce`);
482
+ logger.debug(`OTA: Update succeeded, waiting for device announce`);
461
483
  onProgress(100, null);
462
484
  let timer = null;
463
485
  const cb = () => {
464
- logger.debug(`Got device announce or timed out, call resolve`);
486
+ logger.debug(`OTA: Got device announce or timed out, call resolve`);
465
487
  clearInterval(timer);
466
488
  device.removeListener('deviceAnnounce', cb);
467
489
  resolve(image.header.fileVersion);
@@ -469,29 +491,31 @@ async function updateToLatest(device, logger, onProgress, getNewImage, getImageM
469
491
  timer = setTimeout(cb, 120 * 1000); // timeout after 2 minutes
470
492
  device.once('deviceAnnounce', cb);
471
493
  }, (e) => {
472
- const message = `Upgrade end response failed (${e.message})`;
494
+ const message = `OTA: Upgrade end response failed (${e.message})`;
473
495
  logger.debug(message);
474
496
  reject(new Error(message));
475
497
  });
476
498
  }
477
499
  else {
478
500
  // @ts-expect-error
479
- const error = `Update failed with reason: '${endRequestCodeLookup[data.payload.status]}'`;
501
+ const error = `OTA: Update failed with reason: '${endRequestCodeLookup[data.payload.status]}'`;
480
502
  logger.debug(error);
481
503
  reject(new Error(error));
482
504
  }
483
505
  });
484
- logger.debug('Starting upgrade');
506
+ logger.debug('OTA: Starting upgrade');
485
507
  answerNextImageBlockOrPageRequest();
486
508
  answerNextImageRequest();
487
509
  // Notify client once more about new image, client should start sending queryNextImageRequest now
488
- imageNotify(endpoint).catch((e) => logger.debug(`Image notify failed (${e})`));
510
+ imageNotify(endpoint).catch((e) => logger.debug(`OTA: Image notify failed (${e})`));
489
511
  });
490
512
  }
491
513
  exports.updateToLatest = updateToLatest;
492
514
  async function getNewImage(current, logger, device, getImageMeta, downloadImage) {
493
515
  const meta = await getImageMeta(current, logger, device);
494
- logger.debug(`getNewImage for '${device.ieeeAddr}', meta ${JSON.stringify(meta)}`);
516
+ logger.debug(`OTA: Get new image for '${device.ieeeAddr}'`);
517
+ (0, assert_1.default)(meta, 'Images currently unavailable');
518
+ logger.debug(`OTA: Get new image for '${device.ieeeAddr}', latest meta ${JSON.stringify(meta)}`);
495
519
  (0, assert_1.default)(meta.fileVersion > current.fileVersion || meta.force, 'No new image available');
496
520
  const download = downloadImage ? await downloadImage(meta, logger) :
497
521
  await getAxios().get(meta.url, { responseType: 'arraybuffer' });
@@ -500,11 +524,11 @@ async function getNewImage(current, logger, device, getImageMeta, downloadImage)
500
524
  const hash = crypto_1.default.createHash(meta.sha512 ? 'sha512' : 'sha256');
501
525
  hash.update(download.data);
502
526
  (0, assert_1.default)(hash.digest('hex') === checksum, 'File checksum validation failed');
503
- logger.debug(`OTA update checksum validation succeeded for '${device.ieeeAddr}'`);
527
+ logger.debug(`OTA: Update checksum validation succeeded for '${device.ieeeAddr}'`);
504
528
  }
505
529
  const start = download.data.indexOf(exports.upgradeFileIdentifier);
506
530
  const image = parseImage(download.data.slice(start));
507
- logger.debug(`getNewImage for '${device.ieeeAddr}', image header ${JSON.stringify(image.header)}`);
531
+ logger.debug(`OTA: Get new image for '${device.ieeeAddr}', image header ${JSON.stringify(image.header)}`);
508
532
  (0, assert_1.default)(image.header.fileVersion === meta.fileVersion, 'File version mismatch');
509
533
  (0, assert_1.default)(!meta.fileSize || image.header.totalImageSize === meta.fileSize, 'Image size mismatch');
510
534
  (0, assert_1.default)(image.header.manufacturerCode === current.manufacturerCode, 'Manufacturer code mismatch');
@@ -549,7 +573,7 @@ function getAxios(caBundle = null) {
549
573
  try {
550
574
  const parsedUrl = new URL(redirectUrl);
551
575
  if (!parsedUrl.protocol || !parsedUrl.host) {
552
- throw new Error('No scheme or domain');
576
+ throw new Error('OTA: Get Axios, no scheme or domain');
553
577
  }
554
578
  }
555
579
  catch {
@@ -575,4 +599,5 @@ exports.isValidUrl = isValidUrl;
575
599
  exports.setDataDir = exports.setDataDir;
576
600
  exports.getFirmwareFile = getFirmwareFile;
577
601
  exports.readLocalFile = readLocalFile;
602
+ exports.getOverrideIndexFile = getOverrideIndexFile;
578
603
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/lib/ota/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/lib/ota/common.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"inovelli.d.ts","sourceRoot":"","sources":["../../src/lib/ota/inovelli.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAc,MAAM,UAAU,CAAC;AAMtD,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAuCpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAQ3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAQjG"}
1
+ {"version":3,"file":"inovelli.d.ts","sourceRoot":"","sources":["../../src/lib/ota/inovelli.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAc,MAAM,UAAU,CAAC;AAMtD,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CA8CpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAQ3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAQjG"}
@@ -24,15 +24,20 @@ var __importStar = (this && this.__importStar) || function (mod) {
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.updateToLatest = exports.isUpdateAvailable = exports.getImageMeta = void 0;
27
+ const url = 'https://files.inovelli.com/firmware/firmware.json';
27
28
  const common = __importStar(require("./common"));
28
29
  const axios = common.getAxios();
29
30
  /*
30
31
  * Helper functions
31
32
  */
32
33
  async function getImageMeta(current, logger, device) {
33
- const images = (await axios.get('https://files.inovelli.com/firmware/firmware.json')).data;
34
+ logger.debug(`InovelliOTA: call getImageMeta for ${device.modelID}`);
35
+ const { data: images } = await axios.get(url);
36
+ if (!images) {
37
+ throw new Error(`InovelliOTA: Error getting firmware page at ${url}`);
38
+ }
34
39
  if (Object.keys(images).indexOf(device.modelID) === -1) {
35
- throw new Error(`The device '${device.modelID}' is not supported for OTA at this time.`);
40
+ return null;
36
41
  }
37
42
  // Force for now. There is only beta firmware at the moment.
38
43
  const useBetaChannel = true;
@@ -56,7 +61,8 @@ async function getImageMeta(current, logger, device) {
56
61
  })
57
62
  .pop();
58
63
  if (!image) {
59
- throw new Error(`No images found in the ${useBetaChannel ? 'beta' : 'production'} channel for the device '${device.modelID}'`);
64
+ logger.warn(`OTA: No image found in the ${useBetaChannel ? 'beta' : 'production'} channel for device '${device.modelID}'`);
65
+ return null;
60
66
  }
61
67
  // version in the firmware removes the zero padding and support hex versioning
62
68
  return {
@@ -70,7 +76,7 @@ exports.getImageMeta = getImageMeta;
70
76
  * Interface implementation
71
77
  */
72
78
  async function isUpdateAvailable(device, logger, requestPayload = null) {
73
- return common.isUpdateAvailable(device, logger, common.isNewImageAvailable, requestPayload, getImageMeta);
79
+ return common.isUpdateAvailable(device, logger, requestPayload, common.isNewImageAvailable, getImageMeta);
74
80
  }
75
81
  exports.isUpdateAvailable = isUpdateAvailable;
76
82
  async function updateToLatest(device, logger, onProgress) {
@@ -1 +1 @@
1
- {"version":3,"file":"inovelli.js","sourceRoot":"","sources":["../../src/lib/ota/inovelli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inovelli.js","sourceRoot":"","sources":["../../src/lib/ota/inovelli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"jethome.d.ts","sourceRoot":"","sources":["../../src/lib/ota/jethome.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAC,MAAM,UAAU,CAAC;AA0BzC,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAiBpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG;AAED,eAAO,MAAM,gBAAgB,kBAAmB,MAAM,SAErD,CAAC"}
1
+ {"version":3,"file":"jethome.d.ts","sourceRoot":"","sources":["../../src/lib/ota/jethome.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAC,MAAM,UAAU,CAAC;AA4BzC,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAuBpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG;AAED,eAAO,MAAM,gBAAgB,kBAAmB,MAAM,SAErD,CAAC"}
@@ -22,47 +22,45 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  exports.useIndexOverride = exports.updateToLatest = exports.isUpdateAvailable = exports.getImageMeta = void 0;
30
27
  const baseurl = 'https://fw.jethome.ru';
31
- const deviceurl = baseurl + '/api/devices/';
28
+ const deviceurl = `${baseurl}/api/devices/`;
32
29
  const common = __importStar(require("./common"));
33
30
  const axios = common.getAxios();
34
- const fs_1 = __importDefault(require("fs"));
35
31
  let overrideIndexFileName = null;
36
32
  /**
37
33
  * Helper functions
38
34
  */
39
- async function getIndex(logger, modelId) {
35
+ async function getIndex(logger, modelID) {
40
36
  if (overrideIndexFileName) {
41
37
  logger.debug(`JetHomeOTA: Loading override index ${overrideIndexFileName}`);
42
- if (common.isValidUrl(overrideIndexFileName)) {
43
- const index = (await axios.get(overrideIndexFileName)).data;
44
- return index;
45
- }
46
- const index = JSON.parse(fs_1.default.readFileSync(overrideIndexFileName, 'utf-8'));
47
- return index;
38
+ const overrideIndex = await common.getOverrideIndexFile(overrideIndexFileName);
39
+ return overrideIndex;
48
40
  }
49
41
  else {
50
- const index = (await axios.get(deviceurl + modelId + '/info')).data;
51
- logger.debug(`JetHomeOTA: downloaded index for ${modelId}`);
42
+ const url = `${deviceurl}${modelID}/info`;
43
+ const { data: index } = await axios.get(url);
44
+ if (!index) {
45
+ throw new Error(`JetHomeOTA: Error getting firmware page at ${url}`);
46
+ }
47
+ logger.debug(`JetHomeOTA: downloaded index for ${modelID}`);
52
48
  return index;
53
49
  }
54
50
  }
55
51
  async function getImageMeta(current, logger, device) {
56
- const modelId = device.modelID;
57
- const imageType = current.imageType;
58
- logger.debug(`JetHomeOTA: call getImageMeta for ${modelId}`);
59
- const images = await getIndex(logger, modelId);
52
+ logger.debug(`JetHomeOTA: call getImageMeta for ${device.modelID}`);
53
+ const images = await getIndex(logger, device.modelID);
54
+ // XXX: this is assumed to always be present even for devices that support OTA but without images yet available?
55
+ if (!images?.latest_firmware?.release?.images) {
56
+ throw new Error(`JetHomeOTA: Error getting firmware images`);
57
+ }
60
58
  // we need to return the latest_firmware.release.urls.zigbee.ota
61
59
  const jetimage = images.latest_firmware.release.images['zigbee.ota'];
62
60
  if (!jetimage) {
63
- throw new Error(`No image available for imageType '${imageType}'`);
61
+ return null;
64
62
  }
65
- logger.debug('JetHomeOTA: ver: ' + images.latest_firmware.release.version + ' size: ' + jetimage.filesize + ' url: ' + baseurl + jetimage.url);
63
+ logger.debug(`JetHomeOTA: version: ${images.latest_firmware.release.version} size: ${jetimage.filesize} url: ${baseurl + jetimage.url}`);
66
64
  return {
67
65
  fileVersion: Number(images.latest_firmware.release.version),
68
66
  fileSize: jetimage.filesize,
@@ -74,7 +72,7 @@ exports.getImageMeta = getImageMeta;
74
72
  * Interface implementation
75
73
  */
76
74
  async function isUpdateAvailable(device, logger, requestPayload = null) {
77
- return common.isUpdateAvailable(device, logger, common.isNewImageAvailable, requestPayload, getImageMeta);
75
+ return common.isUpdateAvailable(device, logger, requestPayload, common.isNewImageAvailable, getImageMeta);
78
76
  }
79
77
  exports.isUpdateAvailable = isUpdateAvailable;
80
78
  async function updateToLatest(device, logger, onProgress) {
@@ -1 +1 @@
1
- {"version":3,"file":"jethome.js","sourceRoot":"","sources":["../../src/lib/ota/jethome.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jethome.js","sourceRoot":"","sources":["../../src/lib/ota/jethome.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ledvance.d.ts","sourceRoot":"","sources":["../../src/lib/ota/ledvance.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAC,MAAM,UAAU,CAAC;AAGzC;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAwBpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG"}
1
+ {"version":3,"file":"ledvance.d.ts","sourceRoot":"","sources":["../../src/lib/ota/ledvance.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAC,MAAM,UAAU,CAAC;AAGzC;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAwBpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG"}
@@ -22,25 +22,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  exports.updateToLatest = exports.isUpdateAvailable = exports.getImageMeta = void 0;
30
27
  const updateCheckUrl = 'https://api.update.ledvance.com/v1/zigbee/firmwares/newer';
31
28
  const updateDownloadUrl = 'https://api.update.ledvance.com/v1/zigbee/firmwares/download';
32
- const assert_1 = __importDefault(require("assert"));
33
29
  const common = __importStar(require("./common"));
34
30
  const axios = common.getAxios();
35
31
  /**
36
32
  * Helper functions
37
33
  */
38
34
  async function getImageMeta(current, logger, device) {
39
- const manufacturerCode = current.manufacturerCode;
40
- const imageType = current.imageType;
41
- const { data } = await axios.get(updateCheckUrl +
42
- `?company=${manufacturerCode}&product=${imageType}&version=0.0.0`);
43
- (0, assert_1.default)(data && data.firmwares && data.firmwares.length > 0, `No image available for manufacturerCode '${manufacturerCode}' imageType '${imageType}'`);
35
+ logger.debug(`LedvanceOTA: call getImageMeta for ${device.modelID}`);
36
+ const url = `${updateCheckUrl}?company=${current.manufacturerCode}&product=${current.imageType}&version=0.0.0`;
37
+ const { data } = await axios.get(url);
38
+ // Since URL is product-specific, var checking is soft-fail here ("images unavailable")
39
+ if (!data?.firmwares?.length) {
40
+ return null;
41
+ }
44
42
  // Ledvance's API docs state the checksum should be `sha_256` but it is actually `shA256`
45
43
  const { identity, fullName, length, shA256: sha256 } = data.firmwares[0];
46
44
  const fileVersionMatch = /\/(\d+)\//.exec(fullName);
@@ -49,8 +47,7 @@ async function getImageMeta(current, logger, device) {
49
47
  return {
50
48
  fileVersion,
51
49
  fileSize: length,
52
- url: updateDownloadUrl +
53
- `?company=${identity.company}&product=${identity.product}&version=${versionString}`,
50
+ url: `${updateDownloadUrl}?company=${identity.company}&product=${identity.product}&version=${versionString}`,
54
51
  sha256,
55
52
  };
56
53
  }
@@ -59,7 +56,7 @@ exports.getImageMeta = getImageMeta;
59
56
  * Interface implementation
60
57
  */
61
58
  async function isUpdateAvailable(device, logger, requestPayload = null) {
62
- return common.isUpdateAvailable(device, logger, common.isNewImageAvailable, requestPayload, getImageMeta);
59
+ return common.isUpdateAvailable(device, logger, requestPayload, common.isNewImageAvailable, getImageMeta);
63
60
  }
64
61
  exports.isUpdateAvailable = isUpdateAvailable;
65
62
  async function updateToLatest(device, logger, onProgress) {
@@ -1 +1 @@
1
- {"version":3,"file":"ledvance.js","sourceRoot":"","sources":["../../src/lib/ota/ledvance.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,cAAc,GAAG,2DAA2D,CAAC;AACnF,MAAM,iBAAiB,GAAG,8DAA8D,CAAC;AACzF,oDAA4B;AAC5B,iDAAmC;AAEnC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEhC;;GAEG;AAEI,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAc,EAAE,MAAiB;IACxF,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACpC,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,cAAc;QACzC,YAAY,gBAAgB,YAAY,SAAS,gBAAgB,CAAC,CAAC;IAEvE,IAAA,gBAAM,EAAC,IAAI,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EACtD,4CAA4C,gBAAgB,gBAAgB,SAAS,GAAG,CAAC,CAAC;IAE9F,yFAAyF;IACzF,MAAM,EAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAEvE,MAAM,gBAAgB,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,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,iBAAiB;YAClB,YAAY,QAAQ,CAAC,OAAO,YAAY,QAAQ,CAAC,OAAO,YAAY,aAAa,EAAE;QACvF,MAAM;KACT,CAAC;AACN,CAAC;AAxBD,oCAwBC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,mBAAmB,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAFD,8CAEC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAC/F,CAAC;AAFD,wCAEC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"ledvance.js","sourceRoot":"","sources":["../../src/lib/ota/ledvance.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,cAAc,GAAG,2DAA2D,CAAC;AACnF,MAAM,iBAAiB,GAAG,8DAA8D,CAAC;AACzF,iDAAmC;AAEnC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEhC;;GAEG;AAEI,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAc,EAAE,MAAiB;IACxF,MAAM,CAAC,KAAK,CAAC,sCAAsC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IACrE,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,MAAM,gBAAgB,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,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;AAxBD,oCAwBC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAFD,8CAEC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAC/F,CAAC;AAFD,wCAEC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lixee.d.ts","sourceRoot":"","sources":["../../src/lib/ota/lixee.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAc,MAAM,UAAU,CAAC;AAKtD;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CA6BpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG"}
1
+ {"version":3,"file":"lixee.d.ts","sourceRoot":"","sources":["../../src/lib/ota/lixee.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAc,MAAM,UAAU,CAAC;AAItD;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAiCpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG"}
package/lib/ota/lixee.js CHANGED
@@ -22,25 +22,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  exports.updateToLatest = exports.isUpdateAvailable = exports.getImageMeta = void 0;
30
27
  const firmwareOrigin = 'https://api.github.com/repos/fairecasoimeme/Zlinky_TIC/releases';
31
- const assert_1 = __importDefault(require("assert"));
32
28
  const common = __importStar(require("./common"));
33
29
  const axios = common.getAxios();
34
30
  /**
35
31
  * Helper functions
36
32
  */
37
33
  async function getImageMeta(current, logger, device) {
38
- const manufacturerCode = current.manufacturerCode;
39
- const imageType = current.imageType;
40
- const releasesLIST = (await axios.get(firmwareOrigin)).data;
34
+ logger.debug(`LixeeOTA: call getImageMeta for ${device.modelID}`);
35
+ const { data: releases } = await axios.get(firmwareOrigin);
36
+ if (!releases?.length) {
37
+ throw new Error(`LixeeOTA: Error getting firmware page at ${firmwareOrigin}`);
38
+ }
41
39
  let firmURL;
42
40
  // Find the most recent OTA file available
43
- for (const e of releasesLIST.sort((a, b) => a.published_at - a.published_at)) {
41
+ for (const e of releases.sort((a, b) => a.published_at - a.published_at)) {
44
42
  if (e.assets) {
45
43
  const targetObj = e.assets.find((a) => a.name.endsWith('.ota'));
46
44
  if (targetObj && targetObj.browser_download_url) {
@@ -49,8 +47,10 @@ async function getImageMeta(current, logger, device) {
49
47
  }
50
48
  }
51
49
  }
52
- (0, assert_1.default)(firmURL, `No image available for manufacturerCode '${manufacturerCode}' imageType '${imageType} on Github repo'`);
53
- logger.info(`Using firmware file ` + firmURL.name);
50
+ if (!firmURL) {
51
+ return null;
52
+ }
53
+ logger.info(`LixeeOTA: Using firmware file ` + firmURL.name);
54
54
  const image = common.parseImage((await common.getAxios().get(firmURL.browser_download_url, { responseType: 'arraybuffer' })).data);
55
55
  return {
56
56
  fileVersion: image.header.fileVersion,
@@ -63,7 +63,7 @@ exports.getImageMeta = getImageMeta;
63
63
  * Interface implementation
64
64
  */
65
65
  async function isUpdateAvailable(device, logger, requestPayload = null) {
66
- return common.isUpdateAvailable(device, logger, common.isNewImageAvailable, requestPayload, getImageMeta);
66
+ return common.isUpdateAvailable(device, logger, requestPayload, common.isNewImageAvailable, getImageMeta);
67
67
  }
68
68
  exports.isUpdateAvailable = isUpdateAvailable;
69
69
  async function updateToLatest(device, logger, onProgress) {
@@ -1 +1 @@
1
- {"version":3,"file":"lixee.js","sourceRoot":"","sources":["../../src/lib/ota/lixee.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,cAAc,GAAG,iEAAiE,CAAC;AAEzF,oDAA4B;AAC5B,iDAAmC;AACnC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEhC;;GAEG;AAEI,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAc,EAAE,MAAiB;IACxF,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACpC,MAAM,YAAY,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5D,IAAI,OAAO,CAAC;IAEZ,0CAA0C;IAC1C,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAc,EAAE,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;QACrG,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACX,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YAC7E,IAAI,SAAS,IAAI,SAAS,CAAC,oBAAoB,EAAE,CAAC;gBAC9C,OAAO,GAAG,SAAS,CAAC;gBACpB,MAAM;YACV,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAA,gBAAM,EAAC,OAAO,EACV,4CAA4C,gBAAgB,gBAAgB,SAAS,kBAAkB,CAAC,CAAC;IAE7G,MAAM,CAAC,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAC,YAAY,EAAE,aAAa,EAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEjI,OAAO;QACH,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;QACrC,QAAQ,EAAE,OAAO,CAAC,IAAI;QACtB,GAAG,EAAE,OAAO,CAAC,oBAAoB;KACpC,CAAC;AACN,CAAC;AA7BD,oCA6BC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,mBAAmB,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAFD,8CAEC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAC/F,CAAC;AAFD,wCAEC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"lixee.js","sourceRoot":"","sources":["../../src/lib/ota/lixee.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,cAAc,GAAG,iEAAiE,CAAC;AAEzF,iDAAmC;AACnC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEhC;;GAEG;AAEI,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAc,EAAE,MAAiB;IACxF,MAAM,CAAC,KAAK,CAAC,mCAAmC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAClE,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAC,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEzD,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,4CAA4C,cAAc,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,OAAO,CAAC;IAEZ,0CAA0C;IAC1C,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAc,EAAE,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;QACjG,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACX,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YAC7E,IAAI,SAAS,IAAI,SAAS,CAAC,oBAAoB,EAAE,CAAC;gBAC9C,OAAO,GAAG,SAAS,CAAC;gBACpB,MAAM;YACV,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,gCAAgC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAC,YAAY,EAAE,aAAa,EAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEjI,OAAO;QACH,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;QACrC,QAAQ,EAAE,OAAO,CAAC,IAAI;QACtB,GAAG,EAAE,OAAO,CAAC,oBAAoB;KACpC,CAAC;AACN,CAAC;AAjCD,oCAiCC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAFD,8CAEC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAC/F,CAAC;AAFD,wCAEC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"salus.d.ts","sourceRoot":"","sources":["../../src/lib/ota/salus.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAwB,MAAM,UAAU,CAAC;AAGhE;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CASpH;AAgDD;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG"}
1
+ {"version":3,"file":"salus.d.ts","sourceRoot":"","sources":["../../src/lib/ota/salus.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAwB,MAAM,UAAU,CAAC;AAGhE;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAkBpH;AAgDD;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG"}
package/lib/ota/salus.js CHANGED
@@ -28,7 +28,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.updateToLatest = exports.isUpdateAvailable = exports.getImageMeta = void 0;
30
30
  const url = 'https://eu.salusconnect.io/demo/default/status/firmware?timestamp=0';
31
- const assert_1 = __importDefault(require("assert"));
32
31
  const common = __importStar(require("./common"));
33
32
  const tar_stream_1 = __importDefault(require("tar-stream"));
34
33
  const axios = common.getAxios();
@@ -36,10 +35,15 @@ const axios = common.getAxios();
36
35
  * Helper functions
37
36
  */
38
37
  async function getImageMeta(current, logger, device) {
39
- const modelID = device.modelID;
40
- const images = (await axios.get(url)).data.versions;
41
- const image = images.find((i) => i.model === modelID);
42
- (0, assert_1.default)(image, `No image available for modelID '${modelID}'`);
38
+ logger.debug(`SalusOTA: call getImageMeta for ${device.modelID}`);
39
+ const { data } = await axios.get(url);
40
+ if (!data?.versions?.length) {
41
+ throw new Error(`SalusOTA: Error getting firmware page at ${url}`);
42
+ }
43
+ const image = data.versions.find((i) => i.model === device.modelID);
44
+ if (!image) {
45
+ return null;
46
+ }
43
47
  return {
44
48
  fileVersion: parseInt(image.version, 16),
45
49
  url: image.url.replace(/^http:\/\//, 'https://'),
@@ -82,7 +86,7 @@ async function downloadImage(meta, logger) {
82
86
  * Interface implementation
83
87
  */
84
88
  async function isUpdateAvailable(device, logger, requestPayload = null) {
85
- return common.isUpdateAvailable(device, logger, common.isNewImageAvailable, requestPayload, getImageMeta);
89
+ return common.isUpdateAvailable(device, logger, requestPayload, common.isNewImageAvailable, getImageMeta);
86
90
  }
87
91
  exports.isUpdateAvailable = isUpdateAvailable;
88
92
  async function updateToLatest(device, logger, onProgress) {
@@ -1 +1 @@
1
- {"version":3,"file":"salus.js","sourceRoot":"","sources":["../../src/lib/ota/salus.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,GAAG,GAAG,qEAAqE,CAAC;AAClF,oDAA4B;AAC5B,iDAAmC;AACnC,4DAA6B;AAE7B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEhC;;GAEG;AAEI,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAc,EAAE,MAAiB;IACxF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC;IAChE,IAAA,gBAAM,EAAC,KAAK,EAAE,mCAAmC,OAAO,GAAG,CAAC,CAAC;IAC7D,OAAO;QACH,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC;KACnD,CAAC;AACN,CAAC;AATD,oCASC;AAED,KAAK,UAAU,KAAK,CAAC,SAA4B;IAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,MAAM,OAAO,GAAG,oBAAG,CAAC,OAAO,EAAE,CAAC;QAE9B,MAAM,MAAM,GAAe,EAAE,CAAC;QAE9B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAE5B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;YAC1C,MAAM,OAAO,GAAa,EAAE,CAAC;YAE7B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAS,IAAI;gBAC3B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE;gBACb,MAAM,CAAC,IAAI,CAAC;oBACR,OAAO;oBACP,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;iBAC/B,CAAC,CAAC;gBAEH,IAAI,EAAE,CAAC;YACX,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,OAAO,CAAC,MAAM,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,IAAiB,EAAE,MAAc;IAC1D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAC,YAAY,EAAE,QAAQ,EAAC,CAAC,CAAC;IAErE,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEzC,mBAAmB;IACnB,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAE3E,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,mBAAmB,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAFD,8CAEC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;AAC9G,CAAC;AAFD,wCAEC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"salus.js","sourceRoot":"","sources":["../../src/lib/ota/salus.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,7 @@ async function isUpdateAvailable(device, logger, requestPayload = null) {
32
32
  const scenesEndpoint = device.endpoints.find((e) => e.supportsOutputCluster('genScenes'));
33
33
  await scenesEndpoint.write('genScenes', { currentGroup: 49502 });
34
34
  }
35
- return common.isUpdateAvailable(device, logger, common.isNewImageAvailable, requestPayload, zigbeeOTA.getImageMeta);
35
+ return common.isUpdateAvailable(device, logger, requestPayload, common.isNewImageAvailable, zigbeeOTA.getImageMeta);
36
36
  }
37
37
  exports.isUpdateAvailable = isUpdateAvailable;
38
38
  async function updateToLatest(device, logger, onProgress) {
@@ -1 +1 @@
1
- {"version":3,"file":"securifi.js","sourceRoot":"","sources":["../../src/lib/ota/securifi.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iDAAmC;AACnC,uDAAyC;AAElC,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,IAAI,MAAM,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACjC,mDAAmD;QACnD,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1F,MAAM,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,EAAC,YAAY,EAAE,KAAK,EAAC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,mBAAmB,EAAE,cAAc,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;AACxH,CAAC;AAPD,8CAOC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,IAAI,MAAM,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACjC,mDAAmD;QACnD,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1F,MAAM,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,EAAC,YAAY,EAAE,KAAK,EAAC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;AACzG,CAAC;AAPD,wCAOC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"securifi.js","sourceRoot":"","sources":["../../src/lib/ota/securifi.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iDAAmC;AACnC,uDAAyC;AAElC,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,IAAI,MAAM,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACjC,mDAAmD;QACnD,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1F,MAAM,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,EAAC,YAAY,EAAE,KAAK,EAAC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,mBAAmB,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;AACxH,CAAC;AAPD,8CAOC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,IAAI,MAAM,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACjC,mDAAmD;QACnD,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1F,MAAM,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,EAAC,YAAY,EAAE,KAAK,EAAC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;AACzG,CAAC;AAPD,wCAOC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tradfri.d.ts","sourceRoot":"","sources":["../../src/lib/ota/tradfri.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAW,MAAM,UAAU,CAAC;AAKnD;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAcpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG;AAED,QAAA,MAAM,WAAW,YAEhB,CAAC;AAEF,OAAO,EAAC,WAAW,IAAI,UAAU,EAAC,CAAC"}
1
+ {"version":3,"file":"tradfri.d.ts","sourceRoot":"","sources":["../../src/lib/ota/tradfri.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAW,MAAM,UAAU,CAAC;AAKnD;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAmBpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG;AAED,QAAA,MAAM,WAAW,YAEhB,CAAC;AAEF,OAAO,EAAC,WAAW,IAAI,UAAU,EAAC,CAAC"}
@@ -33,12 +33,15 @@ let useTestURL = false;
33
33
  * Helper functions
34
34
  */
35
35
  async function getImageMeta(current, logger, device) {
36
+ logger.debug(`TradfriOTA: call getImageMeta for ${device.modelID}`);
36
37
  const url = useTestURL ? testURL : productionURL;
37
- const imageType = current.imageType;
38
- const images = (await axios.get(url)).data;
39
- const image = images.find((i) => i.fw_image_type === imageType);
38
+ const { data: images } = await axios.get(url);
39
+ if (!images?.length) {
40
+ throw new Error(`TradfriOTA: Error getting firmware page at ${url}`);
41
+ }
42
+ const image = images.find((i) => i.fw_image_type === current.imageType);
40
43
  if (!image) {
41
- throw new Error(`No image available for imageType '${imageType}'`);
44
+ return null;
42
45
  }
43
46
  return {
44
47
  fileVersion: (image.fw_file_version_MSB << 16) | image.fw_file_version_LSB,
@@ -50,7 +53,7 @@ exports.getImageMeta = getImageMeta;
50
53
  * Interface implementation
51
54
  */
52
55
  async function isUpdateAvailable(device, logger, requestPayload = null) {
53
- return common.isUpdateAvailable(device, logger, common.isNewImageAvailable, requestPayload, getImageMeta);
56
+ return common.isUpdateAvailable(device, logger, requestPayload, common.isNewImageAvailable, getImageMeta);
54
57
  }
55
58
  exports.isUpdateAvailable = isUpdateAvailable;
56
59
  async function updateToLatest(device, logger, onProgress) {
@@ -1 +1 @@
1
- {"version":3,"file":"tradfri.js","sourceRoot":"","sources":["../../src/lib/ota/tradfri.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,aAAa,GAAG,yDAAyD,CAAC;AAChF,MAAM,OAAO,GAAG,8DAA8D,CAAC;AAE/E,iDAAmC;AACnC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAChC,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB;;GAEG;AAEI,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAc,EAAE,MAAiB;IACxF,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;IACjD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACpC,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC;IAE1E,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,qCAAqC,SAAS,GAAG,CAAC,CAAC;IACvE,CAAC;IAED,OAAO;QACH,WAAW,EAAE,CAAC,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,mBAAmB;QAC1E,GAAG,EAAE,KAAK,CAAC,aAAa;KAC3B,CAAC;AACN,CAAC;AAdD,oCAcC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,mBAAmB,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAFD,8CAEC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAC/F,CAAC;AAFD,wCAEC;AAED,MAAM,WAAW,GAAG,GAAG,EAAE;IACrB,UAAU,GAAG,IAAI,CAAC;AACtB,CAAC,CAAC;AAEqB,iCAAU;AAEjC,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;AACxC,OAAO,CAAC,UAAU,GAAG,WAAW,CAAC"}
1
+ {"version":3,"file":"tradfri.js","sourceRoot":"","sources":["../../src/lib/ota/tradfri.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,aAAa,GAAG,yDAAyD,CAAC;AAChF,MAAM,OAAO,GAAG,8DAA8D,CAAC;AAE/E,iDAAmC;AACnC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAChC,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB;;GAEG;AAEI,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAc,EAAE,MAAiB;IACxF,MAAM,CAAC,KAAK,CAAC,qCAAqC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IACpE,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;IACjD,MAAM,EAAC,IAAI,EAAE,MAAM,EAAC,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE5C,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,8CAA8C,GAAG,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAElF,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO;QACH,WAAW,EAAE,CAAC,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,mBAAmB;QAC1E,GAAG,EAAE,KAAK,CAAC,aAAa;KAC3B,CAAC;AACN,CAAC;AAnBD,oCAmBC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAFD,8CAEC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAC/F,CAAC;AAFD,wCAEC;AAED,MAAM,WAAW,GAAG,GAAG,EAAE;IACrB,UAAU,GAAG,IAAI,CAAC;AACtB,CAAC,CAAC;AAEqB,iCAAU;AAEjC,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;AACxC,OAAO,CAAC,UAAU,GAAG,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ubisys.d.ts","sourceRoot":"","sources":["../../src/lib/ota/ubisys.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAC,MAAM,UAAU,CAAC;AAGzC;;;;;;;;GAQG;AAEH;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAgCpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG"}
1
+ {"version":3,"file":"ubisys.d.ts","sourceRoot":"","sources":["../../src/lib/ota/ubisys.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAC,MAAM,UAAU,CAAC;AAGzC;;;;;;;;GAQG;AAEH;;GAEG;AAEH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAmCpH;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG"}
package/lib/ota/ubisys.js CHANGED
@@ -29,7 +29,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.updateToLatest = exports.isUpdateAvailable = exports.getImageMeta = void 0;
30
30
  const firmwareHtmlPageUrl = 'http://fwu.ubisys.de/smarthome/OTA/release/index';
31
31
  const imageRegex = /10F2-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{8})\S*ota1?\.zigbee/gi;
32
- const assert_1 = __importDefault(require("assert"));
33
32
  const url_1 = __importDefault(require("url"));
34
33
  const common = __importStar(require("./common"));
35
34
  const axios = common.getAxios();
@@ -46,26 +45,28 @@ const axios = common.getAxios();
46
45
  * Helper functions
47
46
  */
48
47
  async function getImageMeta(current, logger, device) {
49
- const imageType = current.imageType;
50
- const hardwareVersion = device.hardwareVersion;
51
- const firmwarePage = await axios.get(firmwareHtmlPageUrl, { maxContentLength: -1 });
52
- logger.debug(`OTA ubisys: got firmware page, status: ${firmwarePage.status}, data.length: ${firmwarePage.data.length}`);
53
- (0, assert_1.default)(firmwarePage.status === 200, `HTTP Error getting ubisys firmware page`);
54
- const firmwarePageHtml = firmwarePage.data;
48
+ logger.debug(`UbisysOTA: call getImageMeta for ${device.modelID}`);
49
+ const { status, data: pageHtml } = await axios.get(firmwareHtmlPageUrl, { maxContentLength: -1 });
50
+ if (status !== 200 || !pageHtml?.length) {
51
+ throw new Error(`UbisysOTA: Error getting firmware page at ${firmwareHtmlPageUrl}`);
52
+ }
53
+ logger.debug(`UbisysOTA: got firmware page, status: ${status}, data.length: ${pageHtml.length}`);
55
54
  imageRegex.lastIndex = 0; // reset (global) regex for next exec to match from the beginning again
56
- let imageMatch = imageRegex.exec(firmwarePageHtml);
55
+ let imageMatch = imageRegex.exec(pageHtml);
57
56
  let highestMatch = null;
58
57
  while (imageMatch != null) {
59
- logger.debug(`OTA ubisys: image found: ${imageMatch[0]}`);
60
- if (parseInt(imageMatch[1], 16) === imageType &&
61
- parseInt(imageMatch[2], 16) <= hardwareVersion && hardwareVersion <= parseInt(imageMatch[3], 16)) {
58
+ logger.debug(`UbisysOTA: image found: ${imageMatch[0]}`);
59
+ if (parseInt(imageMatch[1], 16) === current.imageType &&
60
+ parseInt(imageMatch[2], 16) <= device.hardwareVersion && device.hardwareVersion <= parseInt(imageMatch[3], 16)) {
62
61
  if (highestMatch === null || parseInt(highestMatch[4], 16) < parseInt(imageMatch[4], 16)) {
63
62
  highestMatch = imageMatch;
64
63
  }
65
64
  }
66
- imageMatch = imageRegex.exec(firmwarePageHtml);
65
+ imageMatch = imageRegex.exec(pageHtml);
66
+ }
67
+ if (!highestMatch) {
68
+ return null;
67
69
  }
68
- (0, assert_1.default)(highestMatch !== null, `No image available for imageType '0x${imageType.toString(16)}' with hardware version ${hardwareVersion}`);
69
70
  return {
70
71
  hardwareVersionMin: parseInt(highestMatch[2], 16),
71
72
  hardwareVersionMax: parseInt(highestMatch[3], 16),
@@ -78,7 +79,7 @@ exports.getImageMeta = getImageMeta;
78
79
  * Interface implementation
79
80
  */
80
81
  async function isUpdateAvailable(device, logger, requestPayload = null) {
81
- return common.isUpdateAvailable(device, logger, common.isNewImageAvailable, requestPayload, getImageMeta);
82
+ return common.isUpdateAvailable(device, logger, requestPayload, common.isNewImageAvailable, getImageMeta);
82
83
  }
83
84
  exports.isUpdateAvailable = isUpdateAvailable;
84
85
  async function updateToLatest(device, logger, onProgress) {
@@ -1 +1 @@
1
- {"version":3,"file":"ubisys.js","sourceRoot":"","sources":["../../src/lib/ota/ubisys.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,mBAAmB,GAAG,kDAAkD,CAAC;AAC/E,MAAM,UAAU,GAAG,gFAAgF,CAAC;AACpG,oDAA4B;AAC5B,8CAAsB;AACtB,iDAAmC;AAEnC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEhC;;;;;;;;GAQG;AAEH;;GAEG;AAEI,KAAK,UAAU,YAAY,CAAC,OAAsB,EAAE,MAAc,EAAE,MAAiB;IACxF,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACpC,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IAE/C,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAAC,gBAAgB,EAAE,CAAC,CAAC,EAAC,CAAC,CAAC;IAClF,MAAM,CAAC,KAAK,CACR,0CAA0C,YAAY,CAAC,MAAM,kBAAkB,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/G,IAAA,gBAAM,EAAC,YAAY,CAAC,MAAM,KAAK,GAAG,EAAE,yCAAyC,CAAC,CAAC;IAC/E,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC;IAE3C,UAAU,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,uEAAuE;IACjG,IAAI,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACnD,IAAI,YAAY,GAAG,IAAI,CAAC;IACxB,OAAO,UAAU,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,CAAC,KAAK,CAAC,4BAA4B,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1D,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,SAAS;YACzC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,eAAe,IAAI,eAAe,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YACnG,IAAI,YAAY,KAAK,IAAI,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;gBACvF,YAAY,GAAG,UAAU,CAAC;YAC9B,CAAC;QACL,CAAC;QACD,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACnD,CAAC;IACD,IAAA,gBAAM,EAAC,YAAY,KAAK,IAAI,EACxB,uCAAuC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,2BAA2B,eAAe,EAAE,CAAC,CAAC;IAE/G,OAAO;QACH,kBAAkB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACjD,kBAAkB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACjD,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC1C,GAAG,EAAE,aAAG,CAAC,OAAO,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;KACzD,CAAC;AACN,CAAC;AAhCD,oCAgCC;AAED;;GAEG;AAEI,KAAK,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAc,EAAE,iBAA6B,IAAI;IACxG,OAAO,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,mBAAmB,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;AAC9G,CAAC;AAFD,8CAEC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAc,EAAE,UAA0B;IAC9F,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAC/F,CAAC;AAFD,wCAEC;AAED,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"ubisys.js","sourceRoot":"","sources":["../../src/lib/ota/ubisys.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"zigbeeOTA.d.ts","sourceRoot":"","sources":["../../src/lib/ota/zigbeeOTA.ts"],"names":[],"mappings":";AAGA,OAAO,EAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAC,MAAM,UAAU,CAAC;AA4DtD,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CA0BpH;AAgBD,wBAAsB,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;;GAavE;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG;AAED,eAAO,MAAM,gBAAgB,kBAAmB,MAAM,SAErD,CAAC"}
1
+ {"version":3,"file":"zigbeeOTA.d.ts","sourceRoot":"","sources":["../../src/lib/ota/zigbeeOTA.ts"],"names":[],"mappings":";AAGA,OAAO,EAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAC,MAAM,UAAU,CAAC;AAsDtD,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAsBpH;AAgBD,wBAAsB,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;;GAavE;AAED;;GAEG;AAEH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAC,GAAG,CAAC,SAAc;;;;GAE3G;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,mBAEjG;AAED,eAAO,MAAM,gBAAgB,kBAAmB,MAAM,SAErD,CAAC"}
@@ -22,26 +22,16 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  exports.useIndexOverride = exports.updateToLatest = exports.isUpdateAvailable = exports.getFirmwareFile = exports.getImageMeta = void 0;
30
27
  const url = 'https://raw.githubusercontent.com/Koenkk/zigbee-OTA/master/index.json';
31
28
  const caBundleUrl = 'https://raw.githubusercontent.com/Koenkk/zigbee-OTA/master/cacerts.pem';
32
29
  const common = __importStar(require("./common"));
33
30
  const axios = common.getAxios();
34
- const fs_1 = __importDefault(require("fs"));
35
31
  let overrideIndexFileName = null;
36
32
  /**
37
33
  * Helper functions
38
34
  */
39
- async function getIndexFile(urlOrName) {
40
- if (common.isValidUrl(urlOrName)) {
41
- return (await axios.get(urlOrName)).data;
42
- }
43
- return JSON.parse(fs_1.default.readFileSync(urlOrName, 'utf-8'));
44
- }
45
35
  function fillImageInfo(meta, logger) {
46
36
  // Web-hosted images must come with all fields filled already
47
37
  if (common.isValidUrl(meta.url)) {
@@ -67,31 +57,31 @@ function fillImageInfo(meta, logger) {
67
57
  return meta;
68
58
  }
69
59
  async function getIndex(logger) {
70
- const index = (await axios.get(url)).data;
60
+ const { data: mainIndex } = await axios.get(url);
61
+ if (!mainIndex) {
62
+ throw new Error(`ZigbeeOTA: Error getting firmware page at ${url}`);
63
+ }
71
64
  logger.debug(`ZigbeeOTA: downloaded main index`);
72
65
  if (overrideIndexFileName) {
73
66
  logger.debug(`ZigbeeOTA: Loading override index ${overrideIndexFileName}`);
74
- const localIndex = await getIndexFile(overrideIndexFileName);
67
+ const localIndex = await common.getOverrideIndexFile(overrideIndexFileName);
75
68
  // Resulting index will have overridden items first
76
- return localIndex.concat(index).map((item) => common.isValidUrl(item.url) ? item : fillImageInfo(item, logger));
69
+ return localIndex.concat(mainIndex).map((item) => common.isValidUrl(item.url) ? item : fillImageInfo(item, logger));
77
70
  }
78
- return index;
71
+ return mainIndex;
79
72
  }
80
73
  async function getImageMeta(current, logger, device) {
81
- const modelId = device.modelID;
82
- const imageType = current.imageType;
83
- const manufacturerCode = current.manufacturerCode;
84
- const manufacturerName = device.manufacturerName;
74
+ logger.debug(`ZigbeeOTA: call getImageMeta for ${device.modelID}`);
85
75
  const images = await getIndex(logger);
86
76
  // NOTE: Officially an image can be determined with a combination of manufacturerCode and imageType.
87
77
  // However Gledopto pro products use the same imageType (0) for every device while the image is different.
88
78
  // For this case additional identification through the modelId is done.
89
79
  // In the case of Tuya and Moes, additional identification is carried out through the manufacturerName.
90
- const image = images.find((i) => i.imageType === imageType && i.manufacturerCode === manufacturerCode &&
80
+ const image = images.find((i) => i.imageType === current.imageType && i.manufacturerCode === current.manufacturerCode &&
91
81
  (!i.minFileVersion || current.fileVersion >= i.minFileVersion) && (!i.maxFileVersion || current.fileVersion <= i.maxFileVersion) &&
92
- (!i.modelId || i.modelId === modelId) && (!i.manufacturerName || i.manufacturerName.includes(manufacturerName)));
82
+ (!i.modelId || i.modelId === device.modelID) && (!i.manufacturerName || i.manufacturerName.includes(device.manufacturerName)));
93
83
  if (!image) {
94
- throw new Error(`No image available for imageType '${imageType}'`);
84
+ return null;
95
85
  }
96
86
  return {
97
87
  fileVersion: image.fileVersion,
@@ -131,7 +121,7 @@ exports.getFirmwareFile = getFirmwareFile;
131
121
  * Interface implementation
132
122
  */
133
123
  async function isUpdateAvailable(device, logger, requestPayload = null) {
134
- return common.isUpdateAvailable(device, logger, isNewImageAvailable, requestPayload, getImageMeta);
124
+ return common.isUpdateAvailable(device, logger, requestPayload, isNewImageAvailable, getImageMeta);
135
125
  }
136
126
  exports.isUpdateAvailable = isUpdateAvailable;
137
127
  async function updateToLatest(device, logger, onProgress) {
@@ -1 +1 @@
1
- {"version":3,"file":"zigbeeOTA.js","sourceRoot":"","sources":["../../src/lib/ota/zigbeeOTA.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zigbeeOTA.js","sourceRoot":"","sources":["../../src/lib/ota/zigbeeOTA.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zigbee-herdsman-converters",
3
- "version": "18.7.0",
3
+ "version": "18.8.0",
4
4
  "description": "Collection of device converters to be used with zigbee-herdsman",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",