diff --git a/server/src/services/batteryManager.js b/server/src/services/batteryManager.js index d3606b5d..512c3ffc 100644 --- a/server/src/services/batteryManager.js +++ b/server/src/services/batteryManager.js @@ -172,4 +172,16 @@ function handleSensorEvent({ roverId, sensors, batteryState }) { } } +function handleLockEvent({ roverId, locked, reason }) { + const state = getState(roverId); + if (!state) return; + if (!locked) { + state.batteryLocked = false; + state.waitingSince = null; + return; + } + state.batteryLocked = reason === 'battery'; +} + managerEvents.on('sensor', handleSensorEvent); +managerEvents.on('lock', handleLockEvent);