Something happens over time when the deviceList gets unpopulated, and all the other calls stack up. This causes the framework (eg. homebridge) to become completely non-responsive.
This is probably because of a crash somewhere else in the plugin that also needs to be fixed. But a crash should never cause a runway situation. The plugin functions should self destruct after so many attempts.
Because the init() is only called now when auth fails, the deviceList never gets repopulated and the whole plugin causes a compounding avalanche of calls to build up.
add a counter to trigger init() after so many retries of deviceList not being populated
add a counter to all other calls to die after MAX_ATTEMPTS and not retry forever
Something happens over time when the deviceList gets unpopulated, and all the other calls stack up. This causes the framework (eg. homebridge) to become completely non-responsive.
This is probably because of a crash somewhere else in the plugin that also needs to be fixed. But a crash should never cause a runway situation. The plugin functions should self destruct after so many attempts.
Because the init() is only called now when auth fails, the deviceList never gets repopulated and the whole plugin causes a compounding avalanche of calls to build up.