Alexa etwas sagen lassen mit einer Automation

Ich habe einen AirQuality-Sensor (Airgradient) mit ESPHome in HA eingebunden, das funktioniert soweit sehr gut. Jetzt würde ich mit den Werten gerne eine Automation erstellen.
Wenn der CO2 Level über einen gewissen Wert ansteigt und sagen wir zwei Minute auch so bleibt, so fange ich eventuelle Fehler in der Messung ab, soll eine Warnung über einen meiner ECHO (Alexa) ausgegeben werden.

Wenn das nicht direkt geht, habe ich auch einen URL Trigger, wenn ich als einen bestimmten URL aufrufe spielt der ECHO die Warnung ab, lieber wäre es mir natürlich wenn ich direkt Ausgaben auf einen ECHO (ohne Cloud) machen könnte.

Kann man mit HA eigentlich auch einen Telegram Bot steuern, das wäre auch noch schön.

Ich kenne mich mit Automationen überhaupt nicht aus und wäre hier für Hilfe sehr dankbar.
Soweit ich aber gelesen habe, müsste das machbar sein, nur habe ich leider keine Ahnung wie.

Liebe Grüße aus Wien
Andreas

Also direkt einen Echo lokal ansteuern geht meines Wissens nicht. Du kannst aber diese Integration hier nutzen: GitHub - mike-grant/haaska: Home Assistant Alexa Skill Adapter that supports v3 of the Alexa Smart Home Skill API

Das Setup ist aber schon kompliziert, da braucht man etwas Übung. Als Alternative könntest du auch eine Benachrichtigung an dein Handy senden lassen. Du legst eine Automatisierung an, die testet, ob sich ein Wert über eine bestimmte Wert nicht ändert und sendest dann eine Benachrichtigung.

Stimmt, dafür muss HA von außen erreichbar sein.

Ich habe meine Echos (Alexa) schon in meinen HA eingebunden und kann Sprachbefehle geben, habe ich über Amazon AWS gemacht (ohne Nabu Casa) und mein HA ist natürlich auch von außen (über einen Proxy) und einen Namen erreichbar, um das geht es gar nicht.

Ich möchte einfach einen Text auf einem Echo ausgeben, ich habe glaube ich einmal gesehen, dass das möglich ist. wie gesagt die Echos sind bereits in HA eingebunden, sehe sie natürlich nicht als Entität, aber ich kann sie zur Steuerung verwenden, das funktioniert.

Man kann diese Dinger auch verwenden um lokale Musik abzuspielen, das wäre auch nett.

Liebe Grüße
Andreas

Das funktionier bei mir (in Node-Red) über eine “Call Service”-Node:
image

[{"id":"a36831a6dc52c0e4","type":"api-call-service","z":"5e38a40b1ab38ea9","name":"Wäschetrockner fertig","server":"a1aba8eb.bfd618","version":5,"debugenabled":true,"domain":"notify","service":"alexa_media_buro_dot","areaId":[],"deviceId":[],"entityId":[],"data":"{\"message\":\"Wäschetrockner ist fertig\",\"data\":{\"type\":\"announce\"}}","dataType":"json","mergeContext":"Test","mustacheAltTags":true,"outputProperties":[],"queue":"all","x":220,"y":320,"wires":[[]]},{"id":"a1aba8eb.bfd618","type":"server","name":"Home Assistant","version":5,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30,"areaSelector":"friendlyName","deviceSelector":"friendlyName","entitySelector":"friendlyName","statusSeparator":"at: ","statusYear":"hidden","statusMonth":"short","statusDay":"numeric","statusHourCycle":"h23","statusTimeFormat":"h:m","enableGlobalContextStore":true}]

Sollte über die “normale” HA-Automation analog gehen.

service: notify.alexa_media_echo
data:
  data:
    type: tts
  message: Süßigkeitenalarm

Und so in der HA Automation

Custom Sound dann so.

service: media_player.play_media
target:
  entity_id: media_player.echo
data:
  media_content_id: buzzers_pistols_01
  media_content_type: sound
metadata: {}

Danke, das hat mir geholfen, es läuft schon:

grafik

LG
Andreas

HA muss nicht über außen erreichbar sein.
VPN mit Tailscale geht auch.

Ansonsten kannst du auch direkt Werte ausgeben lassen anstatt nur einen reinen Text und sogar verschiedene Sätze
z.B.

alexa_wann_ist_der_nachste_papiermull:
  alias: alexa wann ist der nächste papiermüll
  sequence:
    - service: notify.alexa_media_last_called
      data:
        message:
          "{% set alexa_text = [ \"Papiermüll ist in\",  \"Nächster Papiermüll
          ist in\"] | random %} {{ '{} {} Tage.'.format(\n alexa_text , states('sensor.abfallpapier'))
          }}  \n"
        data:
          type: tts
  mode: single
1 „Gefällt mir“

Ich möchte gerne Alexa für die Notify Sprachausgabe lauter machen, weiss jemand warum es nicht klappt?

zusatz: volume_level: 0.7

Yaml:

service: notify.alexa_media_alexa_wohnzimmer
data:
volume_level: 0.7
  message: Test 123
  data:
    type: tts

Du kannst volume_level nicht über den notify Service setzen.

service: media_player.volume_set
data:
  volume_level: 0.15
target:
  entity_id: media_player.ninas_echo_dot

okay, danke und der service: media_player.volume_set

setze ich in die config YAML, richtig?

Nein, den Dienst setzt du ebenfalls als Aktion in der Automation.

Ach so, Danke :slight_smile:

Als nächstes kümmere ich mich daran um die Lautstärke wieder auf den vorherigen wert zurückzusetzen…