Amazon Echo Remote Control

Habe ich jetzt korrigiert. Kannst Du das mal nach der aktuellen Anleitung probieren und Feedback geben wo noch etwas in der Anleitung zu ergänzen ist bzw. unklar.

Ist ergänzt worden.

Auf den Echos zum Beispiel durch klingeln dann ausgelöst

Da müsste sich IP-Symcon eher selber drum kümmern, das hatte ich aber schon mal angeregt.
Letztlich geht das aber wohl nur mit einem Custom Skill. zumindest so viel ich informiert bin.

Passt und funktioniert bestens, mir war alles klar :slight_smile: Vielen Dank!

Ich hätte eine Frage. Ich würde gerne bei gewissen Fehlern eine Sprachdurchsage machen. Derzeit ist es so geöst, dass ich alle Echos in der Liste durchgehe unt mit T2S auf die Instanz den Text sagen lass. Leider funktioniert das nicht immer. Einmal fehlt der eine, mal der andere.
Ich würd das gerne mit einer sog. Ankündigung machen. Kann ich das mit dem Modul realisieren oder vielleicht auch mit ECHOREMOTE_CustomCommand?
Vorallem würde mich interessieren, welche Möglichkeiten ich mit CustomCommand hab. Gibts da wo eine Doku oder einen Link? Hört sich extrem spannend an.

Super, vielen Dank! :+1:

Hallo Fonzo,

danke für das tolle Modul. Habe es erst vor kurzem installiert, läuft aber super.

Habe aber auch ein Echo Gerät, welches als „unbekanntes Gerät“ angezeigt wird.
Es ist ein Echo Link, Gerätetyp:A27VEYGQBW3YR5

Würde mich freuen, wenn Du es bei Gelegenheit auch mit einpflegen könntest.

Danke!

LG Tommy

Hallo und vielen Dank für die Rückmeldung. Ich habe das Gerät ergänzt, in der Beta ist es schon verfügbar, in der Stable sollte es in den nächsten Tagen erscheinen nach Freigabe von IP-Symcon.
Ist ja spannend was Amazon so alles an neuen Geräten heraus bringt. Wie zufrieden bist Du mit dem Gerät bisher? Das Gerät selber erlaubt aber keine Spracheingabe und Ausgabe, dazu ist zusätzlich ein weiteres Echo Gerät notwendig oder?

Hallo Fonzo,

danke für die schnelle Umsetzung.
Ja, für die Steuerung vom Echo Link ist ein weiterer Echo erforderlich. Der Echo Link selbst, spielt eher im Hintergrund. Sicherlich ist es vom Einsatzzweck abhängig, ob man den Echo link jetzt unbedingt braucht oder nicht. Aber für mein Setup, war es genau was mir noch gefehlt hat. Wichtig war mir die komplette Digitale Übertragung vom Ton. Der Echo Link hängt bei mir, über spdif zwischen TV und aktiven Lautsprechern. Somit wird auch der TV Ton, oder alles andere, was über den TV angeschlossen ist, stumm geschaltet, wenn ich mit der Alexa kommuniziere und das Musik streaming läuft auch über den Echo Link in Digitaler Qualität, was über ein andres Echo Gerät eben nur Analog möglich ist.

Aber es ist bekanntlich nicht alles Gold was glänzt und leider schaltet der Echo Link nicht zuverlässig auf den TV Ton zurück, wenn ich zwischendurch mal Musik höre und die Wiedergabe wieder stoppe.

Ich finde die Software könnte praxisnäher umgesetzt sein, aber sonst bin ich eigentlich ganz zufrieden mit dem Echo Link.

LG Tommy

Hallo,
ich kämpfe gerade etwas mit der ECHOREMOTE_StartAlexaRoutine Funktion. Ich hab mir ein kleines Skript gebaut, das ich über den Amazon Alexa Skill als Szene eingebunden habe, das Enocean und Tasmota Steckdosen schaltet, und über den Harmony den Fernseher einschaltet, das funktioniert auch alles.
Jetzt wollte ich gerne über den Echo Remote Control Skill noch zusätzlich eine Alexa Steckdose schalten, und kriege es nicht hin.
Mein Befehl ist

ECHOREMOTE_StartAlexaRoutine(14552, ‚jetzt Calcium‘)

Ich kann über ein Skript z.B. das Flashbriefing wiedergeben d.h. die ID des Echos ist korrekt. Der Routinenname ist so hinterlegt (ich hab absichtlich was „komisches“ genommen, auch mit der eigentlichen Routine die ich eingerichtet habe, geht es nicht). Der Befehl liefert auch ein „false“ zurück (ich hab ihn mir in ein Hallo Welt If gepackt).
Mach ich irgendwas falsch oder gibt es irgendwelche Probleme mit den Routinen?

