Automationsauslöser Abwesenheit und Sonnenuntergang kreuz und quer

Moin Community,

ich habe mal wieder einen Denkfehler in einer Automation.

Ich möchte, dass eine Lichtsimulation durchgeführt wird, wenn es A) nach Sonnenuntergang ist und B) wenn niemand Zuhause ist.
Sprich, kann es sein, dass niemand Zuhause ist, wenn der Sonnenuntergang bereits erfolgt. Genauso kann es sein, das niemand Zuhause ist, wenn die Sonne noch nicht untergegangen ist.

Also habe ich:
Auslöser: Ist jemand zuhause = off
Auslöser: Nach Sonnenuntergang

Bedingung: /

Aktion: Warten auf Auslöser = Sonnenuntergang - dann führe Aktionen parallel aus

Das warten auf Auslöser habe ich eingebaut, weil der Auslöser “Ist jemand Zuhause” auch morgens stattfindet. Dann soll natürlich noch nicht die Automation durchlaufen werden.
Wenn ich z.B. um 10 Uhr niemand mehr zuhause ist, würde die Automation warten, bis der Sonnenuntergang eintritt.
Gibt es irgendwie einen besseren, smootheren Auslöser, Bedingung oder Aktion, die das “runder” machen würde. Da habe ich gerade ein Denkfehler/Denkblockade.

triggers:
  - trigger: state
    entity_id:
      - binary_sensor.ist_jemand_zuhause
    to: "off"
    for:
      hours: 0
      minutes: 9
      seconds: 0
  - trigger: sun
    event: sunset
    offset: "+00:45:00"
    enabled: false
actions:
  - wait_for_trigger:
      - trigger: sun
        event: sunset
        offset: "+00:45:00"
    continue_on_timeout: false

Ich würde bei den TRIGGERN mit namentlichen IDs arbeiten → drei Punkte TRIGGER ID und bei den Aktionen mit Auswahl (Optionen). Dann kannst du je nach Trigger eine Option mit einem Ablauf anwählen und dort auch Bedingungen setzen.

1 „Gefällt mir“

Den Gedanken hatte ich ebenfalls.
Somit hätte ich bei den Aktionen (Option) allerdings zwei Mal die selbe Aktion. Was prinzipiell nicht schlimm ist.

Vielleicht habe ich ja einen Denkfehler aber reicht es nicht einfach die Bedingungen zu setzen

triggers:
  - trigger: state
    entity_id:
      - binary_sensor.ist_jemand_zuhause
    to: "off"
    for:
      hours: 0
      minutes: 9
      seconds: 0
  - trigger: sun
    event: sunset
    offset: "+00:45:00"
conditions:
  - condition: state
    entity_id: binary_sensor.ist_jemand_zuhause
    state: "off"
  - condition: sun
    after: sunset
    after_offset: "00:45:00

Bedingungen sind ja UND!

1 „Gefällt mir“

Heißt, beides muss erfüllt sein (kein Oder), dass nach Sonnenuntergang und keine Zuhause ist.

Probiere ich mal aus, dann kann ich auch den Warten auf Auslöser rausnehmen.

Ja genau.
Trigger sind ODER (entweder das eine ODER das andere löst aus)
Bedingungen sind UND (es darf keine da sein UND es muss nach Sonnenuntergang sein)

1 „Gefällt mir“