Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Einsteigerfragen
  4. Shelly via Cloud einbinden

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    927

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Shelly via Cloud einbinden

Geplant Angeheftet Gesperrt Verschoben Einsteigerfragen
13 Beiträge 5 Kommentatoren 787 Aufrufe 5 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • R Offline
    R Offline
    Ramses5333
    schrieb am zuletzt editiert von
    #1

    Hallo,
    ich sitze nun seit Stunden an einem vermeintlich einfachen Problem. 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.
    API, GeräteID, Shelly Server etc. funktioniert - die Werte können abgerufen werden (im Speziellen nun "power")

    Über den Browser aufgerufen wird der benötigte Wert ausgewiesen:
    ddf944cb-479a-4aaf-b1b5-5efc0a037595-image.png

    Im IOB habe ich ein blockly bei einer ähnlichen Aufgabenstellung (Zählerstand auslesen) funktionierend im Einsatz.
    Blockly ident aufgebaut bekomme ich aber nur eine Fehlermeldung, der angelegte Datenpunkt (schreibbar) aktualisiert sich nicht.

    6c26faaa-d4ad-40d8-83bc-018200a651b9-image.png

    Ich denke, dass es damit zu tun hat, dass der Wert "power" in der Abfrage in einer Art Unterverzeichnis ist - habe aber viele Varianten mit meters.power, data.device_status.meters.power etc. schon durch - leider ohne Erfolg.

    Kann mir hier wer weiterhelfen?
    Danke,
    Grüße

    wendy2702W C R 3 Antworten Letzte Antwort
    0
    • HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von Homoran
      #2

      @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 oder data.meters.power
      müsste aber das json haben, um sicher zu gehen.
      da sind noch arrays drin

      was kommt denn als result zurück?

      PS, request sollte nicht mehr verwendet werden, sondern http post

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      R 1 Antwort Letzte Antwort
      0
      • R Ramses5333

        Hallo,
        ich sitze nun seit Stunden an einem vermeintlich einfachen Problem. 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.
        API, GeräteID, Shelly Server etc. funktioniert - die Werte können abgerufen werden (im Speziellen nun "power")

        Über den Browser aufgerufen wird der benötigte Wert ausgewiesen:
        ddf944cb-479a-4aaf-b1b5-5efc0a037595-image.png

        Im IOB habe ich ein blockly bei einer ähnlichen Aufgabenstellung (Zählerstand auslesen) funktionierend im Einsatz.
        Blockly ident aufgebaut bekomme ich aber nur eine Fehlermeldung, der angelegte Datenpunkt (schreibbar) aktualisiert sich nicht.

        6c26faaa-d4ad-40d8-83bc-018200a651b9-image.png

        Ich denke, dass es damit zu tun hat, dass der Wert "power" in der Abfrage in einer Art Unterverzeichnis ist - habe aber viele Varianten mit meters.power, data.device_status.meters.power etc. schon durch - leider ohne Erfolg.

        Kann mir hier wer weiterhelfen?
        Danke,
        Grüße

        wendy2702W Online
        wendy2702W Online
        wendy2702
        schrieb am zuletzt editiert von
        #3

        @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 ?

        Bitte keine Fragen per PN, die gehören ins Forum!

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        R 1 Antwort Letzte Antwort
        3
        • wendy2702W wendy2702

          @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 ?

          R Offline
          R Offline
          Ramses5333
          schrieb am zuletzt editiert von
          #4

          @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.

          wendy2702W 1 Antwort Letzte Antwort
          0
          • R Ramses5333

            Hallo,
            ich sitze nun seit Stunden an einem vermeintlich einfachen Problem. 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.
            API, GeräteID, Shelly Server etc. funktioniert - die Werte können abgerufen werden (im Speziellen nun "power")

            Über den Browser aufgerufen wird der benötigte Wert ausgewiesen:
            ddf944cb-479a-4aaf-b1b5-5efc0a037595-image.png

            Im IOB habe ich ein blockly bei einer ähnlichen Aufgabenstellung (Zählerstand auslesen) funktionierend im Einsatz.
            Blockly ident aufgebaut bekomme ich aber nur eine Fehlermeldung, der angelegte Datenpunkt (schreibbar) aktualisiert sich nicht.

            6c26faaa-d4ad-40d8-83bc-018200a651b9-image.png

            Ich denke, dass es damit zu tun hat, dass der Wert "power" in der Abfrage in einer Art Unterverzeichnis ist - habe aber viele Varianten mit meters.power, data.device_status.meters.power etc. schon durch - leider ohne Erfolg.

            Kann mir hier wer weiterhelfen?
            Danke,
            Grüße

            C Offline
            C Offline
            CatShape
            schrieb am zuletzt editiert von
            #5

            @ramses5333
            data.device_status.meters.0.power

            Raspberry Pi 5 8GB; Raspberry Pi OS; ioBroker; ecoflow_catshape, shelly-http-cs, tuya-cs

            R 1 Antwort Letzte Antwort
            0
            • HomoranH Homoran

              @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 oder data.meters.power
              müsste aber das json haben, um sicher zu gehen.
              da sind noch arrays drin

              was kommt denn als result zurück?

              PS, request sollte nicht mehr verwendet werden, sondern http post

              R Offline
              R Offline
              Ramses5333
              schrieb am zuletzt editiert von Ramses5333
              #6

              @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

              de4ca3a2-a1a9-4593-bd84-6f38c8fb21e4-image.png

              HomoranH 1 Antwort Letzte Antwort
              0
              • C CatShape

                @ramses5333
                data.device_status.meters.0.power

                R Offline
                R Offline
                Ramses5333
                schrieb am zuletzt editiert von
                #7

                @catshape Danke, das hatte ich auch schon in der Google Recherche gefunden und probiert - der Fehler dürfte wohl noch woanders liegen

                mcm1957M C 2 Antworten Letzte Antwort
                0
                • R Ramses5333

                  @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.

                  wendy2702W Online
                  wendy2702W Online
                  wendy2702
                  schrieb am zuletzt editiert von
                  #8

                  @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 .

                  Bitte keine Fragen per PN, die gehören ins Forum!

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  1 Antwort Letzte Antwort
                  2
                  • R Ramses5333

                    @catshape Danke, das hatte ich auch schon in der Google Recherche gefunden und probiert - der Fehler dürfte wohl noch woanders liegen

                    mcm1957M Online
                    mcm1957M Online
                    mcm1957
                    schrieb am zuletzt editiert von mcm1957
                    #9

                    @ramses5333

                    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.

                    Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                    Support Repositoryverwaltung.

                    Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                    LESEN - gute Forenbeitrage

                    1 Antwort Letzte Antwort
                    0
                    • R Ramses5333

                      @catshape Danke, das hatte ich auch schon in der Google Recherche gefunden und probiert - der Fehler dürfte wohl noch woanders liegen

                      C Offline
                      C Offline
                      CatShape
                      schrieb am zuletzt editiert von CatShape
                      #10

                      @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")))).

                      Raspberry Pi 5 8GB; Raspberry Pi OS; ioBroker; ecoflow_catshape, shelly-http-cs, tuya-cs

                      1 Antwort Letzte Antwort
                      0
                      • R Ramses5333

                        @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

                        de4ca3a2-a1a9-4593-bd84-6f38c8fb21e4-image.png

                        HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #11

                        @ramses5333 sagte in Shelly via Cloud einbinden:

                        habs auch auf http (POST) umgebaut

                        aber noch mit result!
                        du brauchst den data Baustein

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        1 Antwort Letzte Antwort
                        0
                        • R Ramses5333

                          Hallo,
                          ich sitze nun seit Stunden an einem vermeintlich einfachen Problem. 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.
                          API, GeräteID, Shelly Server etc. funktioniert - die Werte können abgerufen werden (im Speziellen nun "power")

                          Über den Browser aufgerufen wird der benötigte Wert ausgewiesen:
                          ddf944cb-479a-4aaf-b1b5-5efc0a037595-image.png

                          Im IOB habe ich ein blockly bei einer ähnlichen Aufgabenstellung (Zählerstand auslesen) funktionierend im Einsatz.
                          Blockly ident aufgebaut bekomme ich aber nur eine Fehlermeldung, der angelegte Datenpunkt (schreibbar) aktualisiert sich nicht.

                          6c26faaa-d4ad-40d8-83bc-018200a651b9-image.png

                          Ich denke, dass es damit zu tun hat, dass der Wert "power" in der Abfrage in einer Art Unterverzeichnis ist - habe aber viele Varianten mit meters.power, data.device_status.meters.power etc. schon durch - leider ohne Erfolg.

                          Kann mir hier wer weiterhelfen?
                          Danke,
                          Grüße

                          R Offline
                          R Offline
                          Ramses5333
                          schrieb am zuletzt editiert von
                          #12

                          Habe es mit Blockly nicht wirklich zusammengebracht - habe daher mit ChatGPT in mehreren Runden ein funktionierendes Script erstellen können - für den Fall, dass das jemand brauchen kann. Besten Dank für die Hilfsversuche!

                          const https = require('https');
                          
                          const shellyUrl = 'https://shelly-xxx-eu.shelly.cloud/device/status?id=xxxxxxx&auth_key=xxxxxxxxxxxxxxxxxxxxxxx';
                          const datapoint = '0_userdata.0.G_Shellycloud_Gefrierschrank_Power';
                          
                          // Datenpunkt erstellen (falls nicht vorhanden)
                          createState(datapoint, 0, { type: 'number', role: 'value.power', unit: 'W' });
                          
                          function fetchPowerFromShelly() {
                              https.get(shellyUrl, (res) => {
                                  let body = '';
                          
                                  res.on('data', (chunk) => {
                                      body += chunk;
                                  });
                          
                                  res.on('end', () => {
                                      log('Antwort vom Server: ' + body, 'info');  // << Hier siehst du, ob etwas kommt
                          
                                      try {
                                          const data = JSON.parse(body);
                                          const power = data?.data?.device_status?.meters?.[0]?.power;
                          
                                          if (power !== undefined) {
                                              log('Power-Wert erkannt: ' + power + ' W', 'info');
                                              setState(datapoint, power);
                                          } else {
                                              log('Power-Wert nicht gefunden in JSON.', 'warn');
                                          }
                                      } catch (err) {
                                          log('Fehler beim Parsen: ' + err, 'error');
                                      }
                                  });
                              }).on('error', (err) => {
                                  log('HTTPS-Fehler: ' + err.message, 'error');
                              });
                          }
                          
                          // Beim Start ausführen
                          fetchPowerFromShelly();
                          
                          // Und dann jede Minute wiederholen
                          schedule("*/1 * * * *", fetchPowerFromShelly);
                          
                          
                          1 Antwort Letzte Antwort
                          0
                          • mcm1957M Online
                            mcm1957M Online
                            mcm1957
                            schrieb am zuletzt editiert von
                            #13

                            @ramses5333

                            Danke
                            Da das Script noch das V1Api verwendet hier als Info für User die später drüber stolpern:

                            Shelly hat das Cloud Api V1 ABGEKÜNDIGT und wird es in absehbarer Zeit EINSTELLEN. Der Umstieg auf Api V2 ist von Seite Shelly dringend empfohlen:

                            https://shelly-api-docs.shelly.cloud/cloud-control-api/

                            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.

                            und auch hier:

                            https://shelly-forum.com/article/174-hinweis-zur-abkündigung-cloud-control-api-v1-wechseln-sie-zu-v2/

                            Hinweis zur Abkündigung: Cloud Control API V1 – Wechseln Sie zu V2

                            Wir werden die Cloud Control API V1 in Kürze einstellen. Bitte wechseln Sie zur API V2, um einen unterbrechungsfreien Service und Zugriff auf neue Funktionen zu gewährleisten.

                            ⚡ Mit V2 können Sie eine einzige Statusabfrage für bis zu 10 Geräte erhalten, was die Effizienz und Leistung verbessert.

                            Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                            Support Repositoryverwaltung.

                            Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                            LESEN - gute Forenbeitrage

                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            817

                            Online

                            32.6k

                            Benutzer

                            82.2k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe