Der Kontext
Hinweis: Das war das Letzte, was ich gemacht habe, danach lasse ich Sie in Ruhe, entschuldigen Sie den Flood der letzten Tage. Aber ich wollte diese Smart-Home-Migration abschließen, denn danach werde ich keine Zeit mehr haben, mich darum zu kümmern.
Bei der Migration von Home Assistant zu Gladys war eine meiner größten Herausforderungen die Steuerung der Lichtstimmungen. Ich habe 22 Lampen auf 4 verschiedenen Protokollen (Philips Hue, Z-Wave, MQTT, Tuya) und wollte Stimmungen, die sich dem Tageszeit und dem Wetter anpassen.
Die Gladys-Szenen ermöglichen die Steuerung der Lampen, aber sobald man Varianten verwalten möchte (wärmere Farben, wenn es grau ist, unterschiedliche Stimmungen Tag/Nacht), wird es schnell komplex mit vielen zu pflegenden Szenen.
Ich habe daher einen Szenen-Manager erstellt: einen leichten Docker-Container (~25 MB RAM) mit einer Weboberfläche, der:
-
Erfasst den Zustand Ihrer Lampen mit einem Klick — alle Protokolle über die Gladys-API
-
Speichert Presets mit adaptiven Varianten (Tag/Nacht, Wetter)
-
Wendet die richtige Variante automatisch an, wenn eine Gladys-Szene sie aufruft
Wie es funktioniert
Gladys-Szene (Trigger: Uhrzeit, Anwesenheit, Schalter, etc.)
└→ Aktion "HTTP-Anfrage": POST http://localhost:8890/scenes/soiree-chambre/apply
└→ Szenen-Manager
├─ Prüfen: Tag oder Nacht? (lokale Berechnung)
├─ Prüfen: Klar oder bewölkt? (OpenWeatherMap, Cache 10 min)
└─ Wendet die richtige Variante über die Gladys-API an
Der Schlüssel: Der Szenen-Manager kennt kein Protokoll. Er nutzt die Gladys-API (POST /api/v1/device_feature/{selector}/value). Wenn Gladys Ihre Lampe steuert, steuert der Szenen-Manager sie auch.
Trennung der Verantwortlichkeiten: Gladys entscheidet wann, der Szenen-Manager entscheidet wie.
Getestete Protokolle
| Protokoll | Status |
|---|---|
| Philips Hue | OK (ein/aus, Helligkeit, Farbe, Temperatur) |
| Z-Wave (Fibaro Dimmer) | OK (Dimmer 0-99) |
| MQTT custom | OK (ein/aus, Helligkeit, Farbe) |
| Tuya | OK (ein/aus) |
Performance
| Operation | Zeit |
|---|---|
| Erfassen von 20 Geräten | ~80 ms |
| Anwenden von 6 Hue parallel | ~70 ms |
Vernachlässigbar — es ist der gleiche Codepfad wie bei den nativen Gladys-Szenen.
Installation und Dokumentation
Alles ist auf GitHub mit der vollständigen README, Installationsanweisungen, API-Referenz und Screenshots.
GitHub — gladys-scenes-manager
Zusammengefasst:
-
Repo klonen
-
docker build -t scenes-manager . -
docker runmit Ihrempresets.json(Gladys-API-Schlüssel + GPS-Koordinaten) -
http://IHRE_IP:8890öffnen -
Ihre Stimmungen erfassen und über « HTTP-Anfrage » von Gladys-Szenen aus aufrufen
Stack
-
Node.js 22 Alpine, 2 Abhängigkeiten (mqtt.js, suncalc)
-
Frontend vanilla (HTML/CSS/JS), Dark-Theme inspiriert von Gladys
-
Kein Framework, keine Datenbank — eine JSON-Datei



