Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

too many request... since some days.. #39

Closed
platini76 opened this issue Dec 3, 2020 · 4 comments
Closed

too many request... since some days.. #39

platini76 opened this issue Dec 3, 2020 · 4 comments

Comments

@platini76
Copy link

[3/12/2020, 22:54:40] [Nessun nome] Terminated events stream for all appliances: Home Connect API error: Too Many Requests
[3/12/2020, 22:54:40] [Nessun nome] Starting events stream for all appliances
[3/12/2020, 22:54:40] [Nessun nome] Waiting 86234 seconds before issuing Home Connect API request
[3/12/2020, 22:54:41] [Nessun nome] Terminated events stream for all appliances: Home Connect API error: Too Many Requests
[3/12/2020, 22:54:41] [Nessun nome] Waiting 86233 seconds before requesting events stream for all appliances

thanks for help

@platini76 platini76 added the bug Something isn't working label Dec 3, 2020
@thoukydides
Copy link
Owner

You have exceeded one of the limits listed at:
https://developer.home-connect.com/docs/general/ratelimiting

Given that the Home Connect servers have blocked further requests for 24 hours, my guess would be that it is this limit:

1000 requests per client and Home Connect user account per day
If the quota is reached, additional requests may be blocked. Thus, do not query for state information but use the monitoring function instead, and start/stop programs with care. Furthermore, only one monitoring channel per device per home appliance is allowed.

You have not provided sufficient information to determine why that rate limit might have been exceeded. There are many possible reasons, such as reading details of supported programmes when the plugin is first use, heavy use of HomeKit to control the appliances, or a dodgy internet connection. It isn't entirely unexpected.

The plugin should recover and re-establish a connection once the 24 hours expire. If that does not happen then please provide a longer log with homebridge debug enabled (using the -D command line option).

@platini76
Copy link
Author

this is the log:

