Abschaltung von Geräten über Helfergruppen in Home Assistant
Einleitung
Die Automatisierung von Smart-Home-Geräten ist ein zentraler Aspekt für die Benutzerfreundlichkeit und Effizienz von Smart-Home-Systemen. Insbesondere das Ausschalten von Geräten beim Verlassen des Hauses kann den Energieverbrauch optimieren und die Sicherheit erhöhen. In diesem Artikel wird erläutert, wie Du Geräte mit einem bestimmten Label in Home Assistant effizient ausschalten kannst.
Problem
Ein Benutzer möchte alle Geräte, die mit dem Label „AUS“ versehen sind, beim Verlassen des Hauses automatisch ausschalten. Trotz der Verwendung von Gruppenhelfern und Skripten konnte er keine elegante Lösung finden, die alle gewünschten Geräte gleichzeitig steuert. Die Herausforderung besteht darin, dass die Standardgruppen in Home Assistant nicht alle Gerätetypen (wie Lichter und Steckdosen) gemeinsam steuern können.
Lösung
Eine effektive Lösung besteht darin, den Template-Editor in Home Assistant zu nutzen, um die Entitäten mit dem gewünschten Label zu identifizieren und anschließend auszuschalten. Mit der Funktion intersect
kannst Du die Entitäten, die sich in einem bestimmten Raum befinden und das Label „AUS“ tragen, ermitteln.
Hier ist ein Beispiel, wie Du dies im Template-Editor testen kannst:
"{{ intersect(area_entities('arbeitszimmer'), label_entities('aus')) }}"
Diese Zeile gibt eine Liste der Entitäten zurück, die sich im „Arbeitszimmer“ befinden und das Label „AUS“ haben. Du kannst diese Liste dann verwenden, um die entsprechenden Geräte auszuschalten.
Schritte zur Umsetzung
1. Öffne den Template-Editor in Home Assistant.
2. Füge den oben genannten Code ein, um die Entitäten mit dem Label „AUS“ im gewünschten Raum zu ermitteln.
3. Erstelle ein Skript oder eine Automatisierung, die die zurückgegebene Liste verwendet, um die Geräte auszuschalten. Beispiel:
alias: Ausschalten aller Geräte im Arbeitszimmer
sequence:
- service: light.turn_off
target:
entity_id: "{{ intersect(area_entities('arbeitszimmer'), label_entities('aus')) }}"
description: Schaltet alle Geräte im Arbeitszimmer aus
icon: mdi:lightbulb-group-off
Hintergrundwissen
Home Assistant verwendet Labels, um Entitäten zu kategorisieren. Diese Labels können in Automatisierungen und Skripten verwendet werden, um gezielt Geräte zu steuern. Die Funktion area_entities
gibt alle Entitäten in einem bestimmten Raum zurück, während label_entities
alle Entitäten mit einem bestimmten Label zurückgibt. Die Kombination dieser Funktionen ermöglicht eine flexible und dynamische Steuerung von Geräten.
Zusätzliche Infos
Funktion | Beschreibung |
---|---|
`area_entities(area)` | Gibt alle Entitäten in einem bestimmten Raum zurück. |
`label_entities(label)` | Gibt alle Entitäten mit einem bestimmten Label zurück. |
`intersect(list1, list2)` | Gibt die Schnittmenge von zwei Listen zurück. |
Hinweise & Best Practices
- Stelle sicher, dass alle relevanten Entitäten korrekt mit dem Label „AUS“ versehen sind, um sicherzustellen, dass sie in der Automatisierung berücksichtigt werden.
- Teste die Automatisierung gründlich, um sicherzustellen, dass alle Geräte wie gewünscht reagieren.
- Berücksichtige die Möglichkeit, Benachrichtigungen zu integrieren, die Dich informieren, wenn Geräte nicht erfolgreich ausgeschaltet werden konnten.
- Halte Deine Skripte und Automatisierungen modular, um die Wartung zu erleichtern, insbesondere wenn Du neue Geräte hinzufügst.