Add Pico dashboard core state and alarm logic

This commit is contained in:
root
2026-06-03 02:33:32 -06:00
parent 503af6cd8c
commit 0d239361fd
5 changed files with 174 additions and 0 deletions
+35
View File
@@ -0,0 +1,35 @@
STATUS_REQUEST = "status_request"
STATUS_RESPONSE = "status_response"
SET_RELAY = "set_relay"
RELAY_RESPONSE = "relay_response"
ERROR = "error"
VALID_RELAYS = {"starlink", "fridge"}
def make_status_request():
return {"type": STATUS_REQUEST}
def make_set_relay(relay, enabled):
if relay not in VALID_RELAYS:
raise ValueError(f"Invalid relay: {relay}")
return {
"type": SET_RELAY,
"relay": relay,
"enabled": bool(enabled),
}
def is_status_response(message):
return message.get("type") == STATUS_RESPONSE
def is_relay_response(message):
return message.get("type") == RELAY_RESPONSE
def is_error(message):
return message.get("type") == ERROR