[5/12/2020, 03:30:08] [Nessun nome] Starting events stream for all appliances
[5/12/2020, 03:30:08] [Nessun nome] Home Connect request #3: STREAM https://api.home-connect.com/api/homeappliances/events
[5/12/2020, 03:30:08] [Nessun nome] Home Connect request #4: GET https://api.home-connect.com/api/homeappliances
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #3: Too Many Requests +236ms
[5/12/2020, 03:30:09] [Nessun nome] Terminated events stream for all appliances: Home Connect API error: Too Many Requests
[5/12/2020, 03:30:09] [Nessun nome] Starting events stream for all appliances
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #5: STREAM https://api.home-connect.com/api/homeappliances/events
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #4: The rate limit "1000 calls in 1 day" was reached. Requests are blocked during the remaining period of 0 seconds. [429] +245ms
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #6: GET https://api.home-connect.com/api/homeappliances
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #5: Too Many Requests +175ms
[5/12/2020, 03:30:09] [Nessun nome] Terminated events stream for all appliances: Home Connect API error: Too Many Requests
[5/12/2020, 03:30:09] [Nessun nome] Starting events stream for all appliances
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #7: STREAM https://api.home-connect.com/api/homeappliances/events
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #6: The rate limit "1000 calls in 1 day" was reached. Requests are blocked during the remaining period of 0 seconds. [429] +163ms
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #8: GET https://api.home-connect.com/api/homeappliances
[5/12/2020, 03:30:09] [Nessun nome] Started events stream for all appliances
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #8: OK +160ms
[5/12/2020, 03:30:09] [Nessun nome] Found 1 appliances
[5/12/2020, 03:30:09] [Nessun nome] Scheduling configuration schema write
[5/12/2020, 03:30:09] [Nessun nome] Connecting accessory 'Lavastoviglie'
[5/12/2020, 03:30:09] [Nessun nome] [Lavastoviglie] Siemens Dishwasher (E-Nr: SN578S36TE/33)
[5/12/2020, 03:30:09] [Nessun nome] [Lavastoviglie] Connected, so reading appliance state...
[5/12/2020, 03:30:09] [Nessun nome] Home Connect request #9: GET https://api.home-connect.com/api/homeappliances/SIEMENS-XXXXXXX-XXXXXXX
[5/12/2020, 03:30:09] [Nessun nome] [Lavastoviglie] Cache loaded (21 entries)
[5/12/2020, 03:30:09] [Nessun nome] [Lavastoviglie] Cache 'Appliance power' [it-IT, updated 114666 seconds ago] is too old
[5/12/2020, 03:30:09] [Nessun nome] [Lavastoviglie] Cache 'Appliance settings' [it-IT, updated 114666 seconds ago] is too old
[5/12/2020, 03:30:09] [Nessun nome] [Lavastoviglie] Restored details of 8 programs
[5/12/2020, 03:30:10] [Nessun nome] Home Connect request #9: OK +167ms
[5/12/2020, 03:30:10] [Nessun nome] Home Connect request #10: GET https://api.home-connect.com/api/homeappliances/SIEMENS-XXXXXXX-XXXXXXX/status
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #10: OK +1288ms
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Status.DoorState=BSH.Common.EnumType.DoorState.Closed (1 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Door closed
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Status.OperationState=BSH.Common.EnumType.OperationState.Ready (3 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Operation state implies power is on
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Setting.PowerState=BSH.Common.EnumType.PowerState.On (1 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] On
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Inactive (Ready)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Status.RemoteControlActive=true (1 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Status.RemoteControlStartAllowed=false (1 listeners)
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #11: GET https://api.home-connect.com/api/homeappliances/SIEMENS-XXXXXXXX-XXXXXXX/settings
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Remote operation NOT enabled (remote control activated, remote start disallowed)
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #11: OK +175ms
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Setting.PowerState=BSH.Common.EnumType.PowerState.On (1 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] On
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #12: GET https://api.home-connect.com/api/homeappliances/SIEMENS-XXXXXXX-XXXXXXX/programs/selected
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #12: OK +172ms
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Root.SelectedProgram=Dishcare.Dishwasher.Program.NightWash (0 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Option.StartInRelative=0 seconds (1 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Dishcare.Dishwasher.Option.HygienePlus=false (0 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Dishcare.Dishwasher.Option.IntensivZone=false (0 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Dishcare.Dishwasher.Option.BrillianceDry=false (0 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Ignoring GET active program in BSH.Common.EnumType.OperationState.Ready
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Successfully read all appliance state
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] connected=true (6 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Connected
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #13: GET https://api.home-connect.com/api/homeappliances/SIEMENS-XXXXXXXX-XXXXXXX/settings/BSH.Common.Setting.PowerState
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #14: GET https://api.home-connect.com/api/homeappliances/SIEMENS-XXXXXXX-XXXXXXX/settings
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Cache 'Appliance programs' [it-IT, updated 114668 seconds ago] is too old
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #15: GET https://api.home-connect.com/api/homeappliances/SIEMENS-XXXXXXX-XXXXXXX/programs
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #13: OK +177ms
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Setting.PowerState=BSH.Common.EnumType.PowerState.On (1 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] On
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] 'Appliance power' written to cache
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #14: OK +186ms
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] BSH.Common.Setting.PowerState=BSH.Common.EnumType.PowerState.On (1 listeners)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] On
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] 'Appliance settings' written to cache
[5/12/2020, 03:30:11] [Nessun nome] Home Connect request #15: OK +186ms
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] 'Appliance programs' written to cache
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Cache saved (21 entries)
[5/12/2020, 03:30:11] [Nessun nome] [Lavastoviglie] Can be switched off
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Cache saved (21 entries)
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Does not support Functional Light
[5/12/2020, 03:30:12] [Nessun nome] Home Connect request #16: GET https://api.home-connect.com/api/homeappliances/SIEMENS-XXXXXX-XXXXXXX/programs/available
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Cache 'Appliance settings' [it-IT, updated 0 seconds ago]
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Does not support Ambient Light
[5/12/2020, 03:30:12] [Nessun nome] Home Connect request #16: OK +161ms
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] 'Program details' written to cache
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Cache saved (21 entries)
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Finished reading available program options
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Adding services for 0 programs
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Removing services for 8 programs
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Cache 'Appliance commands' [it-IT, updated 114668 seconds ago] is too old
[5/12/2020, 03:30:12] [Nessun nome] Home Connect request #17: GET https://api.home-connect.com/api/homeappliances/SIEMENS-XXXXXXX-XXXXXXXXX/commands
[5/12/2020, 03:30:12] [Nessun nome] Home Connect request #17: OK +162ms
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] 'Appliance commands' written to cache
[5/12/2020, 03:30:12] [Nessun nome] [Lavastoviglie] Cache saved (21 entries)
[5/12/2020, 03:30:12] [Nessun nome] Scheduled configuration schema write complete

@thoukydides
Copy link
Owner

Thank you for the debug log. That confirms that the issue was, as expected:

The rate limit "1000 calls in 1 day" was reached.

It also shows that after expiry of the 24 hour period, the plugin resumed normal operation without any further errors.

Hence, unless you are still seeing issues that don't appear in the provided log, then it looks like everything is working as intended.

@thoukydides thoukydides removed the bug Something isn't working label Dec 9, 2020
@thoukydides
Copy link
Owner

From the logs provided it is not possible to determine why the 1000 requests/day rate limit was exceeded. It is unlikely that anything can be done to prevent that occurring under extreme conditions (either intermittent internet connections, problems with the Home Connect servers, or excessive use of the appliances or HomeKit control).

However, the plugin appears to have handled the situation appropriately, and recovered when the 24 hour period expired.

Hence, there is no evidence of a bug in the plugin, so I am closing this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants