feat(ao-vivo): indicador ao vivo do sensor PIR

Cada disparo do PIR vira um evento SSE 'pir' (mesmo dentro do intervalo do
historico) e o painel mostra 'presenca agora' por 8 s em Ao vivo e no
Historico; /estado inclui o estado do PIR.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
julio
2026-10-06 03:47:11 -03:00
co-authored by Claude Opus 5.5
parent 4b9e805801
commit 6029c79645
7 changed files with 70 additions and 4 deletions
+2
View File
@@ -260,6 +260,8 @@ class Handler(SimpleHTTPRequestHandler):
dados["treinamento"] = dict(ocupado=s.treinamento.busy, erro=s.treinamento.erro)
if hasattr(s, "api_config"):
dados["api"] = s.api_config.status()
if hasattr(s, "historico"):
dados["pir"] = dict(s.historico.pir)
return dados
def do_GET(self):