Amazon Echo Remote Control

Ok, wenn TextToSpeechVolume schonmal funktioniert, können wir mal weiter sehen…

Schick mir mal den gesamten Code (gerne auch per PM), mit dem du versucht TextToSpeechEx aufzurufen - der schien mir zu mindest in deinem obigem Beispiel nicht ganz korrekt zu sein.

ECHOREMOTE_TextToSpeechEx(31243, $TextAlexa,$arEchoID,[‚volume‘ => $VolumeAlexa]);
In $VolumeAlexa steht das Volume als integer 0-100. In $arEchoID stehen die ID’s der Geräte auf die ausgegeben wird. Je nachdem welches Gerät eingeschaltet ist.
31243 ist die ID von dem Echo Gerät welches immer an ist.
Wenn ich an der gleichen Stelle im Code ECHOREMOTE_TextToSpeechVolume(33414, $TextAlexa,$VolumeAlexa);

einsetze dann funktioniert es. 33414 ist das Echo Gerät vor dem ich sitze. Nicht das im Wohnzimmer

Ist das exakt der Code? Bei volume wären dann schonmal die Anführungszeichen falsch.

Der Editor ändert das?? Ich weiss nicht warum. Es funktioniert ja im Code es wird lauter nur nicht wieder leiser.

ECHOREMOTE_TextToSpeechEx(31243, $TextAlexa,$arEchoID,['volume' => $VolumeAlexa]);

Danke @zman0801, dass ich mir das bei dir mal ansehen durfte und auch für den Tip mit den ausgeschalteten Echos. Es scheint so zu sein, dass die gesamte Befehls-Sequenz von Alexa abgebrochen wird, wenn ein Gerät nicht erreichbar ist. Das führt dann dazu, dass auch die Lautstärke der übrigen Geräte, die in der gleichen Sequenz angesprochen wurde, auch nicht wieder zurück gesetzt wird.

Ich prüfe nun vorab den online-Status der Geräte und schließe Geräte aus, die offline sind. Da der online-Status aber erst etwa 10min nachdem man das Gerät ausgeschaltet hat von Alexa auch so erkannt wird, kann immer noch der o.g. Fall auftreten - das sollte aber wesentlich seltener passieren.

Gibt es die Möglichkeit den Onlinestatus in der Instanz anzuzeigen?

Im development-Zweig gibt es nun die Möglichkeit, eine Variable für den Online-Status anzulegen.

Es gibt eine neue Test-Version des Forks:

Changelog [Branch: development]
Version 2.2 (development built 25)

  • Neu: Favoriten
    • Variable zum einfachen Starten von Musik verschiedener Musikanbieter
    • Favoritenliste kann in Instanz-Konfiguration editiert werden
    • verwendet intern die Funktion PlayMusic() (siehe Dokumentation neuer Funktionen)
    • Favoriten sollen zukünftig die TuneIn-Senderliste ersetzen. Eine Migrationsfunktion vereinfacht die Übernahme der TuneIn-Sender in die Favoritenliste
  • Weitere Neuerungen:
    • TextToSpeechVolume() und TextToSpeechEx() ändern die Lautstärke der Ansage und setzen sie danach wieder zurück
    • AnnouncementToAll() führt Ansagen auf allen im Account registrierten Geräten aus
    • StopAll() stoppt Musikwiedergabe auf allen im Account registrierten Geräten
    • Variable für Online-Status des Echo-Gerätes
    • Alle Variablen können in der EchoRemote-Instanz de-/aktiviert werden
    • Player-Status wird Ereignis-basiert aktualisiert (so kann das Aktualisierungintervall der EchoRemote-Instanz größer gewählt werden - empfohlen: größer 60 sec.)
  • Change:
    • TextToSpeechEx() zusätzlicher options-Parameter muss übergeben werden (siehe Dokumentation neuer Funktionen)
    • Assoziationen der VariablenProfile ECHO.Mute und ECHO.Remote angepasst
    • Variablen, die in der Instanz-Konfiguration deaktiviert wurden, werden nun gelöscht
    • Interner Datenfluss vereinheitlicht
    • Nicht-unterstützte Funktionen entfernt (PlayAlbum, PlaySong, PlayPlaylist, PlayAmazonMusic, PlayAmazonPrimePlaylist, GetAmazonPrimeStationSectionList, SendDelete, JumpToMediaId)
  • Fix:
    • SetVolume() nutzt alternative Methode, sofern der Aufruf fehlgeschlagen ist
2 „Gefällt mir“

… Danke für das Modul !!!

Hallo, ich erhalte folgende Fehlermeldung wenn ich einen Sender starte:

kann es leider nur als Screenshot hochladen.
Die Sender laufen aber trotzdem.

Jemand eine Idee was kaputt sein könnte?

Gruß Horst

Mach nochmal ein Update, ich habe den Fehler gerade gefixt.

Super, hat geklappt, Danke für den Fix.

Ab sofort sind aktuelle Versionen des Moduls wieder im Module-Store verfügbar

Ich habe nun auch die Betreuung des Moduls im Module-Store übernommen, sodass neue Versionen auch dort wieder verfügbar sind. An dieser Stelle nochmal einen großen Dank an @Fonzo für die Entwicklung des Moduls.

Aktuelle Version im Module-Store:
Version 2.2 (2023-04-29)

  • Neu: Favoriten
    • Variable zum einfachen Starten von Musik verschiedener Musikanbieter
    • Favoritenliste kann in Instanz-Konfiguration editiert werden
    • verwendet intern die Funktion PlayMusic() (siehe Dokumentation neuer Funktionen)
    • Favoriten sollen zukünftig die TuneIn-Senderliste ersetzen. Eine Migrationsfunktion vereinfacht die Übernahme der TuneIn-Sender in die Favoritenliste
  • Unterstützung für MediaPlayer der neuen Visualisierung vorbereitet
    • Standard-Variablenprofile für Mediaplayer-Steuerung werden bevorzugt verwendet, sofern vorhanden
    • Assoziationen der Profile der Variablen Fernbedienung und Mute geändert (ggf. sind Anpassungen in Skripten, Ablaufplänen und Events notwendig)
  • Ansagen:
    • TextToSpeechVolume() und TextToSpeechEx() ändern die Lautstärke der Ansage und setzen sie danach wieder zurück
    • AnnouncementToAll() führt Ansagen auf allen im Account registrierten Geräten aus
    • TextToSpeechToAll() führt Ansagen auf allen im Account registrierten Geräten aus
  • Weitere Neuerungen:
    • StopAll() stoppt Musikwiedergabe auf allen im Account registrierten Geräten
    • Variable für Online-Status des Echo-Gerätes
    • Alle Variablen können in der EchoRemote-Instanz de-/aktiviert werden
    • Player-Status wird Ereignis-basiert aktualisiert (so kann das Aktualisierungintervall der EchoRemote-Instanz größer gewählt werden - empfohlen: 60 sec.)
  • Change:
    • TextToSpeechEx() zusätzlicher options-Parameter muss übergeben werden (siehe Dokumentation neuer Funktionen)
    • Variablen, die in der Instanz-Konfiguration deaktiviert wurden, werden nun gelöscht
    • Interner Datenfluss vereinheitlicht
    • Nicht-unterstützte Funktionen entfernt (PlayAlbum, PlaySong, PlayPlaylist, PlayAmazonMusic, PlayAmazonPrimePlaylist, GetAmazonPrimeStationSectionList, SendDelete, JumpToMediaId)
  • Fix:
    • SetVolume() nutzt alternative Methode, sofern der Aufruf fehlgeschlagen ist

Vollständiger Changelog

2 „Gefällt mir“

Danke.
Wie geht die Migration auf der Version im Modulstore?

Hi,
ich schätze Modul Control öffnen dann kommt ein Hinweis das man auf Store updaten kann und dann wird Echo Remote 2 installiert. Ich habs mal gemacht und auf den ersten Blick sieht es gut aus. Genaueres weiß ich aber erst in 3-4 Stunden wenn Alexa mit mir spricht oder nicht.

Ralf

Bei mir hat das Update ohne Probleme funktioniert. Auch der Teil mit den Refresh Token.
Gut gemacht @hirschbrat

Ich hätte eventuell noch einen Änderungswunsch.
Ich hab bei mir auf die Funktion ECHOREMOTE_TextToSpeechEx() umgestellt, da diese alle Echos auf einmal bedienen kann. Vorher hab ich Ansagen einzeln gemacht. Der Parameter für das Volume gefällt mir gut, allerdings wäre es toll, wenn auch hier die Lautstärke auf den vorigen Wert wei bei ECHOREMOTE_TextToSpeechVolume() zurückgesetzt werden könnte.
Hintergrund: Bei Alarmen stell ich die Lautstärke auf 100%. Ist der Alarm beendet, dann bleiben die Echos auf 100%. Der nächste der Musik hört, wird fast taub :wink:
Und ja, ein Alarm ist ein Ausnahmezustand und man könnte diesen Punkt vernachlässigen.

Die Lautstärke wird auch bei TextToSpeechEx wieder auf den jeweiligen ursprünglichen Wert zurückgesetzt. Allerdings gibt es hier die Besonderheit, wie @zman0801 herausgefunden hat, dass sobald ein Echo-Gerät aus der Liste nicht erreichbar/ausgeschaltet ist, das Zurücksetzten für alle anderen Geräte auch nicht funktioniert.
Im Modul versuche ich dies dadurch abzufangen, dass ich vorher den online-Status aller Geräte abfrage und nur solche anspreche, die auch online sind. Leider wird der online-Status von Amazon aber mit bis zu 10min Verzögerung bereitgestellt, sodass es daran liegen könnte.
Versuche man den Befehl nur auf die tatsächlich im Betrieb befindlichen Geräte anzuwenden, dann sollte auch der Wert wieder zurückgesetzt werden. Beachte aber auch, dass die Anzeige der Lautstärke in IP-Symcon verzögert sein kann, also am besten in der Alexa-App verifizieren, ob die Lautstärke wieder zurück gesetzt wurde.

Hm, ok. Online sind alle. Lediglich einer ist nicht mit einem Lautsprecher verbunden und gibt mir das als Warnung aus (ein Echo Input).
Allerdings könnten es die FireTV’s sein. Die sind natürlich im Konfigurator sichtbar aber nicht angelegt.


Und da sind natürlich nicht alle online. Außer es werden nur jene Geräte berücksichtigt, die in IPS eingebunden sind.
Das mit dem Update kenne ich. Meine holen sich alle 10 Sekunden sämtliche Änderungen.

Ich habe es jetzt noch einmal mit nur zwei Echos probiert, die sicher online sind. Und hin und wieder funktioniert das Zurücksetzen der Lautstärke, aber nicht immer.
Ist aber nicht weiter schlimm.

So habe ich es auch gemacht. Hat super geklappt.

Danke für das neue Modul. :slightly_smiling_face: