JeroenVdb / homebridge-daikin-cloud

This Homebrige plugin connects to the Daikin Cloud and loads all your devices to be controled via Homebridge and Homekit.
https://www.npmjs.com/package/homebridge-daikin-cloud
Apache License 2.0
40 stars 11 forks source link

API request blocked because of rate-limits #87

Closed ScraggyMcRaggy closed 1 month ago

ScraggyMcRaggy commented 1 month ago

I am getting API blocks lately that break the plugin. You can fix it be re-authorizing, but the error returns around 12-24 hours later.

I'm wondering if the update default of 15 mins isn't enough anymore? I'll try changing it and will report back. But just an FYI.

Log

Failed to set RateLimitedError: API request blocked because of rate-limits for 4 seconds at OnectaClient.requestResource (/var/lib/homebridge/node_modules/homebridge-daikin-cloud/node_modules/daikin-controller-cloud/src/onecta/oidc-client.ts:171:19) at DaikinCloudDevice.setData (/var/lib/homebridge/node_modules/homebridge-daikin-cloud/node_modules/daikin-controller-cloud/src/device.ts:250:29) at ClimateControlService.handleActiveStateSet (/var/lib/homebridge/node_modules/homebridge-daikin-cloud/src/climateControlService.ts:285:49) at Active.<anonymous> (/var/lib/homebridge/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Characteristic.ts:2552:42) at step (/var/lib/homebridge/node_modules/homebridge/node_modules/tslib/tslib.js:195:27) at Object.next (/var/lib/homebridge/node_modules/homebridge/node_modules/tslib/tslib.js:176:57) at /var/lib/homebridge/node_modules/homebridge/node_modules/tslib/tslib.js:169:75 at new Promise (<anonymous>) at Object.__awaiter (/var/lib/homebridge/node_modules/homebridge/node_modules/tslib/tslib.js:165:16) at Active.Characteristic.handleSetRequest (/var/lib/homebridge/node_modules/homebridge/node_modules/hap-nodejs/dist/lib/Characteristic.js:875:24) { retryAfter: 4 }

ScraggyMcRaggy commented 1 month ago

Can confirm that setting Update Interval to 30 minutes (from 15 minute default), has fixed this issue.

JeroenVdb commented 1 month ago

Yes, to bad the API has a very limited amount of available API calls. I was on a path to try to reduce this but thats harder then it seemed at first.