Alexa Text To Speech

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Guido
Beiträge: 2
Registriert: 24. Mai 2022 17:27
Answers: 0

Alexa Text To Speech

Beitrag von Guido »

Liebe OH Kollegen,

ich versuche über openHAB 3.3.0.M4 und dem Amazon Echo Control Binding, Sprache auf meiner Alexa auszugeben. Das gelingt auch meistens, hat aber eine gigantische Verzögerung von mehreren Minuten !

Das "Amazon Konto" Thing habe ich über

Code: Alles auswählen

http://<OH IP>:8080/amazonechocontrol/
mit dem Account verknüpft, dieser
ist auf 2FA parametriert. Als Rückmeldung bekomme ich "The Account is logged in", also alles gut.

Dieses Thing hat einen Channel "sendMessage (String)", da ist auch in <2 Sekunden eine Nachricht auf der Alexa, wenn ich den mit

Code: Alles auswählen

AmazonKontoKati_Nachrichtsenden.sendCommand( 'Das ist ein Test, ob die Echo funktioniert' )
anspreche.

Für das TTS habe ich ein zweites Thing angelegt vom Typ "Amazon Echo". Wenn ich hier:

Code: Alles auswählen

KatiAlexa_Sprich.sendCommand( 'Das ist ein Test, ob die Echo funktioniert' )

abschicke, dauert es ewig, bis die Alexa redet.

Zuerst dachte ich, liegt bestimmt an Amazon. Dann habe ich das Script "alexa_remote_control.sh" heruntergeladen:
https://blog.loetzimmer.de/2017/10/amaz ... -echo.html

Das Script soll ja auf demselben Mechanismus wir das OH Binding basieren. Allerdings, wunderbar: 1-2 Sek. Verzögerung, maximal.

Code: Alles auswählen

 alexa_remote_control.sh -d "Kati Alexa" -e speak:'Guten_Appetit!'
Den 2. Faktor habe ich in das Script eingetragen, und zuvor mit oathtool bei Amazon registriert, hat wunderbar geklappt.

Jetzt könnte ich mit dem Exec-Binding das Script aufrufen, aber lieber wäre mit natürlich, das "Amazon Echo Control Binding"
ohne Verzögerung zum laufen zu bekommen.

Hat jemand eine Idee, warum sich meine Alexa mit dem Script anders verhält als mit OH ?
Hat das was mit der Authentifizierung zu tun ? IMmerhin musste ich in OH nichts mit oathtool machen ?

Danke für Eure Hinweise !

Guido

mors80
Beiträge: 8
Registriert: 6. Aug 2020 21:25
Answers: 0

Re: Alexa Text To Speech

Beitrag von mors80 »

Ich häng mich hier mal dran... gleiches Problem, aber erst seit ca. 3 Wochen nach einem ungeplanten Stromausfall. Vorher immer problemlos funktioniert.

Benutzeravatar
peter-pan
Beiträge: 2573
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Alexa Text To Speech

Beitrag von peter-pan »

Der sendMessage-Channel ist von der Bridge. Ich weiss zwar nicht genau für was der ist, aber ich sage einfach einmal der ist der falsche.

Jedes Gerät hat einen eigenen Channel(textToSpeech).

Ein Item sieht ungefähr so aus(Textform):

Code: Alles auswählen

String Show_TextToSpeech "Sprich"   <show_amazon>    (gShow8Peter)   ["Point"] {channel="amazonechocontrol:echoshow:alexa:echoshow8_1:textToSpeech"}
und eine Beispiel-Regel dazu:

Code: Alles auswählen

rule "alexa TextToSpeach"

 when 
   Item Dummy_blind changed to ON   // Test-Switch
 then
   Show_TextToSpeechVolume.sendCommand(40)
//   Show_TextToSpeech.sendCommand("Hallo Claudia du Luder. Peter ist ein Lieber")  // Sagt etwas "Nettes" zu deiner "Liebsten per Alexa" ;-)
   Show_TextToSpeech.sendCommand("Hallo Claudia du bist meine Lieblingsfrau")  // Sagt etwas "Nettes" zu deiner "Liebsten per Alexa" ;-)
   Show_TextToSpeech.sendCommand("aber mach mir endlich was zu Essen. Sonst wird Nummer 29 meine Lieblingsfrau")  // Sagt etwas "Nettes" zu deiner "Liebsten per Alexa" ;-)
   Show_TextToSpeechVolume.sendCommand(0)
