Hallo zusammen,
über eine Automation starte ich ein Skript, welches dafür sorgt das eine Steckdose zwischen 13 und 18 Uhr nur für 45 Minuten an ist. Sind die 45 Minuten abgelaufen soll die Steckdose ausgehen und auch nicht wieder an. Wird sie vor Ablauf der 45 Minuten ausgeschaltet darf sie zwischen 13 und 18 Uhr erneut für die restliche Zeit an sein.
Die Automation ist nicht das Problem aber das Skript.
So schaut mein Skript aus:
sequence:
- variables:
max_laufzeit: 2700
laufzeit_bisher: >-
{{ (as_timestamp(now()) -
as_timestamp(state_attr('switch.steckdose_wohnzimmer', 'last_changed')))
| default(0) }}
verbleibend: "{{ max_laufzeit - laufzeit_bisher }}"
- choose:
- conditions:
- condition: template
value_template: "{{ laufzeit_bisher >= max_laufzeit }}"
sequence:
- action: switch.turn_off
data: {}
target:
entity_id: switch.steckdose_wohnzimmer
- action: notify.mobile_app_iphone_von_jens
data:
message: >-
Steckdose wurde wegen Überschreiten der 45 Minuten automatisch
ausgeschaltet.
- conditions:
- condition: template
value_template: "{{ laufzeit_bisher < max_laufzeit }}"
sequence:
- action: switch.turn_on
data: {}
target:
entity_id: switch.steckdose_wohnzimmer
- delay: "{{ (verbleibend) | int }}"
- action: switch.turn_off
data: {}
target:
entity_id: switch.steckdose_wohnzimmer
- action: notify.mobile_app_iphone_von_jens
data:
message: >-
Steckdose wurde nach Ablauf der verbleibenden Zeit automatisch
ausgeschaltet.
mode: single
alias: Steckdose WZ Laufzeit überwachen
description: ""
In den Traces zeigt es mir an, dass es nicht ausgeführt wird weil ein Default Wert nicht definiert wurde:
Fehler: ValueError: Template error: as_timestamp got invalid input 'None' when rendering template '{{ (as_timestamp(now()) - as_timestamp(state_attr('switch.steckdose_wohnzimmer', 'last_changed'))) | default(0) }}' but no default was specified
Was muss ich denn wo anpassen das dieses Skript korrekt läuft?
Danke euch.