@switchbot/homebridge-switchbot 3.5.0-beta.0 → 3.5.0-beta.10

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 (142) hide show
  1. package/CHANGELOG.md +3 -1
  2. package/config.schema.json +27 -6
  3. package/dist/device/blindtilt.d.ts +1 -0
  4. package/dist/device/blindtilt.d.ts.map +1 -1
  5. package/dist/device/blindtilt.js +9 -0
  6. package/dist/device/blindtilt.js.map +1 -1
  7. package/dist/device/bot.d.ts +1 -0
  8. package/dist/device/bot.d.ts.map +1 -1
  9. package/dist/device/bot.js +9 -0
  10. package/dist/device/bot.js.map +1 -1
  11. package/dist/device/ceilinglight.d.ts +1 -0
  12. package/dist/device/ceilinglight.d.ts.map +1 -1
  13. package/dist/device/ceilinglight.js +13 -0
  14. package/dist/device/ceilinglight.js.map +1 -1
  15. package/dist/device/colorbulb.d.ts +1 -0
  16. package/dist/device/colorbulb.d.ts.map +1 -1
  17. package/dist/device/colorbulb.js +15 -0
  18. package/dist/device/colorbulb.js.map +1 -1
  19. package/dist/device/contact.d.ts +1 -0
  20. package/dist/device/contact.d.ts.map +1 -1
  21. package/dist/device/contact.js +5 -0
  22. package/dist/device/contact.js.map +1 -1
  23. package/dist/device/curtain.d.ts +1 -0
  24. package/dist/device/curtain.d.ts.map +1 -1
  25. package/dist/device/curtain.js +9 -0
  26. package/dist/device/curtain.js.map +1 -1
  27. package/dist/device/hub.d.ts +1 -0
  28. package/dist/device/hub.d.ts.map +1 -1
  29. package/dist/device/hub.js +5 -0
  30. package/dist/device/hub.js.map +1 -1
  31. package/dist/device/humidifier.d.ts +1 -0
  32. package/dist/device/humidifier.d.ts.map +1 -1
  33. package/dist/device/humidifier.js +14 -1
  34. package/dist/device/humidifier.js.map +1 -1
  35. package/dist/device/iosensor.d.ts +1 -0
  36. package/dist/device/iosensor.d.ts.map +1 -1
  37. package/dist/device/iosensor.js +5 -0
  38. package/dist/device/iosensor.js.map +1 -1
  39. package/dist/device/lightstrip.d.ts +1 -0
  40. package/dist/device/lightstrip.d.ts.map +1 -1
  41. package/dist/device/lightstrip.js +13 -0
  42. package/dist/device/lightstrip.js.map +1 -1
  43. package/dist/device/lock.d.ts +1 -0
  44. package/dist/device/lock.d.ts.map +1 -1
  45. package/dist/device/lock.js +9 -0
  46. package/dist/device/lock.js.map +1 -1
  47. package/dist/device/meter.d.ts +1 -0
  48. package/dist/device/meter.d.ts.map +1 -1
  49. package/dist/device/meter.js +5 -0
  50. package/dist/device/meter.js.map +1 -1
  51. package/dist/device/meterplus.d.ts +1 -0
  52. package/dist/device/meterplus.d.ts.map +1 -1
  53. package/dist/device/meterplus.js +5 -0
  54. package/dist/device/meterplus.js.map +1 -1
  55. package/dist/device/motion.d.ts +1 -0
  56. package/dist/device/motion.d.ts.map +1 -1
  57. package/dist/device/motion.js +5 -0
  58. package/dist/device/motion.js.map +1 -1
  59. package/dist/device/plug.d.ts +1 -0
  60. package/dist/device/plug.d.ts.map +1 -1
  61. package/dist/device/plug.js +9 -0
  62. package/dist/device/plug.js.map +1 -1
  63. package/dist/device/robotvacuumcleaner.d.ts +1 -0
  64. package/dist/device/robotvacuumcleaner.d.ts.map +1 -1
  65. package/dist/device/robotvacuumcleaner.js +16 -4
  66. package/dist/device/robotvacuumcleaner.js.map +1 -1
  67. package/dist/device/waterdetector.d.ts +85 -0
  68. package/dist/device/waterdetector.d.ts.map +1 -0
  69. package/dist/device/waterdetector.js +656 -0
  70. package/dist/device/waterdetector.js.map +1 -0
  71. package/dist/irdevice/airconditioner.d.ts +1 -0
  72. package/dist/irdevice/airconditioner.d.ts.map +1 -1
  73. package/dist/irdevice/airconditioner.js +6 -0
  74. package/dist/irdevice/airconditioner.js.map +1 -1
  75. package/dist/irdevice/airpurifier.d.ts +1 -0
  76. package/dist/irdevice/airpurifier.d.ts.map +1 -1
  77. package/dist/irdevice/airpurifier.js +6 -0
  78. package/dist/irdevice/airpurifier.js.map +1 -1
  79. package/dist/irdevice/camera.d.ts +1 -0
  80. package/dist/irdevice/camera.d.ts.map +1 -1
  81. package/dist/irdevice/camera.js +6 -0
  82. package/dist/irdevice/camera.js.map +1 -1
  83. package/dist/irdevice/fan.d.ts +1 -0
  84. package/dist/irdevice/fan.d.ts.map +1 -1
  85. package/dist/irdevice/fan.js +6 -0
  86. package/dist/irdevice/fan.js.map +1 -1
  87. package/dist/irdevice/light.d.ts +1 -0
  88. package/dist/irdevice/light.d.ts.map +1 -1
  89. package/dist/irdevice/light.js +6 -0
  90. package/dist/irdevice/light.js.map +1 -1
  91. package/dist/irdevice/other.d.ts +1 -0
  92. package/dist/irdevice/other.d.ts.map +1 -1
  93. package/dist/irdevice/other.js +6 -0
  94. package/dist/irdevice/other.js.map +1 -1
  95. package/dist/irdevice/tv.d.ts +1 -0
  96. package/dist/irdevice/tv.d.ts.map +1 -1
  97. package/dist/irdevice/tv.js +6 -0
  98. package/dist/irdevice/tv.js.map +1 -1
  99. package/dist/irdevice/vacuumcleaner.d.ts +1 -0
  100. package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
  101. package/dist/irdevice/vacuumcleaner.js +6 -0
  102. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  103. package/dist/irdevice/waterheater.d.ts +1 -0
  104. package/dist/irdevice/waterheater.d.ts.map +1 -1
  105. package/dist/irdevice/waterheater.js +6 -0
  106. package/dist/irdevice/waterheater.js.map +1 -1
  107. package/dist/platform.d.ts +2 -0
  108. package/dist/platform.d.ts.map +1 -1
  109. package/dist/platform.js +68 -0
  110. package/dist/platform.js.map +1 -1
  111. package/dist/settings.d.ts +5 -0
  112. package/dist/settings.d.ts.map +1 -1
  113. package/dist/settings.js.map +1 -1
  114. package/package.json +14 -14
  115. package/src/device/blindtilt.ts +19 -9
  116. package/src/device/bot.ts +10 -0
  117. package/src/device/ceilinglight.ts +14 -0
  118. package/src/device/colorbulb.ts +16 -0
  119. package/src/device/contact.ts +6 -0
  120. package/src/device/curtain.ts +10 -0
  121. package/src/device/hub.ts +6 -0
  122. package/src/device/humidifier.ts +15 -1
  123. package/src/device/iosensor.ts +6 -0
  124. package/src/device/lightstrip.ts +14 -0
  125. package/src/device/lock.ts +10 -0
  126. package/src/device/meter.ts +6 -0
  127. package/src/device/meterplus.ts +6 -0
  128. package/src/device/motion.ts +6 -0
  129. package/src/device/plug.ts +10 -0
  130. package/src/device/robotvacuumcleaner.ts +17 -4
  131. package/src/device/waterdetector.ts +695 -0
  132. package/src/irdevice/airconditioner.ts +7 -0
  133. package/src/irdevice/airpurifier.ts +7 -0
  134. package/src/irdevice/camera.ts +7 -0
  135. package/src/irdevice/fan.ts +7 -0
  136. package/src/irdevice/light.ts +7 -0
  137. package/src/irdevice/other.ts +7 -0
  138. package/src/irdevice/tv.ts +7 -0
  139. package/src/irdevice/vacuumcleaner.ts +7 -0
  140. package/src/irdevice/waterheater.ts +7 -0
  141. package/src/platform.ts +72 -0
  142. package/src/settings.ts +6 -0
