🏠 Prožívání · Dashboard

Tři obrazovky, jeden systém

Sdílená architektura, různá rozlišení. Každá varianta optimalizovaná pro jiný fyzický kontext — od kiosku v předsíni po pracovní monitor.

Co dashboard ukazuje

Zónové dlaždice — každá místnost má kartu se stavy zařízení, teplotou, světlem.
Audio mix — co hraje, kde, kdo má prioritu (rádio / TTS / scéna).
Health score — 0–100, viditelný v reálném čase, klesá při problémech.
Brain panel — výsledky denní Gemini analýzy + alerty.
TV remote overlay — full controls (D-pad, numpad, Home/Back, kanály, hlasitost).
Pomodoro timer — pracovna, 25/5 cykly s TTS oznámeními.
Sparkline grafy — spotřeba lednice, trouby, mikrovlnky (120 vzorků).
Weather — počasí + 6h forecast z yr.no (Homey Weather Forecast app, lokalita Semily).

Screenshoty výše jsou reálné záběry z dashboardu v provozu — stejné HTML/CSS/JS, různé viewporty. Live verze běží lokálně přes Homey REST API a není přístupná zvenčí — to je záměr.

Phase E cache fallback — kiosek 14.5.2026

Od 14. května má RPi kiosek (1024×600 v předsíni) chytřejší způsob, jak data získávat. Místo přímého polování Homey REST teď používá třístupňový fallback chain:

  1. Cache JSON na RPi/HAOS — Python service na HAOS každou minutu přepíše čerstvý /local/smart-home/dashboard-data.json z Homey, kiosek si ho po LAN proxy přečte za pár milisekund.
  2. Přímé Homey REST — pokud cache selže, fallback na klasické volání /api/manager/logic/variable, zachová původní funkčnost.
  3. localStorage last-good — pokud i Homey nedostupný, kiosek ukáže poslední úspěšně načtená data + viditelně oznámí, že jsou stará.

V pravém horním rohu kiosku se objevil malý badge v jedné z pěti barev:

  • ● CACHE — data čerstvá, vše OK
  • ◐ CACHE OLD — data starší než 5 minut, ale funkční
  • ○ HOMEY — cache selhal, čte se přímo z Homey
  • ○ LOCAL — i Homey nedostupný, ukazují se uložené hodnoty
  • ✕ ERR — všechny tři vrstvy selhaly

Pro uživatele to znamená jediné: dashboard se nikdy nezasekne na blank screen, ani když Homey má rušnou chvíli. A pokud něco není v pořádku, badge to řekne nahlas.

Stránky dashboardu

Co vidíš na jednotlivých záložkách

Záběry z 1920×1080 verze (notebook). Master 2880 a RPi varianty mají stejný obsah, jen jiný layout.

Heating page — main view s zónami a master kotlem
🔥 Heating Master toggle, 4 zóny (jídelna, ložnice, koupelna, toaleta), runtime + kWh dnes, schedule preview.
Heating page — quick actions, scenes a config
🔥 Heating · scény Doma / Odjíždím / Boost 30 min / Noc / Vše OFF. Plus sanity check panel a config sekce.
Audio page — speakers, TTS, briefing, radio
🔊 Audio 3 speakers + Nest Hub Max, aktuální mode (TTS / radio / scene), volume controls, briefing replay.
AI Brain page — coordinator levels, validator status
🧠 AI Brain Brain Guardian status (OK / warning), AI coordinator level, validator invariants check, Gemini briefing log.
Weather page — 3-day forecast, PM2.5, vlhkost
🌤 Weather YR.no (Semily) — aktuální teplota + pocitově + 6h min/max, popis česky, vítr, vlhkost, tlak, déšť 1h/6h, sunrise/sunset, UV, oblačnost.
Camera page — live feed nebo placeholder
📷 Camera Stránka pro budoucí venkovní kameru (zatím placeholder). Frigate / HA integration plánovaná.
Zones page — všech 11 zón se stavy
🏠 Zones Přehled 11 funkčních zón se stavy zařízení, teploty, světla, presence detection.
Settings page — config promenných
⚙ Settings Config proměnné (sh_cfg_*), thresholds, intervaly, AI toggles. Editovatelné z dashboardu.
Logy — živý stream událostí z lokálního SSD loggingu
📜 Logy Dashboard logů — události systému ukládané lokálně do JSONL a SQLite, filtry per script / zone / event type.
Burza page — BTC / akcie pro briefing
📈 Burza BTC kurz + sledované akcie. Data zdroj pro ranní briefing fáze 2 (zmínka v TTS).
Finance page — útrata, kategorie
💰 Finance Měsíční přehled útrat z bankovních dat. Read-only zobrazení (data sync z C:\finance\).
Historie page — daily timeline
📅 Historie Denní timeline klíčových eventů (alarm, briefing, motion peaks, kotel cykly).
Advanced page — power user controls
🔧 Advanced Power-user controls — manual overrides, brain reset, var dumps, REST API explorer.