[37_echodevice] Amazon Echo Modul (nicht Alexa)

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

Vorheriges Thema - Nächstes Thema

87insane

#2340
Zitat von: michael.winkler am 18 Februar 2019, 08:04:28
Die Wiederholungen von Terminen wird jetzt angezeigt. Habe hier die Doku schon erweitert.


# 2019.02.17 v0.0.51y
# - BUGFIX:  NPM Proxy IP Adresse / Port usw.
#            set routine_play - Unterstützung Smart Home Geräte
#            set speak - Sonderzeichen " entfernen
#            get conversations https://forum.fhem.de/index.php/topic,82631.msg903955.html#msg903955
#            Bluetooth Geräte bereinigen
# - FEATURE: Unterstützung AppRegisterLogin per NPM
#            Unterstützung A10L5JEZTKKCZ8 VOBOT
#            Unterstützung A1JJ0KFC4ZPNJ3 ECHO Input
#            Unterstützung AKPGW064GI9HE Fire TV Stick 4K
#            set speak_ssml https://docs.aws.amazon.com/polly/latest/dg/supported-ssml.html
#            https://developer.amazon.com/de/docs/custom-skills/speech-synthesis-markup-language-ssml-reference.html
#            get status - Statusinformationen zum Modul
#            Attribut "ignorevoicecommand" https://forum.fhem.de/index.php/topic,82631.msg906424.html#msg906424
#            Alarme "_recurringPattern" als Reading
# - CHANGE:  https://forum.fhem.de/index.php/topic,82631.msg869460.html#msg869460



Guten Morgen,

was sagst du zu der Geschichte, dass alarm_count im Moment eines Events nicht die korrekte Anzahl vor hält? Das hat mich Anfänger schön lange aufgehalten beim programmieren meines kleinen Scriptes.


EDIT: Das mit den Wiederholungen scheint gut aus zu sehen bei mir. Werde mein Script anpassen müssen um es auch hier sauber ans laufen zu bekommen. Das wird nach meiner Fehlersuche bei anderen Geräten aber erst geschehen. Ggf. ist es ja auch was, das Script mit in deinem Modul zu übernehmen und als anklickbare Option zu bieten. Oder aber du hast eine bessere Idee. Ich bin ja auch nur blutiger Anfänger was das programmieren angeht. Am einfachsten für mein Script und mich, wäre es wenn die Wecker auf "off" stünden, wenn diese aus sind. Und wenn z.B. ein Wecker jeden Montag an sein soll, dann auch nur an dem Tag auf "on" zu stehen. Demnach müsste ich keine Anpassungen machen, wenn dies auch ein Event erzeugen würde.

EDIT2: Warum bekommt man bzw. ich eigentlich diese ganzen "EchoDevices connected" im Event Monitor. Diese Info kommt immer und immer wieder. Ist das korrekt? Wofür so oft? Kann man das abstellen?

2019-02-18 09:17:03 echodevice EchoDevices connected
2019-02-18 09:17:03 echodevice EchoDevices connected
2019-02-18 09:17:05 echodevice EchoDevices connected
2019-02-18 09:17:07 echodevice EchoDevices connected
2019-02-18 09:17:08 echodevice EchoDevices connected
2019-02-18 09:17:08 echodevice EchoDevices list_SHOPPING_ITEM:
2019-02-18 09:17:08 echodevice EchoDevices connected
2019-02-18 09:17:08 echodevice EchoDevices list_TASK:
2019-02-18 09:17:09 echodevice EchoDevices connected
2019-02-18 09:17:10 echodevice EchoDevices connected
2019-02-18 09:17:12 echodevice EchoDevices connected
2019-02-18 09:17:13 echodevice EchoDevices connected

michael.winkler

Zitat von: 87insane am 18 Februar 2019, 08:32:21

Guten Morgen,

was sagst du zu der Geschichte, dass alarm_count im Moment eines Events nicht die korrekte Anzahl vor hält? Das hat mich Anfänger schön lange aufgehalten beim programmieren meines kleinen Scriptes.


EDIT: Das mit den Wiederholungen scheint gut aus zu sehen bei mir. Werde mein Script anpassen müssen um es auch hier sauber ans laufen zu bekommen. Das wird nach meiner Fehlersuche bei anderen Geräten aber erst geschehen. Ggf. ist es ja auch was, das Script mit in deinem Modul zu übernehmen und als anklickbare Option zu bieten. Oder aber du hast eine bessere Idee. Ich bin ja auch nur blutiger Anfänger was das programmieren angeht. Am einfachsten für mein Script und mich, wäre es wenn die Wecker auf "off" stünden, wenn diese aus sind. Und wenn z.B. ein Wecker jeden Montag an sein soll, dann auch nur an dem Tag auf "on" zu stehen. Demnach müsste ich keine Anpassungen machen, wenn dies auch ein Event erzeugen würde.

