zigbee-herdsman-converters 25.1.0 → 25.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/converters/toZigbee.d.ts.map +1 -1
  3. package/dist/converters/toZigbee.js +131 -143
  4. package/dist/converters/toZigbee.js.map +1 -1
  5. package/dist/devices/amina.d.ts.map +1 -1
  6. package/dist/devices/amina.js +7 -37
  7. package/dist/devices/amina.js.map +1 -1
  8. package/dist/devices/aurora_lighting.d.ts.map +1 -1
  9. package/dist/devices/aurora_lighting.js +1 -0
  10. package/dist/devices/aurora_lighting.js.map +1 -1
  11. package/dist/devices/awox.d.ts.map +1 -1
  12. package/dist/devices/awox.js +8 -0
  13. package/dist/devices/awox.js.map +1 -1
  14. package/dist/devices/bacchus.d.ts.map +1 -1
  15. package/dist/devices/bacchus.js +6 -2
  16. package/dist/devices/bacchus.js.map +1 -1
  17. package/dist/devices/bosch.d.ts.map +1 -1
  18. package/dist/devices/bosch.js +38 -25
  19. package/dist/devices/bosch.js.map +1 -1
  20. package/dist/devices/centralite.js.map +1 -1
  21. package/dist/devices/ctm.js.map +1 -1
  22. package/dist/devices/custom_devices_diy.d.ts.map +1 -1
  23. package/dist/devices/custom_devices_diy.js +2 -3
  24. package/dist/devices/custom_devices_diy.js.map +1 -1
  25. package/dist/devices/danfoss.d.ts.map +1 -1
  26. package/dist/devices/danfoss.js +2 -9
  27. package/dist/devices/danfoss.js.map +1 -1
  28. package/dist/devices/dawon_dns.js.map +1 -1
  29. package/dist/devices/develco.d.ts.map +1 -1
  30. package/dist/devices/develco.js.map +1 -1
  31. package/dist/devices/diyruz.js.map +1 -1
  32. package/dist/devices/eglo.js +1 -1
  33. package/dist/devices/eglo.js.map +1 -1
  34. package/dist/devices/ewelink.d.ts.map +1 -1
  35. package/dist/devices/ewelink.js +1 -5
  36. package/dist/devices/ewelink.js.map +1 -1
  37. package/dist/devices/gmmts.d.ts.map +1 -1
  38. package/dist/devices/gmmts.js +15 -5
  39. package/dist/devices/gmmts.js.map +1 -1
  40. package/dist/devices/heiman.d.ts.map +1 -1
  41. package/dist/devices/heiman.js +5 -1
  42. package/dist/devices/heiman.js.map +1 -1
  43. package/dist/devices/imhotepcreation.js.map +1 -1
  44. package/dist/devices/immax.js.map +1 -1
  45. package/dist/devices/innr.d.ts.map +1 -1
  46. package/dist/devices/innr.js +8 -0
  47. package/dist/devices/innr.js.map +1 -1
  48. package/dist/devices/inovelli.d.ts.map +1 -1
  49. package/dist/devices/inovelli.js +20 -128
  50. package/dist/devices/inovelli.js.map +1 -1
  51. package/dist/devices/keen_home.js.map +1 -1
  52. package/dist/devices/kmpcil.js.map +1 -1
  53. package/dist/devices/legrand.d.ts.map +1 -1
  54. package/dist/devices/legrand.js +2 -0
  55. package/dist/devices/legrand.js.map +1 -1
  56. package/dist/devices/lincukoo.d.ts.map +1 -1
  57. package/dist/devices/lincukoo.js +77 -1
  58. package/dist/devices/lincukoo.js.map +1 -1
  59. package/dist/devices/livolo.d.ts.map +1 -1
  60. package/dist/devices/livolo.js.map +1 -1
  61. package/dist/devices/lixee.d.ts.map +1 -1
  62. package/dist/devices/lixee.js +9 -4
  63. package/dist/devices/lixee.js.map +1 -1
  64. package/dist/devices/lytko.d.ts.map +1 -1
  65. package/dist/devices/lytko.js +12 -10
  66. package/dist/devices/lytko.js.map +1 -1
  67. package/dist/devices/moes.js.map +1 -1
  68. package/dist/devices/niko.d.ts.map +1 -1
  69. package/dist/devices/niko.js +23 -7
  70. package/dist/devices/niko.js.map +1 -1
  71. package/dist/devices/nodon.js.map +1 -1
  72. package/dist/devices/orvibo.d.ts.map +1 -1
  73. package/dist/devices/orvibo.js +9 -3
  74. package/dist/devices/orvibo.js.map +1 -1
  75. package/dist/devices/orztech.js +1 -1
  76. package/dist/devices/orztech.js.map +1 -1
  77. package/dist/devices/owon.d.ts.map +1 -1
  78. package/dist/devices/owon.js +2 -3
  79. package/dist/devices/owon.js.map +1 -1
  80. package/dist/devices/perenio.d.ts.map +1 -1
  81. package/dist/devices/perenio.js +1 -1
  82. package/dist/devices/perenio.js.map +1 -1
  83. package/dist/devices/philips.d.ts.map +1 -1
  84. package/dist/devices/philips.js +7 -0
  85. package/dist/devices/philips.js.map +1 -1
  86. package/dist/devices/pushok.js.map +1 -1
  87. package/dist/devices/qa.js.map +1 -1
  88. package/dist/devices/robb.d.ts.map +1 -1
  89. package/dist/devices/robb.js +2 -1
  90. package/dist/devices/robb.js.map +1 -1
  91. package/dist/devices/salus_controls.d.ts.map +1 -1
  92. package/dist/devices/salus_controls.js.map +1 -1
  93. package/dist/devices/sber.d.ts.map +1 -1
  94. package/dist/devices/sber.js +12 -8
  95. package/dist/devices/sber.js.map +1 -1
  96. package/dist/devices/schneider_electric.d.ts.map +1 -1
  97. package/dist/devices/schneider_electric.js +7 -6
  98. package/dist/devices/schneider_electric.js.map +1 -1
  99. package/dist/devices/sengled.d.ts.map +1 -1
  100. package/dist/devices/sengled.js.map +1 -1
  101. package/dist/devices/shinasystem.js +4 -4
  102. package/dist/devices/shinasystem.js.map +1 -1
  103. package/dist/devices/siglis.js +10 -10
  104. package/dist/devices/siglis.js.map +1 -1
  105. package/dist/devices/simpla_home.d.ts +1 -1
  106. package/dist/devices/simpla_home.d.ts.map +1 -1
  107. package/dist/devices/simpla_home.js.map +1 -1
  108. package/dist/devices/sinope.js.map +1 -1
  109. package/dist/devices/slacky_diy.d.ts.map +1 -1
  110. package/dist/devices/slacky_diy.js +3 -1
  111. package/dist/devices/slacky_diy.js.map +1 -1
  112. package/dist/devices/smartthings.js.map +1 -1
  113. package/dist/devices/sonoff.d.ts +29 -0
  114. package/dist/devices/sonoff.d.ts.map +1 -1
  115. package/dist/devices/sonoff.js +51 -14
  116. package/dist/devices/sonoff.js.map +1 -1
  117. package/dist/devices/sunricher.d.ts +15 -0
  118. package/dist/devices/sunricher.d.ts.map +1 -1
  119. package/dist/devices/sunricher.js +3 -3
  120. package/dist/devices/sunricher.js.map +1 -1
  121. package/dist/devices/tubeszb.js.map +1 -1
  122. package/dist/devices/tuya.d.ts.map +1 -1
  123. package/dist/devices/tuya.js +10 -10
  124. package/dist/devices/tuya.js.map +1 -1
  125. package/dist/devices/ubisys.d.ts.map +1 -1
  126. package/dist/devices/ubisys.js +4 -7
  127. package/dist/devices/ubisys.js.map +1 -1
  128. package/dist/devices/wirenboard.d.ts.map +1 -1
  129. package/dist/devices/wirenboard.js +5 -3
  130. package/dist/devices/wirenboard.js.map +1 -1
  131. package/dist/devices/xyzroe.d.ts.map +1 -1
  132. package/dist/devices/xyzroe.js +2 -4
  133. package/dist/devices/xyzroe.js.map +1 -1
  134. package/dist/devices/yandex.d.ts.map +1 -1
  135. package/dist/devices/yandex.js +18 -6
  136. package/dist/devices/yandex.js.map +1 -1
  137. package/dist/devices/yokis.d.ts.map +1 -1
  138. package/dist/devices/yokis.js +4 -6
  139. package/dist/devices/yokis.js.map +1 -1
  140. package/dist/lib/develco.d.ts +24 -5
  141. package/dist/lib/develco.d.ts.map +1 -1
  142. package/dist/lib/develco.js +1 -1
  143. package/dist/lib/develco.js.map +1 -1
  144. package/dist/lib/ewelink.d.ts +4 -4
  145. package/dist/lib/ewelink.d.ts.map +1 -1
  146. package/dist/lib/ewelink.js.map +1 -1
  147. package/dist/lib/generateDefinition.js.map +1 -1
  148. package/dist/lib/ikea.d.ts +30 -1
  149. package/dist/lib/ikea.d.ts.map +1 -1
  150. package/dist/lib/ikea.js +6 -1
  151. package/dist/lib/ikea.js.map +1 -1
  152. package/dist/lib/legacy.d.ts +33 -1
  153. package/dist/lib/legacy.d.ts.map +1 -1
  154. package/dist/lib/legacy.js +21 -23
  155. package/dist/lib/legacy.js.map +1 -1
  156. package/dist/lib/legrand.d.ts.map +1 -1
  157. package/dist/lib/legrand.js +5 -6
  158. package/dist/lib/legrand.js.map +1 -1
  159. package/dist/lib/light.d.ts +2 -1
  160. package/dist/lib/light.d.ts.map +1 -1
  161. package/dist/lib/light.js.map +1 -1
  162. package/dist/lib/lumi.d.ts +33 -33
  163. package/dist/lib/lumi.d.ts.map +1 -1
  164. package/dist/lib/lumi.js +8 -9
  165. package/dist/lib/lumi.js.map +1 -1
  166. package/dist/lib/modernExtend.d.ts +41 -58
  167. package/dist/lib/modernExtend.d.ts.map +1 -1
  168. package/dist/lib/modernExtend.js +70 -15
  169. package/dist/lib/modernExtend.js.map +1 -1
  170. package/dist/lib/namron.d.ts +25 -25
  171. package/dist/lib/namron.d.ts.map +1 -1
  172. package/dist/lib/namron.js +5 -6
  173. package/dist/lib/namron.js.map +1 -1
  174. package/dist/lib/nodon.d.ts.map +1 -1
  175. package/dist/lib/nodon.js.map +1 -1
  176. package/dist/lib/philips.d.ts.map +1 -1
  177. package/dist/lib/philips.js +9 -10
  178. package/dist/lib/philips.js.map +1 -1
  179. package/dist/lib/reporting.d.ts +4 -7
  180. package/dist/lib/reporting.d.ts.map +1 -1
  181. package/dist/lib/reporting.js.map +1 -1
  182. package/dist/lib/sunricher.d.ts.map +1 -1
  183. package/dist/lib/sunricher.js +6 -4
  184. package/dist/lib/sunricher.js.map +1 -1
  185. package/dist/lib/tuya.d.ts +4 -4
  186. package/dist/lib/tuya.d.ts.map +1 -1
  187. package/dist/lib/tuya.js +32 -30
  188. package/dist/lib/tuya.js.map +1 -1
  189. package/dist/lib/types.d.ts +2 -1
  190. package/dist/lib/types.d.ts.map +1 -1
  191. package/dist/lib/ubisys.d.ts +88 -8
  192. package/dist/lib/ubisys.d.ts.map +1 -1
  193. package/dist/lib/ubisys.js +0 -3
  194. package/dist/lib/ubisys.js.map +1 -1
  195. package/dist/lib/utils.d.ts +10 -8
  196. package/dist/lib/utils.d.ts.map +1 -1
  197. package/dist/lib/utils.js +8 -5
  198. package/dist/lib/utils.js.map +1 -1
  199. package/dist/models-index.json +1 -1
  200. package/package.json +2 -2
