In deinem Smart Home sind Automationen der Schlüssel zu einem intelligenten und reibungslosen Ablauf. Doch was passiert, wenn bestimmte Aktionen nur an Werktagen, zu einer bestimmten Jahreszeit oder während eines Kalendereintrags stattfinden sollen? Genau hier kommen smarte Zeitbedingungen in Home Assistant ins Spiel!
In diesem Blogbeitrag zeige ich dir, wie du Zeitbedingungen optimal in deinen Automationen einsetzt, um noch spezifischere und intelligentere Abläufe zu erstellen. Egal, ob es um Feiertage, die Adventszeit oder deinen Urlaubszeitraum geht – ich erkläre dir Schritt für Schritt, wie du Home Assistant dafür nutzen kannst.
1. Werktage abfragen: Die Werktag-Integration
Mit der Werktag-Integration kannst du in deinen Automationen zwischen Feiertagen / Wochenenden und Werktagen unterscheiden. Diese Integration ist konfigurierbar für dein Bundesland und bietet dir die Möglichkeit, deine Automationen präzise an deinen Alltag anzupassen.
Beispiel:
- Deine smarte Kaffeemaschine startet nur an Werktagen automatisch. 😉
- Die Beleuchtung im Garten wird angeschaltet, da du am Wocheende zu Hause bist.
Die Webseite zur Konfiguration des richtigen Bundeslandes: https://pypi.org/project/holidays/
2. Automationen nach Jahreszeiten gestalten
Die Jahreszeit spielt in vielen Automationen eine wichtige Rolle. Mit der Integration Jahreszeit kannst du abfragen, ob wir uns gerade im Frühling, Sommer, Herbst oder Winter befinden. So kannst du deine Abläufe ideal an die saisonalen Gegebenheiten anpassen.
Beispiele:
- Im Winter wird die Heizung automatisch hochgefahren, wenn die Außentemperatur sinkt.
- Im Sommer schließt sich die Markise automatisch bei starker Sonneneinstrahlung.
3. Den aktuellen Monat berücksichtigen
Neben der Jahreszeit ist auch der Monat eine wichtige Bedingung für spezifische Automationen. Diese Funktion ermöglicht dir, Aktionen auf bestimmte Monate zu begrenzen, ohne dabei zusätzliche Datenquellen einrichten zu müssen.
Beispiele:
- Die Gartenbewässerung wird nur von Mai bis September aktiviert.
- Karnevals-Dekorationslicht wird automatisch im Feburar eingeschaltet.
4. Adventsbedingungen: Smarte Automationen in der Vorweihnachtszeit
Ein echtes Highlight: die Abfrage der Adventszeit! Gerade in der Vorweihnachtszeit kannst du dein Zuhause noch festlicher und smarter gestalten.
Beispiele:
- Die Weihnachtsbeleuchtung schaltet sich automatisch ein, wenn es dunkel wird.
- Ein adventliches Playlist-Setup startet im Hintergrund, sobald ein bestimmtes Datum erreicht ist.
5. Kalendereinträge in Automationen nutzen
Manchmal möchtest du Automationen an persönliche Termine koppeln – beispielsweise an deinen Urlaub oder besondere Ereignisse. Mit der Nutzung von Kalendereinträgen und einem passenden Helfer (+Helfer-Automatisierung) in Home Assistant kannst du genau das tun!
Beispiele:
- Während deines Urlaubs wird die Beleuchtung simuliert, um Anwesenheit vorzutäuschen.
- Ein „Nicht stören“-Modus wird während eines wichtigen Meetings aktiviert.
Hier noch ein paar Code-Schnipsel und Erklärungen
Aventszeit-Helfer Erklärung
{% set today = now() %} {#'today' wird mit dem aktuellem Datum definiert #}
{% set first_advent = today.replace(day=25, month=12) {#von dem festen Wert 25.12 (als Datum)#}
- timedelta(days=21 + today.replace(day=25, month=12).isoweekday()) %} {#werden 21 Tage + der Tagwert vom 25.12 abgezogen (Montag=1, Dienstag=2..) #}
{% set ende1 = today.replace(day=31, month=12) %} {#Definiert den 31. Dezember#}
{% set ende2 = today.replace(day=6, month=1) %} {#Definiert den 6. Januar#}
{{ first_advent <= today <= ende1 or today <= ende2 }} {#wenn der aktuelle Tag zw. dem ermittelten Datum und Endedatum1 ist oder kleiner kleiner als Endedatum2 ist, ist die Bedingung wahr #}
und als Copy & Paste für Home Assistant
{% set today = now() %}
{% set first_advent = today.replace(day=25, month=12) - timedelta(days=21 + today.replace(day=25, month=12).isoweekday()) %}{% set ende = today.replace(day=31, month=12)%}{% set ende2 = today.replace(day=6, month=1)%}
{{ first_advent <= today <= ende or today <= ende2}}
Helper-Automation als YAML:
alias: Urlaubs-Helper einschalten
description: ""
triggers:
- trigger: calendar
entity_id: calendar.urlaub
event: start
offset: "0:0:0"
id: urlaub-an
alias: Kalendereintrag Urlaub startet [urlaub-an]
- trigger: calendar
entity_id: calendar.urlaub
event: end
offset: "0:0:0"
id: urlaub-aus
alias: Kalendereintrag Urlaub ended [urlaub-aus]
conditions:
- condition: state
entity_id: calendar.urlaub
attribute: message
state: Urlaub
alias: Wenn Kalendereintrag 'Urlaub' lautet
actions:
- choose:
- conditions:
- condition: trigger
id:
- urlaub-an
sequence:
- action: input_boolean.turn_on
metadata: {}
data: {}
target:
entity_id: input_boolean.tristan_urlaub
alias: Helfer 'Tristan Urlaub' einschalten
alias: "Urlaub an: Helfer einschalten"
- conditions:
- condition: trigger
id:
- urlaub-aus
sequence:
- action: input_boolean.turn_off
target:
entity_id:
- input_boolean.tristan_urlaub
data: {}
alias: Helfer 'Tristan Urlaub' ausschalten
alias: "Urlaub aus: Helfer ausschalten"
mode: single
Dieim Video gezeigte Automation als YAML
alias: Tagabhängige Beleuchtung
description: ""
triggers:
- trigger: sun
event: sunset
offset: "-00:30:00"
alias: es 30min vor Sonnenuntergang ist
conditions:
- condition: state
entity_id: binary_sensor.workday_sensor
state: "on"
alias: es ein Arbeitstag ist
- condition: state
entity_id: sensor.season
state: autumn
alias: es Herbst ist
- condition: state
entity_id: input_boolean.tristan_urlaub
state: "on"
alias: Tristan im Urlaub ist
- alias: es Dezember oder Januar ist
condition: template
value_template: "{{ now().month in [12,1] }}"
- alias: es Adventszeit ist
condition: state
entity_id: binary_sensor.adventszeit
state: "on"
actions:
- action: light.turn_on
metadata: {}
data: {}
target:
entity_id: light.wz_stripe
alias: schalte WZ Stripe ein
mode: single
Schreibe einen Kommentar