EDIT2: Warum bekommt man bzw. ich eigentlich diese ganzen "EchoDevices connected" im Event Monitor. Diese Info kommt immer und immer wieder. Ist das korrekt? Wofür so oft? Kann man das abstellen?

2019-02-18 09:17:03 echodevice EchoDevices connected
2019-02-18 09:17:03 echodevice EchoDevices connected
2019-02-18 09:17:05 echodevice EchoDevices connected
2019-02-18 09:17:07 echodevice EchoDevices connected
2019-02-18 09:17:08 echodevice EchoDevices connected
2019-02-18 09:17:08 echodevice EchoDevices list_SHOPPING_ITEM:
2019-02-18 09:17:08 echodevice EchoDevices connected
2019-02-18 09:17:08 echodevice EchoDevices list_TASK:
2019-02-18 09:17:09 echodevice EchoDevices connected
2019-02-18 09:17:10 echodevice EchoDevices connected
2019-02-18 09:17:12 echodevice EchoDevices connected
2019-02-18 09:17:13 echodevice EchoDevices connected


Das Problem mit den connected Einträge wird mit der nächsten Version behoben sein.

Das mit dem alarm_count ist so, dass diese Wert aus Sicht des Event Monitors erst später geschrieben wird. Daher hingt der scheinbar um 1 nach. Werde mal schauen ob ich das Verhalten ändern kann.

87insane

Ne ne... Es wird geschrieben ABER, wenn mein script mir Alarm_Count arbeitet, wird immer die zahl, für einen kurzen Moment, rein geschrieben, die sich meldet.

Also wenn von als Beispiel 16 Weckern, sich Wecker 03 meldet ist die Anzahl ganz kurz auch nur 03. hab mir selber nun einen zähler gebaut. Script und info dazu auf den vor Seiten hier. Meine zählung ist korrekt und bisher läuft sie sauber. Das script selber habe ich seit 4 Tagen im Test und finde es super mit deinem Modul zusammen.

Gesendet von meinem LG-H850 mit Tapatalk


PingPong

Hallo Michael,

klasse, 1000 Dank erstmal, dass Du mein Bose Device in Dein Modul aufgenommen hast.
Grundsätzlich kann ich nun die Wiedergabe steuern und bekomme auch diverse Readings angezeigt.
Was allerdings leider nicht funktioniert, ist die Nutzung als Wiedergabegerät via set...speak. Das passiert rein gar nichts.
Hast Du da noch Ideen?

VG
Marc

michael.winkler

Zitat von: PingPong am 18 Februar 2019, 21:19:04
Hallo Michael,

klasse, 1000 Dank erstmal, dass Du mein Bose Device in Dein Modul aufgenommen hast.
Grundsätzlich kann ich nun die Wiedergabe steuern und bekomme auch diverse Readings angezeigt.
Was allerdings leider nicht funktioniert, ist die Nutzung als Wiedergabegerät via set...speak. Das passiert rein gar nichts.
Hast Du da noch Ideen?

VG
Marc
Kannst du ein routine bauen die etwas auf den bose Systemen sagt?


Gesendet von iPhone mit Tapatalk

awel

#2345
Zitat von: michael.winkler am 18 Februar 2019, 08:04:28
Die Wiederholungen von Terminen wird jetzt angezeigt. Habe hier die Doku schon erweitert.


# 2019.02.17 v0.0.51y
...
...
#            Alarme "_recurringPattern" als Reading


Hallo Michael,
Danke für die neuen Änderungen.

