Ferienkalender als Trigger für Automations

Hallo,

ich habe mir einen Ferienkalender mit allen Urlauben und Ferien angelegt. Der tägliche Termin wird mir im Dashboard auch immer als “ein” oder “aus” angezeigt.

Nun will ich diesen Kalender als Trigger für meine Rollladensteuerung nutzen und bei einem Treffer die Steuerung erst später laufen lassen. Soweit so gut.

Leider bekomme ich es nicht hin, dass der Trigger auch wiederholt trift. Es wird immer nur der erste Ferientag getroffen. Bei allen weiteren trifft die Steuerung dann nur einen normalen Werk- oder Wochenendtag. Alle anderen Trigger werden immer ausgelöst, nur halt nicht der widerkehrende Ferientermin.
Wo ist mein Denkfehler? Gibt es hier einen Trick mit den Terminen über mehrere Tage/Wochen?

Danke für eure Hilfe.

Das hier ist mein erster Automation Entwurf:

- id: '1734869041020'
  alias: Automation - Rollladensteuerung (Tag/Nacht)
  description: ''
  triggers:
  - trigger: state
    entity_id:
    - calendar.ferien_nrw_2024
    id: trigger.ferien
    to: 'on'
    for:
      hours: 9
      minutes: 55
      seconds: 0
    from:
  - trigger: state
    entity_id:
    - calendar.deutschland_nw
    to: 'on'
    for:
      hours: 9
      minutes: 57
      seconds: 0
    id: trigger.feiertag
    from:
  - trigger: time
    at: '10:00:00'
    id: trigger.wochenende
  - trigger: time
    at: 07:30:00
    id: trigger.werktag
  - type: illuminance
    device_id: 962e8d5fb6d53dc51ef6be1190065092
    entity_id: 6bd7c3a22c2b935fc57fe67098df8e5f
    domain: sensor
    trigger: device
    below: 250
    id: trigger.sonnensensor
  - trigger: time
    at: '21:00:00'
    id: trigger.abend
  conditions: []
  actions:
  - if:
    - condition: and
      conditions:
      - condition: trigger
        id:
        - trigger.werktag
      - condition: time
        weekday:
        - mon
        - tue
        - wed
        - thu
        - fri
      - condition: not
        conditions:
        - condition: trigger
          id:
          - trigger.ferien
          - trigger.feiertag
    then:
    - device_id: b55b4156ba517d7ae31cf86a8712e10d
      domain: cover
      entity_id: 3179b4bdbe779c4210e9623f198afff1
      type: open
    - device_id: 39dca0c46e051775281acbf1e759d7b7
      domain: cover
      entity_id: e0f1b59fc7919b74da158e60d9bcbc1e
      type: open
    - delay:
        hours: 0
        minutes: 1
        seconds: 0
        milliseconds: 0
    - device_id: 8738caa34647a99c1acb8e7c71ad7283
      domain: cover
      entity_id: 9c8d9ce15556e6b2f017ec0b08e3dcde
      type: open
    - device_id: e39fe27ada4baf9ef14c38eb615ee445
      domain: cover
      entity_id: 82169cb8f3612a9002e8eb900070b24d
      type: open
    - delay:
        hours: 0
        minutes: 1
        seconds: 0
        milliseconds: 0
    - device_id: 24e5b4248b95cccdef42e4898a97c644
      domain: cover
      entity_id: ec13a3a812e51acebb9a5cee9b62ee99
      type: open
    - device_id: 280c5e13697e1917912130ab059f57ce
      domain: cover
      entity_id: 4a9e34a87429b8726191c6a07e30fe1b
      type: open
  - if:
    - condition: and
      conditions:
      - condition: trigger
        id:
        - trigger.wochenende
      - condition: time
        weekday:
        - sat
        - sun
      - condition: not
        conditions:
        - condition: trigger
          id:
          - trigger.ferien
          - trigger.feiertag
    then:
    - device_id: b55b4156ba517d7ae31cf86a8712e10d
      domain: cover
      entity_id: 3179b4bdbe779c4210e9623f198afff1
      type: open
    - device_id: 39dca0c46e051775281acbf1e759d7b7
      domain: cover
      entity_id: e0f1b59fc7919b74da158e60d9bcbc1e
      type: open
    - delay:
        hours: 0
        minutes: 1
        seconds: 0
        milliseconds: 0
    - device_id: 8738caa34647a99c1acb8e7c71ad7283
      domain: cover
      entity_id: 9c8d9ce15556e6b2f017ec0b08e3dcde
      type: open
    - device_id: e39fe27ada4baf9ef14c38eb615ee445
      domain: cover
      entity_id: 82169cb8f3612a9002e8eb900070b24d
      type: open
    - delay:
        hours: 0
        minutes: 1
        seconds: 0
        milliseconds: 0
    - device_id: 24e5b4248b95cccdef42e4898a97c644
      domain: cover
      entity_id: ec13a3a812e51acebb9a5cee9b62ee99
      type: open
    - device_id: 280c5e13697e1917912130ab059f57ce
      domain: cover
      entity_id: 4a9e34a87429b8726191c6a07e30fe1b
      type: open
  - if:
    - condition: and
      conditions:
      - condition: trigger
        id:
        - trigger.ferien
        - trigger.feiertag
    then:
    - delay:
        hours: 0
        minutes: 5
        seconds: 0
        milliseconds: 0
    - device_id: b55b4156ba517d7ae31cf86a8712e10d
      domain: cover
      entity_id: 3179b4bdbe779c4210e9623f198afff1
      type: open
    - device_id: 39dca0c46e051775281acbf1e759d7b7
      domain: cover
      entity_id: e0f1b59fc7919b74da158e60d9bcbc1e
      type: open
    - delay:
        hours: 0
        minutes: 1
        seconds: 0
        milliseconds: 0
    - device_id: 8738caa34647a99c1acb8e7c71ad7283
      domain: cover
      entity_id: 9c8d9ce15556e6b2f017ec0b08e3dcde
      type: open
    - device_id: e39fe27ada4baf9ef14c38eb615ee445
      domain: cover
      entity_id: 82169cb8f3612a9002e8eb900070b24d
      type: open
    - delay:
        hours: 0
        minutes: 1
        seconds: 0
        milliseconds: 0
    - device_id: 24e5b4248b95cccdef42e4898a97c644
      domain: cover
      entity_id: ec13a3a812e51acebb9a5cee9b62ee99
      type: open
    - device_id: 280c5e13697e1917912130ab059f57ce
      domain: cover
      entity_id: 4a9e34a87429b8726191c6a07e30fe1b
      type: open
  - if:
    - condition: and
      conditions:
      - condition: trigger
        id:
        - trigger.sonnensensor
    then:
    - device_id: b55b4156ba517d7ae31cf86a8712e10d
      domain: cover
      entity_id: 3179b4bdbe779c4210e9623f198afff1
      type: close
    - device_id: 39dca0c46e051775281acbf1e759d7b7
      domain: cover
      entity_id: e0f1b59fc7919b74da158e60d9bcbc1e
      type: close
    - delay:
        hours: 0
        minutes: 1
        seconds: 0
        milliseconds: 0
    - device_id: 8738caa34647a99c1acb8e7c71ad7283
      domain: cover
      entity_id: 9c8d9ce15556e6b2f017ec0b08e3dcde
      type: close
    - device_id: e39fe27ada4baf9ef14c38eb615ee445
      domain: cover
      entity_id: 82169cb8f3612a9002e8eb900070b24d
      type: close
    - delay:
        hours: 0
        minutes: 1
        seconds: 0
        milliseconds: 0
    - device_id: 24e5b4248b95cccdef42e4898a97c644
      domain: cover
      entity_id: ec13a3a812e51acebb9a5cee9b62ee99
      type: close
    - device_id: 280c5e13697e1917912130ab059f57ce
      domain: cover
      entity_id: 4a9e34a87429b8726191c6a07e30fe1b
      type: close
  - if:
    - condition: and
      conditions:
      - condition: trigger
        id:
        - trigger.abend
    then:
    - device_id: b55b4156ba517d7ae31cf86a8712e10d
      domain: cover
      entity_id: 3179b4bdbe779c4210e9623f198afff1
      type: close
    - device_id: 39dca0c46e051775281acbf1e759d7b7
      domain: cover
      entity_id: e0f1b59fc7919b74da158e60d9bcbc1e
      type: close
  mode: single

