Closed Dinth closed 5 years ago
Just used a different Mosquitto shocker container to be sure it’s not MQTT server issue, but I’m getting same results: 1) If Mosquitto server starts earlier than ebusd then everything works fine; 2) If ebusd starts earlier than Mosquitto server it still connects to it and publishes MQTT messages, but posting a message to ebusd/bai/variable/get doesn’t refresh the variable. When ebusd is restarted, everything goes back to normal
I've a similar behaviour but independent to the starting time of Mosquitto. Polling ebusd through /get messages works good but after some time ebusd publishes global/running with value "false". Afterwards it continues publishing global/uptime and some single variables but doesn't answer to /get requests.
Versions: ebusd 3.2 mosquitto version 1.4.10
I must add, that even when ebusd is not answering /get requests, i can ssh to ebusd, run "ebusctl read value" manually and then the updated value is published to MQTT instantly.
I noticed a weird behaviour in ebusd, if the ebusd daemon goes online sooner than MQTT server (Mosquitto). I've got a script which periodically sends "1" to #/get of all the variables im interested in. Normally this works perfectly fine, ebusd updates all the variables after receiving a message to #/get. But sometimes, if ebusd is switched on before Mosquitto server (it happens quite often after power failures in my setup, as RPi boots faster than a full fledged server), ebusd still speaks with MQTT (sends "uptime" updates, periodically a single variable gets updated), but doesnt react on messages sent to #/get to force variable update.
Im trying to troubleshoot this issue since when i noticed it yesterday, but it's not easy as every try requires "restart" of my whole house.