diff --git a/central_backend/src/server/unsecure_server/unsecure_relay_controller.rs b/central_backend/src/server/unsecure_server/unsecure_relay_controller.rs index e479a46..51e762d 100644 --- a/central_backend/src/server/unsecure_server/unsecure_relay_controller.rs +++ b/central_backend/src/server/unsecure_server/unsecure_relay_controller.rs @@ -79,7 +79,7 @@ pub struct FullRelayState { /// Required uptime during a day (in seconds) daily_requirement: Option, /// Forced relay state - relay_forced_state: RelayForcedState, + forced_state: RelayForcedState, } #[derive(serde::Serialize)] @@ -117,6 +117,8 @@ pub async fn relays_full_state(energy_actor: WebEnergyActor) -> HttpResult { .expect("All relay shall have an associated device!"); let device_state = devices_state.iter().find(|s| s.id == device.id); let relay_state = relays_state.iter().find(|s| s.id == r.id); + let total_uptime = relay_state_history::relay_total_runtime_adjusted(&r); + FullRelayState { enabled: r.enabled && device.enabled, online: device_state.map(|d| d.online).unwrap_or(false), @@ -124,9 +126,9 @@ pub async fn relays_full_state(energy_actor: WebEnergyActor) -> HttpResult { name: r.name, priority: r.priority, r#for: relay_state.map(|s| s.r#for).unwrap_or(0), - total_uptime: 0, + total_uptime, daily_requirement: r.daily_runtime.map(|r| r.min_runtime), - relay_forced_state: relay_state + forced_state: relay_state .map(|s| s.forced_state.clone()) .unwrap_or_default(), }