Benachrichtigung wenn Fenster bestimmte Zeit geöffnet und wieder geschlossen wird, Bedingung einfügen

Hallo zusammen,
ich möcht eine Benachrichtigung bekommen wenn das Badezimmerfenster länger als 15 Minuten geöffnet ist und das die Benachrichtigung in bestimmten Zeitabständen wiederholt wird, solange das Fenster geöffnet ist. Das habe ich hinbekommen,

- id: '1678627391596'
  alias: Fenster Bad 15 Minuten geöffnet
  description: ''
  trigger:
  - type: opened
    platform: device
    device_id: 71a39907c464e02266473e797806a92d
    entity_id: binary_sensor.fensterkontakt_bad
    domain: binary_sensor
    for:
      hours: 0
      minutes: 15
      seconds: 0
  condition: []
  action:
  - service: notify.telegram_gruppe
    data:
      title: Fenster Bad
      message: seit 15 Minuten geöffnet
  mode: single

- id: '1678722195338'
  alias: Fenster Bad 30 Minuten geöffnet
  description: ''
  trigger:
  - type: opened
    platform: device
    device_id: 71a39907c464e02266473e797806a92d
    entity_id: binary_sensor.fensterkontakt_bad
    domain: binary_sensor
    for:
      hours: 0
      minutes: 30
      seconds: 0
  condition: []
  action:
  - service: notify.telegram_gruppe
    data:
      title: Fenster Bad
      message: seit 30 Minuten geöffnet
  mode: single

und so weiter…

Vermutlich ist dies nicht die eleganteste Methode mehrere Automationen mit unterschiedlichen Zeiten zu erstellen, aber es funktioniert. Falls jemand bessere Alternativen kennt werden diese gerne angenommen.

Aber hier ist mein eigentliches Problem:
Ich möchte eine Benachrichtigung bekommen wenn das Fenster wieder geschlossen wird, aller dings nicht wenn das Fenster weniger als 15 Minuten geöffnet war (dann habe ich ja auch keine Benachrichtigung über die Öffnung bekommen). Das heisst, das beim Schliessen des Fensterkontakts eine Bedingung hinzugefügt werden muss. ich weiss aber nicht wie diese aussehen muss.
Vielleicht kann mir jemand helfen, schon mal vielen Dank im voraus

condition: template
value_template: >-
  {{ (trigger.to_state.last_changed - trigger.from_state.last_changed) >
  timedelta(minutes=15) }}

Und als Aktion gibt’s ne “wiederholen” Funktion, die stellst auf “bis” \Fenster zu\ dann musst nicht alle 15 ne neue automation starten :blush:

2 „Gefällt mir“
description: ""
mode: single
trigger:
  - platform: state
    entity_id:
      - binary_sensor.shelly_shdw_2_07926f_door_window
    from: "on"
    to: "off"
condition:
  - condition: state
    entity_id: binary_sensor.shelly_shdw_2_07926f_door_window
    state: "on"
    for:
      hours: 0
      minutes: 15
      seconds: 0
action:
  - service: notify.mobile_app_pixel_7
    data: {}

1 „Gefällt mir“

Aber dann gibt er immer “Das Fenster war 15 Minuten geöffnet” aus, oder?
@helmuts möchte glaube ich gemeldet bekommen, wie lange das Fenster insgesamt geöffnet war zum Zeitpunkt der Meldung
“Das Fenster war 15 Minuten geöffnet”
“Das Fenster war 30 Minuten geöffnet”
“Das Fenster war 45 Minuten geöffnet”
usw.

Danke für die Hilfe, die Wiederholen-Funktion war ein guter Tip. Die andere Sache mit der Bedingung habe ich leider so nicht hin bekommen. Ich habe mir jetzt eine Hilfsentität erstellt, diese wird auf ON gesetzt wenn das Fenster 15 Minuten geöffnet war, dann als Bedingung beim Schliessen des Fensters abgefragt und anschließend wieder auf OFF gesetzt