@switchbot/homebridge-switchbot 3.5.1-beta.2 → 3.5.1-beta.3

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 (187) hide show
  1. package/dist/device/blindtilt.d.ts +15 -6
  2. package/dist/device/blindtilt.d.ts.map +1 -1
  3. package/dist/device/blindtilt.js +203 -255
  4. package/dist/device/blindtilt.js.map +1 -1
  5. package/dist/device/bot.d.ts +9 -4
  6. package/dist/device/bot.d.ts.map +1 -1
  7. package/dist/device/bot.js +196 -218
  8. package/dist/device/bot.js.map +1 -1
  9. package/dist/device/ceilinglight.d.ts +9 -4
  10. package/dist/device/ceilinglight.d.ts.map +1 -1
  11. package/dist/device/ceilinglight.js +202 -247
  12. package/dist/device/ceilinglight.js.map +1 -1
  13. package/dist/device/colorbulb.d.ts +10 -5
  14. package/dist/device/colorbulb.d.ts.map +1 -1
  15. package/dist/device/colorbulb.js +329 -378
  16. package/dist/device/colorbulb.js.map +1 -1
  17. package/dist/device/contact.d.ts +9 -4
  18. package/dist/device/contact.d.ts.map +1 -1
  19. package/dist/device/contact.js +99 -142
  20. package/dist/device/contact.js.map +1 -1
  21. package/dist/device/curtain.d.ts +19 -7
  22. package/dist/device/curtain.d.ts.map +1 -1
  23. package/dist/device/curtain.js +203 -264
  24. package/dist/device/curtain.js.map +1 -1
  25. package/dist/device/device.d.ts +28 -32
  26. package/dist/device/device.d.ts.map +1 -1
  27. package/dist/device/device.js +186 -225
  28. package/dist/device/device.js.map +1 -1
  29. package/dist/device/fan.d.ts +9 -4
  30. package/dist/device/fan.d.ts.map +1 -1
  31. package/dist/device/fan.js +198 -227
  32. package/dist/device/fan.js.map +1 -1
  33. package/dist/device/hub.d.ts +9 -5
  34. package/dist/device/hub.d.ts.map +1 -1
  35. package/dist/device/hub.js +106 -231
  36. package/dist/device/hub.js.map +1 -1
  37. package/dist/device/humidifier.d.ts +12 -4
  38. package/dist/device/humidifier.d.ts.map +1 -1
  39. package/dist/device/humidifier.js +192 -232
  40. package/dist/device/humidifier.js.map +1 -1
  41. package/dist/device/iosensor.d.ts +9 -4
  42. package/dist/device/iosensor.d.ts.map +1 -1
  43. package/dist/device/iosensor.js +91 -157
  44. package/dist/device/iosensor.js.map +1 -1
  45. package/dist/device/lightstrip.d.ts +10 -5
  46. package/dist/device/lightstrip.d.ts.map +1 -1
  47. package/dist/device/lightstrip.js +287 -367
  48. package/dist/device/lightstrip.js.map +1 -1
  49. package/dist/device/lock.d.ts +10 -5
  50. package/dist/device/lock.d.ts.map +1 -1
  51. package/dist/device/lock.js +171 -216
  52. package/dist/device/lock.js.map +1 -1
  53. package/dist/device/meter.d.ts +9 -4
  54. package/dist/device/meter.d.ts.map +1 -1
  55. package/dist/device/meter.js +93 -158
  56. package/dist/device/meter.js.map +1 -1
  57. package/dist/device/meterplus.d.ts +9 -4
  58. package/dist/device/meterplus.d.ts.map +1 -1
  59. package/dist/device/meterplus.js +94 -155
  60. package/dist/device/meterplus.js.map +1 -1
  61. package/dist/device/motion.d.ts +9 -4
  62. package/dist/device/motion.d.ts.map +1 -1
  63. package/dist/device/motion.js +84 -142
  64. package/dist/device/motion.js.map +1 -1
  65. package/dist/device/plug.d.ts +9 -4
  66. package/dist/device/plug.d.ts.map +1 -1
  67. package/dist/device/plug.js +99 -124
  68. package/dist/device/plug.js.map +1 -1
  69. package/dist/device/robotvacuumcleaner.d.ts +9 -6
  70. package/dist/device/robotvacuumcleaner.d.ts.map +1 -1
  71. package/dist/device/robotvacuumcleaner.js +170 -253
  72. package/dist/device/robotvacuumcleaner.js.map +1 -1
  73. package/dist/device/waterdetector.d.ts +12 -4
  74. package/dist/device/waterdetector.d.ts.map +1 -1
  75. package/dist/device/waterdetector.js +102 -128
  76. package/dist/device/waterdetector.js.map +1 -1
  77. package/dist/irdevice/airconditioner.d.ts +2 -1
  78. package/dist/irdevice/airconditioner.d.ts.map +1 -1
  79. package/dist/irdevice/airconditioner.js.map +1 -1
  80. package/dist/irdevice/airpurifier.d.ts +2 -1
  81. package/dist/irdevice/airpurifier.d.ts.map +1 -1
  82. package/dist/irdevice/airpurifier.js.map +1 -1
  83. package/dist/irdevice/camera.d.ts +2 -1
  84. package/dist/irdevice/camera.d.ts.map +1 -1
  85. package/dist/irdevice/camera.js.map +1 -1
  86. package/dist/irdevice/fan.d.ts +2 -1
  87. package/dist/irdevice/fan.d.ts.map +1 -1
  88. package/dist/irdevice/fan.js.map +1 -1
  89. package/dist/irdevice/irdevice.d.ts +2 -1
  90. package/dist/irdevice/irdevice.d.ts.map +1 -1
  91. package/dist/irdevice/irdevice.js +1 -1
  92. package/dist/irdevice/irdevice.js.map +1 -1
  93. package/dist/irdevice/light.d.ts +2 -1
  94. package/dist/irdevice/light.d.ts.map +1 -1
  95. package/dist/irdevice/light.js.map +1 -1
  96. package/dist/irdevice/other.d.ts +2 -1
  97. package/dist/irdevice/other.d.ts.map +1 -1
  98. package/dist/irdevice/other.js.map +1 -1
  99. package/dist/irdevice/tv.d.ts +2 -1
  100. package/dist/irdevice/tv.d.ts.map +1 -1
  101. package/dist/irdevice/tv.js.map +1 -1
  102. package/dist/irdevice/vacuumcleaner.d.ts +2 -1
  103. package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
  104. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  105. package/dist/irdevice/waterheater.d.ts +2 -1
  106. package/dist/irdevice/waterheater.d.ts.map +1 -1
  107. package/dist/irdevice/waterheater.js.map +1 -1
  108. package/dist/platform.d.ts +5 -7
  109. package/dist/platform.d.ts.map +1 -1
  110. package/dist/platform.js +51 -34
  111. package/dist/platform.js.map +1 -1
  112. package/dist/settings.d.ts +49 -191
  113. package/dist/settings.d.ts.map +1 -1
  114. package/dist/settings.js +19 -0
  115. package/dist/settings.js.map +1 -1
  116. package/dist/types/bledevicestatus.d.ts +279 -0
  117. package/dist/types/bledevicestatus.d.ts.map +1 -0
  118. package/dist/types/bledevicestatus.js +2 -0
  119. package/dist/types/bledevicestatus.js.map +1 -0
  120. package/dist/types/devicelist.d.ts +89 -0
  121. package/dist/types/devicelist.d.ts.map +1 -0
  122. package/dist/types/devicelist.js +6 -0
  123. package/dist/types/devicelist.js.map +1 -0
  124. package/dist/types/deviceresponse.d.ts +13 -0
  125. package/dist/types/deviceresponse.d.ts.map +1 -0
  126. package/dist/types/deviceresponse.js +2 -0
  127. package/dist/types/deviceresponse.js.map +1 -0
  128. package/dist/types/devicestatus.d.ts +149 -0
  129. package/dist/types/devicestatus.d.ts.map +1 -0
  130. package/dist/types/devicestatus.js +3 -0
  131. package/dist/types/devicestatus.js.map +1 -0
  132. package/dist/types/devicewebhookstatus.d.ts +156 -0
  133. package/dist/types/devicewebhookstatus.d.ts.map +1 -0
  134. package/dist/types/devicewebhookstatus.js +2 -0
  135. package/dist/types/devicewebhookstatus.js.map +1 -0
  136. package/dist/types/irdevicelist.d.ts +10 -0
  137. package/dist/types/irdevicelist.d.ts.map +1 -0
  138. package/dist/types/irdevicelist.js +2 -0
  139. package/dist/types/irdevicelist.js.map +1 -0
  140. package/dist/types/pushbody.d.ts +6 -0
  141. package/dist/types/pushbody.d.ts.map +1 -0
  142. package/dist/types/pushbody.js +2 -0
  143. package/dist/types/pushbody.js.map +1 -0
  144. package/dist/utils.d.ts +25 -0
  145. package/dist/utils.d.ts.map +1 -1
  146. package/dist/utils.js +28 -0
  147. package/dist/utils.js.map +1 -1
  148. package/package.json +10 -10
  149. package/src/device/blindtilt.ts +223 -263
  150. package/src/device/bot.ts +208 -221
  151. package/src/device/ceilinglight.ts +210 -257
  152. package/src/device/colorbulb.ts +334 -397
  153. package/src/device/contact.ts +111 -146
  154. package/src/device/curtain.ts +220 -283
  155. package/src/device/device.ts +194 -245
  156. package/src/device/fan.ts +214 -230
  157. package/src/device/hub.ts +126 -246
  158. package/src/device/humidifier.ts +216 -243
  159. package/src/device/iosensor.ts +114 -166
  160. package/src/device/lightstrip.ts +302 -377
  161. package/src/device/lock.ts +187 -221
  162. package/src/device/meter.ts +116 -177
  163. package/src/device/meterplus.ts +117 -174
  164. package/src/device/motion.ts +99 -144
  165. package/src/device/plug.ts +110 -128
  166. package/src/device/robotvacuumcleaner.ts +189 -252
  167. package/src/device/waterdetector.ts +120 -138
  168. package/src/irdevice/airconditioner.ts +2 -1
  169. package/src/irdevice/airpurifier.ts +2 -1
  170. package/src/irdevice/camera.ts +2 -1
  171. package/src/irdevice/fan.ts +2 -1
  172. package/src/irdevice/irdevice.ts +3 -2
  173. package/src/irdevice/light.ts +2 -1
  174. package/src/irdevice/other.ts +2 -1
  175. package/src/irdevice/tv.ts +2 -1
  176. package/src/irdevice/vacuumcleaner.ts +2 -1
  177. package/src/irdevice/waterheater.ts +2 -1
  178. package/src/platform.ts +52 -34
  179. package/src/settings.ts +30 -239
  180. package/src/types/bledevicestatus.ts +305 -0
  181. package/src/types/devicelist.ts +124 -0
  182. package/src/types/deviceresponse.ts +15 -0
  183. package/src/types/devicestatus.ts +178 -0
  184. package/src/types/devicewebhookstatus.ts +196 -0
  185. package/src/types/irdevicelist.ts +15 -0
  186. package/src/types/pushbody.ts +9 -0
  187. package/src/utils.ts +33 -0
