@switchbot/homebridge-switchbot 4.1.1-beta.0 → 4.1.1-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 (104) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/config.schema.json +2 -2
  3. package/dist/device/blindtilt.js +104 -104
  4. package/dist/device/blindtilt.js.map +1 -1
  5. package/dist/device/bot.js +86 -86
  6. package/dist/device/bot.js.map +1 -1
  7. package/dist/device/ceilinglight.js +98 -98
  8. package/dist/device/ceilinglight.js.map +1 -1
  9. package/dist/device/colorbulb.js +140 -140
  10. package/dist/device/colorbulb.js.map +1 -1
  11. package/dist/device/contact.js +47 -47
  12. package/dist/device/contact.js.map +1 -1
  13. package/dist/device/curtain.d.ts +1 -1
  14. package/dist/device/curtain.d.ts.map +1 -1
  15. package/dist/device/curtain.js +95 -93
  16. package/dist/device/curtain.js.map +1 -1
  17. package/dist/device/device.d.ts +13 -13
  18. package/dist/device/device.d.ts.map +1 -1
  19. package/dist/device/device.js +46 -46
  20. package/dist/device/device.js.map +1 -1
  21. package/dist/device/fan.js +96 -96
  22. package/dist/device/fan.js.map +1 -1
  23. package/dist/device/hub.js +46 -46
  24. package/dist/device/hub.js.map +1 -1
  25. package/dist/device/humidifier.d.ts.map +1 -1
  26. package/dist/device/humidifier.js +85 -87
  27. package/dist/device/humidifier.js.map +1 -1
  28. package/dist/device/iosensor.js +44 -44
  29. package/dist/device/iosensor.js.map +1 -1
  30. package/dist/device/lightstrip.js +119 -119
  31. package/dist/device/lightstrip.js.map +1 -1
  32. package/dist/device/lock.js +75 -75
  33. package/dist/device/lock.js.map +1 -1
  34. package/dist/device/meter.js +44 -44
  35. package/dist/device/meter.js.map +1 -1
  36. package/dist/device/meterplus.js +42 -42
  37. package/dist/device/meterplus.js.map +1 -1
  38. package/dist/device/meterpro.js +42 -42
  39. package/dist/device/meterpro.js.map +1 -1
  40. package/dist/device/motion.js +44 -44
  41. package/dist/device/motion.js.map +1 -1
  42. package/dist/device/plug.d.ts.map +1 -1
  43. package/dist/device/plug.js +60 -60
  44. package/dist/device/plug.js.map +1 -1
  45. package/dist/device/robotvacuumcleaner.js +74 -74
  46. package/dist/device/robotvacuumcleaner.js.map +1 -1
  47. package/dist/device/waterdetector.d.ts.map +1 -1
  48. package/dist/device/waterdetector.js +54 -56
  49. package/dist/device/waterdetector.js.map +1 -1
  50. package/dist/irdevice/airconditioner.js +31 -31
  51. package/dist/irdevice/airconditioner.js.map +1 -1
  52. package/dist/irdevice/airpurifier.js +10 -10
  53. package/dist/irdevice/airpurifier.js.map +1 -1
  54. package/dist/irdevice/camera.js +9 -9
  55. package/dist/irdevice/camera.js.map +1 -1
  56. package/dist/irdevice/fan.js +11 -11
  57. package/dist/irdevice/fan.js.map +1 -1
  58. package/dist/irdevice/irdevice.js +11 -11
  59. package/dist/irdevice/irdevice.js.map +1 -1
  60. package/dist/irdevice/light.js +9 -9
  61. package/dist/irdevice/light.js.map +1 -1
  62. package/dist/irdevice/other.js +93 -93
  63. package/dist/irdevice/other.js.map +1 -1
  64. package/dist/irdevice/tv.js +33 -33
  65. package/dist/irdevice/tv.js.map +1 -1
  66. package/dist/irdevice/vacuumcleaner.js +9 -9
  67. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  68. package/dist/irdevice/waterheater.js +9 -9
  69. package/dist/irdevice/waterheater.js.map +1 -1
  70. package/dist/platform.js +228 -228
  71. package/dist/platform.js.map +1 -1
  72. package/docs/functions/default.html +1 -1
  73. package/package.json +9 -9
  74. package/src/device/blindtilt.ts +104 -104
  75. package/src/device/bot.ts +86 -86
  76. package/src/device/ceilinglight.ts +98 -98
  77. package/src/device/colorbulb.ts +140 -140
  78. package/src/device/contact.ts +47 -47
  79. package/src/device/curtain.ts +95 -93
  80. package/src/device/device.ts +46 -46
  81. package/src/device/fan.ts +96 -96
  82. package/src/device/hub.ts +46 -46
  83. package/src/device/humidifier.ts +85 -87
  84. package/src/device/iosensor.ts +44 -44
  85. package/src/device/lightstrip.ts +119 -119
  86. package/src/device/lock.ts +75 -75
  87. package/src/device/meter.ts +44 -44
  88. package/src/device/meterplus.ts +42 -42
  89. package/src/device/meterpro.ts +42 -42
  90. package/src/device/motion.ts +44 -44
  91. package/src/device/plug.ts +62 -62
  92. package/src/device/robotvacuumcleaner.ts +74 -74
  93. package/src/device/waterdetector.ts +54 -55
  94. package/src/irdevice/airconditioner.ts +31 -31
  95. package/src/irdevice/airpurifier.ts +10 -10
  96. package/src/irdevice/camera.ts +9 -9
  97. package/src/irdevice/fan.ts +11 -11
  98. package/src/irdevice/irdevice.ts +11 -11
  99. package/src/irdevice/light.ts +9 -9
  100. package/src/irdevice/other.ts +93 -93
  101. package/src/irdevice/tv.ts +33 -33
  102. package/src/irdevice/vacuumcleaner.ts +9 -9
  103. package/src/irdevice/waterheater.ts +9 -9
  104. package/src/platform.ts +228 -228
