bunch of bugs

This commit is contained in:
2026-08-26 18:17:03 +02:00
parent c5b598b522
commit 1e73476830
7 changed files with 77 additions and 9 deletions
+13
View File
@@ -137,6 +137,7 @@ class ArrivalMonitor:
]
def _process_states(self, states: dict[str, bool]) -> None:
arrivals: list[dict] = []
for device in self.devices:
present = states[device["mac"]]
LOG.debug(
@@ -154,6 +155,8 @@ class ArrivalMonitor:
}
_record_event(self.config, event, device["mac"])
self.on_event(event)
if transition == "arrived":
arrivals.append(device)
known_states = [detector.state for detector in self.detectors.values()]
if all(state is not None for state in known_states):
@@ -167,6 +170,16 @@ class ArrivalMonitor:
}
_record_event(self.config, event)
self.on_event(event)
elif self._house_occupied is False and occupied:
first = arrivals[0]
event = {
"sender": "_arrival_detection",
"event": "first_arrival",
"id": first["id"],
"text": "",
}
_record_event(self.config, event, first["mac"])
self.on_event(event)
self._house_occupied = occupied
def _run(self) -> None:
+3 -2
View File
@@ -2,7 +2,7 @@
import logging
from datetime import datetime, timezone
from pprint import pprint
import requests
@@ -62,7 +62,7 @@ def on_event(config: dict, message: dict) -> None:
timestamp = datetime.now(timezone.utc).isoformat()
values = {**message, "datetime": timestamp}
messages = config.get("messages", {})
template = messages.get(
template = config.get(
message["event"],
config.get("message", "{datetime} {sender}: {event} ({id})"),
)
@@ -71,6 +71,7 @@ def on_event(config: dict, message: dict) -> None:
"datetime": timestamp,
"text": message.get("text") or str(template).format(**values),
}
pprint(payload)
send_event(
payload,
event_url=str(config.get("event_url", "")),