Ich würde gerne diesen YAML Code verstehen…

Moin zusammen,

Ich würde gerne diesen YAML Code verstehen, der von dieser Seite stammt.

- alias: "Flurlichter ohne Bewegung aus"
  trigger:
  - platform: template
    value_template: >-
      {{ ((as_timestamp(now()) - as_timestamp(states.group.bewegung_flur.last_changed)) / 60) | round(0) | float(0) > 0 }}
  - condition: and
    conditions:
    - condition: state
      entity_id: group.bewegung_flur
      state: 'off' 
    - condition: state
      entity_id: input_boolean.flurlichter_bei_bewegung
      state: 'on'
  action:
  - service: light.turn_off
    data:
      entity_id: light.flur_deckenlampe
      transition: 1
  - service: light.turn_off
    data:
      entity_id: light.flur_haengelampe
      transition: 1
  mode: single

Hintergrund: Ich habe in einer Abseite einen Ikea Bewegungsmelder (MotionSensor_Ikea_1) und ein Netzteil (Tradfri_LED_Treiber_1) eingerichtet und will das Licht sauber mit dem BM schalten, so dass es zuverlässig an- und auch wieder ausgeht. Mit den Standard Automationen oder auch Blueprints läuft das nicht so rund. Besonders, wenn man mehrfach in kurzen Abständen den Raum betritt oder wieder verlässt. Dann geht das Licht entweder nicht mehr an oder schaltet sich, wenn man nicht im Raum steht… Von diesem Code verspreche ich mir nun Besserung, verstehe ich aber leider nicht.

Insbesondere ab dem Befehl ‚platform: template‘ bin ich raus. Was bedeuten diese Zeilen ?

VG

Christian

Jetztiger Zeitpunkt/Uhrzeit

Zeitpunkt der letzten Änderung an der Bewegungsmeldergruppe

Fließzahl (Kommazahl)

Gerundet auf keine Kommastellen

Finde ich aber extrem unnötig, da du ja auch einfacher den Bewegungsmelder als Trigger nehmen kannst, schau mal hier: Anleitung: Bewegungsmelder und Licht in einer Automatisierung

2 „Gefällt mir“

Ich kenne den BWM von IKEA nicht, aber bei BW- oder Anwesenheitsmeldern hast du normalerweise eine Einstellung “Fading-Time”. Das ist die Zeit, die das Gerät den Zustand “Anwesend” aufrecht erhält.

Ist jedenfalls bei meinem so.

Damit ließe sich dein Problem ganz ohne so komplizierte Automation lösen.

Ich nutze meinen Melder im Bad/Toilette und zeige auf einem NSPanel an ob Klo besetzt oder nicht. Das klappt super auch mit einer simplen Automation für den Melder.

Das habe ich bei dem BM nicht gesehen. Der ist über zigbee2MQTT eingebunden. Möglich, dass es da etwas in der Entwicklerkonsole geben könnte.

Ok. Schon mal danke. Aber was ist in diesem Zusammenhang ein Template ? Und was bedeutet „value_template: ->“ ?

Ich mag vor allem den Abschnitt “conditions: and”

Ein echter Klassiker, sozusagen wie mit Gürtel und Hosenträger.

- conditions:
  - condition: state
    [...]
  - conditon: state
    [...]

tuts auch, und das sind Basics wie Aktion und wie Bedingungen per default verknüpft sind.
Und klar wenn etwas schon UND verknüpft ist kann man natürlich immer trotzdem nochmals mit UND verknüpfen, dann sieht der code etwas komplexer aus.

1 „Gefällt mir“

Die folgenden beiden Links zur Home Assistant Dokumentation geben einen Einstieg in die Welt der Templates:

Allerdings ist das schon etwas fortgeschritten.

1 „Gefällt mir“

Wenn du noch nicht so weit bist, arbeite lieber mit “normalen” Trigger.

3 „Gefällt mir“

Für Anfänger auch nicht schlecht, kopierst Deinen Code dort rein und es wird übersetzt in den verständlichen Ablauf, gegebenenfalls auch verbessert :wink:

2 „Gefällt mir“

Jo hatte es grade mit “cursor” genau so probiert, also YAML kopiert und “explain this code” gesagt.
Und danach ein “optimize this code”, und plotzblitz, natürlich ist der letzte Part im Original Unfug.
Das muss heissen

action:
  - service: light.turn_off
    data:
      entity_id:
        - light.flur_deckenlampe
        - light.flur_haengelampe
      transition: 1

hatte ich vorher auch glatt übersehen

1 „Gefällt mir“

Danke. Ich bin soweit.