From aa730c973819a9a2cb025c2a13b682973b815f72 Mon Sep 17 00:00:00 2001 From: Dreaded_X Date: Sun, 31 Aug 2025 05:38:31 +0200 Subject: [PATCH] Moved darkness debug mqtt message to lua --- automation_devices/src/debug_bridge.rs | 28 ++------------------------ config.lua | 4 ++++ 2 files changed, 6 insertions(+), 26 deletions(-) diff --git a/automation_devices/src/debug_bridge.rs b/automation_devices/src/debug_bridge.rs index 700771d..2c683b1 100644 --- a/automation_devices/src/debug_bridge.rs +++ b/automation_devices/src/debug_bridge.rs @@ -3,8 +3,8 @@ use std::convert::Infallible; use async_trait::async_trait; use automation_lib::config::MqttDeviceConfig; use automation_lib::device::{Device, LuaDeviceCreate}; -use automation_lib::event::{OnDarkness, OnPresence}; -use automation_lib::messages::{DarknessMessage, PresenceMessage}; +use automation_lib::event::OnPresence; +use automation_lib::messages::PresenceMessage; use automation_lib::mqtt::WrappedAsyncClient; use automation_macro::{LuaDevice, LuaDeviceConfig}; use tracing::{trace, warn}; @@ -63,27 +63,3 @@ impl OnPresence for DebugBridge { .ok(); } } - -#[async_trait] -impl OnDarkness for DebugBridge { - async fn on_darkness(&self, dark: bool) { - let message = DarknessMessage::new(dark); - let topic = format!("{}/darkness", self.config.mqtt.topic); - self.config - .client - .publish( - topic, - rumqttc::QoS::AtLeastOnce, - true, - serde_json::to_string(&message).unwrap(), - ) - .await - .map_err(|err| { - warn!( - "Failed to update presence on {}/presence: {err}", - self.config.mqtt.topic - ) - }) - .ok(); - } -} diff --git a/config.lua b/config.lua index 132d3a2..6968e87 100644 --- a/config.lua +++ b/config.lua @@ -129,6 +129,10 @@ automation.device_manager:add(LightSensor.new({ event_channel = automation.device_manager:event_channel(), callback = function(_, light) hue_bridge:set_flag("darkness", not light) + mqtt_client:send_message(mqtt_automation("debug") .. "/darkness", { + state = not light, + updated = automation.util.get_epoch(), + }) end, }))