Home Assistant Anleitung Sprachausgabe auf Sonos-Lautsprecher

Wer Home Assistant und Sonos-Lautsprecher nutzt, kann diese Kombination nutzen, um dich von Home Assistant รผber Ereignisse informieren zu lassen. Alles, was man hierfรผr benรถtigt (neben Home Assistant und Sonos-Lautsprecher(n)) sind der gewรผnschte Benachrichtigungstext als mp3-Datei sowie eine Mini-Automation.

Wie du deinen individuellen Benachrichtigungstext als mp3-Datei und die Automation zur Wiedergabe der mp3-Datei auf dem Sonos-Lautsprecher erstellst, beschreibe ich im folgenden!

Auf der Homepage https://ttsmp3.com/ kannst du dir mit wenigen Mausklicks kostenlos eine mp3-Datei von einem beliebigen Text erstellen. Klar, das kann je nach Wort beziehungsweise Satzbau schonmal ein wenig mechanisch oder kรผnstlich klingen, aber wir wollen damit ja auch keinen Lesewettbewerb gewinnen ๐Ÿ˜‰

Zudem kannst du dir vor dem Erstellen deiner mp3-Datei das Ergebnis anhรถren und bei Nichtgefallen zwischen 3 deutschen Stimmen auswรคhlen. Fรผr mich war bislang immer ein passendes Ergebnis dabei!

Als Ergebnis erhรคltst du auf jeden Fall die gewรผnschte mp3-Datei, welche wir fรผr die Wiedergabe der Sprachbenachrichtigung in deiner Home Assistant Automation benรถtigen.

Du magst Home Assistant? Dann abonniere kostenlos meine Beitrรคge mit Tipps, Tricks und Anleitungen rund um Home Assistant:

Follow Home Assistant
( 424 Followers )
X

Follow Home Assistant

E-mail : *
* Ich stimme der Datenschutzerklรคrung zu!

Garantiert kein Spam, keine Werbung und immer mit Abmelde-Link, solltest du es dir anders รผberlegen!

Ja, ich weiรŸ, dass Home Assistant eine eingebaute TTS-Funktion hat. Aber diese gefรคllt mir aus mehreren Grรผnden nicht:

  1. Es muss zwingend eine aktive Internetverbindung bestehen, da die Online-TTS-Funktion von Google selbst bei aktivem Caching der TTS-Datei einmalig genutzt werden muss.
  2. Und obwohl ich ein Google-Handy besitze und auch sonst sehr gerne Google-Dienste nutze, muss Google ja wiederum nicht alles von mir wissen – ein wenig Privatsphรคre darf ja wohl noch sein! ๐Ÿ˜‰
  3. Sollte die Benachrichtigung einmal nicht wie gewรผnscht funktionieren, wird die Fehlersuche komplexer, da es an der Internetverbindung, an dem TTS-Service und natรผrlich meinem Skript liegen kann. Bei einer lokal vorhandenen mp3-Datei, kann es nur an meinem Skript liegen!

Hast du die mp3-Datei also heruntergeladen, solltest du diese direkt auf die SD-Karte deiner Home Assistant Instanz kopieren. Kopiere die Datei am besten in den Ordner config/www/. Dateien, die dort abgelegt werden, kannst du in Skripten unter Nutzung des Pfades „/local/“ nutzen.

Nun brauchst du nur noch die Automation, welche die auf der SD-Karte befindliche mp3-Datei auf Wunsch auf deinem Sonos-Lautsprecher(n) abspielen wird.

Um meinen Beispielcode nicht zu komplex zu, nutze ich als Trigger eine simple State-Abfrage und spiele dann die mp3-Datei auch nur auf einem Lautsprecher ab:

- alias: Waschmaschine/Trockner fertig
  description: ''
  trigger:
    - platform: numeric_state
      entity_id: sensor.steckdose_current_consumption
      below: '5'
      for: '00:10:00'
  condition: []
  action:


#zuerst erstellen wird von einem konkreten Sonos-Lautsprecher einen Snapshot, also merken uns dessen Zustand/Einstellungen
    - service: sonos.snapshot
      data:
        entity_id: media_player.wohnzimmer

#wir stoppen die aktuelle Wiedergabe manuell
    - service: media_player.media_stop
      data:
        entity_id: media_player.wohnzimmer
#dann stellen wir die Lautstรคrke auf einen bestimmten Wert (das probierst du am besten aus!)
    - service: media_player.volume_set
      data:
        volume_level: 0.2
      target:
        entity_id: media_player.wohnzimmer
#um dann die zuvor erstellte mp3-Datei abzuspielen
    - service: media_player.play_media
      target:
        entity_id: media_player.wohnzimmer
      data:
        media_content_type: music
        media_content_id: http://47.11.08.15.1/local/washingmachine.mp3
#ein klein wenig Pause tut gut :)
    - delay:
        hours: 0
        minutes: 0
        seconds: 5
        milliseconds: 0
#und jetzt reaktivieren wir die eingangs gemerkten Einstellungen des Sonos-Lautsprechers
    - service: sonos.restore
      data:
        entity_id: media_player.wohnzimmer

Da ich im Code selbst jeden relevanten Befehl kommentiert habe, dรผrfte der Code als solcher ziemlich selbsterklรคrend sein!

Dieses Code-Beispiel ist so bei mir im Einsatz und informiert uns รผber einen Sonos-Lautsprecher im Wohnzimmer, wenn die Wรคsche vermutlich fertig ist!

Dieser Beitrag ist Teil einer kleinen Beitrags-Serie rund um den hass.io Home Assistant.

8 Gedanken zu „Home Assistant Anleitung Sprachausgabe auf Sonos-Lautsprecher“

  1. Nachdem ich eine Lรถsung mit TTS implementiert habe, und dabei leider die Musik stoppte, habe ich deinen Artikel gelesen.

    Das Automatisierungsscript konnte ich komplett รผbernehmen. Lediglich mit dem delay hatte ich Probleme. Der war anfangs zu kurz und daher wurde das mp3 zu frรผh abgebrochen. Leider wird das Abspielen eines mp3 quittiert, nachdem der Befehl gesendet wird und nicht erst, nachdem das mp3 abgespielt wurde.

    Antworten
  2. Vielen Dank! Genau das was ich gesucht habe! Sonos hat immer aufgehรถrt zu spielen nachdem die MP3 abgespielt wurde… nicht wirklich sinvoll. mit .snapshot und .restore klappt es wunderbar.

    Als kleiner Anreiz fรผr andere: Ich nutze diese Funktion zusammen mit einem ESP um das Signal der Klingel mit zu erfassen und Sende ein „Ding Doong“ รผber SONOS ins ganze Haus. Zusรคtzlich gibt es eine Telegram Nachricht aufs Handy.

    Antworten

Schreibe einen Kommentar