Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Curl Antwort als Json auslesen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Curl Antwort als Json auslesen

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

      Hallo,

      ich habe mir ein Skript von paul53 aus diesem Thema geholt:

      Re: Json verarbeiten

      welches bei mir so aussieht:

      var abfrage = "curl -G https://mongol.brono.com/mongol/api.php?commandname=get_last_transmit -d format=json -d pass=xxx -d user=xxx -d unitnumber=xxx";
      createState("SoC", 0);
      createState("address", 0);
       
      function abfrageStarten() {
          exec(abfrage, function(err, stdout, stderr) {
              if (err) {
                  log("Error: " + err,"warn");
                  return;
              }
             var pv = JSON.parse(stdout);
             setState("SoC", pv["soc"]);
             setState("address", pv["address"]);
          });
      }
       
      setTimeout(abfrageStarten, 100);  // Script start
      schedule("*/1 * * * *", abfrageStarten);  // jede Minute
       
      

      Leider bekomme ich eine Fehlermeldung:

      javascript.0	2020-06-30 15:03:06.804	error	(2322) script.js.common.Zero_abfragen: setForeignState: undefined is not a valid state value
      

      Ich denke, dass das daran liegt, dass die Ausgabe bei mir anders ist, nämlich (Augabe aus Curl unter Windows nach Aufruf des Befehls):

      [{"unitnumber":"xxx","name":"xxx","unittype":"5","unitmodel":"6","analog1":"0.09","mileage":"2091.01","software_version":"190905","logic_state":"2","reason":"2","response":"0","driver":"0","longitude":"9.1440","latitude":"9.9687","altitude":"119","gps_valid":"0","gps_connected":"0","satellites":"0","velocity":"0","heading":"309","emergency":"0","shock":"","ignition":"0","door":"0","hood":"0","volume":"0","water_temp":"","oil_pressure":"0","main_voltage":13.13,"siren":"0","lock":"0","int_lights":"0","datetime_utc":"20200629161954","datetime_actual":"20200630101642","address":"xxx, xx xxxxxxx","perimeter":"","color":2,"soc":82,"tipover":0,"charging":0,"chargecomplete":0,"pluggedin":0,"chargingtimeleft":0}]
      

      Kann mir bitte jemand helfen das Script anzupassen?

      Gruß,
      Chris

      J.A.R.V.I.S. paul53 2 Replies Last reply Reply Quote 0
      • J.A.R.V.I.S.
        J.A.R.V.I.S. Developer @ChrisBGL last edited by

        @ChrisBGL du erhälst ein Array. Daraus kannst du nicht direkt den Wert von "soc" rausziehen.

        Bersuch mal folgendes:

               const pv = JSON.parse(stdout);
               
               setState("SoC", pv[0].soc);
               setState("address", pv[0].address);
        
        1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @ChrisBGL last edited by

          @ChrisBGL sagte in Curl Antwort als Json auslesen:

          Script anzupassen?

                 var pv = JSON.parse(stdout)[0];
          
          C 1 Reply Last reply Reply Quote 0
          • C
            ChrisBGL @paul53 last edited by

            @paul53

            Funktioniert, danke!

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

            Support us

            ioBroker
            Community Adapters
            Donate
            FAQ Cloud / IOT
            HowTo: Node.js-Update
            HowTo: Backup/Restore
            Downloads
            BLOG

            967
            Online

            31.7k
            Users

            79.9k
            Topics

            1.3m
            Posts

            curl iobroker json skript
            3
            4
            525
            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