eschava / broadlink-mqtt

MQTT client to control BroadLink devices
MIT License
221 stars 60 forks source link

Do not sys.exit(2) when device is not found, retry instead #104

Open helen-fornazier opened 2 years ago

helen-fornazier commented 2 years ago

If broadlink-mqtt starts to run before the broadlink device is up, it fails and it doesn't connect. This happens only in the first connection. Once connected, broadlink-mqtt handles disconnection well.

This behavior is annoying when configuring broadlink-mqtt as a systemd service, since it will get an error and won't recover.

So instead of exiting, just retry, letting the user to turn on the broadlink device, or turn off some devices in case multiple broadlinks were found, and the system will auto-connect without user intervention.

helen-fornazier commented 1 year ago

@eschava Hi, please, let me know what do you think

eschava commented 1 year ago

Looks good but I'd add a configurable number of retries. Agree?

helen-fornazier commented 1 year ago

Hi @eschava , thanks for taking a look.

For my usecase it is not useful to add a limited number of retries, but sure, if you think it can be useful to others, we can add it.