@switchbot/homebridge-switchbot 4.1.1-beta.2 → 4.1.1-beta.4

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 (100) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/device/blindtilt.js +103 -103
  3. package/dist/device/blindtilt.js.map +1 -1
  4. package/dist/device/bot.js +84 -84
  5. package/dist/device/bot.js.map +1 -1
  6. package/dist/device/ceilinglight.js +97 -97
  7. package/dist/device/ceilinglight.js.map +1 -1
  8. package/dist/device/colorbulb.js +139 -139
  9. package/dist/device/colorbulb.js.map +1 -1
  10. package/dist/device/contact.js +47 -47
  11. package/dist/device/contact.js.map +1 -1
  12. package/dist/device/curtain.d.ts +1 -1
  13. package/dist/device/curtain.d.ts.map +1 -1
  14. package/dist/device/curtain.js +91 -89
  15. package/dist/device/curtain.js.map +1 -1
  16. package/dist/device/device.d.ts +12 -12
  17. package/dist/device/device.d.ts.map +1 -1
  18. package/dist/device/device.js +42 -42
  19. package/dist/device/device.js.map +1 -1
  20. package/dist/device/fan.js +95 -95
  21. package/dist/device/fan.js.map +1 -1
  22. package/dist/device/hub.js +46 -46
  23. package/dist/device/hub.js.map +1 -1
  24. package/dist/device/humidifier.js +84 -84
  25. package/dist/device/humidifier.js.map +1 -1
  26. package/dist/device/iosensor.js +44 -44
  27. package/dist/device/iosensor.js.map +1 -1
  28. package/dist/device/lightstrip.js +118 -118
  29. package/dist/device/lightstrip.js.map +1 -1
  30. package/dist/device/lock.js +74 -74
  31. package/dist/device/lock.js.map +1 -1
  32. package/dist/device/meter.js +44 -44
  33. package/dist/device/meter.js.map +1 -1
  34. package/dist/device/meterplus.js +42 -42
  35. package/dist/device/meterplus.js.map +1 -1
  36. package/dist/device/meterpro.js +42 -42
  37. package/dist/device/meterpro.js.map +1 -1
  38. package/dist/device/motion.js +44 -44
  39. package/dist/device/motion.js.map +1 -1
  40. package/dist/device/plug.d.ts.map +1 -1
  41. package/dist/device/plug.js +59 -59
  42. package/dist/device/plug.js.map +1 -1
  43. package/dist/device/robotvacuumcleaner.js +73 -73
  44. package/dist/device/robotvacuumcleaner.js.map +1 -1
  45. package/dist/device/waterdetector.js +44 -44
  46. package/dist/device/waterdetector.js.map +1 -1
  47. package/dist/irdevice/airconditioner.js +31 -31
  48. package/dist/irdevice/airconditioner.js.map +1 -1
  49. package/dist/irdevice/airpurifier.js +10 -10
  50. package/dist/irdevice/airpurifier.js.map +1 -1
  51. package/dist/irdevice/camera.js +9 -9
  52. package/dist/irdevice/camera.js.map +1 -1
  53. package/dist/irdevice/fan.js +11 -11
  54. package/dist/irdevice/fan.js.map +1 -1
  55. package/dist/irdevice/irdevice.js +11 -11
  56. package/dist/irdevice/irdevice.js.map +1 -1
  57. package/dist/irdevice/light.js +9 -9
  58. package/dist/irdevice/light.js.map +1 -1
  59. package/dist/irdevice/other.js +55 -55
  60. package/dist/irdevice/other.js.map +1 -1
  61. package/dist/irdevice/tv.js +33 -33
  62. package/dist/irdevice/tv.js.map +1 -1
  63. package/dist/irdevice/vacuumcleaner.js +9 -9
  64. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  65. package/dist/irdevice/waterheater.js +9 -9
  66. package/dist/irdevice/waterheater.js.map +1 -1
  67. package/dist/platform.js +228 -228
  68. package/dist/platform.js.map +1 -1
  69. package/package.json +9 -9
  70. package/src/device/blindtilt.ts +103 -103
  71. package/src/device/bot.ts +84 -84
  72. package/src/device/ceilinglight.ts +97 -97
  73. package/src/device/colorbulb.ts +139 -139
  74. package/src/device/contact.ts +47 -47
  75. package/src/device/curtain.ts +91 -89
  76. package/src/device/device.ts +42 -42
  77. package/src/device/fan.ts +95 -95
  78. package/src/device/hub.ts +46 -46
  79. package/src/device/humidifier.ts +84 -84
  80. package/src/device/iosensor.ts +44 -44
  81. package/src/device/lightstrip.ts +118 -118
  82. package/src/device/lock.ts +74 -74
  83. package/src/device/meter.ts +44 -44
  84. package/src/device/meterplus.ts +42 -42
  85. package/src/device/meterpro.ts +42 -42
  86. package/src/device/motion.ts +44 -44
  87. package/src/device/plug.ts +61 -61
  88. package/src/device/robotvacuumcleaner.ts +73 -73
  89. package/src/device/waterdetector.ts +44 -44
  90. package/src/irdevice/airconditioner.ts +31 -31
  91. package/src/irdevice/airpurifier.ts +10 -10
  92. package/src/irdevice/camera.ts +9 -9
  93. package/src/irdevice/fan.ts +11 -11
  94. package/src/irdevice/irdevice.ts +11 -11
  95. package/src/irdevice/light.ts +9 -9
  96. package/src/irdevice/other.ts +55 -55
  97. package/src/irdevice/tv.ts +33 -33
  98. package/src/irdevice/vacuumcleaner.ts +9 -9
  99. package/src/irdevice/waterheater.ts +9 -9
  100. package/src/platform.ts +228 -228
