@switchbot/homebridge-switchbot 2.8.2-beta.0 → 2.8.2-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/config.schema.json +1 -1
  2. package/dist/device/blindtilt.d.ts +2 -1
  3. package/dist/device/blindtilt.d.ts.map +1 -1
  4. package/dist/device/blindtilt.js +26 -14
  5. package/dist/device/blindtilt.js.map +1 -1
  6. package/dist/device/bot.d.ts +2 -1
  7. package/dist/device/bot.d.ts.map +1 -1
  8. package/dist/device/bot.js +19 -15
  9. package/dist/device/bot.js.map +1 -1
  10. package/dist/device/ceilinglight.d.ts +2 -1
  11. package/dist/device/ceilinglight.d.ts.map +1 -1
  12. package/dist/device/ceilinglight.js +16 -14
  13. package/dist/device/ceilinglight.js.map +1 -1
  14. package/dist/device/colorbulb.d.ts +2 -1
  15. package/dist/device/colorbulb.d.ts.map +1 -1
  16. package/dist/device/colorbulb.js +21 -14
  17. package/dist/device/colorbulb.js.map +1 -1
  18. package/dist/device/contact.d.ts +2 -1
  19. package/dist/device/contact.d.ts.map +1 -1
  20. package/dist/device/contact.js +16 -14
  21. package/dist/device/contact.js.map +1 -1
  22. package/dist/device/curtain.d.ts +2 -1
  23. package/dist/device/curtain.d.ts.map +1 -1
  24. package/dist/device/curtain.js +19 -14
  25. package/dist/device/curtain.js.map +1 -1
  26. package/dist/device/hub.d.ts +2 -1
  27. package/dist/device/hub.d.ts.map +1 -1
  28. package/dist/device/hub.js +16 -14
  29. package/dist/device/hub.js.map +1 -1
  30. package/dist/device/humidifier.d.ts +5 -4
  31. package/dist/device/humidifier.d.ts.map +1 -1
  32. package/dist/device/humidifier.js +16 -14
  33. package/dist/device/humidifier.js.map +1 -1
  34. package/dist/device/iosensor.d.ts +2 -1
  35. package/dist/device/iosensor.d.ts.map +1 -1
  36. package/dist/device/iosensor.js +16 -14
  37. package/dist/device/iosensor.js.map +1 -1
  38. package/dist/device/lightstrip.d.ts +2 -1
  39. package/dist/device/lightstrip.d.ts.map +1 -1
  40. package/dist/device/lightstrip.js +21 -14
  41. package/dist/device/lightstrip.js.map +1 -1
  42. package/dist/device/lock.d.ts +2 -1
  43. package/dist/device/lock.d.ts.map +1 -1
  44. package/dist/device/lock.js +16 -14
  45. package/dist/device/lock.js.map +1 -1
  46. package/dist/device/meter.d.ts +3 -2
  47. package/dist/device/meter.d.ts.map +1 -1
  48. package/dist/device/meter.js +35 -26
  49. package/dist/device/meter.js.map +1 -1
  50. package/dist/device/meterplus.d.ts +3 -2
  51. package/dist/device/meterplus.d.ts.map +1 -1
  52. package/dist/device/meterplus.js +33 -23
  53. package/dist/device/meterplus.js.map +1 -1
  54. package/dist/device/motion.d.ts +5 -4
  55. package/dist/device/motion.d.ts.map +1 -1
  56. package/dist/device/motion.js +16 -14
  57. package/dist/device/motion.js.map +1 -1
  58. package/dist/device/plug.d.ts +2 -1
  59. package/dist/device/plug.d.ts.map +1 -1
  60. package/dist/device/plug.js +17 -14
  61. package/dist/device/plug.js.map +1 -1
  62. package/dist/device/robotvacuumcleaner.d.ts +2 -1
  63. package/dist/device/robotvacuumcleaner.d.ts.map +1 -1
  64. package/dist/device/robotvacuumcleaner.js +19 -13
  65. package/dist/device/robotvacuumcleaner.js.map +1 -1
  66. package/dist/irdevice/airconditioner.d.ts +7 -19
  67. package/dist/irdevice/airconditioner.d.ts.map +1 -1
  68. package/dist/irdevice/airconditioner.js +36 -18
  69. package/dist/irdevice/airconditioner.js.map +1 -1
  70. package/dist/irdevice/airpurifier.d.ts +4 -7
  71. package/dist/irdevice/airpurifier.d.ts.map +1 -1
  72. package/dist/irdevice/airpurifier.js +26 -12
  73. package/dist/irdevice/airpurifier.js.map +1 -1
  74. package/dist/irdevice/camera.d.ts +4 -7
  75. package/dist/irdevice/camera.d.ts.map +1 -1
  76. package/dist/irdevice/camera.js +24 -12
  77. package/dist/irdevice/camera.js.map +1 -1
  78. package/dist/irdevice/fan.d.ts +4 -7
  79. package/dist/irdevice/fan.d.ts.map +1 -1
  80. package/dist/irdevice/fan.js +23 -12
  81. package/dist/irdevice/fan.js.map +1 -1
  82. package/dist/irdevice/light.d.ts +4 -7
  83. package/dist/irdevice/light.d.ts.map +1 -1
  84. package/dist/irdevice/light.js +24 -12
  85. package/dist/irdevice/light.js.map +1 -1
  86. package/dist/irdevice/other.d.ts +4 -7
  87. package/dist/irdevice/other.d.ts.map +1 -1
  88. package/dist/irdevice/other.js +24 -12
  89. package/dist/irdevice/other.js.map +1 -1
  90. package/dist/irdevice/tv.d.ts +5 -10
  91. package/dist/irdevice/tv.d.ts.map +1 -1
  92. package/dist/irdevice/tv.js +27 -14
  93. package/dist/irdevice/tv.js.map +1 -1
  94. package/dist/irdevice/vacuumcleaner.d.ts +4 -7
  95. package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
  96. package/dist/irdevice/vacuumcleaner.js +24 -12
  97. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  98. package/dist/irdevice/waterheater.d.ts +6 -16
  99. package/dist/irdevice/waterheater.d.ts.map +1 -1
  100. package/dist/irdevice/waterheater.js +28 -16
  101. package/dist/irdevice/waterheater.js.map +1 -1
  102. package/package.json +2 -2
  103. package/src/device/blindtilt.ts +28 -16
  104. package/src/device/bot.ts +21 -15
  105. package/src/device/ceilinglight.ts +20 -14
  106. package/src/device/colorbulb.ts +23 -14
  107. package/src/device/contact.ts +20 -14
  108. package/src/device/curtain.ts +22 -15
  109. package/src/device/hub.ts +20 -14
  110. package/src/device/humidifier.ts +23 -17
  111. package/src/device/iosensor.ts +20 -14
  112. package/src/device/lightstrip.ts +23 -14
  113. package/src/device/lock.ts +20 -14
  114. package/src/device/meter.ts +39 -27
  115. package/src/device/meterplus.ts +38 -26
  116. package/src/device/motion.ts +24 -23
  117. package/src/device/plug.ts +20 -14
  118. package/src/device/robotvacuumcleaner.ts +21 -13
  119. package/src/irdevice/airconditioner.ts +36 -18
  120. package/src/irdevice/airpurifier.ts +26 -12
  121. package/src/irdevice/camera.ts +24 -12
  122. package/src/irdevice/fan.ts +23 -12
  123. package/src/irdevice/light.ts +24 -12
  124. package/src/irdevice/other.ts +24 -12
  125. package/src/irdevice/tv.ts +27 -14
  126. package/src/irdevice/vacuumcleaner.ts +24 -12
  127. package/src/irdevice/waterheater.ts +28 -16
