Ich bin gerade am Umstieg von Fibaro HC2 auf HomeAssistant.
Auf meinem bestehenden System läuft ein Cronjob Skript welches jede Minute getriggert wird und danach im Skript zu gewissen Uhrzeiten oder Zuständen (Tag, Nacht, Sonnenaufgang, Sonnenuntergang) gewisse Dinge ausführt.
Macht soetwas im HomeAssistant auch Sinn, oder wie sollte man das hier sinvoll umsetzen zu bestimmten Zeiten bestimmte Dinge durchzuführen?
Hat jemand Tipps oder Impulse zu Videos für mich, die ich mir zu diesem Thema reinziehen sollte?
Bin immer noch dabei alle zeitgesteuerten Dinge ausd meiner Fibaro HC2 in Homeassistant zu übertragen.
Dort lief ein EINZIGES CronJob Skript, wo jeder benötigte Zeitslot eine if then Schleife durchlaufen hat.
Da ich hier noch keine Antworten bekam, hab ich das fürs Erste mal im HomeAssistant nachgebaut und es funktioniert auch grundsätzlich!
Ist aber nicht sehr übersichtlich, wenn so viele Zeitabläufe in EINER Automatisierung sind!
Ich denke gerade nach, welchen besseren Weg es im HA gibt der zuverlässig aber auch übersichlich administrierbar abzubilden wäre.
Nach jetztigem Wissensstand würde ich für jede zeitgesteuerte Aufgabe eine eigene Automatisierung zu dieser entsprechenden Zeit machen.
Oder gibt es andere Lösungen, die eher in Bezug auf das zu steuernde Element mehrere Zeitabläufe abbilden?
Meines Wissen kannst du auch in HA Cronjob ausführen sonst ist das mit den Automatisierungen schon der richtige Weg. Kannst du mal genauer Sagen für was du die Automatisierungen haben möchtest. Dann wird es auch einfacher werden dir zu Antworten.
prüfe zu bestimmten Zeit ob Geräte eingeschaltet sind und aktiviere sie
u.s.w
Was mir aufgefallen ist, dass mein CronJob Skript schön langsam etwas unübersichtlich geworden ist und ich überlege eben die Zeitsteuerungen in Automatisierungen für die Geräte zu übertragen.
Ich weiß schon, dass beide Varianten funktionieren werden, mich hat einfach nur interessiert wie das andere machen, deshalb meine Frage!
Hier mein derzeitiges Testscript, falls Interesse besteht. Noch nicht besonders hübsch, aber funktioniert…
SInd derzeit auch noch Kontrollmails drinnen, damit ich die Funktion prüfen kann, die kommen natürlich dann raus, wenn alles „PROD“ Status hat
alias: "CronJob "
description: Macht alle möglichen Dinge zu bestimmten Urhzeiten!
triggers:
- trigger: time
at: "09:00:00"
id: um 9:00 Uhr
- trigger: time
at: "10:00:00"
id: um 10:00 Uhr
- trigger: time
at: "14:30:00"
id: um 14:30 Uhr
- trigger: time
at: "15:30:00"
id: um 15:30 Uhr
- trigger: time
at: "18:00:00"
id: um 18:00 Uhr
- trigger: sun
event: sunset
offset: 0
id: Sonnenuntergang
- trigger: sun
event: sunrise
offset: 0
id: Sonnenaufgang
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id:
- um 9:00 Uhr
sequence:
- if:
- condition: state
entity_id: switch.loggia_terasse_kuhlschrank_761_761
state: "on"
then:
- action: notify.mobile_app_iphone_Paul
metadata: {}
data:
message: >-
Kühlschrank auf der Loggia ist eingeschaltet, brauchen wir
den noch?
title: Kühlschrank Loggia
- action: notify.send_gmail_paul
metadata: {}
data:
message: >-
Kühlschrank auf der Loggia ist eingeschaltet, brauchen wir
den noch?
title: Kühlschrank Loggia
alias: Wenn kühlschrank Loggia ein -> Email
- if:
- condition: numeric_state
entity_id: sensor.loggia_terasse_aussen_temp_115
above: 25
below: 10
then:
- action: cover.close_cover
metadata: {}
data: {}
target:
entity_id: cover.schlafz_rs_auf_zu_926_926
alias: Wenn >25 und <10 Grad SZ Fenster schliessen
alias: Wenn es 9:00 Uhr ist - Kühlschrank Prüfung & Fenster SZ schliessen
- conditions:
- condition: trigger
id:
- um 10:00 Uhr
sequence:
- action: switch.turn_on
metadata: {}
data: {}
target:
entity_id: switch.vorz_eg_turklingel_189_189
- if:
- condition: state
entity_id: switch.arbeitszimmer_monitore_ein_aus_933
state: "on"
then:
- action: cover.open_cover
metadata: {}
data: {}
target:
entity_id:
- cover.schlafz_rolladen_links_647_647
- cover.schlafz_rolladen_rechts_652_652
alias: Rollos SZ hoch wenn im AZ Betrieb
- conditions:
- condition: trigger
id:
- um 14:30 Uhr
sequence:
- if:
- condition: numeric_state
entity_id: sensor.loggia_terasse_aussen_temp_115
above: 25
then:
- action: cover.close_cover
metadata: {}
data: {}
target:
entity_id: cover.schlafz_rs_auf_zu_926
- action: cover.set_cover_position
metadata: {}
data:
position: 37
target:
entity_id:
- cover.schlafz_rolladen_links_647_647
- cover.schlafz_rolladen_rechts_652_652
alias: Wenn Temperatur über 25 Grad ist
- conditions:
- condition: trigger
id:
- um 15:30 Uhr
alias: Wenn 15:30 Uhr ist, Markise einfahren
sequence:
- action: script.markise_einfahren
metadata: {}
data: {}
- alias: Wenn nicht auf Urlaub sind, dann Rollos hoch
if:
- condition: state
entity_id: input_boolean.status_urlaub
state: "off"
then:
- action: cover.open_cover
metadata: {}
data: {}
target:
entity_id:
- cover.wohnz_rol_terassentur_354
- cover.wohnz_rolladen_fenster_357
- action: notify.send_gmail_paul
metadata: {}
data:
title: "Status: Cronjob Homeassistant"
message: Markise wurde eingefahren
- conditions:
- condition: trigger
id:
- um 18:00 Uhr
- alias: Wenn Temp <18 und >28 ist dann Fenster im SZ zu
condition: numeric_state
entity_id: sensor.loggia_terasse_aussen_temp_115
above: 28
below: 18
sequence:
- action: cover.close_cover
metadata: {}
data: {}
target:
entity_id: cover.schlafz_rs_auf_zu_926_926
- action: notify.send_gmail_paul
metadata: {}
data:
title: Cronjob Homeassistant
message: Es hat über 28 Grad, Fenster im Schlafzimmer geschlossen
- conditions:
- condition: trigger
id:
- Sonnenuntergang
sequence:
- action: script.außenbeleuchtung_ein
metadata: {}
data: {}
- conditions:
- condition: trigger
id:
- Sonnenaufgang
sequence:
- action: script.außenbeleuchtung_aus
metadata: {}
data: {}
mode: single
Hallo,
ich halte es wie maxe. Aber es spricht nichts dagegen so wie du es machst. Dann möchte ich dir auch empfehlen den Modus auf Warteschlange oder parallel zu stellen denn der Sonnenaufgang könnte auch um 9:00 Uhr oder der Sonnenuntergang um 18: Uhr sein.
Vielen Dank für eure Infos!
Dann werde mich auch danach richten, das eher „Projektbezogen“ zu machen, denn wie „unübersichtlich“ geht, hab ich schon rausgefunden
Danke @rstuck auch für den Tipp mit Paralell oder Warteschlange, super Idee das zu berücksichtigen!
Dazu hab ich auch ein Video von Thomas gefunden, falls das wer genauer nachlesen möchte…