@switchbot/homebridge-switchbot 1.11.0 → 1.12.1

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 (93) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/config.schema.json +18 -3
  3. package/dist/device/bot.d.ts +8 -0
  4. package/dist/device/bot.d.ts.map +1 -1
  5. package/dist/device/bot.js +40 -21
  6. package/dist/device/bot.js.map +1 -1
  7. package/dist/device/colorbulb.d.ts.map +1 -1
  8. package/dist/device/colorbulb.js +22 -32
  9. package/dist/device/colorbulb.js.map +1 -1
  10. package/dist/device/contact.d.ts.map +1 -1
  11. package/dist/device/contact.js +4 -10
  12. package/dist/device/contact.js.map +1 -1
  13. package/dist/device/curtain.d.ts.map +1 -1
  14. package/dist/device/curtain.js +13 -28
  15. package/dist/device/curtain.js.map +1 -1
  16. package/dist/device/humidifier.d.ts.map +1 -1
  17. package/dist/device/humidifier.js +9 -30
  18. package/dist/device/humidifier.js.map +1 -1
  19. package/dist/device/lock.d.ts.map +1 -1
  20. package/dist/device/lock.js +4 -10
  21. package/dist/device/lock.js.map +1 -1
  22. package/dist/device/meter.d.ts.map +1 -1
  23. package/dist/device/meter.js +4 -10
  24. package/dist/device/meter.js.map +1 -1
  25. package/dist/device/motion.d.ts.map +1 -1
  26. package/dist/device/motion.js +4 -10
  27. package/dist/device/motion.js.map +1 -1
  28. package/dist/device/plug.d.ts.map +1 -1
  29. package/dist/device/plug.js +4 -10
  30. package/dist/device/plug.js.map +1 -1
  31. package/dist/irdevice/airconditioner.d.ts +22 -22
  32. package/dist/irdevice/airconditioner.d.ts.map +1 -1
  33. package/dist/irdevice/airconditioner.js +47 -50
  34. package/dist/irdevice/airconditioner.js.map +1 -1
  35. package/dist/irdevice/airpurifier.d.ts +12 -9
  36. package/dist/irdevice/airpurifier.d.ts.map +1 -1
  37. package/dist/irdevice/airpurifier.js +23 -26
  38. package/dist/irdevice/airpurifier.js.map +1 -1
  39. package/dist/irdevice/camera.d.ts +10 -7
  40. package/dist/irdevice/camera.d.ts.map +1 -1
  41. package/dist/irdevice/camera.js +14 -17
  42. package/dist/irdevice/camera.js.map +1 -1
  43. package/dist/irdevice/fan.d.ts +12 -9
  44. package/dist/irdevice/fan.d.ts.map +1 -1
  45. package/dist/irdevice/fan.js +32 -35
  46. package/dist/irdevice/fan.js.map +1 -1
  47. package/dist/irdevice/light.d.ts +10 -7
  48. package/dist/irdevice/light.d.ts.map +1 -1
  49. package/dist/irdevice/light.js +16 -19
  50. package/dist/irdevice/light.js.map +1 -1
  51. package/dist/irdevice/other.d.ts +12 -9
  52. package/dist/irdevice/other.d.ts.map +1 -1
  53. package/dist/irdevice/other.js +21 -24
  54. package/dist/irdevice/other.js.map +1 -1
  55. package/dist/irdevice/tv.d.ts +13 -10
  56. package/dist/irdevice/tv.d.ts.map +1 -1
  57. package/dist/irdevice/tv.js +28 -31
  58. package/dist/irdevice/tv.js.map +1 -1
  59. package/dist/irdevice/vacuumcleaner.d.ts +10 -7
  60. package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
  61. package/dist/irdevice/vacuumcleaner.js +16 -19
  62. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  63. package/dist/irdevice/waterheater.d.ts +10 -7
  64. package/dist/irdevice/waterheater.d.ts.map +1 -1
  65. package/dist/irdevice/waterheater.js +19 -22
  66. package/dist/irdevice/waterheater.js.map +1 -1
  67. package/dist/platform.d.ts.map +1 -1
  68. package/dist/platform.js +5 -5
  69. package/dist/platform.js.map +1 -1
  70. package/dist/settings.d.ts +1 -0
  71. package/dist/settings.d.ts.map +1 -1
  72. package/dist/settings.js.map +1 -1
  73. package/package.json +4 -4
  74. package/src/device/bot.ts +40 -20
  75. package/src/device/colorbulb.ts +22 -44
  76. package/src/device/contact.ts +4 -12
  77. package/src/device/curtain.ts +13 -28
  78. package/src/device/humidifier.ts +9 -30
  79. package/src/device/lock.ts +4 -10
  80. package/src/device/meter.ts +4 -10
  81. package/src/device/motion.ts +4 -12
  82. package/src/device/plug.ts +4 -10
  83. package/src/irdevice/airconditioner.ts +57 -60
  84. package/src/irdevice/airpurifier.ts +33 -36
  85. package/src/irdevice/camera.ts +22 -25
  86. package/src/irdevice/fan.ts +43 -46
  87. package/src/irdevice/light.ts +26 -29
  88. package/src/irdevice/other.ts +29 -32
  89. package/src/irdevice/tv.ts +45 -50
  90. package/src/irdevice/vacuumcleaner.ts +24 -27
  91. package/src/irdevice/waterheater.ts +27 -30
  92. package/src/platform.ts +9 -9
  93. package/src/settings.ts +1 -0
