@switchbot/homebridge-switchbot 3.8.3-beta.15 → 3.8.3-beta.17
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.
- package/dist/device/blindtilt.d.ts.map +1 -1
- package/dist/device/blindtilt.js +12 -13
- package/dist/device/blindtilt.js.map +1 -1
- package/dist/device/bot.d.ts.map +1 -1
- package/dist/device/bot.js +12 -13
- package/dist/device/bot.js.map +1 -1
- package/dist/device/ceilinglight.d.ts.map +1 -1
- package/dist/device/ceilinglight.js +27 -31
- package/dist/device/ceilinglight.js.map +1 -1
- package/dist/device/colorbulb.d.ts.map +1 -1
- package/dist/device/colorbulb.js +27 -31
- package/dist/device/colorbulb.js.map +1 -1
- package/dist/device/contact.js +7 -7
- package/dist/device/contact.js.map +1 -1
- package/dist/device/curtain.d.ts.map +1 -1
- package/dist/device/curtain.js +12 -13
- package/dist/device/curtain.js.map +1 -1
- package/dist/device/device.d.ts +1 -3
- package/dist/device/device.d.ts.map +1 -1
- package/dist/device/device.js +2 -2
- package/dist/device/device.js.map +1 -1
- package/dist/device/fan.d.ts.map +1 -1
- package/dist/device/fan.js +22 -25
- package/dist/device/fan.js.map +1 -1
- package/dist/device/hub.js +7 -7
- package/dist/device/hub.js.map +1 -1
- package/dist/device/humidifier.d.ts.map +1 -1
- package/dist/device/humidifier.js +22 -25
- package/dist/device/humidifier.js.map +1 -1
- package/dist/device/iosensor.js +7 -7
- package/dist/device/iosensor.js.map +1 -1
- package/dist/device/lightstrip.d.ts.map +1 -1
- package/dist/device/lightstrip.js +22 -25
- package/dist/device/lightstrip.js.map +1 -1
- package/dist/device/lock.d.ts.map +1 -1
- package/dist/device/lock.js +12 -13
- package/dist/device/lock.js.map +1 -1
- package/dist/device/meter.js +7 -7
- package/dist/device/meter.js.map +1 -1
- package/dist/device/meterplus.js +7 -7
- package/dist/device/meterplus.js.map +1 -1
- package/dist/device/motion.js +7 -7
- package/dist/device/motion.js.map +1 -1
- package/dist/device/plug.d.ts.map +1 -1
- package/dist/device/plug.js +12 -13
- package/dist/device/plug.js.map +1 -1
- package/dist/device/robotvacuumcleaner.d.ts.map +1 -1
- package/dist/device/robotvacuumcleaner.js +17 -19
- package/dist/device/robotvacuumcleaner.js.map +1 -1
- package/dist/device/waterdetector.js +7 -7
- package/dist/device/waterdetector.js.map +1 -1
- package/dist/irdevice/airconditioner.d.ts.map +1 -1
- package/dist/irdevice/airconditioner.js +5 -6
- package/dist/irdevice/airconditioner.js.map +1 -1
- package/dist/irdevice/airpurifier.d.ts.map +1 -1
- package/dist/irdevice/airpurifier.js +5 -6
- package/dist/irdevice/airpurifier.js.map +1 -1
- package/dist/irdevice/camera.d.ts.map +1 -1
- package/dist/irdevice/camera.js +5 -6
- package/dist/irdevice/camera.js.map +1 -1
- package/dist/irdevice/fan.d.ts.map +1 -1
- package/dist/irdevice/fan.js +5 -6
- package/dist/irdevice/fan.js.map +1 -1
- package/dist/irdevice/irdevice.d.ts +3 -4
- package/dist/irdevice/irdevice.d.ts.map +1 -1
- package/dist/irdevice/irdevice.js +5 -6
- package/dist/irdevice/irdevice.js.map +1 -1
- package/dist/irdevice/light.d.ts.map +1 -1
- package/dist/irdevice/light.js +5 -6
- package/dist/irdevice/light.js.map +1 -1
- package/dist/irdevice/other.d.ts.map +1 -1
- package/dist/irdevice/other.js +5 -6
- package/dist/irdevice/other.js.map +1 -1
- package/dist/irdevice/tv.d.ts.map +1 -1
- package/dist/irdevice/tv.js +5 -6
- package/dist/irdevice/tv.js.map +1 -1
- package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
- package/dist/irdevice/vacuumcleaner.js +5 -6
- package/dist/irdevice/vacuumcleaner.js.map +1 -1
- package/dist/irdevice/waterheater.d.ts.map +1 -1
- package/dist/irdevice/waterheater.js +5 -6
- package/dist/irdevice/waterheater.js.map +1 -1
- package/dist/platform.d.ts +0 -1
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +18 -25
- package/dist/platform.js.map +1 -1
- package/package.json +2 -2
- package/src/device/blindtilt.ts +12 -13
- package/src/device/bot.ts +12 -13
- package/src/device/ceilinglight.ts +27 -31
- package/src/device/colorbulb.ts +27 -31
- package/src/device/contact.ts +7 -7
- package/src/device/curtain.ts +12 -13
- package/src/device/device.ts +4 -4
- package/src/device/fan.ts +22 -25
- package/src/device/hub.ts +7 -7
- package/src/device/humidifier.ts +22 -25
- package/src/device/iosensor.ts +7 -7
- package/src/device/lightstrip.ts +22 -25
- package/src/device/lock.ts +12 -13
- package/src/device/meter.ts +7 -7
- package/src/device/meterplus.ts +7 -7
- package/src/device/motion.ts +7 -7
- package/src/device/plug.ts +12 -13
- package/src/device/robotvacuumcleaner.ts +17 -19
- package/src/device/waterdetector.ts +7 -7
- package/src/irdevice/airconditioner.ts +5 -6
- package/src/irdevice/airpurifier.ts +5 -6
- package/src/irdevice/camera.ts +5 -6
- package/src/irdevice/fan.ts +5 -6
- package/src/irdevice/irdevice.ts +6 -7
- package/src/irdevice/light.ts +5 -6
- package/src/irdevice/other.ts +5 -6
- package/src/irdevice/tv.ts +5 -6
- package/src/irdevice/vacuumcleaner.ts +5 -6
- package/src/irdevice/waterheater.ts +5 -6
- package/src/platform.ts +19 -25
package/src/platform.ts
CHANGED
|
@@ -133,16 +133,16 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
133
133
|
this.switchBotAPI.on('log', (log) => {
|
|
134
134
|
switch (log.level) {
|
|
135
135
|
case LogLevel.ERROR:
|
|
136
|
-
this.errorLog(
|
|
136
|
+
this.errorLog(log.message)
|
|
137
137
|
break
|
|
138
138
|
case LogLevel.WARN:
|
|
139
|
-
this.warnLog(
|
|
139
|
+
this.warnLog(log.message)
|
|
140
140
|
break
|
|
141
141
|
case LogLevel.DEBUG:
|
|
142
|
-
this.debugLog(
|
|
142
|
+
this.debugLog(log.message)
|
|
143
143
|
break
|
|
144
144
|
default:
|
|
145
|
-
this.infoLog(
|
|
145
|
+
this.infoLog(log.message)
|
|
146
146
|
}
|
|
147
147
|
})
|
|
148
148
|
// import fakegato-history module and EVE characteristics
|
|
@@ -474,16 +474,15 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
474
474
|
|
|
475
475
|
while (retryCount < maxRetries) {
|
|
476
476
|
try {
|
|
477
|
-
const {
|
|
478
|
-
await this.debugWarnLog(`
|
|
479
|
-
await this.debugWarnLog(`devicesAPI: ${JSON.stringify(devicesAPI)}`)
|
|
477
|
+
const { responseBody } = await this.switchBotAPI.getDevices()
|
|
478
|
+
await this.debugWarnLog(`devicesAPI: ${JSON.stringify(responseBody)}`)
|
|
480
479
|
|
|
481
|
-
if (this.isSuccessfulResponse(
|
|
482
|
-
await this.handleDevices(
|
|
483
|
-
await this.handleIRDevices(
|
|
480
|
+
if (this.isSuccessfulResponse(responseBody.statusCode)) {
|
|
481
|
+
await this.handleDevices(responseBody.body.deviceList)
|
|
482
|
+
await this.handleIRDevices(responseBody.body.infraredRemoteList)
|
|
484
483
|
break
|
|
485
484
|
} else {
|
|
486
|
-
await this.handleErrorResponse(
|
|
485
|
+
await this.handleErrorResponse(responseBody.statusCode, retryCount, maxRetries, delayBetweenRetries)
|
|
487
486
|
retryCount++
|
|
488
487
|
}
|
|
489
488
|
} catch (e: any) {
|
|
@@ -516,8 +515,8 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
516
515
|
}
|
|
517
516
|
}
|
|
518
517
|
|
|
519
|
-
private isSuccessfulResponse(
|
|
520
|
-
return (
|
|
518
|
+
private isSuccessfulResponse(apiStatusCode: number): boolean {
|
|
519
|
+
return (apiStatusCode === 200 || apiStatusCode === 100)
|
|
521
520
|
}
|
|
522
521
|
|
|
523
522
|
private async handleDevices(deviceLists: any[]) {
|
|
@@ -582,11 +581,10 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
582
581
|
})
|
|
583
582
|
}
|
|
584
583
|
|
|
585
|
-
private async handleErrorResponse(
|
|
586
|
-
await this.statusCode(statusCode)
|
|
584
|
+
private async handleErrorResponse(apiStatusCode: number, retryCount: number, maxRetries: number, delayBetweenRetries: number) {
|
|
587
585
|
await this.statusCode(apiStatusCode)
|
|
588
|
-
if (
|
|
589
|
-
this.infoLog(`statusCode: ${
|
|
586
|
+
if (apiStatusCode === 500) {
|
|
587
|
+
this.infoLog(`statusCode: ${apiStatusCode} Attempt ${retryCount + 1} of ${maxRetries}`)
|
|
590
588
|
await sleep(delayBetweenRetries)
|
|
591
589
|
}
|
|
592
590
|
}
|
|
@@ -2547,18 +2545,14 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
2547
2545
|
}
|
|
2548
2546
|
}
|
|
2549
2547
|
|
|
2550
|
-
async retryRequest(deviceId: string, deviceMaxRetries: number, deviceDelayBetweenRetries: number): Promise<{ body: any
|
|
2548
|
+
async retryRequest(deviceId: string, deviceMaxRetries: number, deviceDelayBetweenRetries: number): Promise<{ body: any }> {
|
|
2551
2549
|
let retryCount = 0
|
|
2552
2550
|
const maxRetries = deviceMaxRetries
|
|
2553
2551
|
const delayBetweenRetries = deviceDelayBetweenRetries
|
|
2554
2552
|
while (retryCount < maxRetries) {
|
|
2555
2553
|
try {
|
|
2556
|
-
const { body
|
|
2557
|
-
|
|
2558
|
-
return { body, statusCode }
|
|
2559
|
-
} else {
|
|
2560
|
-
await this.debugLog(`Received status code: ${statusCode}`)
|
|
2561
|
-
}
|
|
2554
|
+
const { body } = await this.switchBotAPI.getDeviceStatus(deviceId)
|
|
2555
|
+
return body
|
|
2562
2556
|
} catch (error: any) {
|
|
2563
2557
|
await this.errorLog(`Error making request: ${error.message}`)
|
|
2564
2558
|
}
|
|
@@ -2566,7 +2560,7 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin {
|
|
|
2566
2560
|
await this.debugLog(`Retry attempt ${retryCount} of ${maxRetries}`)
|
|
2567
2561
|
await sleep(delayBetweenRetries)
|
|
2568
2562
|
}
|
|
2569
|
-
return { body: null
|
|
2563
|
+
return { body: null }
|
|
2570
2564
|
}
|
|
2571
2565
|
|
|
2572
2566
|
// BLE Connection
|