@@ -386,6 +386,8 @@ export class Plug {
386
386
  })
387
387
  .then(() => {
388
388
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Done.`);
389
+ this.successLog(`${this.device.deviceType}: ${this.accessory.displayName} `
390
+ + `On: ${this.On} sent over BLE, sent successfully`);
389
391
  this.On = false;
390
392
  })
391
393
  .catch(async (e: any) => {
@@ -432,6 +434,8 @@ export class Plug {
432
434
  if ((statusCode === 200 || statusCode === 100) && (deviceStatus.statusCode === 200 || deviceStatus.statusCode === 100)) {
433
435
  this.debugErrorLog(`${this.device.deviceType}: ${this.accessory.displayName} `
434
436
  + `statusCode: ${statusCode} & deviceStatus StatusCode: ${deviceStatus.statusCode}`);
437
+ this.successLog(`${this.device.deviceType}: ${this.accessory.displayName} `
438
+ + `request to SwitchBot API, body: ${deviceStatus} sent successfully`);
435
439
  } else {
436
440
  this.statusCode(statusCode);
437
441
  this.statusCode(deviceStatus.statusCode);
@@ -740,6 +744,12 @@ export class Plug {
740
744
  /**
741
745
  * Logging for Device
742
746
  */
747
+ successLog(...log: any[]): void {
748
+ if (this.enablingDeviceLogging()) {
749
+ this.platform.log.success(String(...log));
750
+ }
751
+ }
752
+
743
753
  infoLog(...log: any[]): void {
744
754
  if (this.enablingDeviceLogging()) {
745
755
  this.platform.log.info(String(...log));
@@ -434,6 +434,8 @@ export class RobotVacuumCleaner {
434
434
  })
435
435
  .then(() => {
436
436
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Done.`);
437
+ this.successLog(`${this.device.deviceType}: ${this.accessory.displayName} `
438
+ + `On: ${this.On} sent over BLE, sent successfully`);
437
439
  this.On = false;
438
440
  })