@@ -45,17 +45,17 @@ class AirConditioner {
45
45
  .setCharacteristic(this.platform.Characteristic.SerialNumber, device.deviceId);
46
46
  // get the Television service if it exists, otherwise create a new Television service
47
47
  // you can create multiple services for each accessory
48
- (this.service = accessory.getService(this.platform.Service.HeaterCooler) || accessory.addService(this.platform.Service.HeaterCooler)),
48
+ (this.coolerService = accessory.getService(this.platform.Service.HeaterCooler) || accessory.addService(this.platform.Service.HeaterCooler)),
49
49
  `${accessory.displayName} Air Conditioner`;
50
50
  // To avoid "Cannot add a Service with the same UUID another Service without also defining a unique 'subtype' property." error,
51
51
  // when creating multiple services of the same type, you need to use the following syntax to specify a name and subtype id:
52
52
  // accessory.getService('NAME') ?? accessory.addService(this.platform.Service.Outlet, 'NAME', 'USER_DEFINED_SUBTYPE');
53
53
  // set the service name, this is what is displayed as the default name on the Home app
54
54
  // in this example we are using the name we stored in the `accessory.context` in the `discoverDevices` method.
55
- this.service.setCharacteristic(this.platform.Characteristic.Name, accessory.displayName);
55
+ this.coolerService.setCharacteristic(this.platform.Characteristic.Name, accessory.displayName);
56
56
  // handle on / off events using the Active characteristic
57
- this.service.getCharacteristic(this.platform.Characteristic.Active).onSet(this.ActiveSet.bind(this));
58
- this.service
57
+ this.coolerService.getCharacteristic(this.platform.Characteristic.Active).onSet(this.ActiveSet.bind(this));
58
+ this.coolerService
59
59
  .getCharacteristic(this.platform.Characteristic.CurrentTemperature)
60
60
  .setProps({
61
61
  minValue: 0,
@@ -77,7 +77,7 @@ class AirConditioner {
77
77
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} ValidValues: ${JSON.stringify(this.ValidValues)},` +
78
78
  ` hide_automode: ${this.hide_automode}, TargetHeaterCoolerState: ${this.TargetHeaterCoolerState}`);
79
79
  }
80
- this.service
80
+ this.coolerService
81
81
  .getCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState)
82
82
  .setProps({
83
83
  validValues: this.ValidValues,
@@ -86,10 +86,10 @@ class AirConditioner {
86
86
  return this.TargetHeaterCoolerStateGet();
87
87
  })
88
88
  .onSet(this.TargetHeaterCoolerStateSet.bind(this));
89
- this.service.getCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState).onGet(async () => {
89
+ this.coolerService.getCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState).onGet(async () => {
90
90
  return this.CurrentHeaterCoolerStateGet();
91
91
  });
92
- this.service
92
+ this.coolerService
93
93
  .getCharacteristic(this.platform.Characteristic.HeatingThresholdTemperature)
94
94
  .setProps({
95
95
  minValue: 16,
@@ -100,7 +100,7 @@ class AirConditioner {
100
100
  return this.HeatingThresholdTemperatureGet();
101
101
  })
102
102
  .onSet(this.HeatingThresholdTemperatureSet.bind(this));
103
- this.service
103
+ this.coolerService
104
104
  .getCharacteristic(this.platform.Characteristic.CoolingThresholdTemperature)
105
105
  .setProps({
106
106
  minValue: 16,
@@ -111,7 +111,7 @@ class AirConditioner {
111
111
  return this.CoolingThresholdTemperatureGet();
112
112
  })
113
113
  .onSet(this.CoolingThresholdTemperatureSet.bind(this));
114
- this.service
114
+ this.coolerService
115
115
  .getCharacteristic(this.platform.Characteristic.RotationSpeed)
116
116
  .setProps({
117
117
  minStep: 1,
@@ -216,16 +216,13 @@ class AirConditioner {
216
216
  }
217
217
  catch (e) {
218
218
  this.errorLog(`Air Conditioner: ${this.accessory.displayName} failed pushChanges`);
219
- if (this.deviceLogging === 'debug') {
219
+ if (this.deviceLogging.includes('debug')) {
220
220
  this.errorLog(`Air Conditioner: ${this.accessory.displayName} failed pushChanges,` + ` Error Message: ${JSON.stringify(e.message)}`);
221
221
  }
222
- if (this.platform.debugMode) {
223
- this.errorLog(`Air Conditioner: ${this.accessory.displayName} failed pushChanges,` + ` Error: ${JSON.stringify(e)}`);
224
- }
225
222
  this.apiError(e);
226
223
  }
227
224
  }
228
- statusCode(push) {
225
+ async statusCode(push) {
229
226
  switch (push.data.statusCode) {
230
227
  case 151:
231
228
  this.errorLog(`Air Conditioner: ${this.accessory.displayName} Command not supported by this device type.`);
@@ -253,68 +250,68 @@ class AirConditioner {
253
250
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Unknown statusCode.`);
254
251
  }
255
252
  }
