Hallo,
Beim Anlagen einer Benachrichtigung über Echo Geräte kommt nach dem Abscpeichern und erneuter Auftraf folgende Meldung
Konnte Formular nicht laden
Warning: Instance #0 does not exist in C:\Windows\System32\- on line 7
Warning: Trying to access array offset on value of type bool in C:\Windows\System32\- on line 7
[{"type":"ValidationTextBox","name":"MESSAGE","caption":"Message","width":"100%","multiline":true},{"type":"List","name":"DEVICES","caption":"Target devices","width":"100%","rowCount":10,"add":true,"delete":true,"columns":[{"name":"InstanceID","caption":"InstanceID","width":"auto","add":0,"edit":{"type":"SelectInstance","validModules":["{496AB8B5-396A-40E4-AF41-32F4C48AC90D}"]}}],"values":[{"InstanceID":41155,"rowColor":"#FFC0C0"}]}]
Es wurde das Ziel ausgewählt ist auch im Fenster del Aplaufplanes, gespeichert ohne Fehler.
Wenn man dann den Anrufmonitor/Benitzerdef Aktion wieder aufruft ist alles weg.
Du musst als Ziel eine EchoRemote Instanz angeben, wenn du eine Ansage auf dem Echo ausführen möchtest.
Demnächst gibt es ein Update, damit die Aktionen des Moduls auch nur noch angezeigt werden, wenn eine EchoRemoteInstanz als Ziel ausgewählt ist.
Alle Instanzen (auch die Splitterinstanz) sind aktiv und auch bei den Echo (die der Lautpsrecher) Instanzen sind in Ordnung.
Habe auch schon mal den Schalter für das „Zertifikate verifzieren“ verändert (aus/ein) und gespeichert. Die Meldung geht nicht weg. Ein Problem?
Eben noch in der Splitterinstanz entdeckt:
Wenn ich den Schalter „Websocket vervewenden“ deaktivieren und wieder aktivieren, hatte ich zwei WS Clients. Das ist unschön. Zur Sicherheite habe ich diesen Schlater einmal deaktiviert, alle WS Instanzen gelöscht und dann wieder aktiviert. An obiger Meldung ändert sich allerdings nicht.
Du kannst die Meldung ignorieren bzw. mit ok bestätigen. Sie wird jedes Mal wieder kommen, das macht aber nichts.
Edit: Zu deiner zweiten Frage: Das Verhalten ist so korrekt - wenn auch nicht unbedingt schön. Ich musste es so umsetzen, um beim erneuten aktivieren nicht einen „fremden“ Websocket zu kapern. Es gibt auch nur ganz spezielle Gründe, warum man den Websocket deaktivieren sollte - daher unter Experten-Optionen.
Ok, danke für die rasche Rückmeldung. Die Auswertung von „Letzer Aktion“ funktionert einwandfrei.
Eine Frage hab ich noch. Es gibt die Variable „letztes Gerät“. Wird das noch befüllt? Es wird aktualisiert, aber es ändert nicht den Wert.
Hab ich was übersehen, oder gibt es die Funktion ECHOIO_GetLastDevice($AmazonEchoIO_ID); nicht mehr? Ich verwende (oder verwendete) diese Funktion um zu erkennen, welcher Echo angesprochen wurde. Ich weiß, es gibt die Variable, aber das ist nicht immer so zuverlässig.
Ist mir jetzt eben passiert. Ich sage im Wohnzimmer „Licht ein“, die in der Küche fühlt sich auch irgendwie angsprochen, aber der Befehl wird vom Echo im Wohnzimmer entgegengenommen (quitiert) . Statt im Wohnzimmer, wirds in der Küche hell.
Das war mit der Funktion nie ein Problem. Mit der Variable schon.
Wenn du da den Namen noch dazu machen könntest wäre ich glücklich
Die funktion gabs bis vor dem Update
Wenn das mit dem Namen nicht geht, dann mache ich das über die Seriennummer.
Edit: Ich hab es in der Zwischenzeit umgebaut und frage jetzt die Seriennummern ab. Geht auch. Also passt das so für mich.
Spricht nichts dagegen den Namen wieder mit zu übergeben - ist irgendwo verloren gegangen.
Die Funktion führt übrigens bei jedem Aufruf einen Request an den Server durch, daher wäre es performanter direkt mit den Variablen-Werten zu arbeiten.
Das mag sein, geht aber was ich bis jetzt so gesehen habe, durchaus zügig. Natürlich würde die Variable funktionieren, aber es kommt vor, dass das nicht der Echo ist, der den Befehl ausgeführt hat. Die Varable gabs schon länger, auch vor deiner Übernahme. Und auch da gab es schon das Phänomen. Daher habe ich die Funktion verwendet, womit das Problem behoben war.
Ich verwende es zum Beispiel für die aktvier- und deaktivierbare Szene „Fernseher“.
Ich aktiviere die Szene mit „Fernseher ein“ und deaktiviere sie mit „Fernseher aus“. Je nachdem, welcher Echo angesprochen wird, wird der entsprechende Zwischenstecker im Raum ein- oder ausgeschaltet. Ebenso bei der Szene „Licht“.
Seit heute ist die neueste Version auch auf dem STABLE-Kanal verfügbar:
Version 2.3 (2023-08-21)
Neu: Websockets
Auswertung der letzten Aktivität (Sprachbefehl und Gerät) erfolgt nun sofort per Push - kein Polling mehr notwendig
EchoIO-Instanz ist nun ein Splitter (Name und Prefix bleiben aus Kompatibilitätsgründen bestehen)
Optimierungen:
Optimiertes Handling von mehreren gleichzeitigen/hintereinanderfolgenden Automations-Befehlen (z.B. TextToSpeech, StartAlexaRoutine,…) um das Rate-Limit der API nicht zu überschreiten
Optimierung beim Aktualisieren von Routinen und den entsprechenden Variablenprofilen
Change: Erfordert min. IP-Symcon 6.1 (wegen Custom Headers Support des Websockets)
Fix: Anpassungen für Symcon 7.0 (Php 8.2) zur Vermeidung von type_errors
Fix: Dateipfad des Cookies konnte nach Migration von IP-Symcon auf andere Plattform nicht gefunden werden
Fix: In der Konfiguration von Ereignissen werden die Aktionen dieses Moduls nur noch angezeigt, wenn als Ziel auch eine Echo Remote Instanz ausgewählt ist
Hi,
mit Device vorsichtig sein und nicht sofort auf Änderungen reagieren. Wenn 2 Echos in hörweite sind meldet sich oft der falsche und dann der richtige. Wenn ich wissen will welcher Echo den Befehl angenommen hat warte ich erst 1 Sekunde und dann ist der Wert bisher stabil und ich kann reagieren jenach Echo und so gezielt Befehle in Räumen starten.
Hi,
eine Sekunde hat einen kleinen Vorteil denn dann sieht man auch Text den man vielleicht zusammen mit dem Befehl gesagt hat wie „Alexa, schalte Fernseher aus Du Ziege“