end
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian

mors80
Beiträge: 8
Registriert: 6. Aug 2020 21:25
Answers: 0

Re: Alexa Text To Speech

Beitrag von mors80 »

Die Items sind auch alle einzeln angelegt, also pro Gerät:

Code: Alles auswählen

String Echo_Kueche_TTS                    "Text to Speech"                        (Alexa_Kueche) {channel="amazonechocontrol:echo:mainaccount:echo_kueche:textToSpeech"}
Das Ganze hat ja auch mittlerweile Jahre funktioniert.
Funktioniert ja auch immernoch, wenn man von der Verzögerung von 10min und mehr mal absieht.
Was ich mittlerweile noch ausprobiert habe:
- Update OH 3.3.0
- Update echo binding auf neueste Version
- Neuinstallation OH auf anderem Windows-PC
- Netzwerkkabel getauscht
- Netzwerkkabel auf anderen Switch aufgelegt
- Die anderen üblichen Verdächtigen ausgeschlossen (AntiVirus, Firewall, mehrfache Neustarts, etc.)
- Performance-Analyse des ganzen Systems
- Umstellung auf 2FA im Amazon-Acc

Hat alles genau nichts gebracht.

Gibts hier jemandem, dem die DEBUG-Log-Ausgaben des Bindings was sagen?
Vielleicht sieht man hier was falsch läuft.

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: Alexa Text To Speech

Beitrag von sihui »

mors80 hat geschrieben: 27. Okt 2022 08:21 - Update echo binding auf neueste Version
Hast du schon mal das vom ursprünglichen Entwickler erzeugte alternative Binding über smarthome/j probiert?
Läuft bei mir nun schon seit einem Jahr ohne jegliche Probleme und es gibt auch keine Verzögerungen (und gab es auch nocn nie).

Anleitung gibt es hier:

https://community.openhab.org/t/smartho ... g/138789/7

Statt TCP/UDP Binding musst du dann eben das Amazon Echo Control Binding installieren.
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

mors80
Beiträge: 8
Registriert: 6. Aug 2020 21:25
Answers: 0

Re: Alexa Text To Speech

Beitrag von mors80 »

Jo, das hatte ich auch schon versucht.
Hab mittlerweile die Ursache gefunden:
Das Mesh-Netzwerk hat nicht mehr richtig funktioniert.
Keine Ahnung, warum nur TTS betroffen war, aber nach einem Neustart des Mesh-Netzwerks läufts jetzt wieder.
Gilt also wie immer: erstmal (alles) neustarten :)

Danke!

mors80
Beiträge: 8
Registriert: 6. Aug 2020 21:25
Answers: 0

Re: Alexa Text To Speech

Beitrag von mors80 »

Falls hier mal jmd drüber stolpert: Tatsächlich ist das vor ca. drei Wochen wieder passiert. Teilweise Verzögerungen in der Sprachausgabe von 90min.
Wieder alles neu gestartet, dann sogar openhab auf einem neuen Server neu aufgesetzt, Netzwerkverkabelung geprüft und geändert, keine Besserung.
Letztendlich tts deaktiviert und über openhab - webaudio und google minis ausgegeben.
Bin dann auf eine ähnliche Meldung mit dem Hue-Binding gestoßen und habe daraufhin zwei Dinge geändert:
- alle nicht benötigten Bindings deaktiviert (IPCam-Binding, DLink, HTTP-Binding, Exec-Binding)
- runtime.cfg geändert: org.openhab.threadpool:thingHandler = 20

Seitdem läufts wieder perfekt.

J-N-K
Beiträge: 126
Registriert: 20. Jun 2020 12:21
Answers: 4
Wohnort: Gelsenkirchen, NRW

Re: Alexa Text To Speech

Beitrag von J-N-K »

Also wenn du den Threadpool so weit aufdrehen musst, läuft irgendwas schief. Vermutlich blockiert ein Binding Threads, wenn das noch aktiv ist, wird es das Problem wahrscheinlich nur weiter in die Zukunft verschieben.
openHAB 4.0.0-SNAPSHOT - - local build -
APU2, 4GB RAM, 32GB SSD, Debian Buster
openHAB Core/Distro/Addons & SmartHome/J Maintainer

Antworten