:crayon:by HarryP: Code-/Logzeilen formatiert (bitte immer in </> einbinden)

Laut Deinem Code, steht der Mode auf single, das muss auf restart gestellt werden.

Danke für den Hinweis, ich werde das probieren.

Das war leider nicht die Lösung. Heute morgen sind die Rollladen wieder nicht nach Kalender gefahren.

Wie hast Du denn den Termin im Kalender eingetragen? JedenTag einzeln oder Bereich von bis, weil bei Bereich von bis, ist das ein Event, was dementsprechend nur einmal ausgeführt wird.
Jeder Tag muss einzeln im Kalender stehen, das jeden Tag ein neues Event ist, was die Automation auslöst. Event einfach im Kalender als Tagesevent eintragen und dann wiederholen bis zum Enddatum.
Sonst habe ich auch keine Idee mehr.

Hi, ich würde den “Ferien” Sensor nicht als Trigger benutzen, sondern als Bedingung oder When/Then action. Bei meiner Rollladensteuerung habe ich es so umgesetzt, dass ich mehrere zeitliche Trigger genutzt habe - bei mir: Sonnenaufgang, Sonnenuntergang, 6:30, 8:00. Dass habe ich in mehrere Automatisierung gepackt (wobei das eher Geschmackssache ist) Durch den zeitlichen Trigger startet die Automation garantiert. Wenn z.B. um 6:30 die Rollläden nur hochfahren sollen, wenn du nicht um Urlaub bist und kein Feiertag ist, nutzt du die beiden Sensoren als Bedingung. Wenn dann die Automatisierung um 8 wieder startet, prüfst du über die Bedingung z.B dann ob Urlaub und Feiertag “an” sind, Falls ja, werden um 8 die Rollläden hochgefahren. Hier der Link zu meiner eigenen Umsetzung - als Anregung :wink:

