Lüftungsempfehlung - Wenn - Dann -Sonst

Die neue Aktion Wenn - dann Sonst gibt es schon eine Weile.
Allerdings habe ich diese noch nicht genutzt gehabt. Wird also mal Zeit sich dieser mal anzunehmen. :grin:

Aufgabenstellung:

Beim Öffnen des Fenster soll über eine Lampe signalisiert werden, ob ein Lüften zum Zweck der Luftfeuchtigkeit-Reduzierung zu empfehlen ist oder nicht.
Dabei soll geprüft werden, ob die absolute Luftfeuchtigkeit Innen >= absolute Luftfeuchtigkeit Draußen ist. Ist die Bedingung erfüllt, soll ein Licht im Raum für 5 s Grün leuchten, wenn nicht dann Rot. Und nach Ablauf von 5 s wieder in der Zustand vor der Signalisierung zurückkehren.

Die Ermittlung der absoluten Luftfeuchtigkeit erledigt bei mir die Custom Thermal Comfort Integration.
Man kann diese natürlich auch selbst berechnen, ein Bsp. habe ich hier mal vorgestellt.

Zusätzlich habe ich mir einen Template Binary Sensor angelegt, der im Falle: absolute Feuchtigkeit innen >= Draußen den Wert on bekommt, sonst off.

Dieser ist zwar nicht zwingend notwendig. Ich wollte aber zum einem, einen Übersicht der Lüftungsempfehlung für alle Räume haben und zum anderen macht das die Automatisierung schlanker. :grin:

Zuvor hatte ich das ganze mithilfe von 2 Automatisierungen umgesetzt. Eine für Grün und die Zweite für Rot.

Habe das ganze jetzt auf eine reduziert mit Hilfe Aktion-Bausteins Wenn-Dann

Als erste Aktion wird erstmal ein Snapshot der Light Entität erstellt.
Dann folgt die Wenn, Dann, Sonst Aktion
Und zuletzt wird die zuvor erstelle Snapshot Szene aufgerufen.

alias: Lüften Schlafzimmer Ja/Nein
description: ""
triggers:
  - entity_id: binary_sensor.fenster_sz_klein
    from: "off"
    platform: state
    to: "on"
  - entity_id: binary_sensor.fenster_sz_gross
    from: "off"
    platform: state
    to: "on"
conditions: []
actions:
  - data:
      scene_id: before
      snapshot_entities:
        - light.nachttisch
    action: scene.create
  - data: {}
    entity_id: light.nachttisch
    action: light.turn_on
  - if:
      - condition: state
        entity_id: binary_sensor.lueften_schlafzimmer
        state: "on"
    then:
      - data:
          brightness: 255
          color_name: green
        entity_id: light.nachttisch
        action: light.turn_on
    else:
      - data:
          brightness: 255
          color_name: red
        entity_id: light.nachttisch
        action: light.turn_on
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - data: {}
    entity_id: scene.before
    action: scene.turn_on
mode: single

Der Aufbau des Bausteins Wenn-Dann, ist relativ einfach.
Wenn eine oder mehrere Bedingungen erfüllt sind, dann mache das.
Sonst (else) ist optional und muss nicht verwendet werden.

Gruß
Osorkon