@@ -150,7 +150,7 @@ async function sendDataPoints(entity, dpValues, cmd = "dataRequest", seq = undef
150
150
  // biome-ignore lint/style/noParameterAssign: ignored using `--suppress`
151
151
  seq = gSec;
152
152
  }
153
- await entity.command("manuSpecificTuya", cmd || "dataRequest", {
153
+ await entity.command("manuSpecificTuya", cmd, {
154
154
  seq,
155
155
  dpValues,
156
156
  }, { disableDefaultResponse: true });
@@ -5415,7 +5415,7 @@ const toZigbee2 = {
5415
5415
  convertSet: async (entity, key, value, meta) => {
5416
5416
  const modeId = utils.getKey(utils.getMetaValue(entity, meta.mapped, "tuyaThermostatSystemMode"), value, null, Number);
5417
5417
  if (modeId !== null) {
5418
- await sendDataPointEnum(entity, dataPoints.mode, Number.parseInt(modeId));
5418
+ await sendDataPointEnum(entity, dataPoints.mode, modeId);
5419
5419
  }
5420
5420
  else {
5421
5421
  throw new Error(`TRV system mode ${value} is not recognized.`);
@@ -5427,7 +5427,7 @@ const toZigbee2 = {
5427
5427
  convertSet: async (entity, key, value, meta) => {
5428
5428
  const presetId = utils.getKey(utils.getMetaValue(entity, meta.mapped, "tuyaThermostatPreset"), value, null, Number);
5429
5429
  if (presetId !== null) {
5430
- await sendDataPointEnum(entity, dataPoints.mode, Number.parseInt(presetId));
5430
+ await sendDataPointEnum(entity, dataPoints.mode, presetId);
5431
5431
  }
5432
5432
  else {
5433
5433
  throw new Error(`TRV preset ${value} is not recognized.`);
@@ -5438,17 +5438,14 @@ const toZigbee2 = {
5438
5438
  key: ["away_mode"],
5439
5439
  convertSet: async (entity, key, value, meta) => {
5440
5440
  // HA has special behavior for the away mode
5441
- // @ts-expect-error ignore
5442
5441
  const awayPresetId = utils.getKey(utils.getMetaValue(entity, meta.mapped, "tuyaThermostatPreset"), "away", null, Number);
5443
- const schedulePresetId = utils.getKey(utils.getMetaValue(entity, meta.mapped, "tuyaThermostatPreset"), "schedule", null,
5444
- // @ts-expect-error ignore
5445
- Number);
5442
+ const schedulePresetId = utils.getKey(utils.getMetaValue(entity, meta.mapped, "tuyaThermostatPreset"), "schedule", null, Number);
5446
5443
  if (awayPresetId !== null) {
5447
5444
  if (value === "ON") {
5448
- await sendDataPointEnum(entity, dataPoints.mode, Number.parseInt(awayPresetId));
5445
+ await sendDataPointEnum(entity, dataPoints.mode, awayPresetId);
5449
5446
  }
5450
5447
  else if (schedulePresetId != null) {
5451
- await sendDataPointEnum(entity, dataPoints.mode, Number.parseInt(schedulePresetId));
5448
+ await sendDataPointEnum(entity, dataPoints.mode, schedulePresetId);
5452
5449
  }
5453
5450
  // In case 'OFF' tuya_thermostat_preset() should be called with another preset
5454
5451
  }
@@ -5462,7 +5459,7 @@ const toZigbee2 = {
5462
5459
  convertSet: async (entity, key, value, meta) => {
5463
5460
  const modeId = utils.getKey(fanModes, value, null, Number);
5464
5461
  if (modeId !== null) {
5465
- await sendDataPointEnum(entity, dataPoints.fanMode, Number.parseInt(modeId));
5462
+ await sendDataPointEnum(entity, dataPoints.fanMode, modeId);
5466
5463
  }
5467
5464
  else {
5468
5465
  throw new Error(`TRV fan mode ${value} is not recognized.`);
@@ -5474,7 +5471,7 @@ const toZigbee2 = {
5474
5471
  convertSet: async (entity, key, value, meta) => {
5475
5472
  const modeId = utils.getKey(fanModes, value, null, Number);
5476
5473
  if (modeId !== null) {
5477
- await sendDataPointEnum(entity, dataPoints.bacFanMode, Number.parseInt(modeId));
5474
+ await sendDataPointEnum(entity, dataPoints.bacFanMode, modeId);
5478
5475
  }
5479
5476
  else {
5480
5477
  throw new Error(`TRV fan mode ${value} is not recognized.`);
@@ -5533,7 +5530,7 @@ const toZigbee2 = {
5533
5530
  convertSet: async (entity, key, value, meta) => {
5534
5531
  const modeId = utils.getKey(thermostatForceMode, value, null, Number);
5535
5532
  if (modeId !== null) {
5536
- await sendDataPointEnum(entity, dataPoints.forceMode, Number.parseInt(modeId));
5533
+ await sendDataPointEnum(entity, dataPoints.forceMode, modeId);
5537
5534
  }
5538
5535
  else {
5539
5536
  throw new Error(`TRV force mode ${value} is not recognized.`);
@@ -5545,7 +5542,7 @@ const toZigbee2 = {
5545
5542
  convertSet: async (entity, key, value, meta) => {
5546
5543
  const modeId = utils.getKey(utils.getMetaValue(entity, meta.mapped, "tuyaThermostatSystemMode"), value, null, Number);
5547
5544
  if (modeId !== null) {
5548
- await sendDataPointEnum(entity, dataPoints.forceMode, Number.parseInt(modeId));
5545
+ await sendDataPointEnum(entity, dataPoints.forceMode, modeId);
5549
5546
  }
5550
5547
  else {
5551
5548
  throw new Error(`TRV system mode ${value} is not recognized.`);
@@ -6262,10 +6259,10 @@ const toZigbee2 = {
6262
6259
  convertSet: async (entity, key, value, meta) => {
6263
6260
  switch (key) {
6264
6261
  case "o_sensitivity":
6265
- await sendDataPointEnum(entity, dataPoints.msOSensitivity, utils.getKey(msLookups.OSensitivity, value));
6262
+ await sendDataPointEnum(entity, dataPoints.msOSensitivity, utils.getKey(msLookups.OSensitivity, value, undefined, Number));
6266
6263
  break;
6267
6264
  case "v_sensitivity":
6268
- await sendDataPointEnum(entity, dataPoints.msVSensitivity, utils.getKey(msLookups.VSensitivity, value));
6265
+ await sendDataPointEnum(entity, dataPoints.msVSensitivity, utils.getKey(msLookups.VSensitivity, value, undefined, Number));
6269
6266
  break;
6270
6267
  case "led_status":
6271
6268
  // @ts-expect-error ignore
@@ -6281,7 +6278,7 @@ const toZigbee2 = {
6281
6278
  await sendDataPointValue(entity, dataPoints.msLightOffLuminancePrefer, value);
6282
6279
  break;
6283
6280
  case "mode":
6284
- await sendDataPointEnum(entity, dataPoints.msMode, utils.getKey(msLookups.Mode, value));
6281
+ await sendDataPointEnum(entity, dataPoints.msMode, utils.getKey(msLookups.Mode, value, undefined, Number));
6285
6282
  break;
6286
6283
  default: // Unknown key
6287
6284
  logger_1.logger.warning(`toZigbee.tuya_motion_sensor: Unhandled key ${key}`, "zhc:legacy:tz:tuya_motion_sensor");
@@ -6342,7 +6339,7 @@ const toZigbee2 = {
6342
6339
  case "system_mode":
6343
6340
  if (value !== "off") {
6344
6341
  await sendDataPointBool(entity, dataPoints.tvHeatingStop, 0);
6345
- await sendDataPointEnum(entity, dataPoints.tvMode, utils.getKey(tvThermostatMode, value));
6342
+ await sendDataPointEnum(entity, dataPoints.tvMode, utils.getKey(tvThermostatMode, value, undefined, Number));
6346
6343
  }
6347
6344
  else {
6348
6345
  await sendDataPointBool(entity, dataPoints.tvHeatingStop, 1);
@@ -6411,7 +6408,7 @@ const toZigbee2 = {
6411
6408
  break;
6412
6409
  case "preset":
6413
6410
  await sendDataPointBool(entity, dataPoints.tvHeatingStop, 0);
6414
- await sendDataPointEnum(entity, dataPoints.tvMode, utils.getKey(tvThermostatPreset, value));
6411
+ await sendDataPointEnum(entity, dataPoints.tvMode, utils.getKey(tvThermostatPreset, value, undefined, Number));
6415
6412
  break;
6416
6413
  default: // Unknown key
6417
6414
  logger_1.logger.warning(`Unhandled key ${key}`, "zhc:legacy:tz:moes_thermostat_tv");
@@ -6583,17 +6580,18 @@ const toZigbee2 = {
6583
6580
  }
6584
6581
  switch (key) {
6585
6582
  case "mode":
6586
- await sendDataPointEnum(entity, dataPoints.AM02Mode, utils.getKey(ZMLookups.AM02Mode, value));
6583
+ await sendDataPointEnum(entity, dataPoints.AM02Mode, utils.getKey(ZMLookups.AM02Mode, value, undefined, Number));
6587
6584
  break;
6588
6585
  case "motor_direction":
6589
- await sendDataPointEnum(entity, dataPoints.AM02Direction, utils.getKey(ZMLookups.AM02Direction, value));
6586
+ await sendDataPointEnum(entity, dataPoints.AM02Direction, utils.getKey(ZMLookups.AM02Direction, value, undefined, Number));
6590
6587
  break;
6591
6588
  case "border":
6592
- await sendDataPointEnum(entity, dataPoints.AM02Border, utils.getKey(ZMLookups.AM02Border, value));
6589
+ await sendDataPointEnum(entity, dataPoints.AM02Border, utils.getKey(ZMLookups.AM02Border, value, undefined, Number));
6593
6590
  break;
6594
- case "motor_working_mode":
6595
- await sendDataPointEnum(entity, dataPoints.AM02MotorWorkingMode, utils.getKey(ZMLookups.AM02MotorWorkingMode, value));
6591
+ case "motor_working_mode": {
6592
+ await sendDataPointEnum(entity, dataPoints.AM02MotorWorkingMode, utils.getKey(ZMLookups.AM02MotorWorkingMode, value, undefined, Number));
6596
6593
  break;
6594
+ }
6597
6595
  }
6598
6596
  },
6599
6597
  },