@@ -1 +1 @@
1
- {"version":3,"file":"humidifier.js","sourceRoot":"","sources":["../../src/device/humidifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"humidifier.js","sourceRoot":"","sources":["../../src/device/humidifier.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,12 @@
1
1
  import { deviceBase } from './device.js';
2
2
  import { Subject } from 'rxjs';
3
+ import type { devicesConfig } from '../settings.js';
4
+ import type { device } from '../types/devicelist.js';
3
5
  import type { SwitchBotPlatform } from '../platform.js';
6
+ import type { outdoorMeterServiceData } from '../types/bledevicestatus.js';
7
+ import type { outdoorMeterStatus } from '../types/devicestatus.js';
8
+ import type { outdoorMeterWebhookContext } from '../types/devicewebhookstatus.js';
4
9
  import type { PlatformAccessory } from 'homebridge';
5
- import type { device, devicesConfig, serviceData, deviceStatus } from '../settings.js';
6
10
  /**
7
11
  * Platform Accessory
8
12
  * An instance of this class is created for each accessory your platform registers
@@ -16,15 +20,16 @@ export declare class IOSensor extends deviceBase {
16
20
  ioSensorUpdateInProgress: boolean;
17
21
  doIOSensorUpdate: Subject<void>;
18
22
  constructor(platform: SwitchBotPlatform, accessory: PlatformAccessory, device: device & devicesConfig);
19
- BLEparseStatus(serviceData: serviceData): Promise<void>;
20
- openAPIparseStatus(deviceStatus: deviceStatus): Promise<void>;
23
+ BLEparseStatus(serviceData: outdoorMeterServiceData): Promise<void>;
24
+ openAPIparseStatus(deviceStatus: outdoorMeterStatus): Promise<void>;
25
+ parseStatusWebhook(context: outdoorMeterWebhookContext): Promise<void>;
21
26
  /**
22
27
  * Asks the SwitchBot API for the latest device information
23
28
  */
24
29
  refreshStatus(): Promise<void>;
25
30
  BLERefreshStatus(): Promise<void>;
26
31
  openAPIRefreshStatus(): Promise<void>;
27
- registerWebhook(accessory: PlatformAccessory, device: device & devicesConfig): Promise<void>;
32
+ registerWebhook(): Promise<void>;
28
33
  /**
29
34
  * Updates the status for each of the HomeKit Characteristics
30
35
  */
@@ -1 +1 @@
1
- {"version":3,"file":"iosensor.d.ts","sourceRoot":"","sources":["../../src/device/iosensor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,OAAO,EAAuB,MAAM,MAAM,CAAC;AAEpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAuB,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAClF,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEvF;;;;GAIG;AACH,qBAAa,QAAS,SAAQ,UAAU;IA0BpC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IAxBtC,OAAO,CAAC,OAAO,CAKb;IAEF,OAAO,CAAC,cAAc,CAAC,CAIrB;IAEF,OAAO,CAAC,iBAAiB,CAAC,CAIxB;IAGF,wBAAwB,EAAG,OAAO,CAAC;IACnC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAGrB,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,MAAM,GAAG,aAAa;IA8G1B,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BvD,kBAAkB,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA4CnE;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAc9B,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBjC,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBrC,eAAe,CAAC,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa;IAgClF;;OAEG;IACG,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IA6E7C,oBAAoB,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IASnD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3B,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAUtC"}
1
+ {"version":3,"file":"iosensor.d.ts","sourceRoot":"","sources":["../../src/device/iosensor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,OAAO,EAAuB,MAAM,MAAM,CAAC;AAGpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,KAAK,EAAuB,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAElF;;;;GAIG;AACH,qBAAa,QAAS,SAAQ,UAAU;IA0BpC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IAxBtC,OAAO,CAAC,OAAO,CAKb;IAEF,OAAO,CAAC,cAAc,CAAC,CAIrB;IAEF,OAAO,CAAC,iBAAiB,CAAC,CAIxB;IAGF,wBAAwB,EAAG,OAAO,CAAC;IACnC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAGrB,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,MAAM,GAAG,aAAa;IA8G1B,cAAc,CAAC,WAAW,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BnE,kBAAkB,CAAC,YAAY,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAwCnE,kBAAkB,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB5E;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAa9B,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBjC,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBrC,eAAe;IAiBrB;;OAEG;IACG,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB7C,oBAAoB,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAW3B,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAUtC"}
@@ -1,6 +1,7 @@
1
1
  import { deviceBase } from './device.js';
2
2
  import { convertUnits } from '../utils.js';
3
3
  import { Subject, interval, skipWhile } from 'rxjs';
4
+ import { SwitchBotBLEModel, SwitchBotBLEModelName } from 'node-switchbot';
4
5
  /**
5
6
  * Platform Accessory
6
7
  * An instance of this class is created for each accessory your platform registers
@@ -106,68 +107,60 @@ export class IOSensor extends deviceBase {
106
107
  this.refreshStatus();
107
108
  // Retrieve initial values and updateHomekit
108
109
  this.updateHomeKitCharacteristics();
110
+ //regisiter webhook event handler
111
+ this.registerWebhook();
109
112
  // Start an update interval
110
113
  interval(this.deviceRefreshRate * 1000)
111
114
  .pipe(skipWhile(() => this.ioSensorUpdateInProgress))
112
115
  .subscribe(async () => {
113
116
  await this.refreshStatus();
114
117
  });
115
- //regisiter webhook event handler
116
- this.registerWebhook(accessory, device);
117
118
  }
118
119
  async BLEparseStatus(serviceData) {
119
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BLEparseStatus`);
120
- // Battery
120
+ await this.debugLog('BLEparseStatus');
121
+ // BatteryLevel
121
122
  this.Battery.BatteryLevel = Number(serviceData.battery);
122
- if (this.Battery.BatteryLevel < 10) {
123
- this.Battery.StatusLowBattery = this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW;
124
- }
125
- else {
126
- this.Battery.StatusLowBattery = this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL;
127
- }
128
- this.debugLog(`${this.accessory.displayName} BatteryLevel: ${this.Battery.BatteryLevel}, StatusLowBattery: ${this.Battery.StatusLowBattery}`);
129
- // Humidity
130
- if (!this.device.iosensor?.hide_humidity) {
123
+ await this.debugLog(`BatteryLevel: ${this.Battery.BatteryLevel}`);
124
+ // StatusLowBattery
125
+ this.Battery.StatusLowBattery = this.Battery.BatteryLevel < 10
126
+ ? this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW : this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL;
127
+ await this.debugLog(`StatusLowBattery: ${this.Battery.StatusLowBattery}`);
128
+ // CurrentRelativeHumidity
129
+ if (!this.device.iosensor?.hide_humidity && this.HumiditySensor?.Service) {
131
130
  this.HumiditySensor.CurrentRelativeHumidity = serviceData.humidity;
132
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Humidity: ${this.HumiditySensor.CurrentRelativeHumidity}%`);
131
+ await this.debugLog(`CurrentRelativeHumidity: ${this.HumiditySensor.CurrentRelativeHumidity}%`);
133
132
  }
134
133
  // Current Temperature
135
- if (!this.device.meter?.hide_temperature) {
136
- const celcius = serviceData.temperature.c < 0 ? 0 : serviceData.temperature.c > 100 ? 100 : serviceData.temperature.c;
137
- this.TemperatureSensor.CurrentTemperature = celcius;
138
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Temperature: ${this.TemperatureSensor.CurrentTemperature}°c`);
134
+ if (!this.device.meter?.hide_temperature && this.TemperatureSensor?.Service) {
135
+ const CELSIUS = serviceData.temperature.c < 0 ? 0 : serviceData.temperature.c > 100 ? 100 : serviceData.temperature.c;
136
+ this.TemperatureSensor.CurrentTemperature = CELSIUS;
137
+ await this.debugLog(`Temperature: ${this.TemperatureSensor.CurrentTemperature}°c`);
139
138
  }
140
139
  }
141
140
  async openAPIparseStatus(deviceStatus) {
142
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} openAPIparseStatus`);
141
+ await this.debugLog('openAPIparseStatus');
143
142
  // BatteryLevel
144
- this.Battery.BatteryLevel = Number(deviceStatus.body.battery);
145
- if (this.Battery.BatteryLevel < 10) {
146
- this.Battery.StatusLowBattery = this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW;
147
- }
148
- else {
149
- this.Battery.StatusLowBattery = this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL;
150
- }
151
- if (Number.isNaN(this.Battery.BatteryLevel)) {
152
- this.Battery.BatteryLevel = 100;
153
- }
154
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BatteryLevel: ${this.Battery.BatteryLevel},`
155
- + ` StatusLowBattery: ${this.Battery.StatusLowBattery}`);
156
- // Current Relative Humidity
157
- if (!this.device.iosensor?.hide_humidity) {
158
- this.HumiditySensor.CurrentRelativeHumidity = deviceStatus.body.humidity;
159
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Humidity: ${this.HumiditySensor.CurrentRelativeHumidity}%`);
143
+ this.Battery.BatteryLevel = Number(deviceStatus.battery);
144
+ await this.debugLog(`BatteryLevel: ${this.Battery.BatteryLevel}`);
145
+ // StatusLowBattery
146
+ this.Battery.StatusLowBattery = this.Battery.BatteryLevel < 10
147
+ ? this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW : this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL;
148
+ await this.debugLog(`StatusLowBattery: ${this.Battery.StatusLowBattery}`);
149
+ // CurrentRelativeHumidity
150
+ if (!this.device.iosensor?.hide_humidity && this.HumiditySensor?.Service) {
151
+ this.HumiditySensor.CurrentRelativeHumidity = deviceStatus.humidity;
152
+ await this.debugLog(`CurrentRelativeHumidity: ${this.HumiditySensor.CurrentRelativeHumidity}%`);
160
153
  }
161
154
  // Current Temperature
162
- if (!this.device.iosensor?.hide_temperature) {
163
- this.TemperatureSensor.CurrentTemperature = deviceStatus.body.temperature;
164
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Temperature: ${this.TemperatureSensor.CurrentTemperature}°c`);
155
+ if (!this.device.meter?.hide_temperature && this.TemperatureSensor?.Service) {
156
+ this.TemperatureSensor.CurrentTemperature = deviceStatus.temperature;
157
+ await this.debugLog(`CurrentTemperature: ${this.TemperatureSensor.CurrentTemperature}°c`);
165
158
  }
166
159
  // Firmware Version
167
- const version = deviceStatus.body.version?.toString();
168
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Firmware Version: ${version?.replace(/^V|-.*$/g, '')}`);
169
- if (deviceStatus.body.version) {
170
- const deviceVersion = version?.replace(/^V|-.*$/g, '') ?? '0.0.0';
160
+ const version = deviceStatus.version.toString();
161
+ await this.debugLog(`Firmware Version: ${version.replace(/^V|-.*$/g, '')}`);
162
+ if (deviceStatus.version) {
163
+ const deviceVersion = version.replace(/^V|-.*$/g, '') ?? '0.0.0';
171
164
  this.accessory
172
165
  .getService(this.hap.Service.AccessoryInformation)
173
166
  .setCharacteristic(this.hap.Characteristic.HardwareRevision, deviceVersion)
@@ -175,7 +168,26 @@ export class IOSensor extends deviceBase {
175
168
  .getCharacteristic(this.hap.Characteristic.FirmwareRevision)
176
169
  .updateValue(deviceVersion);
177
170
  this.accessory.context.deviceVersion = deviceVersion;
178
- this.debugSuccessLog(`${this.device.deviceType}: ${this.accessory.displayName} deviceVersion: ${this.accessory.context.deviceVersion}`);
171
+ await this.debugSuccessLog(`deviceVersion: ${this.accessory.context.deviceVersion}`);
172
+ }
173
+ }
174
+ async parseStatusWebhook(context) {
175
+ await this.debugLog('parseStatusWebhook');
176
+ await this.debugLog(`(scale, temperature, humidity) = Webhook:(${context.scale}, ${convertUnits(context.temperature, context.scale, this.device.iosensor?.convertUnitTo)}, ${context.humidity}), current:(${this.TemperatureSensor?.CurrentTemperature},`
177
+ + ` ${this.HumiditySensor?.CurrentRelativeHumidity})`);
178
+ if (context.scale !== 'CELSIUS' && this.device.iosensor?.convertUnitTo === undefined) {
179
+ await this.warnLog(`received a non-CELSIUS Webhook scale: ${context.scale}, Use the *convertUnitsTo* config under Hub settings,`
180
+ + ' if displaying incorrectly in HomeKit.');
181
+ }
182
+ // CurrentRelativeHumidity
183
+ if (this.device.iosensor?.hide_humidity && this.HumiditySensor?.Service) {
184
+ this.HumiditySensor.CurrentRelativeHumidity = context.humidity;
185
+ await this.debugLog(`CurrentRelativeHumidity: ${this.HumiditySensor.CurrentRelativeHumidity}%`);
186
+ }
187
+ // CurrentTemperature
188
+ if (this.device.iosensor?.hide_temperature && this.TemperatureSensor?.Service) {
189
+ this.TemperatureSensor.CurrentTemperature = convertUnits(context.temperature, context.scale, this.device.iosensor?.convertUnitTo);
190
+ await this.debugLog(`CurrentTemperature: ${this.TemperatureSensor.CurrentTemperature}°c`);
179
191
  }
180
192
  }
181
193
  /**
@@ -183,7 +195,7 @@ export class IOSensor extends deviceBase {
183
195
  */
184
196
  async refreshStatus() {
185
197
  if (!this.device.enableCloudService && this.OpenAPI) {
186
- this.errorLog(`${this.device.deviceType}: ${this.accessory.displayName} refreshStatus enableCloudService: ${this.device.enableCloudService}`);
198
+ await this.errorLog(`refreshStatus enableCloudService: ${this.device.enableCloudService}`);
187
199
  }
188
200
  else if (this.BLE) {
189
201
  await this.BLERefreshStatus();
@@ -193,12 +205,11 @@ export class IOSensor extends deviceBase {
193
205
  }
194
206
  else {
195
207
  await this.offlineOff();
196
- this.debugWarnLog(`${this.device.deviceType}: ${this.accessory.displayName} Connection Type:`
197
- + ` ${this.device.connectionType}, refreshStatus will not happen.`);
208
+ await this.debugWarnLog(`Connection Type: ${this.device.connectionType}, refreshStatus will not happen.`);
198
209
  }
199
210
  }
200
211
  async BLERefreshStatus() {
201
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BLERefreshStatus`);
212
+ await this.debugLog('BLERefreshStatus');
202
213
  const switchbot = await this.switchbotBLE();
203
214
  if (switchbot === undefined) {
204
215
  await this.BLERefreshConnection(switchbot);
@@ -209,173 +220,96 @@ export class IOSensor extends deviceBase {
209
220
  // Start to monitor advertisement packets
210
221
  const serviceData = await this.monitorAdvertisementPackets(switchbot);
211
222
  // Update HomeKit
212
- if (serviceData.model !== '' && serviceData.modelName !== '') {
223
+ if (serviceData.model === SwitchBotBLEModel.OutdoorMeter && serviceData.modelName === SwitchBotBLEModelName.OutdoorMeter) {
213
224
  await this.BLEparseStatus(serviceData);
214
225
  await this.updateHomeKitCharacteristics();
215
226
  }
216
227
  else {
217
- this.errorLog(`${this.device.deviceType}: ${this.accessory.displayName} failed to get serviceData, serviceData: ${serviceData}`);
228
+ await this.errorLog(`failed to get serviceData, serviceData: ${serviceData}`);
218
229
  await this.BLERefreshConnection(switchbot);
219
230
  }
220
231
  })();
221
232
  }
222
233
  }
223
234
  async openAPIRefreshStatus() {
224
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} openAPIRefreshStatus`);
235
+ await this.debugLog('openAPIRefreshStatus');
225
236
  try {
226
237
  const { body, statusCode } = await this.deviceRefreshStatus();
227
238
  const deviceStatus = await body.json();
228
- await this.refreshStatusCodes(statusCode, deviceStatus);
239
+ await this.debugLog(`statusCode: ${statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
229
240
  ;
230
- if ((statusCode === 200 || statusCode === 100) && (deviceStatus.statusCode === 200 || deviceStatus.statusCode === 100)) {
231
- await this.successfulRefreshStatus(statusCode, deviceStatus);
232
- await this.openAPIparseStatus(deviceStatus);
241
+ if (await this.successfulStatusCodes(statusCode, deviceStatus)) {
242
+ await this.debugSuccessLog(`statusCode: ${statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
243
+ await this.openAPIparseStatus(deviceStatus.body);
233
244
  await this.updateHomeKitCharacteristics();
234
245
  }
235
246
  else {
236
- await this.statusCodes(statusCode, deviceStatus);
247
+ await this.debugWarnLog(`statusCode: ${statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
248
+ await this.debugWarnLog(statusCode, deviceStatus);
237
249
  }
238
250
  }
239
251
  catch (e) {
240
252
  await this.apiError(e);
241
- await this.openAPIRefreshError(e);
253
+ await this.errorLog(`failed openAPIRefreshStatus with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
242
254
  }
243
255
  }
244
- async registerWebhook(accessory, device) {
245
- if (device.webhook) {
246
- this.debugLog(`${device.deviceType}: ${accessory.displayName} is listening webhook.`);
247
- this.platform.webhookEventHandler[device.deviceId] = async (context) => {
256
+ async registerWebhook() {
257
+ if (this.device.webhook) {
258
+ await this.debugLog('is listening webhook.');
259
+ this.platform.webhookEventHandler[this.device.deviceId] = async (context) => {
248
260
  try {
249
- this.debugLog(`${device.deviceType}: ${accessory.displayName} received Webhook: ${JSON.stringify(context)}`);
250
- const { temperature, humidity } = context;
251
- const { CurrentTemperature } = this.TemperatureSensor || { CurrentTemperature: undefined };
252
- const { CurrentRelativeHumidity } = this.HumiditySensor || { CurrentRelativeHumidity: undefined };
253
- if (context.scale !== 'CELCIUS' && device.iosensor?.convertUnitTo === undefined) {
254
- this.warnLog(`${device.deviceType}: ${accessory.displayName} received a non-CELCIUS Webhook scale: `
255
- + `${context.scale}, Use the *convertUnitsTo* config under Indoor/Outdoor Sensor settings, if displaying incorrectly in HomeKit.`);
256
- }
257
- this.debugLog(`${device.deviceType}: ${accessory.displayName} (scale, temperature, humidity) = Webhook:(${context.scale},`
258
- + ` ${convertUnits(temperature, context.scale, device.iosensor?.convertUnitTo)}, ${humidity}), current:(${CurrentTemperature}, `
259
- + `${CurrentRelativeHumidity})`);
260
- if (device.iosensor?.hide_humidity) {
261
- this.HumiditySensor.CurrentRelativeHumidity = humidity;
262
- }
263
- if (device.iosensor?.hide_temperature) {
264
- this.TemperatureSensor.CurrentTemperature = convertUnits(temperature, context.scale, device.iosensor?.convertUnitTo);
265
- }
266
- this.updateHomeKitCharacteristics();
261
+ await this.debugLog(`received Webhook: ${JSON.stringify(context)}`);
262
+ await this.parseStatusWebhook(context);
263
+ await this.updateHomeKitCharacteristics();
267
264
  }
268
265
  catch (e) {
269
- this.errorLog(`${device.deviceType}: ${accessory.displayName} failed to handle webhook. Received: ${JSON.stringify(context)} Error: ${e}`);
266
+ await this.errorLog(`failed to handle webhook. Received: ${JSON.stringify(context)} Error: ${e}`);
270
267
  }
271
268
  };
272
269
  }
273
270
  else {
274
- this.debugLog(`${device.deviceType}: ${accessory.displayName} is not listening webhook.`);
271
+ await this.debugLog('is not listening webhook.');
275
272
  }
276
273
  }
277
274
  /**
278
275
  * Updates the status for each of the HomeKit Characteristics
279
276
  */
280
277
  async updateHomeKitCharacteristics() {
281
- const mqttmessage = [];
282
- const entry = { time: Math.round(new Date().valueOf() / 1000) };
283
278
  // CurrentRelativeHumidity
284
- if (!this.device.iosensor?.hide_humidity) {
285
- if (this.HumiditySensor.CurrentRelativeHumidity === undefined) {
286
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName}`
287
- + ` CurrentRelativeHumidity: ${this.HumiditySensor.CurrentRelativeHumidity}`);
288
- }
289
- else {
290
- this.accessory.context.CurrentRelativeHumidity = this.HumiditySensor.CurrentRelativeHumidity;
291
- this.HumiditySensor.Service.updateCharacteristic(this.hap.Characteristic.CurrentRelativeHumidity, this.HumiditySensor.CurrentRelativeHumidity);
292
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic`
293
- + ` CurrentRelativeHumidity: ${this.HumiditySensor.CurrentRelativeHumidity}`);
294
- if (this.device.mqttURL) {
295
- mqttmessage.push(`"humidity": ${this.HumiditySensor.CurrentRelativeHumidity}`);
296
- }
297
- if (this.device.history) {
298
- entry['humidity'] = this.HumiditySensor.CurrentRelativeHumidity;
299
- }
300
- }
279
+ if (!this.device.iosensor?.hide_humidity && this.HumiditySensor?.Service) {
280
+ await this.updateCharacteristic(this.HumiditySensor.Service, this.hap.Characteristic.CurrentRelativeHumidity, this.HumiditySensor.CurrentRelativeHumidity, 'CurrentRelativeHumidity');
301
281
  }
302
282
  // CurrentTemperature
303
- if (!this.device.iosensor?.hide_temperature) {
304
- if (this.TemperatureSensor.CurrentTemperature === undefined) {
305
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} CurrentTemperature: ${this.TemperatureSensor.CurrentTemperature}`);
306
- }
307
- else {
308
- this.accessory.context.CurrentTemperature = this.TemperatureSensor.CurrentTemperature;
309
- this.TemperatureSensor.Service.updateCharacteristic(this.hap.Characteristic.CurrentTemperature, this.TemperatureSensor.CurrentTemperature);
310
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic`
311
- + ` CurrentTemperature: ${this.TemperatureSensor.CurrentTemperature}`);
312
- if (this.device.mqttURL) {
313
- mqttmessage.push(`"temperature": ${this.TemperatureSensor.CurrentTemperature}`);
314
- }
315
- if (this.device.history) {
316
- entry['temp'] = this.TemperatureSensor.CurrentTemperature;
317
- }
318
- }
319
- }
320
- if (this.Battery.BatteryLevel === undefined) {
321
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} BatteryLevel: ${this.Battery.BatteryLevel}`);
322
- }
323
- else {
324
- this.accessory.context.BatteryLevel = this.Battery.BatteryLevel;
325
- this.Battery.Service.updateCharacteristic(this.hap.Characteristic.BatteryLevel, this.Battery.BatteryLevel);
326
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic BatteryLevel: ${this.Battery.BatteryLevel}`);
327
- if (this.device.mqttURL) {
328
- mqttmessage.push(`"battery": ${this.Battery.BatteryLevel}`);
329
- }
330
- }
331
- if (this.Battery.StatusLowBattery === undefined) {
332
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} StatusLowBattery: ${this.Battery.StatusLowBattery}`);
333
- }
334
- else {
335
- this.accessory.context.StatusLowBattery = this.Battery.StatusLowBattery;
336
- this.Battery.Service.updateCharacteristic(this.hap.Characteristic.StatusLowBattery, this.Battery.StatusLowBattery);
337
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} updateCharacteristic`
338
- + ` StatusLowBattery: ${this.Battery.StatusLowBattery}`);
339
- if (this.device.mqttURL) {
340
- mqttmessage.push(`"lowBattery": ${this.Battery.StatusLowBattery}`);
341
- }
342
- }
343
- // MQTT Publish
344
- if (this.device.mqttURL) {
345
- this.mqttPublish(`{${mqttmessage.join(',')}}`);
346
- }
347
- // History Service
348
- if (!this.device.iosensor?.hide_humidity && (Number(this.HumiditySensor.CurrentRelativeHumidity) > 0)) {
349
- // reject unreliable data
350
- if (this.device.history) {
351
- this.historyService?.addEntry(entry);
352
- }
283
+ if (!this.device.iosensor?.hide_temperature && this.TemperatureSensor?.Service) {
284
+ await this.updateCharacteristic(this.TemperatureSensor.Service, this.hap.Characteristic.CurrentTemperature, this.TemperatureSensor.CurrentTemperature, 'CurrentTemperature');
353
285
  }
286
+ // BatteryLevel
287
+ await this.updateCharacteristic(this.Battery.Service, this.hap.Characteristic.BatteryLevel, this.Battery.BatteryLevel, 'BatteryLevel');
288
+ // StatusLowBattery
289
+ await this.updateCharacteristic(this.Battery.Service, this.hap.Characteristic.StatusLowBattery, this.Battery.StatusLowBattery, 'StatusLowBattery');
354
290
  }
355
291
  async BLERefreshConnection(switchbot) {
356
- this.errorLog(`${this.device.deviceType}: ${this.accessory.displayName} wasn't able to establish BLE Connection, node-switchbot:`
357
- + ` ${JSON.stringify(switchbot)}`);
292
+ await this.errorLog(`wasn't able to establish BLE Connection, node-switchbot: ${JSON.stringify(switchbot)}`);
358
293
  if (this.platform.config.credentials?.token && this.device.connectionType === 'BLE/OpenAPI') {
359
- this.warnLog(`${this.device.deviceType}: ${this.accessory.displayName} Using OpenAPI Connection to Refresh Status`);
294
+ await this.warnLog('Using OpenAPI Connection to Refresh Status');
360
295
  await this.openAPIRefreshStatus();
361
296
  }
362
297
  }
363
298
  async offlineOff() {
364
299
  if (this.device.offline) {
365
- if (!this.device.iosensor?.hide_humidity) {
300
+ if (!this.device.iosensor?.hide_humidity && this.HumiditySensor?.Service) {
366
301
  this.HumiditySensor.Service.updateCharacteristic(this.hap.Characteristic.CurrentRelativeHumidity, 50);
367
302
  }
368
- if (!this.device.iosensor?.hide_temperature) {
303
+ if (!this.device.iosensor?.hide_temperature && this.TemperatureSensor?.Service) {
369
304
  this.TemperatureSensor.Service.updateCharacteristic(this.hap.Characteristic.CurrentTemperature, 30);
370
305
  }
371
- this.Battery.Service.updateCharacteristic(this.hap.Characteristic.BatteryLevel, 100);
372
306
  }
373
307
  }
374
308
  async apiError(e) {
375
- if (!this.device.iosensor?.hide_humidity) {
309
+ if (!this.device.iosensor?.hide_humidity && this.HumiditySensor?.Service) {
376
310
  this.HumiditySensor.Service.updateCharacteristic(this.hap.Characteristic.CurrentRelativeHumidity, e);
377
311
  }
378
- if (!this.device.iosensor?.hide_temperature) {
312
+ if (!this.device.iosensor?.hide_temperature && this.TemperatureSensor?.Service) {
379
313
  this.TemperatureSensor.Service.updateCharacteristic(this.hap.Characteristic.CurrentTemperature, e);
380
314
  }
381
315
  this.Battery.Service.updateCharacteristic(this.hap.Characteristic.BatteryLevel, e);