256
- updateHomeKitCharacteristics() {
253
+ async updateHomeKitCharacteristics() {
257
254
  if (this.Active === undefined) {
258
255
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Active: ${this.Active}`);
259
256
  }
260
257
  else {
261
- this.service?.updateCharacteristic(this.platform.Characteristic.Active, this.Active);
258
+ this.coolerService?.updateCharacteristic(this.platform.Characteristic.Active, this.Active);
262
259
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} updateCharacteristic Active: ${this.Active}`);
263
260
  }
264
261
  if (this.RotationSpeed === undefined) {
265
262
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} RotationSpeed: ${this.RotationSpeed}`);
266
263
  }
267
264
  else {
268
- this.service?.updateCharacteristic(this.platform.Characteristic.RotationSpeed, this.RotationSpeed);
265
+ this.coolerService?.updateCharacteristic(this.platform.Characteristic.RotationSpeed, this.RotationSpeed);
269
266
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} updateCharacteristic RotationSpeed: ${this.RotationSpeed}`);
270
267
  }
271
268
  if (this.CurrentTemperature === undefined) {
272
269
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} CurrentTemperature: ${this.CurrentTemperature}`);
273
270
  }
274
271
  else {
275
- this.service?.updateCharacteristic(this.platform.Characteristic.CurrentTemperature, this.CurrentTemperature);
272
+ this.coolerService?.updateCharacteristic(this.platform.Characteristic.CurrentTemperature, this.CurrentTemperature);
276
273
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} updateCharacteristic CurrentTemperature: ${this.CurrentTemperature}`);
277
274
  }
278
275
  if (this.TargetHeaterCoolerState === undefined) {
279
276
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} TargetHeaterCoolerState: ${this.TargetHeaterCoolerState}`);
280
277
  }
281
278
  else {
282
- this.service?.updateCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState, this.TargetHeaterCoolerState);
279
+ this.coolerService?.updateCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState, this.TargetHeaterCoolerState);
283
280
  this.debugLog(`Air Conditioner: ${this.accessory.displayName}` + ` updateCharacteristic TargetHeaterCoolerState: ${this.TargetHeaterCoolerState}`);
284
281
  }
285
282
  if (this.CurrentHeaterCoolerState === undefined) {
286
283
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} CurrentHeaterCoolerState: ${this.CurrentHeaterCoolerState}`);
287
284
  }
288
285
  else {
289
- this.service?.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, this.CurrentHeaterCoolerState);
286
+ this.coolerService?.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, this.CurrentHeaterCoolerState);
290
287
  this.debugLog(`Air Conditioner: ${this.accessory.displayName}` + ` updateCharacteristic CurrentHeaterCoolerState: ${this.CurrentHeaterCoolerState}`);
291
288
  }
292
289
  if (this.HeatingThresholdTemperature === undefined) {
293
290
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} HeatingThresholdTemperature: ${this.HeatingThresholdTemperature}`);
294
291
  }
295
292
  else {
296
- this.service?.updateCharacteristic(this.platform.Characteristic.HeatingThresholdTemperature, this.HeatingThresholdTemperature);
293
+ this.coolerService?.updateCharacteristic(this.platform.Characteristic.HeatingThresholdTemperature, this.HeatingThresholdTemperature);
297
294
  this.debugLog(`Air Conditioner: ${this.accessory.displayName}` + ` updateCharacteristic HeatingThresholdTemperature: ${this.HeatingThresholdTemperature}`);
298
295
  }
299
296
  if (this.CoolingThresholdTemperature === undefined) {
300
297
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} CoolingThresholdTemperature: ${this.CoolingThresholdTemperature}`);
301
298
  }
302
299
  else {
303
- this.service?.updateCharacteristic(this.platform.Characteristic.CoolingThresholdTemperature, this.CoolingThresholdTemperature);
300
+ this.coolerService?.updateCharacteristic(this.platform.Characteristic.CoolingThresholdTemperature, this.CoolingThresholdTemperature);
304
301
  this.debugLog(`Air Conditioner: ${this.accessory.displayName}` + ` updateCharacteristic CoolingThresholdTemperature: ${this.CoolingThresholdTemperature}`);
305
302
  }
306
303
  }
307
- apiError(e) {
308
- this.service.updateCharacteristic(this.platform.Characteristic.Active, e);
309
- this.service.updateCharacteristic(this.platform.Characteristic.RotationSpeed, e);
310
- this.service.updateCharacteristic(this.platform.Characteristic.CurrentTemperature, e);
311
- this.service.updateCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState, e);
312
- this.service.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, e);
313
- this.service.updateCharacteristic(this.platform.Characteristic.HeatingThresholdTemperature, e);
314
- this.service.updateCharacteristic(this.platform.Characteristic.CoolingThresholdTemperature, e);
304
+ async apiError(e) {
305
+ this.coolerService.updateCharacteristic(this.platform.Characteristic.Active, e);
306
+ this.coolerService.updateCharacteristic(this.platform.Characteristic.RotationSpeed, e);
307
+ this.coolerService.updateCharacteristic(this.platform.Characteristic.CurrentTemperature, e);
308
+ this.coolerService.updateCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState, e);
309
+ this.coolerService.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, e);
310
+ this.coolerService.updateCharacteristic(this.platform.Characteristic.HeatingThresholdTemperature, e);
311
+ this.coolerService.updateCharacteristic(this.platform.Characteristic.CoolingThresholdTemperature, e);
315
312
  //throw new this.platform.api.hap.HapStatusError(HAPStatus.SERVICE_COMMUNICATION_FAILURE);
