use chrono::NaiveDateTime; use serde::{Deserialize, Serialize}; #[derive(Deserialize, Debug, Serialize)] pub struct TelemetryMessage { pub uptime: i32, pub voltage: Option, pub temperature: Option, pub software_version: i32, pub timestamp: NaiveDateTime, } #[derive(Deserialize, Debug, Serialize)] pub struct TelemetryMessageFromDevice { pub uptime: i32, pub voltage: Option, pub temperature: Option, pub software_version: i32, } #[derive(Deserialize, Debug, Serialize)] pub struct ValueMessageFromDevice { pub value: f64, pub value_id: i32, pub active_errors: i32, } #[derive(Deserialize, Debug, Serialize)] pub struct ValueMessage { pub value: f64, pub value_id: i32, pub timestamp: NaiveDateTime, }