@@ -134,20 +134,20 @@ export class Humidifier extends deviceBase {
134
134
  }
135
135
  catch (e) {
136
136
  await this.apiError(e);
137
- await this.errorLog(`failed pushChanges with ${device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
137
+ this.errorLog(`failed pushChanges with ${device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
138
138
  }
139
139
  this.humidifierUpdateInProgress = false;
140
140
  });
141
141
  }
142
142
  async BLEparseStatus() {
143
- await this.debugLog('BLEparseStatus');
144
- await this.debugLog(`(onState, percentage, autoMode) = BLE:(${this.serviceData.onState}, ${this.serviceData.percentage}, ${this.serviceData.autoMode}), current:(${this.HumidifierDehumidifier.Active}, ${this.HumidifierDehumidifier.CurrentRelativeHumidity}, ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold})`);
143
+ this.debugLog('BLEparseStatus');
144
+ this.debugLog(`(onState, percentage, autoMode) = BLE:(${this.serviceData.onState}, ${this.serviceData.percentage}, ${this.serviceData.autoMode}), current:(${this.HumidifierDehumidifier.Active}, ${this.HumidifierDehumidifier.CurrentRelativeHumidity}, ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold})`);
145
145
  // Active
146
146
  this.HumidifierDehumidifier.Active = this.serviceData.onState ? this.hap.Characteristic.Active.ACTIVE : this.hap.Characteristic.Active.INACTIVE;
147
- await this.debugLog(`Active: ${this.HumidifierDehumidifier.Active}`);
147
+ this.debugLog(`Active: ${this.HumidifierDehumidifier.Active}`);
148
148
  // Current Relative Humidity
149
149
  this.HumidifierDehumidifier.CurrentRelativeHumidity = validHumidity(this.serviceData.humidity);
150
- await this.debugLog(`CurrentRelativeHumidity: ${this.HumidifierDehumidifier.CurrentRelativeHumidity}`);
150
+ this.debugLog(`CurrentRelativeHumidity: ${this.HumidifierDehumidifier.CurrentRelativeHumidity}`);
151
151
  // Target Humidifier Dehumidifier State
152
152
  switch (this.serviceData.autoMode) {
153
153
  case true:
@@ -169,23 +169,23 @@ export class Humidifier extends deviceBase {
169
169
  this.HumidifierDehumidifier.CurrentHumidifierDehumidifierState = this.hap.Characteristic.CurrentHumidifierDehumidifierState.HUMIDIFYING;
170
170
  }
171
171
  }
172
- await this.debugLog(`TargetHumidifierDehumidifierState: ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold}, CurrentHumidifierDehumidifierState: ${this.HumidifierDehumidifier.CurrentHumidifierDehumidifierState}`);
172
+ this.debugLog(`TargetHumidifierDehumidifierState: ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold}, CurrentHumidifierDehumidifierState: ${this.HumidifierDehumidifier.CurrentHumidifierDehumidifierState}`);
173
173
  }