316
313
  }
317
- CurrentTemperatureGet() {
314
+ async CurrentTemperatureGet() {
318
315
  if (this.CurrentTemperature === undefined) {
319
316
  this.CurrentTemperature = 24;
320
317
  this.CurrentTemperatureCached = this.CurrentTemperature;
@@ -326,7 +323,7 @@ class AirConditioner {
326
323
  this.accessory.context.CurrentTemperature = this.CurrentTemperatureCached;
327
324
  return this.CurrentTemperature;
328
325
  }
329
- RotationSpeedGet() {
326
+ async RotationSpeedGet() {
330
327
  if (!this.CurrentFanSpeed) {
331
328
  this.RotationSpeed = 4;
332
329
  }
@@ -341,7 +338,7 @@ class AirConditioner {
341
338
  this.accessory.context.RotationSpeed = this.RotationSpeedCached;
342
339
  return this.RotationSpeed;
343
340
  }
344
- RotationSpeedSet(value) {
341
+ async RotationSpeedSet(value) {
345
342
  if (value === 4) {
346
343
  this.CurrentFanSpeed = 1;
347
344
  }
@@ -353,7 +350,7 @@ class AirConditioner {
353
350
  this.accessory.context.RotationSpeed = this.RotationSpeedCached;
354
351
  this.pushAirConditionerStatusChanges();
355
352
  }
356
- ActiveSet(value) {
353
+ async ActiveSet(value) {
357
354
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Set Active: ${value}`);
358
355
  this.Active = value;
359
356
  this.ActiveCached = this.Active;
@@ -372,7 +369,7 @@ class AirConditioner {
372
369
  }
373
370
  }
374
371
  }
375
- TargetHeaterCoolerStateGet() {
372
+ async TargetHeaterCoolerStateGet() {
376
373
  if (this.ValidValues === [0, 1, 2]) {
377
374
  this.TargetHeaterCoolerState = this.platform.Characteristic.TargetHeaterCoolerState.AUTO;
378
375
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Get (AUTO) TargetHeaterCoolerState: ${this.CurrentHeaterCoolerState},` +
@@ -392,7 +389,7 @@ class AirConditioner {
392
389
  this.accessory.context.TargetHeaterCoolerState = this.TargetHeaterCoolerStateCached;
393
390
  return this.TargetHeaterCoolerState;
394
391
  }
395
- TargetHeaterCoolerStateSet(value) {
392
+ async TargetHeaterCoolerStateSet(value) {
396
393
  if (this.hide_automode) {
397
394
  if (value === this.platform.Characteristic.TargetHeaterCoolerState.HEAT) {
398
395
  this.TargetHeaterCoolerStateHEAT();
@@ -424,25 +421,25 @@ class AirConditioner {
424
421
  this.accessory.context.TargetHeaterCoolerState = this.TargetHeaterCoolerStateCached;
425
422
  this.pushAirConditionerStatusChanges();
426
423
  }
427
- TargetHeaterCoolerStateAUTO() {
424
+ async TargetHeaterCoolerStateAUTO() {
428
425
  this.TargetHeaterCoolerState = this.platform.Characteristic.TargetHeaterCoolerState.AUTO;
429
426
  this.CurrentMode = 1;
430
427
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Set (AUTO) TargetHeaterCoolerState: ${this.TargetHeaterCoolerState}`);
431
428
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Switchbot CurrentMode: ${this.CurrentMode}`);
432
429
  }
433
- TargetHeaterCoolerStateCOOL() {
430
+ async TargetHeaterCoolerStateCOOL() {
434
431
  this.TargetHeaterCoolerState = this.platform.Characteristic.TargetHeaterCoolerState.COOL;
435
432
  this.CurrentMode = 2;
436
433
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Set (COOL) TargetHeaterCoolerState: ${this.TargetHeaterCoolerState}`);
437
434
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Switchbot CurrentMode: ${this.CurrentMode}`);
438
435
  }
439
- TargetHeaterCoolerStateHEAT() {
436
+ async TargetHeaterCoolerStateHEAT() {
440
437
  this.TargetHeaterCoolerState = this.platform.Characteristic.TargetHeaterCoolerState.HEAT;
441
438
  this.CurrentMode = 5;
442
439
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Set (HEAT) TargetHeaterCoolerState: ${this.TargetHeaterCoolerState}`);
443
440
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Switchbot CurrentMode: ${this.CurrentMode}`);
444
441
  }
445
- CurrentHeaterCoolerStateGet() {
442
+ async CurrentHeaterCoolerStateGet() {
446
443
  if (this.Active === this.platform.Characteristic.Active.ACTIVE) {
447
444
  this.CurrentTemperatureUndefined();
448
445
  if (this.CurrentTemperature < this.CurrentTemperatureCached) {
@@ -462,7 +459,7 @@ class AirConditioner {
462
459
  this.accessory.context.CurrentHeaterCoolerState = this.CurrentHeaterCoolerStateCached;
463
460
  return this.CurrentHeaterCoolerState;
464
461
  }
465
- HeatingThresholdTemperatureGet() {
462
+ async HeatingThresholdTemperatureGet() {
466
463
  this.CurrentTemperatureUndefined;
467
464
  this.CurrentTemperature = this.CurrentTemperatureCached;
468
465
  this.HeatingThresholdTemperature = this.CurrentTemperatureCached;
@@ -471,7 +468,7 @@ class AirConditioner {
471
468
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Get HeatingThresholdTemperature: ${this.HeatingThresholdTemperature}`);
472
469
  return this.HeatingThresholdTemperature;
473
470
  }
474
- HeatingThresholdTemperatureSet(value) {
471
+ async HeatingThresholdTemperatureSet(value) {
475
472
  this.CurrentTemperatureCached = this.CurrentTemperature;
476
473
  this.CurrentTemperature = value;
477
474
  this.HeatingThresholdTemperatureCached = this.HeatingThresholdTemperature;
@@ -480,7 +477,7 @@ class AirConditioner {
480
477
  ` CurrentTemperatureCached: ${this.CurrentTemperatureCached}`);
481
478
  this.pushAirConditionerStatusChanges();
482
479
  }
483
- CoolingThresholdTemperatureGet() {
480
+ async CoolingThresholdTemperatureGet() {
484
481
  this.CurrentTemperatureUndefined;
485
482
  this.CurrentTemperature = this.CurrentTemperatureCached;
486
483
  this.CoolingThresholdTemperature = this.CurrentTemperatureCached;
@@ -489,7 +486,7 @@ class AirConditioner {
489
486
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Get CoolingThresholdTemperature: ${this.CoolingThresholdTemperature}`);
490
487
  return this.CoolingThresholdTemperature;
491
488
  }
492
- CoolingThresholdTemperatureSet(value) {
489
+ async CoolingThresholdTemperatureSet(value) {
493
490
  this.CurrentTemperatureCached = this.CurrentTemperature;
494
491
  this.CurrentTemperature = value;
495
492
  this.CoolingThresholdTemperatureCached = this.CoolingThresholdTemperature;
@@ -498,7 +495,7 @@ class AirConditioner {
498
495
  ` CurrentTemperatureCached: ${this.CurrentTemperatureCached}`);
499
496
  this.pushAirConditionerStatusChanges();
500
497
  }
501
- CurrentTemperatureUndefined() {
498
+ async CurrentTemperatureUndefined() {
502
499
  if (this.CurrentTemperature === undefined) {
503
500
  this.CurrentTemperature = 24;
504
501
  }
@@ -506,7 +503,7 @@ class AirConditioner {
506
503
  this.CurrentTemperature = 30;
507
504
  }
508
505
  }
509
- config(device) {
506
+ async config(device) {
510
507
  let config = {};
511
508
  if (device.irair) {
512
509
  config = device.irair;
@@ -515,10 +512,10 @@ class AirConditioner {
515
512
  config['logging'] = device.logging;
516
513
  }
517
514
  if (Object.entries(config).length !== 0) {
518
- this.warnLog(`Air Conditioner: ${this.accessory.displayName} Config: ${JSON.stringify(config)}`);
515
+ this.infoLog(`Air Conditioner: ${this.accessory.displayName} Config: ${JSON.stringify(config)}`);
519
516
  }
520
517
  }
521
- logs(device) {
518
+ async logs(device) {
522
519
  if (this.platform.debugMode) {
523
520
  this.deviceLogging = this.accessory.context.logging = 'debugMode';
524
521
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Using Debug Mode Logging: ${this.deviceLogging}`);
@@ -536,7 +533,7 @@ class AirConditioner {
536
533
  this.debugLog(`Air Conditioner: ${this.accessory.displayName} Logging Not Set, Using: ${this.deviceLogging}`);
537
534
  }
538
535
  }
539
- pushOnChanges(device) {
536
+ async pushOnChanges(device) {
540
537
  if (device.irair?.pushOn) {
541
538
  this.pushOn = true;
542
539
  }
@@ -573,7 +570,7 @@ class AirConditioner {
573
570
  }
574
571
  }
575
572
  enablingDeviceLogging() {
576
- return this.deviceLogging === 'debug' || this.deviceLogging === 'standard';
573
+ return this.deviceLogging.includes('debug') || this.deviceLogging === 'standard';
577
574
  }
578
575
  }
579
576
  exports.AirConditioner = AirConditioner;
@@ -1 +1 @@
1
- {"version":3,"file":"airconditioner.js","sourceRoot":"","sources":["../../src/irdevice/airconditioner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"airconditioner.js","sourceRoot":"","sources":["../../src/irdevice/airconditioner.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { AxiosResponse } from 'axios';
1
2
  import { SwitchBotPlatform } from '../platform';
2
3
  import { irDevicesConfig, irdevice, payload } from '../settings';
3
4
  import { CharacteristicValue, PlatformAccessory, Service } from 'homebridge';
@@ -10,7 +11,7 @@ export declare class AirPurifier {
10
11
  private readonly platform;
11
12
  private accessory;
12
13
  device: irdevice & irDevicesConfig;
13
- service: Service;
14
+ airPurifierService: Service;
14
15
  Active: CharacteristicValue;
15
16
  APActive: CharacteristicValue;
16
17
  ActiveCached: CharacteristicValue;
@@ -32,10 +33,10 @@ export declare class AirPurifier {
32
33
  static PURIFYING_AIR: number;
33
34
  deviceLogging: string;
34
35
  constructor(platform: SwitchBotPlatform, accessory: PlatformAccessory, device: irdevice & irDevicesConfig);
35
- private ActiveSet;
36
- private updateHomeKitCharacteristics;
37
- private TargetAirPurifierStateSet;
38
- private CurrentAirPurifierStateGet;
36
+ ActiveSet(value: CharacteristicValue): Promise<void>;
37
+ updateHomeKitCharacteristics(): Promise<void>;
38
+ TargetAirPurifierStateSet(value: CharacteristicValue): Promise<void>;
39
+ CurrentAirPurifierStateGet(): Promise<number>;
39
40
  /**
40
41
  * Pushes the requested changes to the SwitchBot API
41
42
  * deviceType commandType Command command parameter Description
@@ -52,10 +53,12 @@ export declare class AirPurifier {
52
53
  pushAirConditionerStatusChanges(): Promise<void>;
53
54
  pushAirConditionerDetailsChanges(): Promise<void>;
54
55
  pushChanges(payload: payload): Promise<void>;
55
- private statusCode;
56
- apiError(e: any): void;
57
- config(device: irdevice & irDevicesConfig): void;
58
- logs(device: irdevice & irDevicesConfig): void;
56
+ statusCode(push: AxiosResponse<{
57
+ statusCode: number;
58
+ }>): Promise<void>;
59
+ apiError(e: any): Promise<void>;
60
+ config(device: irdevice & irDevicesConfig): Promise<void>;
61
+ logs(device: irdevice & irDevicesConfig): Promise<void>;
59
62
  /**
60
63
  * Logging for Device
61
64
  */
@@ -1 +1 @@
1
- {"version":3,"file":"airpurifier.d.ts","sourceRoot":"","sources":["../../src/irdevice/airpurifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,eAAe,EAAa,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE7E;;;;GAIG;AACH,qBAAa,WAAW;IA8BV,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAAqB,OAAO,CAAC,SAAS;IAA4B,MAAM,EAAE,QAAQ,GAAG,eAAe;IA5BzI,OAAO,EAAG,OAAO,CAAC;IAGlB,MAAM,EAAG,mBAAmB,CAAC;IAC7B,QAAQ,EAAG,mBAAmB,CAAC;IAC/B,YAAY,EAAG,mBAAmB,CAAC;IACnC,aAAa,EAAG,mBAAmB,CAAC;IACpC,aAAa,EAAG,mBAAmB,CAAC;IACpC,aAAa,EAAG,mBAAmB,CAAC;IACpC,iBAAiB,EAAG,mBAAmB,CAAC;IACxC,kBAAkB,EAAG,mBAAmB,CAAC;IACzC,wBAAwB,EAAG,mBAAmB,CAAC;IAC/C,uBAAuB,EAAG,mBAAmB,CAAC;IAC9C,wBAAwB,EAAG,mBAAmB,CAAC;IAG/C,IAAI,EAAE,GAAG,CAAC;IACV,OAAO,EAAE,GAAG,CAAQ;IACpB,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;IACpB,WAAW,EAAG,MAAM,CAAC;IACrB,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;IACxB,eAAe,EAAG,MAAM,CAAC;IACzB,eAAe,EAAG,MAAM,CAAC;IACzB,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC;IAG7B,aAAa,EAAG,MAAM,CAAC;gBAEM,QAAQ,EAAE,iBAAiB,EAAU,SAAS,EAAE,iBAAiB,EAAS,MAAM,EAAE,QAAQ,GAAG,eAAe;IA6CzI,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,4BAA4B;IAuBpC,OAAO,CAAC,yBAAyB;IAgBjC,OAAO,CAAC,0BAA0B;IASlC;;;;;;;;;;OAUG;IACG,wBAAwB;IAWxB,yBAAyB;IAWzB,+BAA+B;IAW/B,gCAAgC;IAyBzB,WAAW,CAAC,OAAO,EAAE,OAAO;IA4BzC,OAAO,CAAC,UAAU;IA+BX,QAAQ,CAAC,CAAC,EAAE,GAAG;IAQtB,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe;IAazC,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe;IAgBvC;;OAEG;IACH,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE;IAMrB,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE;IAMrB,QAAQ,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE;IAMtB,QAAQ,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE;IAUtB,qBAAqB,IAAI,OAAO;CAGjC"}
1
+ {"version":3,"file":"airpurifier.d.ts","sourceRoot":"","sources":["../../src/irdevice/airpurifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,eAAe,EAAa,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE7E;;;;GAIG;AACH,qBAAa,WAAW;IA8BV,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAAqB,OAAO,CAAC,SAAS;IAA4B,MAAM,EAAE,QAAQ,GAAG,eAAe;IA5BzI,kBAAkB,EAAG,OAAO,CAAC;IAG7B,MAAM,EAAG,mBAAmB,CAAC;IAC7B,QAAQ,EAAG,mBAAmB,CAAC;IAC/B,YAAY,EAAG,mBAAmB,CAAC;IACnC,aAAa,EAAG,mBAAmB,CAAC;IACpC,aAAa,EAAG,mBAAmB,CAAC;IACpC,aAAa,EAAG,mBAAmB,CAAC;IACpC,iBAAiB,EAAG,mBAAmB,CAAC;IACxC,kBAAkB,EAAG,mBAAmB,CAAC;IACzC,wBAAwB,EAAG,mBAAmB,CAAC;IAC/C,uBAAuB,EAAG,mBAAmB,CAAC;IAC9C,wBAAwB,EAAG,mBAAmB,CAAC;IAG/C,IAAI,EAAE,GAAG,CAAC;IACV,OAAO,EAAE,GAAG,CAAQ;IACpB,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;IACpB,WAAW,EAAG,MAAM,CAAC;IACrB,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;IACxB,eAAe,EAAG,MAAM,CAAC;IACzB,eAAe,EAAG,MAAM,CAAC;IACzB,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC;IAG7B,aAAa,EAAG,MAAM,CAAC;gBAEM,QAAQ,EAAE,iBAAiB,EAAU,SAAS,EAAE,iBAAiB,EAAS,MAAM,EAAE,QAAQ,GAAG,eAAe;IA6CnI,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAYpD,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAuB7C,yBAAyB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBpE,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC;IASnD;;;;;;;;;;OAUG;IACG,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC;IAWzC,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1C,+BAA+B,IAAI,OAAO,CAAC,IAAI,CAAC;IAWhD,gCAAgC,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBjD,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB5C,UAAU,CAAC,IAAI,EAAE,aAAa,CAAC;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BtE,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ/B,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAazD,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB7D;;OAEG;IACH,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAM5B,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAM5B,QAAQ,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAM7B,QAAQ,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAU7B,qBAAqB,IAAI,OAAO;CAGjC"}
@@ -36,22 +36,22 @@ class AirPurifier {
36
36
  .setCharacteristic(this.platform.Characteristic.SerialNumber, device.deviceId);
37
37
  // get the Television service if it exists, otherwise create a new Television service
38
38
  // you can create multiple services for each accessory
39
- (this.service = accessory.getService(this.platform.Service.AirPurifier) || accessory.addService(this.platform.Service.AirPurifier)),
39
+ (this.airPurifierService = accessory.getService(this.platform.Service.AirPurifier) || accessory.addService(this.platform.Service.AirPurifier)),
40
40
  `${accessory.displayName} Air Purifier`;
41
41
  // To avoid "Cannot add a Service with the same UUID another Service without also defining a unique 'subtype' property." error,
42
42
  // when creating multiple services of the same type, you need to use the following syntax to specify a name and subtype id:
43
43
  // accessory.getService('NAME') ?? accessory.addService(this.platform.Service.Outlet, 'NAME', 'USER_DEFINED_SUBTYPE');
44
44
  // set the service name, this is what is displayed as the default name on the Home app
45
45
  // in this example we are using the name we stored in the `accessory.context` in the `discoverDevices` method.
46
- this.service.setCharacteristic(this.platform.Characteristic.Name, accessory.displayName);
46
+ this.airPurifierService.setCharacteristic(this.platform.Characteristic.Name, accessory.displayName);
47
47
  // handle on / off events using the Active characteristic
48
- this.service.getCharacteristic(this.platform.Characteristic.Active).onSet(this.ActiveSet.bind(this));
49
- this.service.getCharacteristic(this.platform.Characteristic.CurrentAirPurifierState).onGet(() => {
48
+ this.airPurifierService.getCharacteristic(this.platform.Characteristic.Active).onSet(this.ActiveSet.bind(this));
49
+ this.airPurifierService.getCharacteristic(this.platform.Characteristic.CurrentAirPurifierState).onGet(() => {
50
50
  return this.CurrentAirPurifierStateGet();
51
51
  });
52
- this.service.getCharacteristic(this.platform.Characteristic.TargetAirPurifierState).onSet(this.TargetAirPurifierStateSet.bind(this));
52
+ this.airPurifierService.getCharacteristic(this.platform.Characteristic.TargetAirPurifierState).onSet(this.TargetAirPurifierStateSet.bind(this));
53
53
  }
54
- ActiveSet(value) {
54
+ async ActiveSet(value) {
55
55
  this.debugLog(`Air Purifier: ${this.accessory.displayName} Set Active: ${value}`);
56
56
  if (value === this.platform.Characteristic.Active.INACTIVE) {
57
57
  this.pushAirPurifierOffChanges();
@@ -63,30 +63,30 @@ class AirPurifier {
63
63
  this.ActiveCached = this.Active;
64
64
  this.accessory.context.Active = this.ActiveCached;
65
65
  }
66
- updateHomeKitCharacteristics() {
66
+ async updateHomeKitCharacteristics() {
67
67
  if (this.Active === undefined) {
68
68
  this.debugLog(`Air Purifier: ${this.accessory.displayName} Active: ${this.Active}`);
69
69
  }
70
70
  else {
71
- this.service?.updateCharacteristic(this.platform.Characteristic.Active, this.Active);
71
+ this.airPurifierService?.updateCharacteristic(this.platform.Characteristic.Active, this.Active);
72
72
  this.debugLog(`Air Purifier: ${this.accessory.displayName} updateCharacteristic Active: ${this.Active}`);
73
73
  }
74
74
  if (this.CurrentAirPurifierState === undefined) {
75
75
  this.debugLog(`Air Purifier: ${this.accessory.displayName} CurrentAirPurifierState: ${this.CurrentAirPurifierState}`);
76
76
  }
77
77
  else {
78
- this.service?.updateCharacteristic(this.platform.Characteristic.CurrentAirPurifierState, this.CurrentAirPurifierState);
78
+ this.airPurifierService?.updateCharacteristic(this.platform.Characteristic.CurrentAirPurifierState, this.CurrentAirPurifierState);
79
79
  this.debugLog(`Air Purifier: ${this.accessory.displayName}` + ` updateCharacteristic CurrentAirPurifierState: ${this.CurrentAirPurifierState}`);
80
80
  }
81
81
  if (this.CurrentHeaterCoolerState === undefined) {
82
82
  this.debugLog(`Air Purifier: ${this.accessory.displayName} CurrentHeaterCoolerState: ${this.CurrentHeaterCoolerState}`);
83
83
  }
84
84
  else {
85
- this.service?.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, this.CurrentHeaterCoolerState);
85
+ this.airPurifierService?.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, this.CurrentHeaterCoolerState);
86
86
  this.debugLog(`Air Purifier: ${this.accessory.displayName}` + ` updateCharacteristic CurrentHeaterCoolerState: ${this.CurrentHeaterCoolerState}`);
87
87
  }
88
88
  }
89
- TargetAirPurifierStateSet(value) {
89
+ async TargetAirPurifierStateSet(value) {
90
90
  switch (value) {
91
91
  case this.platform.Characteristic.CurrentAirPurifierState.PURIFYING_AIR:
92
92
  this.CurrentMode = AirPurifier.PURIFYING_AIR;
@@ -101,7 +101,7 @@ class AirPurifier {
101
101
  break;
102
102
  }
103
103
  }
104
- CurrentAirPurifierStateGet() {
104
+ async CurrentAirPurifierStateGet() {
105
105
  if (this.Active === 1) {
106
106
  this.CurrentAirPurifierState = this.platform.Characteristic.CurrentAirPurifierState.PURIFYING_AIR;
107
107
  }
@@ -187,16 +187,13 @@ class AirPurifier {
187
187
  }
188
188
  catch (e) {
189
189
  this.errorLog(`Air Purifier: ${this.accessory.displayName} failed pushChanges with OpenAPI Connection`);
190
- if (this.deviceLogging === 'debug') {
190
+ if (this.deviceLogging.includes('debug')) {
191
191
  this.errorLog(`Air Purifier: ${this.accessory.displayName} failed pushChanges with OpenAPI Connection,` + ` Error Message: ${JSON.stringify(e.message)}`);
192
192
  }
193
- if (this.platform.debugMode) {
194
- this.errorLog(`Air Purifier: ${this.accessory.displayName} failed pushChanges with OpenAPI Connection,` + ` Error: ${JSON.stringify(e)}`);
195
- }
196
193
  this.apiError(e);
197
194
  }
198
195
  }
199
- statusCode(push) {
196
+ async statusCode(push) {
200
197
  switch (push.data.statusCode) {
201
198
  case 151:
202
199
  this.errorLog(`Air Purifier: ${this.accessory.displayName} Command not supported by this device type.`);
@@ -224,14 +221,14 @@ class AirPurifier {
224
221
  this.debugLog(`Air Purifier: ${this.accessory.displayName} Unknown statusCode.`);
225
222
  }
226
223
  }
227
- apiError(e) {
228
- this.service.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, e);
229
- this.service.updateCharacteristic(this.platform.Characteristic.CurrentAirPurifierState, e);
230
- this.service.updateCharacteristic(this.platform.Characteristic.TargetAirPurifierState, e);
231
- this.service.updateCharacteristic(this.platform.Characteristic.Active, e);
224
+ async apiError(e) {
225
+ this.airPurifierService.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, e);
226
+ this.airPurifierService.updateCharacteristic(this.platform.Characteristic.CurrentAirPurifierState, e);
227
+ this.airPurifierService.updateCharacteristic(this.platform.Characteristic.TargetAirPurifierState, e);
228
+ this.airPurifierService.updateCharacteristic(this.platform.Characteristic.Active, e);
232
229
  //throw new this.platform.api.hap.HapStatusError(HAPStatus.SERVICE_COMMUNICATION_FAILURE);
233
230
  }
234
- config(device) {
231
+ async config(device) {
235
232
  let config = {};
236
233
  if (device.irpur) {
237
234
  config = device.irpur;
@@ -240,10 +237,10 @@ class AirPurifier {
240
237
  config['logging'] = device.logging;
241
238
  }
242
239
  if (Object.entries(config).length !== 0) {
243
- this.warnLog(`Air Purifier: ${this.accessory.displayName} Config: ${JSON.stringify(config)}`);
240
+ this.infoLog(`Air Purifier: ${this.accessory.displayName} Config: ${JSON.stringify(config)}`);
244
241
  }
245
242
  }
246
- logs(device) {
243
+ async logs(device) {
247
244
  if (this.platform.debugMode) {
248
245
  this.deviceLogging = this.accessory.context.logging = 'debugMode';
249
246
  this.debugLog(`Air Purifier: ${this.accessory.displayName} Using Debug Mode Logging: ${this.deviceLogging}`);
@@ -290,7 +287,7 @@ class AirPurifier {
290
287
  }
291
288
  }
292
289
  enablingDeviceLogging() {
293
- return this.deviceLogging === 'debug' || this.deviceLogging === 'standard';
290
+ return this.deviceLogging.includes('debug') || this.deviceLogging === 'standard';
294
291
  }
295
292
  }
296
293
  exports.AirPurifier = AirPurifier;