439
441
  .catch(async (e: any) => {
@@ -480,6 +482,8 @@ export class RobotVacuumCleaner {
480
482
  if ((statusCode === 200 || statusCode === 100) && (deviceStatus.statusCode === 200 || deviceStatus.statusCode === 100)) {
481
483
  this.debugErrorLog(`${this.device.deviceType}: ${this.accessory.displayName} `
482
484
  + `statusCode: ${statusCode} & deviceStatus StatusCode: ${deviceStatus.statusCode}`);
485
+ this.successLog(`${this.device.deviceType}: ${this.accessory.displayName} `
486
+ + `request to SwitchBot API, body: ${bodyChange} sent successfully`);
483
487
  } else {
484
488
  this.statusCode(statusCode);
485
489
  this.statusCode(deviceStatus.statusCode);
@@ -502,10 +506,11 @@ export class RobotVacuumCleaner {
502
506
 
503
507
  async openAPIpushBrightnessChanges() {
504
508
  this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} openAPIpushBrightnessChanges`);
505
- const body = await this.brightnessCommands();
506
- this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Sending request to SwitchBot API, body: ${body},`);
509
+ const bodyChange = this.brightnessCommands();
510
+ this.debugLog(`${this.device.deviceType}: ${this.accessory.displayName} Sending request to SwitchBot API, body: ${bodyChange},`);
507
511
  try {
508
512
  const { body, statusCode } = await request(`${Devices}/${this.device.deviceId}/commands`, {
513
+ body: bodyChange,
509
514
  method: 'POST',
510
515
  headers: this.platform.generateHeaders(),
511
516
  });
@@ -516,6 +521,8 @@ export class RobotVacuumCleaner {
516
521
  if ((statusCode === 200 || statusCode === 100) && (deviceStatus.statusCode === 200 || deviceStatus.statusCode === 100)) {
517
522
  this.debugErrorLog(`${this.device.deviceType}: ${this.accessory.displayName} `
518
523
  + `statusCode: ${statusCode} & deviceStatus StatusCode: ${deviceStatus.statusCode}`);
524
+ this.successLog(`${this.device.deviceType}: ${this.accessory.displayName} `
525
+ + `request to SwitchBot API, body: ${deviceStatus} sent successfully`);
519
526
  } else {
520
527
  this.statusCode(statusCode);
521
528
  this.statusCode(deviceStatus.statusCode);
@@ -566,12 +573,12 @@ export class RobotVacuumCleaner {
566
573
  command = 'dock';
567
574
  parameter = 'default';
568
575
  }
569
- const body = JSON.stringify({
576
+ const bodyChange = JSON.stringify({
570
577
  command: `${command}`,
571
578
  parameter: `${parameter}`,
572
579
  commandType: 'command',
573
580
  });
574
- return body;
581
+ return bodyChange;
575
582
  }
576
583
 
577
584
  /**
@@ -898,6 +905,12 @@ export class RobotVacuumCleaner {
898
905
  /**
899
906
  * Logging for Device
900
907
  */
908
+ successLog(...log: any[]): void {
909
+ if (this.enablingDeviceLogging()) {
910
+ this.platform.log.success(String(...log));
911
+ }
912
+ }
913
+
901
914
  infoLog(...log: any[]): void {
902
915
  if (this.enablingDeviceLogging()) {
903
916
  this.platform.log.info(String(...log));