Apsysikal / bachome

A BACnet plugin for Homebridge.
Apache License 2.0
6 stars 2 forks source link

Add rate limiting / slow mode #16

Open Apsysikal opened 2 years ago

Apsysikal commented 2 years ago

Some devices may get "overloaded" with too many requests as the plugin does no rate-limiting on its side. This may result in a device becoming unresponsive, slow or even connection timeouts. The idea is to implement rate-limiting and/or slow mode to stop device getting bombarded with requests.

koerby commented 2 years ago

Hey, something new about rate limiting / slow mode? My device has always problems, so the values on my homekit are not right or updated after hours...

Apsysikal commented 2 years ago

Sadly I didn’t have time to get on this. Sorry to not have better news.

koerby commented 10 months ago

Hey there. something new? i have 12 thermostats and i make's trouble that i have no real updates in homekit, sometimes it add the temperature so i have unreal values :(

Apsysikal commented 7 months ago

Sadly, not really. I'm not using BACnet personally at home, which makes this quite a challenge. I've been thinking about how rate-limiting would work in the context of this plugin and could not come up with a good solution. Rate limiting would essentially be, not sending requests to the BACnet devices which would lead to the devices not receiving settings, the user has made in Homebridge (Apple Home App). The other way would be to build a queue of actions as they come in from Homebridge (Apple Home App) and then send them to the device in a predefined interval (e.g. 1 second). This would lead to slow responsiveness of the devices, which I think would make for a really bad user experience. Anyway, so far I'm not working on this. If you still want to give feedback on my thoughts feel free to comment from time to time.