Leider reicht das nicht :-(
Wenn ich heute einen Wecker ohne Wiederholung für Freitag definiere, kann ich den im Modul nicht identifizieren, es fehlt das Datum.

Die api notifications stellt in den json-Daten neben originalTime als Weckzeit auch originalDate als Datum der nächsten Ausführung zur Verfügung.
Es wäre schön, wenn das als Reading zur Verfügung gestellt werden könnte.
So, wie ich das sehe, wird dieses Datum automatisch angepasst: Mein heutiger Wecker hat als originalDate den Wert "2019-02-25", also den nächsten Montag eingetragen.

Entschuldige die Wirren, vG
Achim

PingPong

Jetzt wird es seltsam.
Als Ergebnis auf die Routine sagt das Gerät, dass Audio Ausgaben aktuell vom Gerät nicht unterstützt werden.
Direkt im Anschluss an diese Aussage,gibt es jedoch den in der Routine definierten Satz wieder.

michael.winkler

Zitat von: 87insane am 18 Februar 2019, 10:59:20
Ne ne... Es wird geschrieben ABER, wenn mein script mir Alarm_Count arbeitet, wird immer die zahl, für einen kurzen Moment, rein geschrieben, die sich meldet.

Also wenn von als Beispiel 16 Weckern, sich Wecker 03 meldet ist die Anzahl ganz kurz auch nur 03. hab mir selber nun einen zähler gebaut. Script und info dazu auf den vor Seiten hier. Meine zählung ist korrekt und bisher läuft sie sauber. Das script selber habe ich seit 4 Tagen im Test und finde es super mit deinem Modul zusammen.

Gesendet von meinem LG-H850 mit Tapatalk
Verstehe ich jetzt nicht so ganz. Wie soll sich Wecker 03 melden?

michael.winkler

Zitat von: PingPong am 18 Februar 2019, 22:22:51
Jetzt wird es seltsam.
Als Ergebnis auf die Routine sagt das Gerät, dass Audio Ausgaben aktuell vom Gerät nicht unterstützt werden.
Direkt im Anschluss an diese Aussage,gibt es jedoch den in der Routine definierten Satz wieder.
ja das ist komisch. Kannst Du mal an dem Device das Attribut browser_sava_data auf 1 setzen und dann noch mal einen Speak und auch einen Speak_ssml versuchen. Danach mal mir die beiden HTML Dateien zu senden.

PingPong

Hallo Michael,

meinst Du die beiden ...speak_(ssml_)header Dateien?
Die hab ich Dir per PM gesendet.

VG
Marc

michael.winkler

Zitat von: PingPong am 19 Februar 2019, 08:40:25
Hallo Michael,

meinst Du die beiden ...speak_(ssml_)header Dateien?
Die hab ich Dir per PM gesendet.

VG
Marc
Nein die HTML Dateien. Die Header Dateien bringen nichts.

PingPong

Hmm. Ich befürchte, die bringen auch nicht viel.

...speak.htm und ...speak_ssml.htm sind beide komplett leer :-(

oder meinst Du die anderen Dateien?

87insane

#2352
Zitat von: michael.winkler am 19 Februar 2019, 08:07:05
Verstehe ich jetzt nicht so ganz. Wie soll sich Wecker 03 melden?


Ganz einfach. Habe event on change reading auf alarm.* - Nun geht z.B. Wecker 03 online und in diesem Moment ist das Reading alarm_count 3 und nicht 16. Das springt aber sehr schnell dann wieder auf den korrekten Wert um.

Ich selber habe mir ein Reading mit: AlarmCount {my $anz = grep( m/alarm_.._status/, ( keys %{$hash->{READINGS}} )); return $anz;} gebaut und nutze dieses in meinem Script. Das geht auch. Es ist kein Weltuntergang, macht aber das bereits vorhandene Reading sinnlos, für mich. Das selbst erstellte Reading zählt korrekt und ist schnell genug aktuell.

EDIT: Kann es sein, dass du meine Beiträge zuvor nicht gesehen hattest? Ich meine hier passiert viel und da geht das ja schon mal unter...

michael.winkler

Zitat von: PingPong am 19 Februar 2019, 12:06:02
Hmm. Ich befürchte, die bringen auch nicht viel.

...speak.htm und ...speak_ssml.htm sind beide komplett leer :-(

oder meinst Du die anderen Dateien?
ok, wenn die HTML Dateien aktuell und leer sind, dann wurde der Befehl eigentlich von Amazon akzeptiert. Was passiert wenn du über das Modul die zuvor erstellte Routine startest?

michael.winkler

Zitat von: 87insane am 19 Februar 2019, 13:18:47

Ganz einfach. Habe event on change reading auf alarm.* - Nun geht z.B. Wecker 03 online und in diesem Moment ist das Reading alarm_count 3 und nicht 16. Das springt aber sehr schnell dann wieder auf den korrekten Wert um.

Ich selber habe mir ein Reading mit: AlarmCount {my $anz = grep( m/alarm_.._status/, ( keys %{$hash->{READINGS}} )); return $anz;} gebaut und nutze dieses in meinem Script. Das geht auch. Es ist kein Weltuntergang, macht aber das bereits vorhandene Reading sinnlos, für mich. Das selbst erstellte Reading zählt korrekt und ist schnell genug aktuell.

EDIT: Kann es sein, dass du meine Beiträge zuvor nicht gesehen hattest? Ich meine hier passiert viel und da geht das ja schon mal unter...
stehe immer noch auf dem Schlauch. Was meinst du mit "Wecker 03 online" ?