Hallo Fonzo,

wo Du gerade dabei bist… :wink:

Ich habe regelmäßig folgende Fehlermeldungen:
24.02.2021, 21:07:32 | AmazonEchoIO | Error: (28) Operation timed out after 6000 milliseconds with 0 bytes received
24.02.2021, 21:07:34 | TimerPool | AmazonEchoIO (AmazonEchoConfigurator #25914) (TimerLastDevice):

Notice: Trying to access array offset on value of type bool in /var/lib/symcon/modules/.store/fonzo.ipsymconechoremote/Echo IO/module.php on line 285

oder:
24.02.2021, 23:40:52 | AmazonEchoIO | Error: (28) Operation timed out after 6001 milliseconds with 0 bytes received
24.02.2021, 23:40:52 | TimerPool | Echo Dot Marie (EchoUpdate):

Notice: Trying to access array offset on value of type null in /var/lib/symcon/modules/.store/fonzo.ipsymconechoremote/Echo Device/module.php on line 502

Geht immer wieder um die Zeile 285 bzw. 502.

Vielleicht magst Du Dir das bei Gelegenheit mal anschauen… :blush:

Joachim

Hallo, an sich machst Du nichts falsch. ich habe das selber aktuell mal mit einer Routine probiert und bei mir geht nach wie vor alles.

Also bei mir steht z.B.
Alexa, ich verlasse das Büro
in der Alexa App.

Dann steht in IP-Symcon dann

 $utterance = "ich verlasse das Büro";  
 EchoRemote_StartAlexaRoutine(12345, $utterance);

Wenn Du die Geräte Instanz selber öffnest und dort rechts oben auf den Käfer (Debug) drückst, öffnet sich ein Debug Fenster.
Was steht denn da drinnen wenn Du Dein Skript ausführst?

Schau mal in der aktuellen Beta ob der Fehler noch bei Dir auftritt bzw. die Fehlermeldung kommt.

Hallo,
für die Methode bekomme ich:

SendData | Method: BehaviorsAutomations, Getfields: null, Postfields: null, URL: , Option Post: 0, Automation: null
SendData | Result: „{„http_code“:404,„header“:[„HTTP\/1.1 404 Not Found\r“,„Content-Length: 0\r“,„Connection: keep-alive\r“,„Server: Server\r“,„Date: Thu, 25 Feb 2021 22:07:05 GMT\r“,“ …

Adhoc würd ich ja sagen, das 404 ist nicht gut, aber warum das kommt versteh ich nicht so ganz …

Ach ja, Authentifizierung ist über 2FA.

Mach ich danach ein Flashbriefing kommt:
SendData | Method: GetCustomerID, Getfields: null, Postfields: null, URL: , Option Post: 0, Automation: null
SendData | Result: „{„http_code“:200,„header“:“",„body“:""}"
SendData | Method: BehaviorsPreview, Getfields: null, Postfields: {„deviceSerialNumber“:"",„deviceType“:„A32DOYMUN6DTXA“,„customerId“:"<buchstabenkombi",„type“:„Alexa.FlashBriefing.Play“}, URL: , Option Post: 0, Automation: null

Welche Versionsnummer hat denn das Modul bei Dir und welche Version von IP-Symcon nutzt Du zur Zeit?

So, die Version ist 5.5, Revision f9de3bea4595 (04.12.2020) auf einem Docker Container auf einem Qnap

Für Echo Remote war auch ein Update verfügbar, das hab ich ausgeführt (Version ist aber immer noch 1.1 #14 (11.10.2019). Dadurch hat sich bedingt etwas geändert, das 404 kommt nicht mehr, aber mit dem 200 ändert sich leider auch nix - hab zwei verschiedene Routinen versucht, die das gleiche machen, keine geht.

26.02.2021, 13:43:47 |             SendData | Method: BehaviorsAutomations, Getfields: null, Postfields: null, URL: , Option Post: 0, Automation: null
6.02.2021, 13:43:47 |             SendData | Result: "{\"http_code\":200,\"header\":[\"HTTP\\\/1.1 200 OK\\r\",\"Content-Type: application\\\/json\\r\",\"Transfer-Encoding: chunked\\r\",\"Connection: keep-alive\\r\",\"Server: Server\\r\",\"Date: Fri, 26 Feb 2021 12:43:55 GMT\\r\",\"x-amz-rid: <somestring>\\r\",\"Vary: ....
(Hier kommt dann jede Menge Text, die Routinen sind so drin, wie ich die utterance gesetzt habe)

Amazon hatte es kürzlich was bei Routinen angepasst, die Änderung ist noch nicht so lange her.
Aktuell ist die Modulversion 1.1. #17, suche doch nochmals nach einem Update und führe das dann aus und gibt dann nochmals Rückmeldung ob der Fehler immer noch auftritt. Ich kann das mit der 1.1 #17 bei mir nicht nachstellen, weis aber aus dem Stegreif auch nicht mehr ob die Änderung in der #14 schon vorhanden war.

Jetzt ist es 1.1 #17 (aber immer noch 11.10.2019) - hab auch nochmal komplett neu installiert.

Resultat ist weiter:

26.02.2021, 17:06:53 | SendData | Method: BehaviorsAutomations, Getfields: null, Postfields: null, URL: , Option Post: 0, Automation: null
26.02.2021, 17:06:53 | SendData | Result: "{„http_code“:200,„header“:[„HTTP\/1.1 200 OK\r“,„Content-Type: application\/json\r“,„Transfer-Encoding: chunked\r“,„Connection: keep-alive\r“,„Server: Server\r“,„Date: Fri, 26 Feb 2021 16:07:00 GMT\r“,„x-amz-rid: \r“,„Vary: Content-Type,Accept-Encoding,X-Amzn-CDN-Cache,X-Amzn-AX-Treatment,User-Agent\r“,„X-Cache: Miss from cloudfront\r“,„Via: 1.1 .cloudfront.net (CloudFront)\r“,„X-Amz-Cf-Pop: FRA2-C2\r“,"X-Amz-Cf-Id:

Kannst Du mir mal einen Hinweis geben was das für ein Echo Gerät ist, auf dem Du die Routine ausführen willst und wie diese Routine im Detail aussieht?
Ich kann das auf die schnelle mit der Version so nicht nachstellen, bzw. bei mir lässt sich eine Routine ausführen.
Der Rest funktioniert aber bei Dir, nur das mit der Routine nicht?

Ich hab es mit einem Echo Dot 2nd Generation probiert, und einem Echo Dot 3rd Generation, mit dem habe ich jetzt die letzten Tests gemacht. Der Echo Dot 2 steht im 1.Raum, der Echo Dot 3 im 2. Raum, in dem auch der Echo Smart Plug Steckdose (Kaufjahr 2018).

Eigentlich will ich das ganze als Teil von einer Szene laufen lassen, die im 1. Raum (1) Licht (an Enocen Aktor) und (2) Fernseher (an Tasmota Plug) ausschaltet, im 2. Raum (3) Fernseher (via Harmony) und diese (4) Smart Plug Steckdose (über EchoRemote) einschaltet. 1-3 funktioniert auch.

Für Testzwecke hab ich mir dann ein weiteres Skript angelegt.

Für die Steckdose hab ich bereits die Alexa-Routine „Schalte Koralle ein“ und „Schalte Koralle aus“, die auch sprachgesteuert ohne Probleme funktionieren. Um auszuschließen, dass es daran liegt, hab ich nochmal eine andere Routine (ein bewusstes „merkwürdiges“ Kommando) eingerichtet, aber auch damit geht es nicht. In dem Response von oben (http 200) ist dann in der Response offensichtlich auch ein Auszug der Routinen enthalten. Nachfolgend ist mein Test-Skript in den verschiedenen Ausprägungen. FlashBriefing und Text To Speech funktioniert, nur StartAlexaRoutine mag nicht.

<?php
//ECHOREMOTE_FlashBriefing(14552);
$utterance = "Jetzt Calcium";
//$utterance = "Schalte Koralle ein";
//ECHOREMOTE_StartAlexaRoutine(14552, $utterance);

// ECHOREMOTE_TextToSpeech(14552, $utterance);
 // For Testing only:
if (ECHOREMOTE_StartAlexaRoutine(14552, $utterance)) {
    Echo "Hallo Welt";
} else {
    Echo "schade Welt";
}
?>

Ich kann die Alexa Smart Plug natürlich gegen eine Tasmota Dose tauschen, aber das ist so ein bisschen das Eingeständnis einer Niederlage … Smart Home Devil 1, me 0 :frowning:

@kbesold Habe Dich also richtig verstanden, das an sich grundsätzlich Routinen funktionieren und sich aus von IP-Symcon aus starten lassen, nur in dem Moment, in dem eine Echo Smart Plug Steckdose in einer Routine eingebaut ist, funktioniert dann das Starten der Routine auch nicht mehr?

Dann scheint da ja ein direkter Zusammenhang zu bestehen mit diesem einem Steckdosentyp, was auch immer an der so viel anderes ist.

Ich selber besitze so eine Steckdose nicht um das nachzustellen, hat denn sonst noch jemand so eine Steckdose am laufen und kann das so nachstellen?

Handelt es sich bei dieser Steckdose um die Amazon Smart Plug (WLAN-Steckdose)?