@@ -1 +1 @@
1
- {"version":3,"file":"meter.d.ts","sourceRoot":"","sources":["../../src/device/meter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meter.d.ts","sourceRoot":"","sources":["../../src/device/meter.ts"],"names":[],"mappings":"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"}
@@ -42,9 +42,9 @@ class Meter {
42
42
  .setCharacteristic(this.platform.Characteristic.Manufacturer, 'SwitchBot')
43
43
  .setCharacteristic(this.platform.Characteristic.Model, 'METERTH-S1')
44
44
  .setCharacteristic(this.platform.Characteristic.SerialNumber, device.deviceId)
45
- .setCharacteristic(this.platform.Characteristic.FirmwareRevision, this.FirmwareRevision(accessory, device))
45
+ .setCharacteristic(this.platform.Characteristic.FirmwareRevision, this.setFirmwareRevision(accessory, device))
46
46
  .getCharacteristic(this.platform.Characteristic.FirmwareRevision)
47
- .updateValue(this.FirmwareRevision(accessory, device));
47
+ .updateValue(this.setFirmwareRevision(accessory, device));
48
48
  // Temperature Sensor Service
49
49
  if (device.meter?.hide_temperature) {
50
50
  this.debugLog(`${this.device.deviceType}: ${accessory.displayName} Removing Temperature Sensor Service`);
@@ -140,7 +140,7 @@ class Meter {
140
140
  }
141
141
  async BLEparseStatus() {
142
142
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BLEparseStatus`);
143
- // Battery
143
+ // BatteryLevel
144
144
  this.BatteryLevel = Number(this.BLE_BatteryLevel);
145
145
  if (this.BatteryLevel < 15) {
146
146
  this.StatusLowBattery = this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW;
@@ -149,12 +149,12 @@ class Meter {
149
149
  this.StatusLowBattery = this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL;
150
150
  }
151
151
  this.debugLog(`${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}, StatusLowBattery: ${this.StatusLowBattery}`);
152
- // Humidity
152
+ // CurrentRelativeHumidity
153
153
  if (!this.device.meter?.hide_humidity) {
154
154
  this.CurrentRelativeHumidity = this.BLE_CurrentRelativeHumidity;
155
155
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Humidity: ${this.CurrentRelativeHumidity}%`);
156
156
  }
157
- // Current Temperature
157
+ // CurrentTemperature
158
158
  if (!this.device.meter?.hide_temperature) {
159
159
  this.BLE_Celsius < 0 ? 0 : this.BLE_Celsius > 100 ? 100 : this.BLE_Celsius;
160
160
  this.CurrentTemperature = this.BLE_Celsius;
@@ -163,7 +163,7 @@ class Meter {
163
163
  }
164
164
  async openAPIparseStatus() {
165
165
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} openAPIparseStatus`);
166
- // Battery
166
+ // BatteryLevel
167
167
  this.BatteryLevel = Number(this.OpenAPI_BatteryLevel);
168
168
  if (this.BatteryLevel < 15) {
169
169
  this.StatusLowBattery = this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW;
@@ -172,16 +172,18 @@ class Meter {
172
172
  this.StatusLowBattery = this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL;
173
173
  }
174
174
  this.debugLog(`${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}, StatusLowBattery: ${this.StatusLowBattery}`);
175
- // Current Relative Humidity
175
+ // CurrentRelativeHumidity
176
176
  if (!this.device.meter?.hide_humidity) {
177
177
  this.CurrentRelativeHumidity = this.OpenAPI_CurrentRelativeHumidity;
178
178
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Humidity: ${this.CurrentRelativeHumidity}%`);
179
179
  }
180
- // Current Temperature
180
+ // CurrentTemperature
181
181
  if (!this.device.meter?.hide_temperature) {
182
182
  this.CurrentTemperature = this.OpenAPI_CurrentTemperature;
183
183
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Temperature: ${this.CurrentTemperature}°c`);
184
184
  }
185
+ // FirmwareRevision
186
+ this.FirmwareRevision = JSON.stringify(this.OpenAPI_FirmwareRevision);
185
187
  }
186
188
  /**
187
189
  * Asks the SwitchBot API for the latest device information
@@ -304,6 +306,7 @@ class Meter {
304
306
  async updateHomeKitCharacteristics() {
305
307
  const mqttmessage = [];
306
308
  const entry = { time: Math.round(new Date().valueOf() / 1000) };
309
+ // CurrentRelativeHumidity
307
310
  if (!this.device.meter?.hide_humidity) {
308
311
  if (this.CurrentRelativeHumidity === undefined) {
309
312
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} CurrentRelativeHumidity: ${this.CurrentRelativeHumidity}`);
@@ -321,6 +324,7 @@ class Meter {
321
324
  }
322
325
  }
