From d1d793a600c996d540bfb29f7f16c2f1ab248158 Mon Sep 17 00:00:00 2001 From: dianlight Date: Thu, 11 Jan 2024 00:43:21 +0100 Subject: [PATCH] Correct MQTT for binary functions --- sambanas/rootfs/usr/local/bin/mqtt_daemon.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sambanas/rootfs/usr/local/bin/mqtt_daemon.py b/sambanas/rootfs/usr/local/bin/mqtt_daemon.py index 0219bfe4..8dee8158 100755 --- a/sambanas/rootfs/usr/local/bin/mqtt_daemon.py +++ b/sambanas/rootfs/usr/local/bin/mqtt_daemon.py @@ -376,7 +376,10 @@ async def publish_device_states(): if isinstance(sensor[1],ConfigEntityFromDevice): logging.info("Updating Device sensor %s",sensor[0]) sensor[1].device.update() - sensor[1].sensor.set_state(sensor[1].state_function(sensor[1])) + if isinstance(sensor[1].sensor,BinarySensor): + sensor[1].sensor._update_state(sensor[1].state_function(sensor[1])) + elif isinstance(sensor[1].sensor,Sensor): + sensor[1].sensor.set_state(sensor[1].state_function(sensor[1])) if sensor[1].attributes_function != None: sensor[1].sensor.set_attributes(sensor[1].attributes_function(sensor[1])) await asyncio.sleep(5)