19-01-2017, 08:03:30
(Dieser Beitrag wurde zuletzt bearbeitet: 19-01-2017, 16:34:21 von CooperCologne.)
Wie schon in einem anderen Thread angekündigt, hier die Anleitung, wie man Innogy die Sprachausgabe beibringen kann. Achtung: es ist eine rein experimentelle Angelegenheit, für sicherheitsrelevante Dinge würde ich es nicht einsetzen.
Voraussetzungen:
Jetzt benötigen wir noch folgende Dateien zur Installation auf dem Rechner, der später das Gateway spielen wird.
Wir öffnen nun einfach ein Browserfenster und überprüfen per Aufruf von http://localhost:5005 (oder bei Fernzugriff über die IP des Rechners), ob alles läuft.
Per Aufruf von http://localhost:5005/zones überprüfen wir auch noch, ob die Sonos Zonen erkannt wurden, im Erfolgsfall bekommt man eine wüste Antwort im JSON Format.
Zum Schluss testen wir jetzt noch, ob die Sprachausgabe funktioniert:
http://localhost:5005/Wohnzimmer/Say/Guten Morgen (Wohnzimmer durch eine der eigenen Zonen ersetzen).
Weiter geht es im nächsten Beitrag...
Voraussetzungen:
- HTTP-Anfrage Treiber (von der Innogy Hotline installieren lassen, am besten per Facebook, am Telefon wissen oft einige nicht, wovon die Rede ist).
- Einen Rechner, der nach Möglichkeit 24h durchläuft bzw. zumindest im Tiefschlaf auf einkommende Netzwerkanfragen reagieren kann. Das kann ein Raspberry Pi sein, ein Mac, oder wie in meinem Fall ein Intel NUC (der gleichzeitig mein Home Theater PC ist) mit Windows 10. Die nachfolgenden Schritte beziehen sich daher alle auf Windows 10, sollten aber analog auf den anderen Betriebssystemen durchzuführen sein.
- Mindestens einen Sonos Lautsprecher im heimischen Netzwerk.
- Zunächst bitte unter folgendem Link ein Konto anlegen (eventuell hat ja der ein oder andere eine Xbox, das Microsoft Konto geht auch hier) und einloggen: https://www.microsoft.com/cognitive-services/en-us/
- Im Menü 'APIs' dann 'Bing Speech' auswählen und auf 'Get started for free' klicken, keine Angst es bleibt frei, außer Microsoft ändert etwas, dann müsste man auf einen anderen Service ausweichen, es gibt davon aber etliche. Zunächst sollten aber 5000 Aufrufe pro Monat genug sein.
- Der Service den wir 'buchen' wollen, heißt 'Bing Speech Preview', diesen in der Liste anklicken und bestätigen. Hat man alles richtig gemacht, sollte man folgendes vor sich sehen:
-
- Den ersten Key lässt man sich nun anzeigen (falls nicht sichtbar), wir brauchen ihn im nächsten Schritt.
- Jetzt legt man sich mit einem Texteditor seiner Wahl eine Datei namens 'settings.json' an, beim Speichern auf korrekte Dateierweiturung achten (nicht .txt sondern .json), das ganze mit folgendem Inhalt und anstelle der xxx fügt man seinen API key von der MS Seite ein.
Stefan kann man auch durch Hedda ersetzen, wenn man als Standard lieber eine weibliche Stimme hat.Code:{
"microsoft":{
"key":"xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"name":"Stefan"
}
}
Jetzt benötigen wir noch folgende Dateien zur Installation auf dem Rechner, der später das Gateway spielen wird.
- Auf https://nodejs.org/en/ sollte direkt auf der Startseite das richtige node.js Paket angezeigt werden, vorausgesetzt man arbeitet auf dem Rechner, auf dem später installiert werden soll. Ansonsten findet man die passenden Pakete unter 'other downloads'. Ich entscheide mich in meinem Fall für das für Windows angezeigte .msi Installationspaket der Version 7.4.0 und installiere es mit den vorgegebenen Optionen.
- Als nächstes holen wir uns von https://github.com/jishi/node-sonos-http-api per Klick auf den grünen Button 'Clone or Download' die HTTP Sonos API als Zip Datei und entpacken diese.
- Die node.js Installation sollte auf C: ein Verzeichnis node_modules angelegt haben, darin legen wir noch ein Verzeichnis sonos-http-api an und kopieren den Inhalt der entpackten Zip-Datei sowie die am Anfang angelegte Datei 'settings.json' dort rein. Das ganze sollte jetzt so aussehen:
-
- Nun öffnen wir per Rechtsklick auf das Startmenü eine Administrator!-Eingabeaufforderung und wechseln dort auf das Verzeichnis C:\node_modules\sonos-http-api
- Dort nacheinander folgende Befehle ausführen, der erste kann etwas Zeit in Anspruch nehmen, da unter Umständen noch Module aus dem Netz gezogen werden müssen:
npm install --production
npm start
Wir öffnen nun einfach ein Browserfenster und überprüfen per Aufruf von http://localhost:5005 (oder bei Fernzugriff über die IP des Rechners), ob alles läuft.
Per Aufruf von http://localhost:5005/zones überprüfen wir auch noch, ob die Sonos Zonen erkannt wurden, im Erfolgsfall bekommt man eine wüste Antwort im JSON Format.
Zum Schluss testen wir jetzt noch, ob die Sprachausgabe funktioniert:
http://localhost:5005/Wohnzimmer/Say/Guten Morgen (Wohnzimmer durch eine der eigenen Zonen ersetzen).
Weiter geht es im nächsten Beitrag...
1 Innogy Smarthome Zentrale, Fußbodenheizung, diverse UP-Schalter, Dimmer, Taster, Bewegungsmelder, Fenster/Türkontakte, Philips Hue, Netatmo, Anbindung von Sonos, Nuki Smartlock und LaMetric Time, Neato Botvac D5 Connected