Ich möchte gerne, dass die Alexa mir sagt welches Fester noch geöffnet ist und es solange wiederholt wird bis das jeweilige Fenster geschlossen ist.
Oder ist es besser für jedes Fenster eine eigene Automatisierung zu erstellen?
Gruß Alex
by HarryP: Codezeilen formatiert (bitte immer </> verwenden)
Ich habe es mit etwas Hilfe von diesem Forum und etwas basteln so gelöst:
Leider geht seit ein paar Tagen “last_call” mit der Alexa Integration nicht mehr, weshalb ich mich nun erstmal auf das am meisten verwendete Gerät beschränken muss.
alias: Offene Fenster und Türen
sequence:
- service: alexa_media.update_last_called
data: {}
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 2
- service: notify.alexa_media_echo_wohnzimmer
data:
data:
method: all
type: announce
title: Home Assistant
message: |-
{% set status = expand('binary_sensor.fenster_alle')
| selectattr('state', 'eq', 'on')
| map(attribute='name')
| list
| join (', ')
| replace('Fenster- und Türkontakt - Balkontür', 'Balkontür')
| replace('Fenster- und Türkontakt - Wohnzimmer', 'Wohnzimmer')
| replace('Fenster- und Türkontakt - Haustür', 'Haustür')
| replace('Fenster- und Türkontakt - Dominik', 'Dominik')
| replace('Fenster- und Türkontakt - Küche', 'Küche')
| replace('Fenster- und Türkontakt - Spielzimmer', 'Spielzimmer')
| replace('Fenstergriffsensor Jonas', 'Jonas')
| replace('Fenster- und Türkontakt - Schlafzimmer', 'Schlafzimmer')%}
{% if status == '' %}
{{ status|replace("", "Alle Fenster und Türen sind geschlossen!") }}
{% else %}
{{status}}
{% endif %}
mode: single
icon: mdi:window-open-variant
Das Skript muss dann nurnoch an Alexa übergeben werden auf Geräten mit Bildschirm mit Anzeige. Allerdings muss ich Alexa selber Fragen. Dafür habe ich eine Routine erstellt.
das mit der Fenstergruppe funktioniert mit einem normalen Kontakt prima, ich habe allerdings auch noch die Dreh-Fensterkontakte von Homematic, diese werden als sensor und nicht als binary_sensor angelegt, weil sie drei Status closed,open und tilted haben. Wie kann ich hier mehrere Fenster gruppieren und mit einem entsprechenden Script das jeweils offene Fenster ausgeben?
Das funktioniert auch schon sehr gut, es wird das offene Fenster mit Namen ausgegeben, allerdings würde ich die Ausgabe nun noch auf nur die Fenster die ein “EG” im Namen haben beschränken, aber das habe ich noch nicht hinbekommen.