Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Variablen auslesen und übergeben

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Variablen auslesen und übergeben

    This topic has been deleted. Only users with topic management privileges can see it.
    • Z
      zariomahn last edited by zariomahn

      Hallo,

      ich lese die aktuellen Daten meiner ECOflow per API Script aus und bekomme als Antwort diesen String zurück:

      {{"code":"0","message":"Success","data":"soc":29,"remainTime":4434,"wattsOutSum":0,"wattsInSum":0}}
      

      Nun wollte ich diese Daten nach einer Anleitung, in Blockly auslesen und an Objekte die ich angelegt habe übergeben.

      Die Objekte sind u.a. "remainTime" alles als state und Zahl angelegt.

      Doch leider bekomme ich immer die Fehlermeldung:
      "You are assigning a object to the state "0_userdata.0.ECOflow.WattsOut" which expects a number. Please fix your code to use a number or change the state type to object."

      Hier das Blockly dazu:
      Bildschirmfoto 2022-08-29 um 14.59.21.png

      Wo kann der Fehler sein ? Bin noch nicht lange mit IOb und Blockly unterwegs, deshalb weiss ich nicht wie ich den Fehler eingrenzen kann um ihn zu finden 🙂

      viele Grüße

      MZ

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @zariomahn last edited by paul53

        @zariomahn sagte: bekomme als Antwort diesen String zurück:

        Das ist ein ungültiges JSON mit

        "data":"soc":29
        

        Es müsste so aussehen:

        {"code":"0","message":"Success","data":{"soc":29,"remainTime":4434,"wattsOutSum":0,"wattsInSum":0}}
        
        Z 1 Reply Last reply Reply Quote 0
        • Z
          zariomahn @paul53 last edited by

          @paul53
          OK, kann ich die Daten trotzdem verwenden?

          Ich mache mit diesem String die Abfrage

          curl -H 'Content-Type: application/json' -H 'appKey: APPKEY' -H 'secretKey: SECRETKEY' https://api.ecoflow.com/iot- service/open/api/device/queryDeviceQuota?sn=SERIENNUMMER
          

          In einer Anleitung stand dann dieses

          
          Als Ergebnis kommt (wenn alles stimmt) zurück:
          {{"code":"0","message":"Success","data":"soc":29,"remainTime":4434,"wattsOutSum":0,"wattsInSum":0}}
          Das können wir im ioBroker nutzen.
          Wir legen uns vier Variablen im Bereich Objekte an: SOC; RemainTime; WattsOut; WattsIn. Alles als State und Zahl.
          

          Dort soll alles funktionieren ?!

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @zariomahn last edited by

            @zariomahn sagte: In einer Anleitung stand dann dieses

            Prüfe mal mit einem Debug-Block, was in der Variablen result übergeben wird.

            Bild_2022-08-29_153953346.png

            Z 1 Reply Last reply Reply Quote 0
            • Z
              zariomahn @paul53 last edited by zariomahn

              @paul53
              ich denke mal mit der CURL Abfrage oder?

              dann bekomme ich das

              script.js.Tests.SkriptTest-2: {"code":"0","message":"Success","data":{"soc":100,"remainTime":9786,"wattsOutSum":179,"wattsInSum":179}}
              
              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @zariomahn last edited by paul53

                @zariomahn sagte: dann bekomme ich das

                Dann sollte die Auswertung für die Datenpunkte passen, wenn vorher noch eine Abfrage gemacht wird:

                Bild_2022-08-29_170117036.png

                Alternativ kann auch die lokale Variable error geprüft werden.

                Bild_2022-08-29_170510001.png

                Z 1 Reply Last reply Reply Quote 0
                • Z
                  zariomahn @paul53 last edited by zariomahn

                  @paul53

                  Hallo,

                  habe jetzt alles noch einmal neugestartet, alle Updates auf der Konsole gemacht.... und siehe da,...:-)

                  Plötzlich werden die Werte an die Objekte übergeben 🙂

                  Trotzdem vielen vielen Dank..

                  viele Grüße

                  MZ

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post

                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  599
                  Online

                  32.0k
                  Users

                  80.5k
                  Topics

                  1.3m
                  Posts

                  2
                  7
                  343
                  Loading More Posts
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes
                  Reply
                  • Reply as topic
                  Log in to reply
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                  The ioBroker Community 2014-2023
                  logo