kovapatrik / homebridge-blueair-purifier

Homebridge plugin for BlueAir purifiers
Apache License 2.0
5 stars 1 forks source link

SUPPORT REQUEST: API call failing #11

Open kylemcdaniel1010 opened 1 month ago

kylemcdaniel1010 commented 1 month ago

Describe Your Problem: Installed the plugin and configured with my BlueAir login credentials, however it doesn't seem to successfully connect via the API (according to logs). Am I doing something wrong?

Logs:

8/7/2024, 7:28:19 PMBlueair Purifier BridgeLoaded plugin 'homebridge-blueair-purifier' 8/7/2024, 7:28:19 PMBlueair Purifier BridgeLoading 1 platforms... 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORMissing required configuration options! Please do the device discovery in the configuration UI and/or check your config.json file 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierGetting initial device states... 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORError getting initial device states: Error: API call failed after 0 retries at GigyaApi.apiCall (/var/lib/hoobs/blueairpurifierbridge/node_modules/homebridge-blueair-purifier/src/api/GigyaApi.ts:88:15) at GigyaApi.apiCall (/var/lib/hoobs/blueairpurifierbridge/node_modules/homebridge-blueair-purifier/src/api/GigyaApi.ts:86:21) at GigyaApi.apiCall (/var/lib/hoobs/blueairpurifierbridge/node_modules/homebridge-blueair-purifier/src/api/GigyaApi.ts:86:21) at GigyaApi.apiCall (/var/lib/hoobs/blueairpurifierbridge/node_modules/homebridge-blueair-purifier/src/api/GigyaApi.ts:86:21) at GigyaApi.getGigyaSession (/var/lib/hoobs/blueairpurifierbridge/node_modules/homebridge-blueair-purifier/src/api/GigyaApi.ts:31:33) at BlueAirAwsApi.login (/var/lib/hoobs/blueairpurifierbridge/node_modules/homebridge-blueair-purifier/src/api/BlueAirAwsApi.ts:105:51) at BlueAirPlatform.getInitialDeviceStates (/var/lib/hoobs/blueairpurifierbridge/node_modules/homebridge-blueair-purifier/src/platform.ts:82:29) at HomebridgeAPI. (/var/lib/hoobs/blueairpurifierbridge/node_modules/homebridge-blueair-purifier/src/platform.ts:45:18) at HomebridgeAPI.emit (node:events:513:28) at HomebridgeAPI.signalFinished (/usr/lib/hoobsd/node_modules/homebridge/src/api.ts:275:10) at Server.start (/usr/src/bridge/server.ts:243:18) 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:19 PMBlueair Purifier Bridgeblueair-purifierWARNINGError getting valid devices status, reason:API call failed after 0 retries. Retrying in 5 seconds... 8/7/2024, 7:28:19 PMBlueair Purifier BridgeBridge is running on port 51856. 8/7/2024, 7:28:24 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:24 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:24 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:24 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:24 PMBlueair Purifier Bridgeblueair-purifierWARNINGError getting valid devices status, reason:API call failed after 0 retries. Retrying in 5 seconds... 8/7/2024, 7:28:29 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:29 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:29 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:29 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:29 PMBlueair Purifier Bridgeblueair-purifierWARNINGError getting valid devices status, reason:API call failed after 0 retries. Retrying in 5 seconds... 8/7/2024, 7:28:34 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:34 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:34 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:34 PMBlueair Purifier Bridgeblueair-purifierERRORAPI call failed: ReferenceError: fetch is not defined 8/7/2024, 7:28:34 PMBlueair Purifier Bridgeblueair-purifierWARNINGError getting valid devices status, reason:API call failed after 0 retries. Retrying in 5 seconds...

Plugin Config:

{ "platform": "blueair-purifier", "username": "USERNAME REDACTED", "password": "PASSWORD REDACTED", "verboseLogging": true }

Screenshots:

Environment:

kovapatrik commented 1 month ago

You need to have at least Node.js 18 installed. It is defined in the plugin's requirements so it's weird Homebridge let you install this.

tewwyre080 commented 1 month ago

I have same problem. It doesn't seem to successfully connect. Doing something wrong?

Environment:

OS | Ubuntu Focal (20.04.5 LTS) Plugin Version: 1.0.11 Homebridge Version: 1.7.0 Node.js Version: v18.13.0

kovapatrik commented 1 month ago

Could you send your logs, please?

tewwyre080 commented 1 month ago

Could you send your logs, please?