323
326
  }
327
+ // CurrentTemperature
324
328
  if (!this.device.meter?.hide_temperature) {
325
329
  if (this.CurrentTemperature === undefined) {
326
330
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} CurrentTemperature: ${this.CurrentTemperature}`);
@@ -337,6 +341,7 @@ class Meter {
337
341
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic CurrentTemperature: ${this.CurrentTemperature}`);
338
342
  }
339
343
  }
344
+ // BatteryLevel
340
345
  if (this.BatteryLevel === undefined) {
341
346
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}`);
342
347
  }
@@ -359,6 +364,21 @@ class Meter {
359
364
  this.batteryService?.updateCharacteristic(this.platform.Characteristic.StatusLowBattery, this.StatusLowBattery);
360
365
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic StatusLowBattery: ${this.StatusLowBattery}`);
361
366
  }
367
+ // FirmwareRevision
368
+ if (this.FirmwareRevision === undefined) {
369
+ this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} FirmwareRevision: ${this.FirmwareRevision}`);
370
+ }
371
+ else {
372
+ if (this.device.mqttURL) {
373
+ mqttmessage.push(`"FirmwareRevision": ${this.FirmwareRevision}`);
374
+ }
375
+ this.accessory.context.FirmwareRevision = this.FirmwareRevision;
376
+ this.accessory.getService(this.platform.Service.AccessoryInformation)
377
+ .updateCharacteristic(this.platform.Characteristic.FirmwareRevision, this.FirmwareRevision);
378
+ this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} `
379
+ + `updateCharacteristic FirmwareRevision: ${this.FirmwareRevision}`);
380
+ }
381
+ // MQTT
362
382
  if (this.device.mqttURL) {
363
383
  this.mqttPublish(`{${mqttmessage.join(',')}}`);
364
384
  }
