Abschliessend wäre zu sagen: Im Shelly wurde durch das Script irgendetwas persistent am Websocket verändert. Was das genau war, ist für mich nicht nachzuvollziehen. Er nach dem Rücksetzen auf den Werkzustand funktioniert der Shelly wieder erwartungsgemäss. - Ich belasse es dabei, weil sich mein kleines Projekt mittlerweile geändert hat, und für diesen Scriptteil keine Verwendung mehr vorliegt.
Beiträge von Stefan45
-
-
Danke towiat! - Das Script ist definitiv nicht mehr am laufen. Das wird auch durch Deinen Script.Stop RPC bestätigt (was_running: false). - Vermutlich muss ich den Shelly auf Werkszustand rücksetzen, wobei ich wegen der Meldung "Websocket closed" auch überlege, ob da mein FRITZ!Box Router irgendwie im Spiel ist.
Shelly.call("Schedule.Create" .. ist natürlich naheliegend. Das hatte ich vorher auch probiert, und das hat auch funktioniert. - Über HTTP wollte ich es deshalb versuchen, weil ich ein kleines Projekt im Sinn habe, per Script einen Schedule auf einem anderen Shelly zu erstellen.
-
Ach und nochwas: Wenn ich per App auf die Scripte gehe, dann werden die Scripte nicht angezeigt. Fehlermeldung "Websocket is closed to ... Error code 1006. => Also das ist wahrscheinlich das Problem, dass keine reguläre Verbindung mehr aufgebaut werden kann.
Aber das führt zu den Fragen:
- Websocket closed selbst nach Power-On Reset?
- Was ist an dem Script so schlimm, dass dies die Websockets schließt? -
(Wobei ich gerade selber sehe, dass params:{id:0} für Schedule.Create ja falsch ist. - Aber daran wird's jawohl nicht liegen, oder ..?)
-
Hallo,
ich habe eine Frage zu einem "Test"-Script welches per Shelly.call("HTTP.GET" .. einen Schedule auf dem selben Gerät erstellen, wo das Script auch läuft.
Es ist ein Shelly 2PM Gen3 im Cover mode.Das folgende Test-Script führt dazu, dass der ganze Shelly instabil wird. Und zwar nachhaltig instabil. Also auch noch instabil nach Power-On Reset. - Mittlerweile kann ich per Shelly App wieder wie gewohnt darauf zugreifen (nach einiger Zeit funktionierte es wieder(?)), aber per Web-Interface (Browser) kann ich nicht mehr auf den Shelly zugreifen: permanent "Connecting to Shelly".
Hier das Script. - Hat jemand eine Idee was an dem Script so zerstörerisch ist?Code
Alles anzeigenlet myURL = 'http://192.168.1.126/rpc/Schedule.Create?enable=true×pec="0%2016%203%20*%20*%200"&calls=[{method:"Cover.Open",params:{id:0}}]'; print(myURL); Shelly.call( "HTTP.GET", { url : myURL }, function (result, error_code, error_message, userdata) { if (error_code !== 0) { print("Shelly.call with method xyz returns error_code:", error_code, "with message:", error_message); } else { print("Shelly.call with method xyz returns success. result:", result, "userdata:", userdata); } }, "to be passed userdata" );