diff --git a/nspanel-lovelace-ui/rootfs/usr/bin/mqtt-manager/main.py b/nspanel-lovelace-ui/rootfs/usr/bin/mqtt-manager/main.py index 225ab698..e5e1873e 100644 --- a/nspanel-lovelace-ui/rootfs/usr/bin/mqtt-manager/main.py +++ b/nspanel-lovelace-ui/rootfs/usr/bin/mqtt-manager/main.py @@ -31,7 +31,8 @@ def on_connect(client, userdata, flags, rc): client.subscribe("tele/tasmota_nspdev2/RESULT") def on_ha_update(entity_id): - logging.debug(f"{entity_id} updated/state changed") + for panel in panels: + panel.ha_event_callback(entity_id)s def on_message(client, userdata, msg): try: @@ -41,10 +42,8 @@ def on_message(client, userdata, msg): if msg.topic == "tele/tasmota_nspdev2/RESULT": data = json.loads(msg.payload.decode('utf-8')) if "CustomRecv" in data: - # print(data["CustomRecv"]) if parts[1] in panels: - panels[parts[1]].customrecv_event_callback( - data["CustomRecv"]) + panels[parts[1]].customrecv_event_callback(data["CustomRecv"]) else: logging.error( "Got message for unknown panel: %s - %s", parts[1], data["CustomRecv"]) diff --git a/nspanel-lovelace-ui/rootfs/usr/bin/mqtt-manager/panel.py b/nspanel-lovelace-ui/rootfs/usr/bin/mqtt-manager/panel.py index dcf2c5f8..7366dc83 100644 --- a/nspanel-lovelace-ui/rootfs/usr/bin/mqtt-manager/panel.py +++ b/nspanel-lovelace-ui/rootfs/usr/bin/mqtt-manager/panel.py @@ -91,6 +91,11 @@ class LovelaceUIPanel: if iid in self.hidden_cards: return self.hidden_cards[iid] + def on_ha_update(entity_id): + logging.debug(f"{entity_id} updated/state changed") + # TODO: Check if entity is on current card + libs.panel_cmd.entityUpd(self.sendTopic, self.current_card.render()) + def customrecv_event_callback(self, msg): logging.debug("Recv Message from NsPanel: %s", msg) msg = msg.split(",")