@@ -368,17 +388,6 @@ class Meter {
368
388
  this.historyService?.addEntry(entry);
369
389
  }
370
390
  }
371
- // FirmwareRevision
372
- if (this.OpenAPI_FirmwareRevision === undefined) {
373
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} FirmwareRevision: ${this.OpenAPI_FirmwareRevision}`);
374
- }
375
- else {
376
- this.accessory.context.OpenAPI_FirmwareRevision = this.OpenAPI_FirmwareRevision;
377
- this.accessory.getService(this.platform.Service.AccessoryInformation)
378
- .updateCharacteristic(this.platform.Characteristic.FirmwareRevision, this.OpenAPI_FirmwareRevision);
379
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} `
380
- + `updateCharacteristic FirmwareRevision: ${this.OpenAPI_FirmwareRevision}`);
381
- }
382
391
  }
383
392
  /*
384
393
  * Publish MQTT message for topics of
@@ -526,24 +535,24 @@ class Meter {
526
535
  this.batteryService?.updateCharacteristic(this.platform.Characteristic.BatteryLevel, e);
527
536
  this.batteryService?.updateCharacteristic(this.platform.Characteristic.StatusLowBattery, e);
528
537
  }
529
- FirmwareRevision(accessory, device) {
530
- let FirmwareRevision;
538
+ setFirmwareRevision(accessory, device) {
531
539
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName}` + ` accessory.context.FirmwareRevision: ${accessory.context.FirmwareRevision}`);
532
540
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} device.firmware: ${device.firmware}`);
533
541
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} this.platform.version: ${this.platform.version}`);
534
542
  if (device.firmware) {
535
- FirmwareRevision = device.firmware;
543
+ this.FirmwareRevision = device.firmware;
536
544
  }
537
545
  else if (device.version) {
538
- FirmwareRevision = JSON.stringify(device.version);
546
+ this.FirmwareRevision = JSON.stringify(device.version);
539
547
  }
540
548
  else if (accessory.context.FirmwareRevision) {
541
- FirmwareRevision = accessory.context.FirmwareRevision;
549
+ this.FirmwareRevision = accessory.context.FirmwareRevision;
542
550
  }
543
551
  else {
544
- FirmwareRevision = this.platform.version;
552
+ this.FirmwareRevision = this.platform.version;
545
553
  }
546
- return FirmwareRevision;
554
+ this.debugWarnLog(`${this.device.deviceType}: ${this.accessory.displayName} setFirmwareRevision: ${this.FirmwareRevision}`);
555
+ return this.FirmwareRevision;
547
556
  }
548
557
  async context() {
549
558
  if (this.CurrentRelativeHumidity === undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"meter.js","sourceRoot":"","sources":["../../src/device/meter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meter.js","sourceRoot":"","sources":["../../src/device/meter.ts"],"names":[],"mappings":"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"}
@@ -18,9 +18,10 @@ export declare class MeterPlus {
18
18
  humidityservice?: Service;
19
19
  temperatureservice?: Service;
20
20
  BatteryLevel: CharacteristicValue;
21
+ FirmwareRevision: CharacteristicValue;
21
22
  StatusLowBattery: CharacteristicValue;
22
23
  CurrentTemperature?: CharacteristicValue;
23
- CurrentRelativeHumidity: CharacteristicValue;
24
+ CurrentRelativeHumidity?: CharacteristicValue;
24
25
  OpenAPI_BatteryLevel: deviceStatus['battery'];
25
26
  OpenAPI_FirmwareRevision: deviceStatus['version'];
26
27
  OpenAPI_CurrentTemperature: deviceStatus['temperature'];
@@ -68,7 +69,7 @@ export declare class MeterPlus {
68
69
  statusCode(statusCode: number): Promise<void>;
69
70
  offlineOff(): Promise<void>;
70
71
  apiError(e: any): Promise<void>;
71
- FirmwareRevision(accessory: PlatformAccessory<Context>, device: device & devicesConfig): CharacteristicValue;
72
+ setFirmwareRevision(accessory: PlatformAccessory<Context>, device: device & devicesConfig): CharacteristicValue;
72
73
  context(): Promise<void>;
73
74
  refreshRate(device: device & devicesConfig): Promise<void>;
74
75
  config(device: device & devicesConfig): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"meterplus.d.ts","sourceRoot":"","sources":["../../src/device/meterplus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meterplus.d.ts","sourceRoot":"","sources":["../../src/device/meterplus.ts"],"names":[],"mappings":"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"}
@@ -42,9 +42,9 @@ class MeterPlus {
42
42
  .setCharacteristic(this.platform.Characteristic.Manufacturer, 'SwitchBot')
43
43
  .setCharacteristic(this.platform.Characteristic.Model, this.model(device))
44
44
  .setCharacteristic(this.platform.Characteristic.SerialNumber, device.deviceId)
45
- .setCharacteristic(this.platform.Characteristic.FirmwareRevision, this.FirmwareRevision(accessory, device))
45
+ .setCharacteristic(this.platform.Characteristic.FirmwareRevision, this.setFirmwareRevision(accessory, device))
46
46
  .getCharacteristic(this.platform.Characteristic.FirmwareRevision)
47
- .updateValue(this.FirmwareRevision(accessory, device));
47
+ .updateValue(this.setFirmwareRevision(accessory, device));
48
48
  // Temperature Sensor Service
49
49
  if (device.meter?.hide_temperature) {
50
50
  this.debugLog(`${this.device.deviceType}: ${accessory.displayName} Removing Temperature Sensor Service`);
@@ -163,7 +163,7 @@ class MeterPlus {
163
163
  }
164
164
  async openAPIparseStatus() {
165
165
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} openAPIparseStatus`);
166
- // Battery
166
+ // BatteryLevel
167
167
  this.BatteryLevel = Number(this.OpenAPI_BatteryLevel);
168
168
  if (this.BatteryLevel < 15) {
169
169
  this.StatusLowBattery = this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW;
@@ -172,16 +172,18 @@ class MeterPlus {
172
172
  this.StatusLowBattery = this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL;
173
173
  }
174
174
  this.debugLog(`${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}, StatusLowBattery: ${this.StatusLowBattery}`);
175
- // Current Relative Humidity
175
+ // CurrentRelativeHumidity
176
176
  if (!this.device.meter?.hide_humidity) {
177
177
  this.CurrentRelativeHumidity = this.OpenAPI_CurrentRelativeHumidity;
178
178
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Humidity: ${this.CurrentRelativeHumidity}%`);
179
179
  }
180
- // Current Temperature
180
+ // CurrentTemperature
181
181
  if (!this.device.meter?.hide_temperature) {
182
182
  this.CurrentTemperature = this.OpenAPI_CurrentTemperature;
183
183
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Temperature: ${this.CurrentTemperature}°c`);
184
184
  }
185
+ // FirmwareRevision
186
+ this.FirmwareRevision = JSON.stringify(this.OpenAPI_FirmwareRevision);
185
187
  }
186
188
  /**
187
189
  * Asks the SwitchBot API for the latest device information
@@ -304,6 +306,7 @@ class MeterPlus {
304
306
  async updateHomeKitCharacteristics() {
305
307
  const mqttmessage = [];
306
308
  const entry = { time: Math.round(new Date().valueOf() / 1000) };
309
+ // CurrentRelativeHumidity
307
310
  if (!this.device.meter?.hide_humidity) {
308
311
  if (this.CurrentRelativeHumidity === undefined) {
309
312
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} CurrentRelativeHumidity: ${this.CurrentRelativeHumidity}`);
@@ -321,6 +324,7 @@ class MeterPlus {
321
324
  }
322
325
  }
323
326
  }
327
+ // CurrentTemperature
324
328
  if (!this.device.meter?.hide_temperature) {
325
329
  if (this.CurrentTemperature === undefined) {
326
330
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} CurrentTemperature: ${this.CurrentTemperature}`);
@@ -337,6 +341,7 @@ class MeterPlus {
337
341
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic CurrentTemperature: ${this.CurrentTemperature}`);
338
342
  }
339
343
  }
344
+ // BatteryLevel
340
345
  if (this.BatteryLevel === undefined) {
341
346
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}`);
342
347
  }
@@ -348,6 +353,7 @@ class MeterPlus {
348
353
  this.batteryService?.updateCharacteristic(this.platform.Characteristic.BatteryLevel, this.BatteryLevel);
349
354
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic BatteryLevel: ${this.BatteryLevel}`);
350
355
  }
356
+ // StatusLowBattery
351
357
  if (this.StatusLowBattery === undefined) {
352
358
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} StatusLowBattery: ${this.StatusLowBattery}`);
353
359
  }
@@ -359,6 +365,21 @@ class MeterPlus {
359
365
  this.batteryService?.updateCharacteristic(this.platform.Characteristic.StatusLowBattery, this.StatusLowBattery);
360
366
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic StatusLowBattery: ${this.StatusLowBattery}`);
361
367
  }
368
+ // FirmwareRevision
369
+ if (this.FirmwareRevision === undefined) {
370
+ this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} FirmwareRevision: ${this.FirmwareRevision}`);
371
+ }
372
+ else {
373
+ if (this.device.mqttURL) {
374
+ mqttmessage.push(`"FirmwareRevision": ${this.FirmwareRevision}`);
375
+ }
376
+ this.accessory.context.FirmwareRevision = this.FirmwareRevision;
377
+ this.accessory.getService(this.platform.Service.AccessoryInformation)
378
+ .updateCharacteristic(this.platform.Characteristic.FirmwareRevision, this.FirmwareRevision);
379
+ this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} `
380
+ + `updateCharacteristic FirmwareRevision: ${this.FirmwareRevision}`);
381
+ }
382
+ // MQTT
362
383
  if (this.device.mqttURL) {
363
384
  this.mqttPublish(`{${mqttmessage.join(',')}}`);
364
385
  }
@@ -368,17 +389,6 @@ class MeterPlus {
368
389
  this.historyService?.addEntry(entry);
369
390
  }
370
391
  }
371
- // FirmwareRevision
372
- if (this.OpenAPI_FirmwareRevision === undefined) {
373
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} FirmwareRevision: ${this.OpenAPI_FirmwareRevision}`);
374
- }
375
- else {
376
- this.accessory.context.OpenAPI_FirmwareRevision = this.OpenAPI_FirmwareRevision;
377
- this.accessory.getService(this.platform.Service.AccessoryInformation)
378
- .updateCharacteristic(this.platform.Characteristic.FirmwareRevision, this.OpenAPI_FirmwareRevision);
379
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} `
380
- + `updateCharacteristic FirmwareRevision: ${this.OpenAPI_FirmwareRevision}`);
381
- }
382
392
  }
383
393
  /*
384
394
  * Publish MQTT message for topics of
@@ -536,24 +546,24 @@ class MeterPlus {
536
546
  this.batteryService?.updateCharacteristic(this.platform.Characteristic.BatteryLevel, e);
537
547
  this.batteryService?.updateCharacteristic(this.platform.Characteristic.StatusLowBattery, e);
538
548
  }
539
- FirmwareRevision(accessory, device) {
540
- let FirmwareRevision;
549
+ setFirmwareRevision(accessory, device) {
541
550
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName}` + ` accessory.context.FirmwareRevision: ${accessory.context.FirmwareRevision}`);
542
551
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} device.firmware: ${device.firmware}`);
543
552
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} this.platform.version: ${this.platform.version}`);
544
553
  if (device.firmware) {
545
- FirmwareRevision = device.firmware;
554
+ this.FirmwareRevision = device.firmware;
546
555
  }
547
556
  else if (device.version) {
548
- FirmwareRevision = JSON.stringify(device.version);
557
+ this.FirmwareRevision = JSON.stringify(device.version);
549
558
  }
550
559
  else if (accessory.context.FirmwareRevision) {
551
- FirmwareRevision = accessory.context.FirmwareRevision;
560
+ this.FirmwareRevision = accessory.context.FirmwareRevision;
552
561
  }
553
562
  else {
554
- FirmwareRevision = this.platform.version;
563
+ this.FirmwareRevision = this.platform.version;
555
564
  }
556
- return FirmwareRevision;
565
+ this.debugWarnLog(`${this.device.deviceType}: ${this.accessory.displayName} setFirmwareRevision: ${this.FirmwareRevision}`);
566
+ return this.FirmwareRevision;
557
567
  }
558
568
  async context() {
559
569
  if (this.CurrentRelativeHumidity === undefined) {