@@ -83,7 +83,7 @@ export class IRFan extends irdeviceBase {
83
83
  }
84
84
 
85
85
  async SwingModeSet(value: CharacteristicValue): Promise<void> {
86
- await this.debugLog(`SwingMode: ${value}`)
86
+ this.debugLog(`SwingMode: ${value}`)
87
87
  if (value > this.Fan.SwingMode) {
88
88
  this.Fan.SwingMode = 1
89
89
  await this.pushFanOnChanges()
@@ -98,7 +98,7 @@ export class IRFan extends irdeviceBase {
98
98
  }
99
99
 
100
100
  async RotationSpeedSet(value: CharacteristicValue): Promise<void> {
101
- await this.debugLog(`RotationSpeed: ${value}`)
101
+ this.debugLog(`RotationSpeed: ${value}`)
102
102
  if (value > this.Fan.RotationSpeed) {
103
103
  this.Fan.RotationSpeed = 1
104
104
  this.pushFanSpeedUpChanges()
@@ -112,7 +112,7 @@ export class IRFan extends irdeviceBase {
112
112
  }
113
113
 
114
114
  async ActiveSet(value: CharacteristicValue): Promise<void> {
115
- await this.debugLog(`Active: ${value}`)
115
+ this.debugLog(`Active: ${value}`)
116
116
 
117
117
  this.Fan.Active = value
118
118
  if (this.Fan.Active === this.hap.Characteristic.Active.ACTIVE) {
@@ -132,7 +132,7 @@ export class IRFan extends irdeviceBase {
132
132
  * Fan - "command" "highSpeed" "default" = fan speed to high
133
133
  */
134
134
  async pushFanOnChanges(): Promise<void> {
135
- await this.debugLog(`pushFanOnChanges Active: ${this.Fan.Active}, disablePushOn: ${this.disablePushOn}`)
135
+ this.debugLog(`pushFanOnChanges Active: ${this.Fan.Active}, disablePushOn: ${this.disablePushOn}`)
136
136
  if (this.Fan.Active === this.hap.Characteristic.Active.ACTIVE && !this.disablePushOn) {
137
137
  const commandType: string = await this.commandType()
138
138
  const command: string = await this.commandOn()
@@ -146,7 +146,7 @@ export class IRFan extends irdeviceBase {
146
146
  }
147
147
 
148
148
  async pushFanOffChanges(): Promise<void> {
149
- await this.debugLog(`pushLightOffChanges Active: ${this.Fan.Active}, disablePushOff: ${this.disablePushOff}`)
149
+ this.debugLog(`pushLightOffChanges Active: ${this.Fan.Active}, disablePushOff: ${this.disablePushOff}`)
150
150
  if (this.Fan.Active === this.hap.Characteristic.Active.INACTIVE && !this.disablePushOff) {
151
151
  const commandType: string = await this.commandType()
152
152
  const command: string = await this.commandOff()
@@ -187,12 +187,12 @@ export class IRFan extends irdeviceBase {
187
187
  }
188
188
 
189
189
  async pushChanges(bodyChange: any): Promise<void> {
190
- await this.debugLog('pushChanges')
190
+ this.debugLog('pushChanges')
191
191
  if (this.device.connectionType === 'OpenAPI') {
192
- await this.infoLog(`Sending request to SwitchBot API, body: ${JSON.stringify(bodyChange)}`)
192
+ this.infoLog(`Sending request to SwitchBot API, body: ${JSON.stringify(bodyChange)}`)
193
193
  try {
194
- const { body } = await this.pushChangeRequest(bodyChange)
195
- const deviceStatus: any = await body
194
+ const response = await this.pushChangeRequest(bodyChange)
195
+ const deviceStatus: any = response.body
196
196
  await this.pushStatusCodes(deviceStatus)
197
197
  if (await this.successfulStatusCodes(deviceStatus)) {
198
198
  await this.successfulPushChange(deviceStatus, bodyChange)
@@ -205,12 +205,12 @@ export class IRFan extends irdeviceBase {
205
205
  await this.pushChangeError(e)
206
206
  }
207
207
  } else {
208
- await this.warnLog(`Connection Type: ${this.device.connectionType}, commands will not be sent to OpenAPI`)
208
+ this.warnLog(`Connection Type: ${this.device.connectionType}, commands will not be sent to OpenAPI`)
209
209
  }
210
210
  }
211
211
 
212
212
  async updateHomeKitCharacteristics(): Promise<void> {
213
- await this.debugLog('updateHomeKitCharacteristics')
213
+ this.debugLog('updateHomeKitCharacteristics')
214
214
  // Active
215
215
  await this.updateCharacteristic(this.Fan.Service, this.hap.Characteristic.Active, this.Fan.Active, 'Active')
216
216
  // SwingMode
@@ -51,16 +51,16 @@ export abstract class irdeviceBase {
51
51
  async getDeviceLogSettings(device: irdevice & irDevicesConfig): Promise<void> {
52
52
  if (this.platform.debugMode) {
53
53
  this.deviceLogging = this.accessory.context.logging = 'debugMode'
54
- await this.debugWarnLog(`Using Debug Mode Logging: ${this.deviceLogging}`)
54
+ this.debugWarnLog(`Using Debug Mode Logging: ${this.deviceLogging}`)
55
55
  } else if (device.logging) {
56
56
  this.deviceLogging = this.accessory.context.logging = device.logging
57
- await this.debugWarnLog(`Using Device Config Logging: ${this.deviceLogging}`)
57
+ this.debugWarnLog(`Using Device Config Logging: ${this.deviceLogging}`)
58
58
  } else if (this.config.logging) {
59
59
  this.deviceLogging = this.accessory.context.logging = this.config.logging
60
- await this.debugWarnLog(`Using Platform Config Logging: ${this.deviceLogging}`)
60
+ this.debugWarnLog(`Using Platform Config Logging: ${this.deviceLogging}`)
61
61
  } else {
62
62
  this.deviceLogging = this.accessory.context.logging = 'standard'
63
- await this.debugWarnLog(`Logging Not Set, Using: ${this.deviceLogging}`)
63
+ this.debugWarnLog(`Logging Not Set, Using: ${this.deviceLogging}`)
64
64
  }
65
65
  }
66
66
 
@@ -116,7 +116,7 @@ export abstract class irdeviceBase {
116
116
 
117
117
  const deviceFirmwareVersion = device.firmware ?? accessory.context.version ?? this.platform.version ?? '0.0.0'
118
118
  const version = deviceFirmwareVersion.toString()
119
- await this.debugLog(`version: ${version?.replace(/^V|-.*$/g, '')}`)
119
+ this.debugLog(`version: ${version?.replace(/^V|-.*$/g, '')}`)
120
120
  let deviceVersion: string
121
121
  if (version?.includes('.') === false) {
122
122
  const replace = version?.replace(/^V|-.*$/g, '')
@@ -158,19 +158,19 @@ export abstract class irdeviceBase {
158
158
  */
159
159
  async updateCharacteristic(Service: Service, Characteristic: any, CharacteristicValue: CharacteristicValue | undefined, CharacteristicName: string): Promise<void> {
160
160
  if (CharacteristicValue === undefined) {
161
- await this.debugLog(`${CharacteristicName}: ${CharacteristicValue}`)
161
+ this.debugLog(`${CharacteristicName}: ${CharacteristicValue}`)
162
162
  } else {
163
163
  Service.updateCharacteristic(Characteristic, CharacteristicValue)
164
- await this.debugLog(`updateCharacteristic ${CharacteristicName}: ${CharacteristicValue}`)
165
- await this.debugWarnLog(`${CharacteristicName} context before: ${this.accessory.context[CharacteristicName]}`)
164
+ this.debugLog(`updateCharacteristic ${CharacteristicName}: ${CharacteristicValue}`)
165
+ this.debugWarnLog(`${CharacteristicName} context before: ${this.accessory.context[CharacteristicName]}`)
166
166
  this.accessory.context[CharacteristicName] = CharacteristicValue
167
- await this.debugWarnLog(`${CharacteristicName} context after: ${this.accessory.context[CharacteristicName]}`)
167
+ this.debugWarnLog(`${CharacteristicName} context after: ${this.accessory.context[CharacteristicName]}`)
168
168
  }
169
169
  }
170
170
 
171
171
  async pushStatusCodes(deviceStatus: any) {
172
- await this.debugWarnLog(`deviceStatus: ${JSON.stringify(deviceStatus)}`)
173
- await this.debugWarnLog(`deviceStatus statusCode: ${deviceStatus.statusCode}`)
172
+ this.debugWarnLog(`deviceStatus: ${JSON.stringify(deviceStatus)}`)
173
+ this.debugWarnLog(`deviceStatus statusCode: ${deviceStatus.statusCode}`)
174
174
  }
175
175
 
176
176
  async successfulPushChange(deviceStatus: any, bodyChange: any) {
@@ -111,7 +111,7 @@ export class Light extends irdeviceBase {
111
111
  }
112
112
 
113
113
  async OnSet(value: CharacteristicValue): Promise<void> {
114
- await this.debugLog(`On: ${value}`)
114
+ this.debugLog(`On: ${value}`)
115
115
 
116
116
  this.LightBulb!.On = value
117
117
  if (this.LightBulb?.On) {
@@ -128,7 +128,7 @@ export class Light extends irdeviceBase {
128
128
  }
129
129
 
130
130
  async ProgrammableSwitchOutputStateSetOn(value: CharacteristicValue): Promise<void> {
131
- await this.debugLog(`On: ${value}`)
131
+ this.debugLog(`On: ${value}`)
132
132
 
133
133
  this.ProgrammableSwitchOn!.ProgrammableSwitchOutputState = value
134
134
  if (this.ProgrammableSwitchOn?.ProgrammableSwitchOutputState === 1) {
@@ -142,7 +142,7 @@ export class Light extends irdeviceBase {
142
142
  }
143
143
 
144
144
  async ProgrammableSwitchOutputStateSetOff(value: CharacteristicValue): Promise<void> {
145
- await this.debugLog(`On: ${value}`)
145
+ this.debugLog(`On: ${value}`)
146
146
 
147
147
  this.ProgrammableSwitchOff!.ProgrammableSwitchOutputState = value
148
148
  if (this.ProgrammableSwitchOff?.ProgrammableSwitchOutputState === 1) {
@@ -166,7 +166,7 @@ export class Light extends irdeviceBase {
166
166
  * Light - "command" "channelSub" "default" = previous channel
167
167
  */
168
168
  async pushLightOnChanges(On: boolean): Promise<void> {
169
- await this.debugLog(`pushLightOnChanges On: ${On}, disablePushOn: ${this.disablePushOn}`)
169
+ this.debugLog(`pushLightOnChanges On: ${On}, disablePushOn: ${this.disablePushOn}`)
170
170
  if (On === true && this.disablePushOn === false) {
171
171
  const commandType: string = await this.commandType()
172
172
  const command: string = await this.commandOn()
@@ -180,7 +180,7 @@ export class Light extends irdeviceBase {
180
180
  }
181
181
 
182
182
  async pushLightOffChanges(On: boolean): Promise<void> {
183
- await this.debugLog(`pushLightOffChanges On: ${On}, disablePushOff: ${this.disablePushOff}`)
183
+ this.debugLog(`pushLightOffChanges On: ${On}, disablePushOff: ${this.disablePushOff}`)
184
184
  if (On === false && this.disablePushOff === false) {
185
185
  const commandType: string = await this.commandType()
186
186
  const command: string = await this.commandOff()
@@ -196,10 +196,10 @@ export class Light extends irdeviceBase {
196
196
  async pushChanges(bodyChange: any, On: boolean): Promise<void> {
197
197
  this.debugLog('pushChanges')
198
198
  if (this.device.connectionType === 'OpenAPI') {
199
- await this.infoLog(`Sending request to SwitchBot API, body: ${JSON.stringify(bodyChange)}`)
199
+ this.infoLog(`Sending request to SwitchBot API, body: ${JSON.stringify(bodyChange)}`)
200
200
  try {
201
- const { body } = await this.pushChangeRequest(bodyChange)
202
- const deviceStatus: any = await body
201
+ const response = await this.pushChangeRequest(bodyChange)
202
+ const deviceStatus: any = response.body
203
203
  await this.pushStatusCodes(deviceStatus)
204
204
  if (await this.successfulStatusCodes(deviceStatus)) {
205
205
  await this.successfulPushChange(deviceStatus, bodyChange)
@@ -218,7 +218,7 @@ export class Light extends irdeviceBase {
218
218
  }
219
219
 
220
220
  async updateHomeKitCharacteristics(): Promise<void> {
221
- await this.debugLog('updateHomeKitCharacteristics')
221
+ this.debugLog('updateHomeKitCharacteristics')
222
222
  if (!(this.device as irLightConfig).stateless && this.LightBulb?.Service) {
223
223
  // On
224
224
  await this.updateCharacteristic(this.LightBulb.Service, this.hap.Characteristic.On, this.LightBulb.On, 'On')