Home Assistant ist für viele das Herzstück ihres Smart Homes. Doch mit zunehmender Anzahl von Geräten und Automationen kann die Verwaltung schnell unübersichtlich werden. Hier kommt die Nutzung von Tags ins Spiel. Ein perfektes Beispiel dafür ist die untenstehende Energy Save Automation, die zeigt, wie leistungsfähig und flexibel Tags sein können.

TL;DR: Tags in Home Assistant ermöglichen dynamisches Gruppieren von Geräten. Statt statische Listen zu pflegen, erkennen Automationen getaggte Entitäten automatisch – skalierbar und wartungsarm.

Warum Tags in Home Assistant verwenden? 🔖

Tags ermöglichen es, Geräte und Entitäten logisch zu gruppieren, ohne starren Namenskonventionen zu folgen. Statt manuell Listen zu pflegen oder Geräte einzeln anzusprechen, können Automationen dynamisch auf Basis von Tags arbeiten.

Vorteile auf einen Blick

  1. Flexibilität: Geräte können schnell neuen Gruppen hinzugefügt oder entfernt werden.
  2. Skalierbarkeit: Egal, ob Du 5 oder 50 Geräte hast, Tags machen das Management effizient.
  3. Wartungsarm: Automationen passen sich automatisch an, wenn Geräte mit passenden Tags hinzugefügt oder entfernt werden.
  4. Klarheit: Tags schaffen eine klare Trennung zwischen Logik (Automationen) und Gerätedefinition.

Beispiel: Die Energy Save Automation 🍃

Hier ist ein Beispiel für eine Automation, die alle Geräte mit dem Tag energysave basierend auf festen Zeiten oder Anwesenheit ein- und ausschaltet:

alias: 🍃 Energy Save Automation
description: >-
  Turns on or off all Energy Save entities at a specified time or based on
  presence
triggers:
  - at: "07:00:00"
    id: time_turn_on
    trigger: time
  - at: "01:30:00"
    id: time_turn_off
    trigger: time
  - entity_id: binary_sensor.family_presence
    to: "on"
    id: presence_turn_on
    trigger: state
    enabled: false
  - entity_id: binary_sensor.family_presence
    to: "off"
    id: presence_turn_off
    trigger: state
    enabled: false
conditions: []
actions:
  - data:
      entity_id: >
        {{ label_entities('energysave') | select('has_value') | list | join(",
        ") }}
    action: switch.{{ 'turn_on' if 'turn_on' in trigger.id else 'turn_off' }}
  - data_template:
      title: |
        {% if 'turn_on' in trigger.id %}
          Energiesparmodus deaktiviert 🍃
        {% else %}
          Energiesparmodus aktiviert 🌙
        {% endif %}
      message: >
        Geräte {{ label_entities('energysave') | select('has_value') |
        map('state_attr', 'friendly_name') | map('replace', 'Outlet', '') |
        map('trim') | sort | list | join(", ") }} wurden {{ 'eingeschaltet' if
        'turn_on' in trigger.id else 'ausgeschaltet' }}.
    action: notify.notify
mode: single

Was macht diese Automation besonders?

  1. Dynamik durch Tags: Statt Geräte manuell in einer Liste zu pflegen, werden alle Entitäten mit dem Tag energysave automatisch berücksichtigt.
  2. Verschiedene Trigger: Die Automation kann durch feste Zeiten oder Änderungen in der Anwesenheit ausgelöst werden.
  3. Benachrichtigungen: Du wirst über den aktuellen Status Deiner Geräte informiert, was für Transparenz sorgt.

Wie diese Automation mit Tags arbeitet

Das Jinja2-Template label_entities('energysave') filtert alle Geräte, die mit dem Tag energysave versehen sind. Dies ermöglicht eine maximale Flexibilität: Wenn Du ein neues Gerät hinzufügst, reicht es, dieses mit dem Tag zu versehen. Die Automation erkennt es sofort.

Home Assistant mit WebHooks automatisieren
Automationen in Home Assistant durch externe Systeme feuern 🚀 Ich zeig dir wie es geht!

Vorteile gegenüber klassischer Geräteverwaltung 🛠️

Ohne Tags müsstest Du eine feste Liste von Geräten manuell verwalten, wie:

entity_id:
  - switch.outlet1
  - switch.outlet2

Das Problem? Die Liste wird schnell unübersichtlich und erfordert ständige Anpassung bei Änderungen. Mit Tags entfällt dieser Aufwand komplett.

Warum das effizienter ist

  • Kein Code-Duplikat: Tags abstrahieren die Geräteverwaltung, wodurch Automationen übersichtlich bleiben.
  • Fehlerreduktion: Keine Gefahr, ein Gerät zu vergessen oder doppelt einzutragen.
  • Zeitersparnis: Änderungen an Geräten benötigen keinen Zugriff auf die Automation.
Heizungen automatisiert ein- und ausschalten
Du willst deine Heizungsthermostate automatisiert steuern über Tür und Fensterkontakte in Home Assistant? Ich zeig dir wie es geht 🎉

Wie implementierst Du Tags in Home Assistant? 🛠️

Tags definieren

Tags können über custom_labels oder Integrationen wie entity_registry definiert werden. Beispiel:

switch.outlet1:
  custom_labels:
    - energysave

Dynamische Nutzung in Automationen

Das Template label_entities('energysave') filtert alle Geräte mit dem Tag. Du kannst diesen Ansatz leicht erweitern, um Gruppen wie heating oder lighting zu erstellen.

Automationen anpassen

Nutze dynamische Listen und Aktionen wie in der Energy Save Automation, um Deine Automationen flexibel zu gestalten.

Frost-Warnung mit Home Assistant 🥶
Du hast einen Garten und möchtest benachrichtigt werden, wenn der Winter kommt? Ich zeig dir wie einfach es geht 🏡
Nicht smarte Geräte überwachen 💡
Wie du relativ simpel normale Geräte smart machen kannst, zeige ich dir in dem Artikel ☝️

Fazit 🌱

Tags sind ein mächtiges Werkzeug, um Home Assistant effizienter und zukunftssicherer zu gestalten. Die Energy Save Automation ist ein Paradebeispiel dafür, wie Du mit minimalem Aufwand maximale Flexibilität und Übersicht erreichst. Ob Du Geräte gruppieren, Automationen optimieren oder einfach nur Ordnung schaffen möchtest – Tags sind der Schlüssel zu einem smarteren Smart Home.

Nutze Tags in Deinen Projekten und erlebe, wie einfach und effizient Smart Home sein kann!

Artikel teilen:Share article: