[37_echodevice] Amazon Echo Modul (nicht Alexa)

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

Vorheriges Thema - Nächstes Thema

juergen012

#6285
Moin!!
Nach dem heutigen Update funktioniert speak bei mir. Tolle Arbeit Danke, Danke!
Wenn du ohnehin das Modul anfässt, könntest du den Echo Dot2024 mit einpflegen??

elsif($ModelNumber eq "A3EH2E0YZ30OD6" || $ModelNumber eq "Echo Spot") {return "Echo Spot 2024";}

Danke und Gruß j.

Edit: Nach einem ewrneuten Test funktioniert speak nicht mehr..
Fhem unter Proxmox

mthome

#6286
@michael.winkler,

hab gerade gesehen, dass es für alexa-remote-control einen Fix gibt (https://github.com/thorsten-gehrig/alexa-remote-control) - siehe unter Issues
Vielleicht ist da ja was dabei was hilft.
Hab' das Skript probiert und da klappt die Sprachausgabe.

---Edit---
Also Die Sprachausgabe mittels shellskript funktioniert seit einem Tag zuverlässig

Ich bin jetzt nicht der Perl Experte aber habe mal chatGPT gefragt was die Unterschiede zwischen dem Shellskript und dem Perl Modul in Bezug auf Speak sind:
| FHEM alt (`37_echodevice.pm`)        | Shell-Skript / aktuelles API (`alexa_remote_control.sh`) | Erklärung                                                                                                                                                          |
| ------------------------------------ | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `"type": "Alexa.Speak"`              | `"type": "Alexa.TextToSpeech"`                           | Neuer Typ, sonst keine Sprachausgabe                                                                                                                               |
| `"textToSpeak": "..."`               | `"text": "..."`                                          | Neues Feld für den TTS-Text                                                                                                                                        |
| `"locale": "de-DE"`                  | `"locale": "de-DE"`                                      | Gleich, aber Position im JSON unterschiedlich                                                                                                                      |
| `"deviceSerialNumber": "..."`        | `"deviceSerialNumber": "..."`                            | Gleich                                                                                                                                                             |
| `"customerId": "..."`                | `"customerId": "..."`                                    | Gleich                                                                                                                                                             |
| `"deviceType": "..."`                | `"deviceType": "..."`                                    | Gleich, sollte **vor `text`** stehen                                                                                                                               |
| Reihenfolge in Payload               | Reihenfolge in Payload                                   | FHEM: locale zuerst, textToSpeak zuletzt → kann von Amazon ignoriert werden. Shell-Skript: deviceType → deviceSerialNumber → customerId → locale → text → korrekt. |
| UTF-8 Encoding / Escaping            | UTF-8 Encoding / Escaping                                | FHEM: oft unvollständig → Probleme mit Umlauten, Sonderzeichen. Shell-Skript: korrekt umgesetzt                                                                    |
| Lautstärke-Handling                  | Lautstärke-Handling                                      | FHEM: Volume wird temporär gesetzt, danach wieder zurück → funktioniert, aber JSON-Struktur kann trotzdem blockieren                                               |
| Cookie / Auth                        | Cookie / Auth                                            | FHEM: läuft manchmal ab, kein automatischer Refresh. Shell-Skript: stabil, Cookies werden automatisch aktualisiert                                                 |
| Header (z.B. csrf, X-Amzn-RequestId) | Header                                                   | FHEM: nicht gesetzt → manche Requests ignoriert. Shell-Skript: setzt Header nach Amazon-Vorgabe                                                                    |

KyleK

Als Hinweis von mir:
Ich hatte keine Probleme mit dem Modul, und ich hab vor geraumer Zeit das Attribut ,Server' auf ,alexa.amazon.de' gesetzt.

Vielleicht hat dies was damit zu tun?
FHEM on Futro S940
CUL868
7x MAX! Thermostat, 8x MAX! Fensterkontakte
Conbee II + deConz, TradFri Lampen, Osram Smart+ Steckdosen

MadMax-FHEM

#6288
Zitat von: KyleK am 07 November 2025, 20:04:57Ich hatte keine Probleme mit dem Modul, und ich hab vor geraumer Zeit das Attribut ,Server' auf ,alexa.amazon.de' gesetzt.

Vielleicht hat dies was damit zu tun?
Hmm, ich war auch disconnected...
...da ich das Modul aber nicht so extrem nutze war es mir nicht so wichtig.

Aber eben das Server-Attribut gesetzt, dann NPM_login refresh und: connected (ohne neueste Version).

Mal sehen wie lange.
EDIT: nicht so lange :\

Speak-Test auch erfolgreich...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

LastManStanding

#6289
Zitat von: KyleK am 07 November 2025, 20:04:57Als Hinweis von mir:
Ich hatte keine Probleme mit dem Modul, und ich hab vor geraumer Zeit das Attribut ,Server' auf ,alexa.amazon.de' gesetzt.

Vielleicht hat dies was damit zu tun?

Nein, das ist nur ein anderer Alias, welcher mit der selben IP-Adresse aufgelöst wird.
Ein nslookup auf alexa.amazon.de ergibt:

Name:    d3rsqup3tcxj1a.cloudfront.net
Address:  13.33.53.128
Aliases:  alexa.amazon.de
          layla.amazon.com
          tp.799c43337-frontier.amazon.com


Ich hatte gestern die 37_echodevice.pm ausgetauscht + reboot und danach eine stabile Verbindung - aber ohne Sprachausgabe.
Heute ein Update unter FHEM durchgeführt und die Sprachausgabe funktioniert wieder.
Da sich die 37_echodevice.pm in der Zwischenzeit aber nicht geändert hat, wird die Sprachausgabe schon vorher wieder funktioniert haben - hatte es seit heute Morgen nicht mehr getestet.

Edit:
Nach 30min hat die Sprachausgabe leider wieder versagt.


punker

Ich habe heute festgestellt dass wenn FHEM neu gestartet wurde funktioniert das sounds und speak Kommando für ca. 10 - 20 Sekunden.
Danach nicht mehr.
Werden zwar schon mehr Leute festgestellt haben aber vielleicht hilfts?
LG

Dieter

The truth is out there!

michael.winkler

set speak usw. sollte wieder funktionieren.

Update ist online, wer will kann es ja direkt hier https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/ herunterladen. Ab morgen früh sollte es auch als Update bereitstehen.

mthome

#6292
Danke für das Update - erster Test erfolgreich  8)

Was mir noch aufgefallen ist (das ging aber vorher auch schon nicht):  Wenn ein Speak auf das Device "Überall" gesendet wird funktioniert das nicht. Das geht z.B. bei dem Shellskript auch

Toto1973

Vielen Dank für das Update!
Hier geht nun auch wieder die Sprachausgabe :-)
Raspberry PI2, Rademacher DuoFern Stick, CUL, 2 x SCC,  JeeLink 868 Mhz, JeeLink 433 Mhz, 3x Magic UFO LED WiFi Controller, 4x MAX BC-RT-TRX-CyG, 2x MAX Fensterkontakt, 5x Rademacher Gurtwickler, 6x TX29DTH-it, 2x TX25-it als Helligkeitssensor, 1X HM-ES-PM, 6x Sonoff, 7x G-Homa, PIR-1000

Falkenstein

Die Sprachausgabe sowie Sounds fumktionieren nach dem heutigen Update wieder. Vielen Dank für das Update  :)

Vielleicht ist es ja möglich,das Device "Überall" mit zu fixen,wenn es denn möglich ist?


Beste Grüße
Falkes

richterh

ja, funktioniert wieder. Vielen Dank für die Hilfe !

punker

LG

Dieter

The truth is out there!

michael.winkler

Zitat von: juergen012 am 07 November 2025, 10:41:45Moin!!
Nach dem heutigen Update funktioniert speak bei mir. Tolle Arbeit Danke, Danke!
Wenn du ohnehin das Modul anfässt, könntest du den Echo Dot2024 mit einpflegen??

elsif($ModelNumber eq "A3EH2E0YZ30OD6" || $ModelNumber eq "Echo Spot") {return "Echo Spot 2024";}

Danke und Gruß j.

Edit: Nach einem ewrneuten Test funktioniert speak nicht mehr..
Habe es in das neue update mit eingebaut

sawtooth

Hallo,

Danke für das Update! Bei mir funktioniert die Sprachausgabe mit dem Befehl leider nicht. Ich bin connected, aber trotzdem funktioniert die Sprachausgabe bei mir nicht. Kann mir jemand einen Tipp geben?

Vielen Dank!

michael.winkler

Zitat von: sawtooth am 08 November 2025, 13:00:31Hallo,

Danke für das Update! Bei mir funktioniert die Sprachausgabe mit dem Befehl leider nicht. Ich bin connected, aber trotzdem funktioniert die Sprachausgabe bei mir nicht. Kann mir jemand einen Tipp geben?

Vielen Dank!

Hast du ein Update gemacht, oder das Modul manuell heruntergeladen und den Server neu gestartet?