[37_echodevice] Amazon Echo Modul (nicht Alexa)

Begonnen von michael.winkler, 12 Januar 2018, 18:20:12

Vorheriges Thema - Nächstes Thema

Enrico Raak

Hallo,

habe heute mal das Modul installiert. Es funktioniert auch ,bis auf einen Punkt, alles super.
Ich habe die Anleitung zur Einrichtung für mp3 und tts genau befolgt. Nur habe ich anstatt des mini-https Servers zu installieren meinen vorhandenen Apache2 Server um-konfiguriert, dass er auf den /opt/fhem/www/echodevice Ordner weist.
Wenn ich nun die tts ausgäbe testen möchte, werden die Dateien im Ordner auch erstellt, aber der echo bleibt stumm.
Ein Zugriff vom Browser auf die Dateien ist auch möglich, daher denke ich nicht, dass es am Webserver liegt.


Amenophis86

@Kreon: Mich würde interessieren, wie du das gemacht hast. Denke viele haben aus anderen Gründen den Apache drauf. Daher wäre es schön auch hierfür eine Anleitung zu haben :)
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

michael.winkler

Zitat von: Amenophis86 am 19 März 2018, 06:26:32
@Kreon: Mich würde interessieren, wie du das gemacht hast. Denke viele haben aus anderen Gründen den Apache drauf. Daher wäre es schön auch hierfür eine Anleitung zu haben :)
Läuft Dein Apache auch auf Port 80? Wenn ja, schau dir mal den Teil meiner Doku an: https://mwinkler.jimdo.com/smarthome/sonstiges/amazon-echo-tts-mp3s/#HTTP_Vorhanden

Wenn du nicht den Port 80 benutzt, kannst du den mini-httpd als zweiten WEB Server einrichten.

alex885

Hi Michael,

geiler Scheiss soweit,  Merci!

FYI: bei get echos Devices bekomm ich

hemweb.js line 988:
SyntaxError: Unexpected identifier 'Fire'. Expected ')' to end an argument list.


lg Alex
FHEM auf Hackintosh-NUC, 5 x Rpi mit Fhem2Fhem & Shairport-Sync , FB7390, CUL, HMLAN, ZWave, Zigbee, RfxTrx, Rollotron, mySensors, Xiaomi mi, div Zeuchs..

Amenophis86

Danke Michael, werde ich mal versuchen die Tage.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

michael.winkler

Zitat von: alex885 am 19 März 2018, 13:20:01
Hi Michael,

geiler Scheiss soweit,  Merci!

FYI: bei get echos Devices bekomm ich

hemweb.js line 988:
SyntaxError: Unexpected identifier 'Fire'. Expected ')' to end an argument list.


lg Alex
Kannst Du das noch mal mit einem Verbose 5 ausführen, und mir dann per PM ein LOG zusenden?

christian.71

@Michael Funktioniert das tts auch mit SonosOne Lautsprecher oder nur mit Echo-Geräte? In der Alexa App kann ich bei den Sonos Devices kein Wlan auswählen.

michael.winkler

Zitat von: christian.71 am 19 März 2018, 16:49:48
@Michael Funktioniert das tts auch mit SonosOne Lautsprecher oder nur mit Echo-Geräte? In der Alexa App kann ich bei den Sonos Devices kein Wlan auswählen.
Wenn TuneIn auf dem Sonso funktioniert, sollte auch TTS funktionieren.

Es gibt auch sicherlich eine Möglichkeit dem Sonos eigenen IP-Adressen zuzuweisen.

Leider habe ich kein Sonos, daher kann ich Dir hier kaum weiterhelfen.

rainman79

Hi, Irgendwie bekomme ich das mit den Amazon Stimmen nicht hin. AWS Keys sind im Haupt-Device eingetragen. Google funktioniert einwandfrei.
Hier mal ein Auszug des Filelog direkt nach einem set <Device> tts test :
Traceback (most recent call last):
  File "cache/pollyspeech.py", line 4, in <module>
    import requests
ImportError: No module named requests
2018.03.19 18:28:13 3: [XX_Echo_WZ] [echodevice_Amazon] Could not read from cache/amzdate


Gruß Holger

FHEM-Wohnung

#475
Sehr gutes Modul!
Ich habe das gleiche Problem wie @rainman79 die Sprache von Google wird ausgegeben. Die von Amazon nicht.

Des Weiteren wird z.B. ein Lied von Spotify abgebrochen, wenn ich einen Text vorlesen lassen. Nach dem Text wird die Musik nicht weiter fortgesetzt.

Amenophis86

#476
Ich habe es jetzt soweit eingerichtet, dass die Dateien im Ordner /opt/fhem/www/echodevice/ angelegt werden. Der NS-Lookup klappt auch entsprechend. Allerdings scheitere ich am einrichten für meinen Apache auf meinem Pi. Habe ganz normal Apache installiert. Jetzt habe ich im Ordner /var/www/ und auch zum testen im Ordner /var/www/html die links wie folgt eingefügt:
sudo ln /opt/fhem/www/echodevice/stream.m3u  stream.m3u
sudo ln /opt/fhem/www/echodevice/live18-hq.aac.m3u live18-hq.aac.m3u

