Liebe Wissende,
Ich bin verzweifelt, weil mein HA macht nicht was ich möchte.
Wenn die Terrassentür offen steht, kann das seine Berechtigung haben oder nicht. Nach 20 Minuten (5 min. nachts) möchte ich einen Hinweis bekommen und danach regelmäßig wieder nach 20 min. Es sei denn ich lege im xxxx einen Schalter um.
Soweit ganz einfach, meint man. Drei Fallen habe ich mir gestellt.
Ich möchte gesagt bekommen, wielange die Terrassentür bis zur Ansage total offen gestanden hat.
Der input_boolean funzt überhaupt nicht.
Vorläufig ganz weggelassen habe ich die Meldung, wenn die Tür geschlossen wurde, weil das nur erfolgen sollte, wenn der loopcounter > 1 ist.
Kann sich jemand einmal die Mühe machen und mir sagen, warum sich der loopcounter nicht erhöht? Welcher Logik der Schalter (Terrasse still) folgen sollte? Sprich: wie die Wennabfrage lauten sollte, die die Sprachausgabe sofort verhindert.
Ich gehe davon aus, wenn Punkt 1 gelöst ist, kann ich auch die Erfolgsmeldung wieder einprogrammieren.
- id: 'xxx'
alias: Terrassentür offen
description: Warnt wenn Terrassentür zu lange offen steht
triggers:
- alias: Sobald Terrasse geöffnet wird
trigger: state
entity_id:
- binary_sensor.tk_terrassent_tk_terrassentuer
to: 'on'
from: 'off'
enabled: true
- alias: Sobald Terrasse geschlossen wird
trigger: state
entity_id:
- binary_sensor.tk_terrassent_tk_terrassentuer
to: 'off'
from: 'on'
enabled: true
conditions:
- condition: state
entity_id: input_boolean.jemand_zuhause
state: 'on'
actions:
- alias: Wiederhole bis die Terrassentür geschlossen wird
repeat:
sequence:
- delay:
hours: 0
minutes: '{{states(''input_number.minuten_tolleranz'') |float}}'
seconds: 0
milliseconds: 0
alias: Verzögere um 5 bzw 20 min
enabled: true
- variables:
loopcounter: '{{loopcounter + 1}}'
duration: '{{loopcounter * states(''input_number.minuten_tolleranz'')|float}}'
- action: script.sprachausgabe
metadata: {}
data:
nachricht: Die Terrassentür ist offen seit {{duration|int}} Minuten. Bitte
schließen.
ausgabe:
- media_player.keller
- media_player.assy_kuche
while:
- alias: Während Terrassentür offen
condition: state
state: 'on'
for:
hours: 0
minutes: 0
seconds: 0
enabled: true
entity_id: binary_sensor.tk_terrassent_tk_terrassentuer
- if:
- condition: and
conditions:
- condition: state
entity_id: input_boolean.terrassentur_ruhig
state: 'off'
- condition: template
value_template: '{{loopcounter > 1}}'
alias: Wenn die Terrasse länger als 20 min offen war
then:
- action: notify.pushover
metadata: {}
data:
message: Die Terrassentür ist jetzt geschlossen. Danke
title: Alles wird gut
mode: restart
variables:
loopcounter: 0
duration: 0