174
174
  async openAPIparseStatus() {
175
- await this.debugLog('openAPIparseStatus');
176
- await this.debugLog(`(power, auto, temperature, lackWater, nebulizationEfficiency, version) = OpenAPI:(${this.deviceStatus.power}, ${this.deviceStatus.auto}, ${this.deviceStatus.temperature}, ${this.deviceStatus.lackWater}, ${this.deviceStatus.nebulizationEfficiency}, ${this.deviceStatus.version}), current:(${this.HumidifierDehumidifier.Active}, ${this.HumidifierDehumidifier.CurrentRelativeHumidity}, ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold})`);
175
+ this.debugLog('openAPIparseStatus');
176
+ this.debugLog(`(power, auto, temperature, lackWater, nebulizationEfficiency, version) = OpenAPI:(${this.deviceStatus.power}, ${this.deviceStatus.auto}, ${this.deviceStatus.temperature}, ${this.deviceStatus.lackWater}, ${this.deviceStatus.nebulizationEfficiency}, ${this.deviceStatus.version}), current:(${this.HumidifierDehumidifier.Active}, ${this.HumidifierDehumidifier.CurrentRelativeHumidity}, ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold})`);
177
177
  // Active
178
178
  this.HumidifierDehumidifier.Active = this.deviceStatus.power === 'on'
179
179
  ? this.hap.Characteristic.Active.ACTIVE
180
180
  : this.hap.Characteristic.Active.INACTIVE;
181
- await this.debugLog(`Active: ${this.HumidifierDehumidifier.Active}`);
181
+ this.debugLog(`Active: ${this.HumidifierDehumidifier.Active}`);
182
182
  // Current Relative Humidity
183
183
  this.HumidifierDehumidifier.CurrentRelativeHumidity = validHumidity(this.deviceStatus.humidity);
184
- await this.debugLog(`CurrentRelativeHumidity: ${this.HumidifierDehumidifier.CurrentRelativeHumidity}`);
184
+ this.debugLog(`CurrentRelativeHumidity: ${this.HumidifierDehumidifier.CurrentRelativeHumidity}`);
185
185
  // Current Temperature
186
186
  if (!this.device.hide_temperature && this.TemperatureSensor?.Service) {
187
187
  this.TemperatureSensor.CurrentTemperature = this.deviceStatus.temperature;
188
- await this.debugLog(`CurrentTemperature: ${this.TemperatureSensor.CurrentTemperature}`);
188
+ this.debugLog(`CurrentTemperature: ${this.TemperatureSensor.CurrentTemperature}`);
189
189
  }
190
190
  // Target Humidifier Dehumidifier State
191
191
  switch (this.deviceStatus.auto) {
@@ -210,7 +210,7 @@ export class Humidifier extends deviceBase {
210
210
  this.HumidifierDehumidifier.CurrentHumidifierDehumidifierState = this.hap.Characteristic.CurrentHumidifierDehumidifierState.HUMIDIFYING;
211
211
  }
212
212
  }
213
- await this.debugLog(`TargetHumidifierDehumidifierState: ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold}, CurrentHumidifierDehumidifierState: ${this.HumidifierDehumidifier.CurrentHumidifierDehumidifierState}`);
213
+ this.debugLog(`TargetHumidifierDehumidifierState: ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold}, CurrentHumidifierDehumidifierState: ${this.HumidifierDehumidifier.CurrentHumidifierDehumidifierState}`);
214
214
  // Water Level
215
215
  if (this.deviceStatus.lackWater) {
216
216
  this.HumidifierDehumidifier.WaterLevel = 0;
@@ -218,11 +218,11 @@ export class Humidifier extends deviceBase {
218
218
  else {
219
219
  this.HumidifierDehumidifier.WaterLevel = 100;
220
220
  }
221
- await this.debugLog(`WaterLevel: ${this.HumidifierDehumidifier.WaterLevel}`);
221
+ this.debugLog(`WaterLevel: ${this.HumidifierDehumidifier.WaterLevel}`);
222
222
  // Firmware Version
223
223
  if (this.deviceStatus.version) {
224
224
  const version = this.deviceStatus.version.toString();
225
- await this.debugLog(`Firmware Version: ${version.replace(/^V|-.*$/g, '')}`);
225
+ this.debugLog(`Firmware Version: ${version.replace(/^V|-.*$/g, '')}`);
226
226
  const deviceVersion = version.replace(/^V|-.*$/g, '') ?? '0.0.0';
227
227
  this.accessory
228
228
  .getService(this.hap.Service.AccessoryInformation)
@@ -231,19 +231,19 @@ export class Humidifier extends deviceBase {
231
231
  .getCharacteristic(this.hap.Characteristic.FirmwareRevision)
232
232
  .updateValue(deviceVersion);
233
233
  this.accessory.context.version = deviceVersion;
234
- await this.debugSuccessLog(`version: ${this.accessory.context.version}`);
234
+ this.debugSuccessLog(`version: ${this.accessory.context.version}`);
235
235
  }
236
236
  }
237
237
  async parseStatusWebhook() {
238
- await this.debugLog('parseStatusWebhook');
239
- await this.debugLog(`(temperature, humidity) = Webhook:(${convertUnits(this.webhookContext.temperature, this.webhookContext.scale, this.device.convertUnitTo)}, ${this.webhookContext.humidity}), current:(${this.TemperatureSensor?.CurrentTemperature}, ${this.HumidifierDehumidifier.CurrentRelativeHumidity})`);
238
+ this.debugLog('parseStatusWebhook');
239
+ this.debugLog(`(temperature, humidity) = Webhook:(${convertUnits(this.webhookContext.temperature, this.webhookContext.scale, this.device.convertUnitTo)}, ${this.webhookContext.humidity}), current:(${this.TemperatureSensor?.CurrentTemperature}, ${this.HumidifierDehumidifier.CurrentRelativeHumidity})`);
240
240
  // CurrentRelativeHumidity
241
241
  this.HumidifierDehumidifier.CurrentRelativeHumidity = validHumidity(this.webhookContext.humidity);
242
- await this.debugLog(`CurrentRelativeHumidity: ${this.HumidifierDehumidifier.CurrentRelativeHumidity}`);
242
+ this.debugLog(`CurrentRelativeHumidity: ${this.HumidifierDehumidifier.CurrentRelativeHumidity}`);
243
243
  // CurrentTemperature
244
244
  if (!this.device.hide_temperature && this.TemperatureSensor?.Service) {
245
245
  this.TemperatureSensor.CurrentTemperature = convertUnits(this.webhookContext.temperature, this.webhookContext.scale, this.device.convertUnitTo);
246
- await this.debugLog(`CurrentTemperature: ${this.TemperatureSensor.CurrentTemperature}`);
246
+ this.debugLog(`CurrentTemperature: ${this.TemperatureSensor.CurrentTemperature}`);
247
247
  }
248
248
  }
249
249
  /**
@@ -251,7 +251,7 @@ export class Humidifier extends deviceBase {
251
251
  */
252
252
  async refreshStatus() {
253
253
  if (!this.device.enableCloudService && this.OpenAPI) {
254
- await this.errorLog(`refreshStatus enableCloudService: ${this.device.enableCloudService}`);
254
+ this.errorLog(`refreshStatus enableCloudService: ${this.device.enableCloudService}`);
255
255
  }
256
256
  else if (this.BLE) {
257
257
  await this.BLERefreshStatus();
@@ -261,11 +261,11 @@ export class Humidifier extends deviceBase {
261
261
  }
262
262
  else {
263
263
  await this.offlineOff();
264
- await this.debugWarnLog(`Connection Type: ${this.device.connectionType}, refreshStatus will not happen.`);
264
+ this.debugWarnLog(`Connection Type: ${this.device.connectionType}, refreshStatus will not happen.`);
265
265
  }
266
266
  }
267
267
  async BLERefreshStatus() {
268
- await this.debugLog('BLERefreshStatus');
268
+ this.debugLog('BLERefreshStatus');
269
269
  const switchBotBLE = await this.switchbotBLE();
270
270
  if (switchBotBLE === undefined) {
271
271
  await this.BLERefreshConnection(switchBotBLE);
@@ -282,74 +282,74 @@ export class Humidifier extends deviceBase {
282
282
  await this.updateHomeKitCharacteristics();
283
283
  }
284
284
  else {
285
- await this.errorLog(`failed to get serviceData, serviceData: ${JSON.stringify(serviceData)}`);
285
+ this.errorLog(`failed to get serviceData, serviceData: ${JSON.stringify(serviceData)}`);
286
286
  await this.BLERefreshConnection(switchBotBLE);
287
287
  }
288
288
  })();
289
289
  }
290
290
  }
291
291
  async registerPlatformBLE() {
292
- await this.debugLog('registerPlatformBLE');
292
+ this.debugLog('registerPlatformBLE');
293
293
  if (this.config.options?.BLE) {
294
- await this.debugLog('is listening to Platform BLE.');
294
+ this.debugLog('is listening to Platform BLE.');
295
295
  try {
296
296
  const formattedDeviceId = formatDeviceIdAsMac(this.device.deviceId);
297
297
  this.device.bleMac = formattedDeviceId;
298
- await this.debugLog(`bleMac: ${this.device.bleMac}`);
298
+ this.debugLog(`bleMac: ${this.device.bleMac}`);
299
299
  this.platform.bleEventHandler[this.device.bleMac] = async (context) => {
300
300
  try {
301
- await this.debugLog(`received BLE: ${JSON.stringify(context)}`);
301
+ this.debugLog(`received BLE: ${JSON.stringify(context)}`);
302
302
  this.serviceData = context;
303
303
  await this.BLEparseStatus();
304
304
  await this.updateHomeKitCharacteristics();
305
305
  }
306
306
  catch (e) {
307
- await this.errorLog(`failed to handle BLE. Received: ${JSON.stringify(context)} Error: ${e.message ?? e}`);
307
+ this.errorLog(`failed to handle BLE. Received: ${JSON.stringify(context)} Error: ${e.message ?? e}`);
308
308
  }
309
309
  };
310
310
  }
311
311
  catch (error) {
312
- await this.errorLog(`failed to format device ID as MAC, Error: ${error}`);
312
+ this.errorLog(`failed to format device ID as MAC, Error: ${error}`);
313
313
  }
314
314
  }
315
315
  else {
316
- await this.debugLog('is not listening to Platform BLE');
316
+ this.debugLog('is not listening to Platform BLE');
317
317
  }
318
318
  }
319
319
  async openAPIRefreshStatus() {
320
- await this.debugLog('openAPIRefreshStatus');
320
+ this.debugLog('openAPIRefreshStatus');
321
321
  try {
322
- const { body } = await this.deviceRefreshStatus();
323
- const deviceStatus = await body;
324
- await this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
322
+ const response = await this.deviceRefreshStatus();
323
+ const deviceStatus = response.body;
324
+ this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
325
325
  if (await this.successfulStatusCodes(deviceStatus)) {
326
- await this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
326
+ this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
327
327
  this.deviceStatus = deviceStatus.body;
328
328
  await this.openAPIparseStatus();
329
329
  await this.updateHomeKitCharacteristics();
330
330
  }
331
331
  else {
332
- await this.debugWarnLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
333
- await this.debugWarnLog(deviceStatus);
332
+ this.debugWarnLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
333
+ this.debugWarnLog(deviceStatus);
334
334
  }
335
335
  }
336
336
  catch (e) {
337
337
  await this.apiError(e);
338
- await this.errorLog(`failed openAPIRefreshStatus with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
338
+ this.errorLog(`failed openAPIRefreshStatus with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
339
339
  }
340
340
  }
341
341
  async registerWebhook() {
342
342
  if (this.device.webhook) {
343
- await this.debugLog('is listening webhook.');
343
+ this.debugLog('is listening webhook.');
344
344
  this.platform.webhookEventHandler[this.device.deviceId] = async (context) => {
345
345
  try {
346
- await this.debugLog(`received Webhook: ${JSON.stringify(context)}`);
346
+ this.debugLog(`received Webhook: ${JSON.stringify(context)}`);
347
347
  this.webhookContext = context;
348
348
  await this.parseStatusWebhook();
349
349
  await this.updateHomeKitCharacteristics();
350
350
  }
351
351
  catch (e) {
352
- await this.errorLog(`failed to handle webhook. Received: ${JSON.stringify(context)} Error: ${e.message ?? e}`);
352
+ this.errorLog(`failed to handle webhook. Received: ${JSON.stringify(context)} Error: ${e.message ?? e}`);
353
353
  }
354
354
  };
355
355
  }
@@ -359,7 +359,7 @@ export class Humidifier extends deviceBase {
359
359
  */
360
360
  async pushChanges() {
361
361
  if (!this.device.enableCloudService && this.OpenAPI) {
362
- await this.errorLog(`pushChanges enableCloudService: ${this.device.enableCloudService}`);
362
+ this.errorLog(`pushChanges enableCloudService: ${this.device.enableCloudService}`);
363
363
  }
364
364
  else if (this.BLE) {
365
365
  await this.BLEpushChanges();
@@ -369,7 +369,7 @@ export class Humidifier extends deviceBase {
369
369
  }
370
370
  else {
371
371
  await this.offlineOff();
372
- await this.debugWarnLog(`Connection Type: ${this.device.connectionType}, pushChanges will not happen.`);
372
+ this.debugWarnLog(`Connection Type: ${this.device.connectionType}, pushChanges will not happen.`);
373
373
  }
374
374
  // Refresh the status from the API
375
375
  interval(15000)
@@ -380,7 +380,7 @@ export class Humidifier extends deviceBase {
380
380
  });
381
381
  }
382
382
  async BLEpushChanges() {
383
- await this.debugLog('BLEpushChanges');
383
+ this.debugLog('BLEpushChanges');
384
384
  if ((this.HumidifierDehumidifier.TargetHumidifierDehumidifierState === this.hap.Characteristic.TargetHumidifierDehumidifierState.HUMIDIFIER)
385
385
  && (this.HumidifierDehumidifier.Active === this.hap.Characteristic.Active.ACTIVE)
386
386
  && (this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold !== this.HumidifierDehumidifier.CurrentRelativeHumidity)) {
@@ -388,7 +388,7 @@ export class Humidifier extends deviceBase {
388
388
  try {
389
389
  const formattedDeviceId = formatDeviceIdAsMac(this.device.deviceId);
390
390
  this.device.bleMac = formattedDeviceId;
391
- await this.debugLog(`bleMac: ${this.device.bleMac}`);
391
+ this.debugLog(`bleMac: ${this.device.bleMac}`);
392
392
  if (switchBotBLE !== false) {
393
393
  switchBotBLE
394
394
  .discover({ model: this.device.bleModel, quick: true, id: this.device.bleMac })
@@ -397,46 +397,46 @@ export class Humidifier extends deviceBase {
397
397
  return await deviceList[0].percentage(this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold);
398
398
  })
399
399
  .then(async () => {
400
- await this.successLog(`RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold} sent over BLE, sent successfully`);
400
+ this.successLog(`RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold} sent over BLE, sent successfully`);
401
401
  await this.updateHomeKitCharacteristics();
402
402
  })
403
403
  .catch(async (e) => {
404
404
  await this.apiError(e);
405
- await this.errorLog(`failed BLEpushChanges with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
405
+ this.errorLog(`failed BLEpushChanges with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
406
406
  await this.BLEPushConnection();
407
407
  });
408
408
  }
409
409
  else {
410
- await this.errorLog(`wasn't able to establish BLE Connection, node-switchbot: ${JSON.stringify(switchBotBLE)}`);
410
+ this.errorLog(`wasn't able to establish BLE Connection, node-switchbot: ${JSON.stringify(switchBotBLE)}`);
411
411
  await this.BLEPushConnection();
412
412
  }
413
413
  }
414
414
  catch (error) {
415
- await this.errorLog(`failed to format device ID as MAC, Error: ${error}`);
415
+ this.errorLog(`failed to format device ID as MAC, Error: ${error}`);
416
416
  }
417
417
  }
418
418
  else {
419
- await this.debugLog(`No changes (BLEpushChanges), Active: ${this.HumidifierDehumidifier.Active}, RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold}, CurrentRelativeHumidity: ${this.HumidifierDehumidifier.CurrentRelativeHumidity}`);
419
+ this.debugLog(`No changes (BLEpushChanges), Active: ${this.HumidifierDehumidifier.Active}, RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold}, CurrentRelativeHumidity: ${this.HumidifierDehumidifier.CurrentRelativeHumidity}`);
420
420
  }
421
421
  }
422
422
  async openAPIpushChanges() {
423
- await this.debugLog('openAPIpushChanges');
423
+ this.debugLog('openAPIpushChanges');
424
424
  if ((this.HumidifierDehumidifier.TargetHumidifierDehumidifierState === this.hap.Characteristic.TargetHumidifierDehumidifierState.HUMIDIFIER)
425
425
  && (this.HumidifierDehumidifier.Active === this.hap.Characteristic.Active.ACTIVE)
426
426
  && (this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold !== this.HumidifierDehumidifier.CurrentRelativeHumidity)) {
427
- await this.debugLog(`Auto Off, RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold}!`);
427
+ this.debugLog(`Auto Off, RelativeHumidityHumidifierThreshold: ${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold}!`);
428
428
  const bodyChange = {
429
429
  command: 'setMode',
430
430
  parameter: `${this.HumidifierDehumidifier.RelativeHumidityHumidifierThreshold}`,
431
431
  commandType: 'command',
432
432
  };
433
- await this.debugLog(`SwitchBot OpenAPI bodyChange: ${JSON.stringify(bodyChange)}`);
433
+ this.debugLog(`SwitchBot OpenAPI bodyChange: ${JSON.stringify(bodyChange)}`);
434
434
  try {
435
- const { body } = await this.pushChangeRequest(bodyChange);
436
- const deviceStatus = await body;
437
- await this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
435
+ const response = await this.pushChangeRequest(bodyChange);
436
+ const deviceStatus = response.body;
437
+ this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
438
438
  if (await this.successfulStatusCodes(deviceStatus)) {
439
- await this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
439
+ this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
440
440
  await this.updateHomeKitCharacteristics();
441
441
  }
442
442
  else {
@@ -445,7 +445,7 @@ export class Humidifier extends deviceBase {
445
445
  }
446
446
  catch (e) {
447
447
  await this.apiError(e);
448
- await this.errorLog(`failed openAPIpushChanges with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
448
+ this.errorLog(`failed openAPIpushChanges with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
449
449
  }
450
450
  }
451
451
  else if ((this.HumidifierDehumidifier.TargetHumidifierDehumidifierState === this.hap.Characteristic.TargetHumidifierDehumidifierState.HUMIDIFIER_OR_DEHUMIDIFIER) && (this.HumidifierDehumidifier.Active === this.hap.Characteristic.Active.ACTIVE)) {
@@ -463,19 +463,19 @@ export class Humidifier extends deviceBase {
463
463
  if ((this.HumidifierDehumidifier.TargetHumidifierDehumidifierState
464
464
  === this.hap.Characteristic.TargetHumidifierDehumidifierState.HUMIDIFIER_OR_DEHUMIDIFIER)
465
465
  && (this.HumidifierDehumidifier.Active === this.hap.Characteristic.Active.ACTIVE)) {
466
- await this.debugLog('Pushing Auto');
466
+ this.debugLog('Pushing Auto');
467
467
  const bodyChange = {
468
468
  command: 'setMode',
469
469
  parameter: 'auto',
470
470
  commandType: 'command',
471
471
  };
472
- await this.debugLog(`pushAutoChanges, SwitchBot OpenAPI bodyChange: ${JSON.stringify(bodyChange)}`);
472
+ this.debugLog(`pushAutoChanges, SwitchBot OpenAPI bodyChange: ${JSON.stringify(bodyChange)}`);
473
473
  try {
474
- const { body } = await this.pushChangeRequest(bodyChange);
475
- const deviceStatus = await body;
476
- await this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
474
+ const response = await this.pushChangeRequest(bodyChange);
475
+ const deviceStatus = response.body;
476
+ this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
477
477
  if (await this.successfulStatusCodes(deviceStatus)) {
478
- await this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
478
+ this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
479
479
  await this.updateHomeKitCharacteristics();
480
480
  }
481
481
  else {
@@ -484,32 +484,32 @@ export class Humidifier extends deviceBase {
484
484
  }
485
485
  catch (e) {
486
486
  await this.apiError(e);
487
- await this.errorLog(`failed pushAutoChanges with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
487
+ this.errorLog(`failed pushAutoChanges with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
488
488
  }
489
489
  }
490
490
  else {
491
- await this.debugLog(`No changes (pushAutoChanges), TargetHumidifierDehumidifierState: ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, Active: ${this.HumidifierDehumidifier.Active}`);
491
+ this.debugLog(`No changes (pushAutoChanges), TargetHumidifierDehumidifierState: ${this.HumidifierDehumidifier.TargetHumidifierDehumidifierState}, Active: ${this.HumidifierDehumidifier.Active}`);
492
492
  }
493
493
  }
494
494
  /**
495
495
  * Pushes the requested changes to the SwitchBot API
496
496
  */
497
497
  async pushActiveChanges() {
498
- await this.debugLog('pushActiveChanges');
498
+ this.debugLog('pushActiveChanges');
499
499
  if (this.HumidifierDehumidifier.Active === this.hap.Characteristic.Active.INACTIVE) {
500
- await this.debugLog('Pushing Off');
500
+ this.debugLog('Pushing Off');
501
501
  const bodyChange = {
502
502
  command: 'turnOff',
503
503
  parameter: 'default',
504
504
  commandType: 'command',
505
505
  };
506
- await this.debugLog(`pushActiveChanges, SwitchBot OpenAPI bodyChange: ${JSON.stringify(bodyChange)}`);
506
+ this.debugLog(`pushActiveChanges, SwitchBot OpenAPI bodyChange: ${JSON.stringify(bodyChange)}`);
507
507
  try {
508
- const { body } = await this.pushChangeRequest(bodyChange);
509
- const deviceStatus = await body;
510
- await this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
508
+ const response = await this.pushChangeRequest(bodyChange);
509
+ const deviceStatus = response.body;
510
+ this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
511
511
  if (await this.successfulStatusCodes(deviceStatus)) {
512
- await this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
512
+ this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
513
513
  await this.updateHomeKitCharacteristics();
514
514
  }
515
515
  else {
@@ -518,11 +518,11 @@ export class Humidifier extends deviceBase {
518
518
  }
519
519
  catch (e) {
520
520
  await this.apiError(e);
521
- await this.errorLog(`failed pushActiveChanges with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
521
+ this.errorLog(`failed pushActiveChanges with ${this.device.connectionType} Connection, Error Message: ${JSON.stringify(e.message)}`);
522
522
  }
523
523
  }
524
524
  else {
525
- await this.debugLog(`No changes (pushActiveChanges), Active: ${this.HumidifierDehumidifier.Active}`);
525
+ this.debugLog(`No changes (pushActiveChanges), Active: ${this.HumidifierDehumidifier.Active}`);
526
526
  }
527
527
  }
528
528
  /**
@@ -530,10 +530,10 @@ export class Humidifier extends deviceBase {
530
530
  */
531
531
  async ActiveSet(value) {
532
532
  if (this.HumidifierDehumidifier.Active !== this.accessory.context.Active) {
533
- await this.infoLog(`Set Active: ${value}`);
533
+ this.infoLog(`Set Active: ${value}`);
534
534
  }
535
535
  else {
536
- await this.debugLog(`No Changes, Active: ${value}`);
536
+ this.debugLog(`No Changes, Active: ${value}`);
537
537
  }
538
538
  this.HumidifierDehumidifier.Active = value;
539
539
  this.doHumidifierUpdate.next();
@@ -543,10 +543,10 @@ export class Humidifier extends deviceBase {
543
543
  */
544
544
  async TargetHumidifierDehumidifierStateSet(value) {
545
545
  if (this.HumidifierDehumidifier.Active === this.hap.Characteristic.Active.ACTIVE) {
546
- await this.infoLog(`Set TargetHumidifierDehumidifierState: ${value}`);
546
+ this.infoLog(`Set TargetHumidifierDehumidifierState: ${value}`);
547
547
  }
548
548
  else {
549
- await this.debugLog(`No Changes, TargetHumidifierDehumidifierState: ${value}`);
549
+ this.debugLog(`No Changes, TargetHumidifierDehumidifierState: ${value}`);
550
550
  }
551
551
  this.HumidifierDehumidifier.TargetHumidifierDehumidifierState = value;
552
552
  this.doHumidifierUpdate.next();
@@ -556,10 +556,10 @@ export class Humidifier extends deviceBase {
556
556
  */
557
557
  async RelativeHumidityHumidifierThresholdSet(value) {
558
558
  if (this.HumidifierDehumidifier.Active === this.hap.Characteristic.Active.ACTIVE) {
559
- await this.infoLog(`Set RelativeHumidityHumidifierThreshold: ${value}`);
559
+ this.infoLog(`Set RelativeHumidityHumidifierThreshold: ${value}`);
560
560
  }
561
561
  else {
562
- await this.debugLog(`No Changes, RelativeHumidityHumidifierThreshold: ${value}`);
562
+ this.debugLog(`No Changes, RelativeHumidityHumidifierThreshold: ${value}`);
563
563
  }
564
564
  // If the Humidifier is off, turn it on
565
565
  if (this.HumidifierDehumidifier.Active === this.hap.Characteristic.Active.INACTIVE) {
@@ -592,14 +592,14 @@ export class Humidifier extends deviceBase {
592
592
  }
593
593
  async BLEPushConnection() {
594
594
  if (this.platform.config.credentials?.token && this.device.connectionType === 'BLE/OpenAPI') {
595
- await this.warnLog('Using OpenAPI Connection to Push Changes');
595
+ this.warnLog('Using OpenAPI Connection to Push Changes');
596
596
  await this.openAPIpushChanges();
597
597
  }
598
598
  }
599
599
  async BLERefreshConnection(switchbot) {
600
- await this.errorLog(`wasn't able to establish BLE Connection, node-switchbot: ${switchbot}`);
600
+ this.errorLog(`wasn't able to establish BLE Connection, node-switchbot: ${switchbot}`);
601
601
  if (this.platform.config.credentials?.token && this.device.connectionType === 'BLE/OpenAPI') {
602
- await this.warnLog('Using OpenAPI Connection to Refresh Status');
602
+ this.warnLog('Using OpenAPI Connection to Refresh Status');
603
603
  await this.openAPIRefreshStatus();
604
604
  }
605
605
  }
@@ -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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"}