Ich sehe diese auch und die Größe ändert sich auch entsprechend, wenn die Hauptdatei geändert wurde. Allerdings sagt mein Echo mir, dass er den Kanal von TuneIn aktuell nicht finden kann. Leider kenne ich mich zu wenig aus um zu wissen wo der Fehler für meinen Apache liegt bzw. was ich noch machen muss. Kann mir jemand helfen?

Edit:
Das sagt verbose 5 (den Teil mit den unbekannten Zeichen [denke das ist das erstellen der MP3 Datei] habe ich weggelassen:
018.03.19 19:46:20 4: [WZ.Echo] [echodevice_ParseTTSMP3] MP3File     = WZ.Echo.mp3
2018.03.19 19:46:20 4: [WZ.Echo] [echodevice_ParseTTSMP3] M3UFile     = live18-hq.aac.m3u
2018.03.19 19:46:20 4: [WZ.Echo] [echodevice_SendCommand]    - type tunein
2018.03.19 19:46:20 4: [WZ.Echo] [echodevice_SendCommand]    - PushToCmdQueue https://layla.amazon.de/api/tunein/queue-and-play?deviceSerialNumber=SERIAL&deviceType=xxxx&guideId=xxxx&contentType=station&callSign=&mediaOwnerCustomerId=CUSTOMER
2018.03.19 19:46:20 4: [WZ.Echo] [echodevice_SendCommand]    - PushToCmdQueue
2018.03.19 19:46:20 4: [WZ.Echo] [echodevice_HandleCmdQueue] - send command https://layla.amazon.de/api/tunein/queue-and-play?deviceSerialNumber=SERIAL&deviceType=xxxx&guideId=xxxx&contentType=station&callSign=&mediaOwnerCustomerId=CUSTOMER
2018.03.19 19:46:21 5: [WZ.Echo] [tunein]$VAR1 = '{"error":null}';


Wenn ich als URL: http://ip-des-dns/live18-hq.aac.m3u eingebe wird mir die Datei zum Download angeboten. Dh die Datei ist da. Komisch.

Edit:
Habe den Fehler gefunden. Es muss nicht nur ein Link auf die M3u Datei gesetzt werden, sondern auch auf die mp3 Datei. Macht ja auch Sinn, da diese auch im Webverzeichnis gesucht wird. Und die Links sollten am besten softlinks sein also so:
sudo ln -s /opt/fhem/www/echodevice/live18-hq.aac.m3u live18-hq.aac.m3u
sudo ln -s /opt/fhem/www/echodevice/NameEcho.mp3 NameEcho.mp3

Wobei NameEcho = Der Name des EchoDevice in FHEM ist.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Amenophis86

#477
So jetzt gehen die Ausgaben, aber auch ich kann keine andere Stimme, als die von Google nehmen. Sowohl Vicky, als auch Marlene bleiben stumm. Aber bis jetzt schon mal sehr geil. Vielen Dank.

Edit:
Gibt es vielleicht noch die Möglichkeit das Volume der MP3 Datei von vorneherein höher zu setzen? Es ist im Vergleich zu den Musikausgaben etc. wesentlich leiser, dass ich immer vorher das Volume hoch und dann wieder runter setzen muss.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

michael.winkler

Zitat von: rainman79 am 19 März 2018, 18:32:17
Hi, Irgendwie bekomme ich das mit den Amazon Stimmen nicht hin. AWS Keys sind im Haupt-Device eingetragen. Google funktioniert einwandfrei.
Hier mal ein Auszug des Filelog direkt nach einem set <Device> tts test :
Traceback (most recent call last):
  File "cache/pollyspeech.py", line 4, in <module>
    import requests
ImportError: No module named requests
2018.03.19 18:28:13 3: [XX_Echo_WZ] [echodevice_Amazon] Could not read from cache/amzdate


Gruß Holger
ups, da ist noch ein Fehler im Modul. Gehe mal in das Verzeichnis /opt/fhem/cache und lösche die Zeile 4 "import requests" aus der Datei "pollyspeech.py". Dann müsste es gehen.

michael.winkler

Zitat von: FHEM-Wohnung am 19 März 2018, 19:27:59
Ich habe das gleiche Problem wie @rainman79 die Sprache von Google wird ausgegeben. Die von Amazon nicht.
ups, da ist noch ein Fehler im Modul. Gehe mal in das Verzeichnis /opt/fhem/cache und lösche die Zeile 4 "import requests" aus der Datei "pollyspeech.py". Dann müsste es gehen.

Zitat von: FHEM-Wohnung am 19 März 2018, 19:27:59
Des Weiteren wird z.B. ein Lied von Spotify abgebrochen, wenn ich einen Text vorlesen lassen. Nach dem Text wird die Musik nicht weiter fortgesetzt.
Das ist normal. Du kann maximal das Attribut "TTS_IgnorPlay" auf 0 setzen. Dann wird dein Spotify nicht abgebrochen, es wird aber dann auch keine TTS Ansage gemacht.

Siehe Doku:
https://mwinkler.jimdo.com/smarthome/eigene-module/echodevice/#Attribute