Da es ja jetzt auch einige unter uns gibt, die den „Amazon Alexa Smart Home Skill“ benutzen, hier eine Möglickeit, Alexa nach z.B. einer Temperatur zu fragen und sie dann auf dem Alexa Gerät antworten zu lassen, das auf den Befehl / die Frage reagiert hat. Zudem wird die Möglichkeit gezeigt, Alexa nicht immer mit dem gleichen Satz antworten zu lassen.
Zuerst wird der folgende Template-Sensor erzeugt, der als Wert das Alexa-Gerät enthält, welches auf die Frage / Ansage reagiert hat.
1platform: template
2sensors:
3 last_alexa:
4 unique_id: *** hier eine unique ID eintragen (VSCode Kontextmenu -> generate UUID) ***
5 value_template: >
6 {%- for group in states.media_player | groupby('state') -%}
7 {%- for entity in group.list -%}
8 {%- if is_state_attr(entity.entity_id, 'last_called', true) %}
9 {{ entity.entity_id }}
10 {%- endif -%}
11 {%- endfor -%}
12 {%- endfor -%}Jetzt ein Skript anlegen, das die entsprechende Aktion ausführt wenn ihr Alexa z.B. fragt: „Alexa, wie warm ist es im Keller?“
1alias: wie warm ist es im Keller
2sequence:
3 - service: notify.alexa_media
4 data_template:
5 target:
6 - '{{ states.sensor.last_alexa.state }}'
7 data:
8 type: tts
9 method: speak
10 message: >
11 {% set alexa_text = [ "Die Temperatur im Keller beträgt ",
12 "Im Keller sind ",
13 "Im Moment sind im Keller " ] | random %}
14 {{ '{} {} Grad Celsius.'.format( alexa_text, states('sensor.name_deines_temperatur_sensors')) }}
15mode: single
