@switchbot/homebridge-switchbot 4.1.1-beta.2 → 4.1.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 (96) hide show
  1. package/dist/device/blindtilt.js +102 -102
  2. package/dist/device/blindtilt.js.map +1 -1
  3. package/dist/device/bot.js +85 -85
  4. package/dist/device/bot.js.map +1 -1
  5. package/dist/device/ceilinglight.js +98 -98
  6. package/dist/device/ceilinglight.js.map +1 -1
  7. package/dist/device/colorbulb.js +140 -140
  8. package/dist/device/colorbulb.js.map +1 -1
  9. package/dist/device/contact.js +44 -44
  10. package/dist/device/contact.js.map +1 -1
  11. package/dist/device/curtain.js +82 -82
  12. package/dist/device/curtain.js.map +1 -1
  13. package/dist/device/device.d.ts +11 -11
  14. package/dist/device/device.d.ts.map +1 -1
  15. package/dist/device/device.js +41 -41
  16. package/dist/device/device.js.map +1 -1
  17. package/dist/device/fan.js +96 -96
  18. package/dist/device/fan.js.map +1 -1
  19. package/dist/device/hub.js +43 -43
  20. package/dist/device/hub.js.map +1 -1
  21. package/dist/device/humidifier.js +84 -84
  22. package/dist/device/humidifier.js.map +1 -1
  23. package/dist/device/iosensor.js +44 -44
  24. package/dist/device/iosensor.js.map +1 -1
  25. package/dist/device/lightstrip.js +119 -119
  26. package/dist/device/lightstrip.js.map +1 -1
  27. package/dist/device/lock.js +75 -75
  28. package/dist/device/lock.js.map +1 -1
  29. package/dist/device/meter.js +44 -44
  30. package/dist/device/meter.js.map +1 -1
  31. package/dist/device/meterplus.js +42 -42
  32. package/dist/device/meterplus.js.map +1 -1
  33. package/dist/device/meterpro.js +42 -42
  34. package/dist/device/meterpro.js.map +1 -1
  35. package/dist/device/motion.js +42 -42
  36. package/dist/device/motion.js.map +1 -1
  37. package/dist/device/plug.js +60 -60
  38. package/dist/device/plug.js.map +1 -1
  39. package/dist/device/robotvacuumcleaner.js +74 -74
  40. package/dist/device/robotvacuumcleaner.js.map +1 -1
  41. package/dist/device/waterdetector.js +44 -44
  42. package/dist/device/waterdetector.js.map +1 -1
  43. package/dist/irdevice/airconditioner.js +31 -31
  44. package/dist/irdevice/airconditioner.js.map +1 -1
  45. package/dist/irdevice/airpurifier.js +10 -10
  46. package/dist/irdevice/airpurifier.js.map +1 -1
  47. package/dist/irdevice/camera.js +9 -9
  48. package/dist/irdevice/camera.js.map +1 -1
  49. package/dist/irdevice/fan.js +11 -11
  50. package/dist/irdevice/fan.js.map +1 -1
  51. package/dist/irdevice/irdevice.js +11 -11
  52. package/dist/irdevice/irdevice.js.map +1 -1
  53. package/dist/irdevice/light.js +9 -9
  54. package/dist/irdevice/light.js.map +1 -1
  55. package/dist/irdevice/other.js +55 -55
  56. package/dist/irdevice/other.js.map +1 -1
  57. package/dist/irdevice/tv.js +33 -33
  58. package/dist/irdevice/tv.js.map +1 -1
  59. package/dist/irdevice/vacuumcleaner.js +9 -9
  60. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  61. package/dist/irdevice/waterheater.js +9 -9
  62. package/dist/irdevice/waterheater.js.map +1 -1
  63. package/dist/platform.js +228 -228
  64. package/dist/platform.js.map +1 -1
  65. package/package.json +1 -1
  66. package/src/device/blindtilt.ts +102 -102
  67. package/src/device/bot.ts +85 -85
  68. package/src/device/ceilinglight.ts +98 -98
  69. package/src/device/colorbulb.ts +140 -140
  70. package/src/device/contact.ts +44 -44
  71. package/src/device/curtain.ts +82 -82
  72. package/src/device/device.ts +41 -41
  73. package/src/device/fan.ts +96 -96
  74. package/src/device/hub.ts +43 -43
  75. package/src/device/humidifier.ts +84 -84
  76. package/src/device/iosensor.ts +44 -44
  77. package/src/device/lightstrip.ts +119 -119
  78. package/src/device/lock.ts +75 -75
  79. package/src/device/meter.ts +44 -44
  80. package/src/device/meterplus.ts +42 -42
  81. package/src/device/meterpro.ts +42 -42
  82. package/src/device/motion.ts +42 -42
  83. package/src/device/plug.ts +60 -60
  84. package/src/device/robotvacuumcleaner.ts +74 -74
  85. package/src/device/waterdetector.ts +44 -44
  86. package/src/irdevice/airconditioner.ts +31 -31
  87. package/src/irdevice/airpurifier.ts +10 -10
  88. package/src/irdevice/camera.ts +9 -9
  89. package/src/irdevice/fan.ts +11 -11
  90. package/src/irdevice/irdevice.ts +11 -11
  91. package/src/irdevice/light.ts +9 -9
  92. package/src/irdevice/other.ts +55 -55
  93. package/src/irdevice/tv.ts +33 -33
  94. package/src/irdevice/vacuumcleaner.ts +9 -9
  95. package/src/irdevice/waterheater.ts +9 -9
  96. 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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"}