[homebridge-blueair-purifier] Custom UI created. [8/9/2024, 1:21:42 AM] [Homebridge UI] [homebridge-blueair-purifier] Incoming Request: /getDefaults [8/9/2024, 1:21:42 AM] [Homebridge UI] [homebridge-blueair-purifier] Incoming Request: /mergeToDefault [8/9/2024, 1:21:55 AM] [Homebridge UI] [homebridge-blueair-purifier] Incoming Request: /discover [8/9/2024, 1:21:55 AM] [Homebridge UI] [homebridge-blueair-purifier] API call failed: TypeError: fetch failed [8/9/2024, 1:21:55 AM] [Homebridge UI] [homebridge-blueair-purifier] API call failed: TypeError: fetch failed [8/9/2024, 1:21:55 AM] [Homebridge UI] [homebridge-blueair-purifier] API call failed: TypeError: fetch failed [8/9/2024, 1:21:55 AM] [Homebridge UI] [homebridge-blueair-purifier] API call failed: TypeError: fetch failed [8/9/2024, 1:21:55 AM] [Homebridge UI] [homebridge-blueair-purifier] Device discovery failed: Error: API call failed after 0 retries at GigyaApi.apiCall (/homebridge/node_modules/homebridge-blueair-purifier/dist/api/GigyaApi.js:74:23) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async GigyaApi.getGigyaSession (/homebridge/node_modules/homebridge-blueair-purifier/dist/api/GigyaApi.js:22:26) at async BlueAirAwsApi.login (/homebridge/node_modules/homebridge-blueair-purifier/dist/api/BlueAirAwsApi.js:35:35) at async Object./discover (/homebridge/node_modules/homebridge-blueair-purifier/homebridge-ui/server.js:93:9) at async UiServer.processRequest (/homebridge/node_modules/homebridge-blueair-purifier/node_modules/@homebridge/plugin-ui-utils/dist/server.js:75:30) [8/9/2024, 1:22:35 AM] [Homebridge UI] [homebridge-blueair-purifier] Incoming Request: /discover [8/9/2024, 1:22:35 AM] [Homebridge UI] [homebridge-blueair-purifier] API call failed: TypeError: fetch failed [8/9/2024, 1:22:35 AM] [Homebridge UI] [homebridge-blueair-purifier] API call failed: TypeError: fetch failed [8/9/2024, 1:22:35 AM] [Homebridge UI] [homebridge-blueair-purifier] API call failed: TypeError: fetch failed [8/9/2024, 1:22:35 AM] [Homebridge UI] [homebridge-blueair-purifier] API call failed: TypeError: fetch failed [8/9/2024, 1:22:35 AM] [Homebridge UI] [homebridge-blueair-purifier] Device discovery failed: Error: API call failed after 0 retries at GigyaApi.apiCall (/homebridge/node_modules/homebridge-blueair-purifier/dist/api/GigyaApi.js:74:23) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async GigyaApi.getGigyaSession (/homebridge/node_modules/homebridge-blueair-purifier/dist/api/GigyaApi.js:22:26) at async BlueAirAwsApi.login (/homebridge/node_modules/homebridge-blueair-purifier/dist/api/BlueAirAwsApi.js:35:35) at async Object./discover (/homebridge/node_modules/homebridge-blueair-purifier/homebridge-ui/server.js:93:9) at async UiServer.processRequest (/homebridge/node_modules/homebridge-blueair-purifier/node_modules/@homebridge/plugin-ui-utils/dist/server.js:75:30)

And when I search the device by account, it shows:

Device discovery failed: Error: API call failed after 0 retries at GigyaApi.apiCall (/homebridge/node_modules/homebridge-blueair-purifier/dist/api/GigyaApi.js:74:23) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async GigyaApi.getGigyaSession (/homebridge/node_modules/homebridge-blueair-purifier/dist/api/GigyaApi.js:22:26) at async BlueAirAwsApi.login (/homebridge/node_modules/homebridge-blueair-purifier/dist/api/BlueAirAwsApi.js:35:35) at async Object./discover (/homebridge/node_modules/homebridge-blueair-purifier/homebridge-ui/server.js:93:9) at async UiServer.processRequest (/homebridge/node_modules/homebridge-blueair-purifier/node_modules/@homebridge/plugin-ui-utils/dist/server.js:75:30)

kovapatrik commented 1 month ago

Is there a chance your browser blocks something? Could you please try it out in another browser and/or in incognito mode?

kovapatrik commented 1 month ago

Also, what region do you try to use?

tewwyre080 commented 1 month ago

Also, what region do you try to use?

What region should I select, I'm in Taiwan?

kovapatrik commented 1 month ago

I really don't know. I could tell you (or you can tell yourself) if you are able to sniff the HTTP traffic made by the official application. There are applications for this if you search for it.

Or you can try all of them using the trial and error method.

tewwyre080 commented 1 month ago

I really don't know. I could tell you (or you can tell yourself) if you are able to sniff the HTTP traffic made by the official application. There are applications for this if you search for it.

Or you can try all of them using the trial and error method.

I have tried every region, all cannot work. Also, use different browser and/or in incognito mode, still have problem.

kovapatrik commented 1 month ago

Then I would need you to sniff the HTTP packets of the application. You can search for HTTP sniffing for Android or ios depending on what you are using.

kovapatrik commented 1 month ago

Or option B, make a dummy account and send me the credentials for it by email, on Discord or on some private platform.

tewwyre080 commented 1 month ago

Then I would need you to sniff the HTTP packets of the application. You can search for HTTP sniffing for Android or ios depending on what you are using.

Then I think I probably know ​​what to do next. Thank you for your help.

kovapatrik commented 1 month ago

Then I would need you to sniff the HTTP packets of the application. You can search for HTTP sniffing for Android or ios depending on what you are using.

Then I think I probably know ​​what to do next. Thank you for your help.

If you go on this route, please let me know your results so I can implement this in the plugin.

tewwyre080 commented 1 month ago

I'll let you know if I'm successful. Thanks for taking time try to solve my problem.

kovapatrik commented 3 weeks ago

Have you had any success with this one?