docs: FR-015 + FR-016 konkretisiert und korrekt geordnet (v1.6.0)

This commit is contained in:
MaPaLo76 2026-03-07 13:10:15 +01:00
parent cae46f036e
commit e6ad5363ea

View File

@ -19,12 +19,31 @@ Status: `[ ]` = offen · `[x]` = erledigt
## Offen
*(keine offenen Punkte)*
### Version 1.6.0
- [ ] **FR-015** Feature: Sofortiger MQTT-Status-Publish nach jeder Statusänderung
- **Motivation**: HA zeigt aktuell veraltete Werte bis zum nächsten Heartbeat (60s). Änderungen durch Webinterface, MQTT-CMD oder lokale Buttons sollen sofort in HA sichtbar sein.
- **Auslöser für sofortigen Publish**:
- Display-Toggle (Web `/display-toggle` + MQTT CMD `{"display":...}`)
- Session-Reset (Web `/reset` + MQTT CMD `{"reset_session_ram":true}`)
- Reboot-CMD (MQTT CMD `{"reboot":true}`) — vor dem Neustart
- **Mechanismus**: Nach jeder der o.g. Aktionen wird `publishHeartbeat()` sofort aufgerufen (zusätzlich zum 60s-Timer)
- **Betroffene Dateien**: `src/web_server.cpp`, `src/mqtt_client.cpp`
- Commit: `TODO`
- Version: 1.6.0
- [ ] **FR-016** Feature: Webinterface Live-Aktualisierung ohne Neuladen (SSE oder Polling)
- **Motivation**: Nach einer Aktion im Webinterface (z.B. Display-Toggle, Session-Reset) bleibt die Statusseite veraltet bis der Nutzer manuell neu lädt. Die Seite soll sich automatisch aktualisieren.
- **Mechanismus**: Server-Sent Events (SSE) — ESP32 sendet bei Statusänderungen ein Event an alle offenen Browser-Verbindungen; die Seite aktualisiert daraufhin den Status-Bereich via JavaScript ohne vollständigen Reload. Alternativ: kurzes Polling-Intervall (z.B. alle 5s) als einfachere Fallback-Lösung.
- **Betroffene Dateien**: `src/web_server.cpp` (SSE-Endpoint + Event-Publisher), HTML/JS in `buildStatusPage()`
- Commit: `TODO`
- Version: 1.6.0
---
## Erledigt
### Version 1.5.2
- [x] **FR-014** Bug: Display Störung bei Relais Umschaltung ✅