Added dedicated light device and updated hallway logic

This commit is contained in:
2024-12-08 05:34:51 +01:00
parent 8c9e93dcc4
commit e4c211a278
7 changed files with 389 additions and 40 deletions

View File

@@ -1,3 +1,4 @@
pub mod serialization;
mod timeout;
pub use timeout::Timeout;

View File

@@ -0,0 +1,16 @@
use serde::de::{self, Unexpected};
use serde::{Deserialize, Deserializer};
pub fn state_deserializer<'de, D>(deserializer: D) -> Result<bool, D::Error>
where
D: Deserializer<'de>,
{
match String::deserialize(deserializer)?.as_ref() {
"ON" => Ok(true),
"OFF" => Ok(false),
other => Err(de::Error::invalid_value(
Unexpected::Str(other),
&"Value expected was either ON or OFF",
)),
}
}