Fenster / Terrassentür schließen wenn draußen wärmer als drinnen

Sobald die Temperatur draußen 3°C höher ist als drinnen und das Fenster/Terrassentür länger als 30s offen steht, Jemand Zuhause ist und die Uhrzeit zwischen 10 und 22 Uhr liegt.
Wird eine TTS Benachrichtigung an einen Media Player geschickt. Diese wird dann alle 10 min wiederholt, solange das Fenster offen steht und die Temperatur Außen 3°C höher ist als die Innen Temperatur.
Dabei wird zuerst der aktuelle Status des Media Players als Szenen gespeichert, die TTS Benachrichtigung wird wiedergegeben und im Anschluss der Zustand des Media Player wiederhergestellt.

Damit die Automatisierung auch auslöst, wenn die Außen Temperatur während das Fenster offen steht um die 3°C steigt, brauchen wir noch ein Helfer.
Dazu erstellen wir uns einen Template Binary Sensor.

Das Template für den Template Binary Sensor

{{ (states('sensor.ws_outdoor_temperature') | float - states('sensor.aqara_klima_wz_temperature') | float) | round(2) > 3}}

Dieser Sensor hat hat den Wert „on“ Wenn Aussentemperatur 3°C höher ist als die Innen Temperatur, sonst „off“

Die Automatisierung dazu sieht dann so aus:

alias: TTS Terrassentür Hitzealarm
description: ""
mode: restart
triggers:
  - entity_id:
      - binary_sensor.terrassentuer
    to: "on"
    for:
      hours: 0
      minutes: 0
      seconds: 30
    id: alarm
    trigger: state
  - entity_id:
      - binary_sensor.hitzewarnung_wz
    to: "on"
    id: alarm
    trigger: state
  - entity_id:
      - binary_sensor.terrassentuer
    to: "off"
    id: reset
    trigger: state
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id: alarm
          - condition: numeric_state
            entity_id: zone.home
            above: "0"
          - condition: state
            entity_id: binary_sensor.hitzewarnung_wz
            state: "on"
          - condition: state
            entity_id: binary_sensor.terrassentuer
            state: "on"
            for:
              hours: 0
              minutes: 0
              seconds: 30
          - condition: time
            after: "10:00:00"
            before: "22:00:00"
        sequence:
          - repeat:
              while:
                - condition: state
                  entity_id: binary_sensor.terrassentuer
                  state: "on"
                - condition: state
                  entity_id: binary_sensor.hitzewarnung_wz
                  state: "on"
              sequence:
                - data:
                    scene_id: before_homepod_wz
                    snapshot_entities: media_player.wz
                  action: scene.create
                - data:
                    entity_id: media_player.wz
                    message: Bitte Terrassentür schließen
                    language: de
                  action: tts.google_say
                - delay:
                    hours: 0
                    minutes: 0
                    seconds: 5
                    milliseconds: 0
                - data: {}
                  target:
                    entity_id: scene.before_homepod_wz
                  action: scene.turn_on
                - delay:
                    hours: 0
                    minutes: 10
                    seconds: 0
                    milliseconds: 0
    default: []

Die Wiederholung könnt Ihr ja gerne auch weg lassen, oder die Anzahl der Wiederholungen begrenzen.
Die Benachrichtigung muss natürlich kein TTS sein, genau so gut könnt ihr eine notification aufs Handy schicken.

Das ganze geht natürlich auch in die andere Richtung → Frost Alarm. Also Im Winter, wenn Temperatur draußen unter X °C, dann …

Gruß
Osorkon