Google Home (oder Chromecast) für Sprachbenachrichtigungen

Hi,

ich möchte euch einen relativ einfachen Weg aufzeigen, wie man den Google Home oder auch einen Chromecast für Sprachausgaben nutzen kann.

Voraussetzungen:

  • Node-Red
  • Node-Red-Node „node-red-contrib-google-home-notify“
  • Google Home oder Chromecast

Wie funktioniert es?
Zuerst richtet man in Node-Red einen Flow ein der folgende Nodes enthält

  • http-GET (Empfänger für die Nachricht aus IPS)
  • json (Wandelt es in Json um)
  • Funktion mit folgendem Inhalt
var newMsg = { payload: msg.req.query.Text };
return newMsg;"

  • node-red-contrib-google-home-notify

dann in IPS folgendes Script anlegen:

$filename = "http://"IP_VON_NODE_RED":1880/"URL-AUS-http-GET-NODE"?Text='".urlencode (GetValueString("DEINE_VARIABLE")."'");
$contents = Sys_GetURLContent($filename);

dann schreibt ihr in eine Variable den Text den ihr möchtet und dann läuft folgendes ab:
Mit dem IPS-Script schickt ihr per http den Text an Node-Red, der node-get holt den Inhalt, konvertiert ihn per Json-Node ins richtige Format, in der Funktion wird der Text extrahiert und im letzten Node das kleine Wunder: per Google-TTS-Funktion wird der Text in ein MP3 konvertiert und das Ergebnis automatisch per Google-Chromecast-Funktion auf dem Chromecast oder Google Home abgespielt. Super simpel und schnell, auch wenn es sich kompliziert anhört.

Hallo Hagbard,
dieser Teil ist mir noch nicht klar.

Das Node-Red Tool installiert man auf Linux? Und dort kann man dann den Flow erstellen?

Hi,

Node-Red kann man nahezu überall installieren, auch Windows geht. Es basiert auf der node.js-Javascript-Library und ist damit nahezu überall lauffähig. Hier eine Anleitung zur Installation
unter Windows Node-RED : Running on Windows
oder Linux Node-RED : Installation

Damit kann man ne Menge tolle Sachen machen.