From 6551cb0514438808d415e1290979887502af1b25 Mon Sep 17 00:00:00 2001 From: Donavan Becker Date: Mon, 30 Sep 2024 15:16:13 -0500 Subject: [PATCH] fix getDevices --- package-lock.json | 8 ++++---- package.json | 2 +- src/platform.ts | 14 +++----------- 3 files changed, 8 insertions(+), 16 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1910e378..27fa5154 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,7 +23,7 @@ "async-mqtt": "^2.6.3", "fakegato-history": "^0.6.5", "homebridge-lib": "^7.0.8", - "node-switchbot": "2.5.0-beta.28", + "node-switchbot": "2.5.0-beta.29", "rxjs": "^7.8.1" }, "devDependencies": { @@ -11956,9 +11956,9 @@ } }, "node_modules/node-switchbot": { - "version": "2.5.0-beta.28", - "resolved": "https://registry.npmjs.org/node-switchbot/-/node-switchbot-2.5.0-beta.28.tgz", - "integrity": "sha512-asiY7OF9WG3cFU9OVclxDiWifOGPysLdKWIuyegEEd6xyqyXOBhsgKGepS8FSoadjY1uCeE+dLH6y68mV7TYew==", + "version": "2.5.0-beta.29", + "resolved": "https://registry.npmjs.org/node-switchbot/-/node-switchbot-2.5.0-beta.29.tgz", + "integrity": "sha512-TVeQvwda+fcSd9/27AgPgUHY+8gaDBIzcryeSnFogv/XvY92JgG/vcuAWv17Gqi/QI3BuSgHwIDrRqIZPBm1Ww==", "license": "MIT", "dependencies": { "@stoprocent/noble": "^1.15.0", diff --git a/package.json b/package.json index 657fbab7..da94cebd 100644 --- a/package.json +++ b/package.json @@ -81,7 +81,7 @@ "async-mqtt": "^2.6.3", "fakegato-history": "^0.6.5", "homebridge-lib": "^7.0.8", - "node-switchbot": "2.5.0-beta.28", + "node-switchbot": "2.5.0-beta.29", "rxjs": "^7.8.1" }, "devDependencies": { diff --git a/src/platform.ts b/src/platform.ts index bbbea88f..2e12cb81 100644 --- a/src/platform.ts +++ b/src/platform.ts @@ -19,7 +19,7 @@ import { EveHomeKitTypes } from 'homebridge-lib/EveHomeKitTypes' * For Testing Locally: * import { SwitchBotModel } from '/Users/Shared/GitHub/OpenWonderLabs/node-switchbot/dist/index.js'; */ -import type { blindTilt, curtain, curtain3, device, irdevice } from 'node-switchbot' +import type { blindTilt, curtain, curtain3, device, devices, irdevice } from 'node-switchbot' import { LogLevel, SwitchBot, SwitchBotModel, SwitchBotOpenAPI } from 'node-switchbot' import { queueScheduler } from 'rxjs' @@ -469,16 +469,8 @@ export class SwitchBotPlatform implements DynamicPlatformPlugin { const { response, statusCode } = await this.switchBotAPI.getDevices() await this.debugLog(`response: ${JSON.stringify(response)}`) if (this.isSuccessfulResponse(statusCode)) { - if (Array.isArray(response.deviceList)) { - await this.handleDevices(response.deviceList) - } else { - await this.errorLog('deviceList is not an array') - } - if (Array.isArray(response.infraredRemoteList)) { - await this.handleIRDevices(response.infraredRemoteList) - } else { - await this.errorLog('infraredRemoteList is not an array') - } + await this.handleDevices(Array.isArray(response.body.deviceList) ? response.body.deviceList : []) + await this.handleIRDevices(Array.isArray(response.body.infraredRemoteList) ? response.body.infraredRemoteList : []) break } else { await this.handleErrorResponse(statusCode, retryCount, maxRetries, delayBetweenRetries)