Smarte Rollläden - IT und Hausautomation

Rollladensteuerung Master/Slave - IT und Hausautomation

Wenn du bei dir den Feriensensor als Trigger benutzt, der sich aber nicht ändert, weil er über mehrere Tag an ist - dann wird der Trigger nicht ausgelöst. :wink: Du müsstest dann dafür sorgen, dass der Sensor jeden Tag neu ausgelöst wird (bzw. den Status wechselt). Deshalb mein Vorschlag ihn als Bedingung zu verwenden.

1 „Gefällt mir“

Ja das scheint, mein Problem zu sein. Ich habe die Ferientermine importiert und so ist es kein einzelner Termin/Event jeden Tag.

Danke ich schaue mir eure Anregungen und Optimierungen gerne an.

Hallo @baumeister ,

ich habe bei mir das so gelöst:

  • Kalender Ferien und die Termin hast du schon ein ganztägig drin?
  • dann verschiedene Auslöser nehmen (hast du schon)
  • ggf. Auslöse ID benennen
  • ich habe beim “DANN” dann die Optionen gewählt
  • wenn um Kalender Ferien sind, steht der Sensor auf ON, sonst auf OFF

Dann könntest du zum Beispiel wie folgt agieren:

Sobald 06.00 Uhr (Trigger ID früh)
Sobald 08.00 Uhr (Trigger ID später)

DANN
Option 1
WENN ausgelöst durch ID früh
und WENN Ferien OFF
DANN Rollo hoch

Option 2
WENN ausgelöst durch ID später
und WENN Ferien ON
DANN Rollo hoch

Somit wird das Rollo je nachdem ob Ferien sind 08.00 Uhr hochgefahren, sonst (Schulzeit) schon 06.00 Uhr.

Ich hoffe, es ist halbwegs verständlich.

Hallo, Danke für dein Feedback. Ja das war auch meine Idee für die Endlösung. Ich wollte mich zunächst langsam dahinbewegen, auch um ein Verständnis für ie einzelnen Trigger etc. zu bekommen.

Irgendwie habe ich mich an den Kalender Events verwurschtelt. Ich wollte es mir zunächst einfach machen, dabe dann aber wohl es noch komplizierter gemacht. Ich habe das jetzt wieder umgebaut, so wie du beschrieben hast. Morgen früh ist ein neuer Versuch.

Hallo, so heute morgen hat es hervorragend funktioniert. Danke für die Hilfe.

Ich habe die beiden Trigger in den Kalender entfernt und dies dann in die Bedingungen eingebaut.

Gerne doch. ;-). Manchmal kommt man auf das einfachste nicht. Geht mir aber auch immer mal wieder so.