NEWS
Shelly via Cloud einbinden
-
@ramses5333 sagte in Shelly via Cloud einbinden:
Kann mir hier wer weiterhelfen?
das json bitte hier als Text in code-tags posten!
@ramses5333 sagte in Shelly via Cloud einbinden:
Wert "power" in der Abfrage in einer Art Unterverzeichnis ist
mindestens 1, evtl. mehr
meters.power
oderdata.meters.power
müsste aber das json haben, um sicher zu gehen.
da sind noch arrays drinwas kommt denn als
result
zurück?PS, request sollte nicht mehr verwendet werden, sondern http post
-
@ramses5333 sagte in Shelly via Cloud einbinden:
Da einige Shellys bei mir nicht via WLAN erreichbar sind möchte ich Werte dieser per Cloud abfragen - im aktuellen Fall eine Shelly Plug S Steckdose.
Doofe Frage: wie kommunizieren die denn mit der Cloud wenn nicht über WLAN ?
-
@wendy2702 die sind in einem "anderen" WLAN, lange Geschichte - habe festgestellt, dass im Mesh-WLAN einige Geräte nicht miteinander kommunizieren wenn sie bei verschiedenen Mesh-Würfel eingeloggt sind. So habe ich in der Haustechnik-Ecke mit einem noch aus Urzeiten vorhandenen Repeater ein eigenes lokales WLAN eingerichtet in dem nur die Haustechnik läuft. Funktioniert, aber ein paar Shellys sind außerhalb der Reichweite.
-
@ramses5333
data.device_status.meters.0.power -
@homoran ```
29.7.2025, 07:39:12.112 [info ]: javascript.0 (2117023) Stopping script script.js.shellyviacloud 29.7.2025, 07:39:12.201 [info ]: javascript.0 (2117023) Start JavaScript script.js.shellyviacloud (Blockly) 29.7.2025, 07:39:12.204 [info ]: javascript.0 (2117023) script.js.shellyviacloud: schedule(cron=* * * * *) 29.7.2025, 07:39:12.204 [info ]: javascript.0 (2117023) script.js.shellyviacloud: registered 0 subscriptio ```ns, 1 schedule, 0 messages, 0 logs and 0 file subscriptions 29.7.2025, 07:40:00.004 [info ]: javascript.0 (2117023) script.js.shellyviacloud: httpPost(config={"method":"post","url":"https://shelly-151-eu.shelly.cloud/device/status?id=3ce90ed813d2&auth_key=MThjODJhdWlkE26A8EE3DD667B811B3D2013BFE5E5858C98BFB4DF5023B31B15F49C796417AC4A709C4D6634B702","responseType":"text","responseEncoding":"utf8","timeout":5000,"headers":{"User-Agent":"Mozilla/5.0 (X11; Linux i686; rv:109.0) Gecko/20100101 Firefox/121.0"}}, data=undefined) 29.7.2025, 07:40:00.213 [info ]: javascript.0 (2117023) script.js.shellyviacloud: httpPost(url=https://shelly-151-eu.shelly.cloud/device/status?id=xxxxxx&auth_key=xxxxxxx, responseTime=209ms) 29.7.2025, 07:40:00.213 [debug]: javascript.0 (2117023) script.js.shellyviacloud: undefined 29.7.2025, 07:40:00.214 [error]: javascript.0 (2117023) script.js.shellyviacloud: Cannot get data of "undefined": TypeError: Cannot read properties of undefined (reading 'data') 29.7.2025, 07:40:00.214 [info ]: javascript.0 (2117023) script.js.shellyviacloud: setForeignState(id=0_userdata.0.G_Shellycloud_Gefrierschrank_Power, state={"val":null,"ack":true,"ts":1753767600214,"q":0,"from":"system.adapter.javascript.0","lc":1753767600214,"c":"script.js.shellyviacloud"}) 29.7.2025, 07:40:00.214 [warn ]: javascript.0 (2117023) script.js.shellyviacloud: setForeignState(id=0_userdata.0.G_Shellycloud_Gefrierschrank_Power, state={"val":null,"ack":true,"ts":1753767600214,"q":0,"from":"system.adapter.javascript.0","lc":1753767600214,"c":"script.js.shellyviacloud"}) - wurde nicht ausgeführt, während der Debug-Modus aktiv ist 29.7.2025, 07:41:00.010 [info ]: javascript.0 (2117023) script.js.shellyviacloud: httpPost(config={"method":"post","url":"https://shelly-151-eu.shelly.cloud/device/status?id=xxxxxx&auth_key=xxxxx","responseType":"text","responseEncoding":"utf8","timeout":5000,"headers":{"User-Agent":"Mozilla/5.0 (X11; Linux i686; rv:109.0) Gecko/20100101 Firefox/121.0"}}, data=undefined) 29.7.2025, 07:41:00.194 [info ]: javascript.0 (2117023) script.js.shellyviacloud: httpPost(url=https://shelly-151-eu.shelly.cloud/device/status?id=xxxxxxx&auth_key=xxxxxx, responseTime=184ms) 29.7.2025, 07:41:00.194 [debug]: javascript.0 (2117023) script.js.shellyviacloud: undefined 29.7.2025, 07:41:00.195 [error]: javascript.0 (2117023) script.js.shellyviacloud: Cannot get data of "undefined": TypeError: Cannot read properties of undefined (reading 'data') 29.7.2025, 07:41:00.195 [info ]: javascript.0 (2117023) script.js.shellyviacloud: setForeignState(id=0_userdata.0.G_Shellycloud_Gefrierschrank_Power, state={"val":null,"ack":true,"ts":1753767660195,"q":0,"from":"system.adapter.javascript.0","lc":1753767660195,"c":"script.js.shellyviacloud"}) 29.7.2025, 07:41:00.195 [warn ]: javascript.0 (2117023) script.js.shellyviacloud: setForeignState(id=0_userdata.0.G_Shellycloud_Gefrierschrank_Power, state={"val":null,"ack":true,"ts":1753767660195,"q":0,"from":"system.adapter.javascript.0","lc":1753767660195,"c":"script.js.shellyviacloud"}) - wurde nicht ausgeführt, während der Debug-Modus aktiv ist
ich hoffe du meintest das so. Es scheint, dass da keine Daten abgerufen werden?!?
habs auch auf http (POST) umgebaut
-
@catshape Danke, das hatte ich auch schon in der Google Recherche gefunden und probiert - der Fehler dürfte wohl noch woanders liegen
-
@ramses5333 sagte in Shelly via Cloud einbinden:
@wendy2702 die sind in einem "anderen" WLAN, lange Geschichte - habe festgestellt, dass im Mesh-WLAN einige Geräte nicht miteinander kommunizieren wenn sie bei verschiedenen Mesh-Würfel eingeloggt sind. So habe ich in der Haustechnik-Ecke mit einem noch aus Urzeiten vorhandenen Repeater ein eigenes lokales WLAN eingerichtet in dem nur die Haustechnik läuft. Funktioniert, aber ein paar Shellys sind außerhalb der Reichweite.
Verstehe ich nicht vollständig.
Eigenes WLAN bedeutet eigene SSID oder komplett eigenes Netzwerk?
Wurde in den Netzwerkeinstellungen denn erlaubt das Geräte untereinander kommunizieren dürfen?
Ich persönlich würde eher versuchen die Ursache zu bekämpfen und nicht die Symptome .
-
Shelly Cloud Docu:
https://shelly-api-docs.shelly.cloud/cloud-control-api/Und wenn du dich schon mit dem Cloud Zugriff spielst würde ich dir raten V2 zu verwenden und für neue Dinge kein V1 mehr zu verwenden. V1 ist abkündigt - siehe Bannermeldung in der Docu:
danger
This API is deprecated and will be removed in the near future. We strongly recommend migrating to the v2.0-beta API, which provides improved functionality and enhanced performance.EDIT:
Und warum ein eigenes WLAN das dann anscheinend im selben Netzt hängt eine Kommunikation verhindern soll versteh ich auch nicht. Oder hat das extra WLAN einen eigenen Internetzugang?EDIT-2:
Schau mal was ein curl Aufruf zurückliefert. -
@ramses5333 sagte in Shelly via Cloud einbinden:
@catshape Danke, das hatte ich auch schon in der Google Recherche gefunden und probiert - der Fehler dürfte wohl noch woanders liegen
Falls der Blockly-Baustein "Attribut von Objekt" das nicht von sich aus macht, dann schrittweise/geschachtelt. Das heisst zuerst Attribut "data" vom Objekt "result", dann davon das Attribut "device_status", dann davon das Attribut "meters", dann davon das Attribut "0", dann davon das Attribut "power".
Oder anders gesagt:
Attribut "power" vom Objekt (Attribut "0" vom Objekt (Attribut "meters" vom Objekt (Attribut "device_status" vom Objekt (Attribut "data" vom Objekt "result")))). -
@ramses5333 sagte in Shelly via Cloud einbinden:
habs auch auf http (POST) umgebaut
aber noch mit
result
!
du brauchst dendata
Baustein