Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JSON String auswerten

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

JSON String auswerten

Scheduled Pinned Locked Moved Skripten / Logik
2 Posts 1 Posters 300 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Danny 0D Offline
    Danny 0D Offline
    Danny 0
    wrote on last edited by
    #1

    Hi Leute, ich weiß nicht mehr weiter....

    ich möchte gerne folgenden JSON String durchsuchen und dabei den Wert von TEMPS.0.Chip mit rund 80° finden.
    mit der Variante einen Festen "String" in den json_parsen zu schmeißen läuft alles.... wenn ich den String durch eine Variable ersetze klappt es nicht :(

    JSON String

    {"STATUS":[{"STATUS":"S","When":1639436873,"Code":201,"Msg":"3 Temp(s)","Description":"BOSminer bosminer-plus-am1-s9 0.7.0-52331c5f"}],"TEMPS":[{"TEMP":0,"ID":6,"Board":60.6875,"Chip":80.25},{"TEMP":1,"ID":7,"Board":61.0,"Chip":82.5625},{"TEMP":2,"ID":8,"Board":61.3125,"Chip":83.9375}],"id":1}
    

    und habe dafür folgenden Code in Blockly erzeugt

    async function json_parser(input, json_path) {
        log(input);
        let obj = JSON.parse(input);
        let var_chip = getAttr(obj, 'TEMPS.0.Chip'); // designed for Blockly
        log(var_chip1 = getAttr(obj, json_path)); // designed for Blockly
        return var_chip;
    }
    
    exec('echo \'{"command":"temps"}\' | nc S9-2 4028', async function (error, result, stderr) {
        json_input = ('' + result);
      console.log((await json_parser('{"STATUS":[{"STATUS":"S","When":1639436873,"Code":201,"Msg":"3 Temp(s)","Description":"BOSminer bosminer-plus-am1-s9 0.7.0-52331c5f"}],"TEMPS":[{"TEMP":0,"ID":6,"Board":60.6875,"Chip":80.25},{"TEMP":1,"ID":7,"Board":61.0,"Chip":82.5625},{"TEMP":2,"ID":8,"Board":61.3125,"Chip":83.9375}],"id":1}', 'TEMPS.0.Chip')));
      console.log((await json_parser(json_input, 'TEMPS.0.Chip')));
    });
    console.log("exec: " + 'echo \'{"command":"temps"}\' | nc S9-2 4028');
    

    dazu kommt der output

    00:14:38.412	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: registered 0 subscriptions and 0 schedules
    00:14:38.417	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: {"STATUS":[{"STATUS":"S","When":1639436873,"Code":201,"Msg":"3 Temp(s)","Description":"BOSminer bosminer-plus-am1-s9 0.7.0-52331c5f"}],"TEMPS":[{"TEMP":0,"ID":6,"Board":60.6875,"Chip":80.25},{"TEMP":1,"ID":7,"Board":61.0,"Chip":82.5625},{"TEMP":2,"ID":8,"Board":61.3125,"Chip":83.9375}],"id":1}
    00:14:38.418	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: 80.25
    00:14:38.418	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: 80.25
    00:14:38.418	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: {"STATUS":[{"STATUS":"S","When":1639437278,"Code":201,"Msg":"3 Temp(s)","Description":"BOSminer bosminer-plus-am1-s9 0.7.0-52331c5f"}],"TEMPS":[{"TEMP":0,"ID":6,"Board":60.6875,"Chip":80.25},{"TEMP":1,"ID":7,"Board":61.125,"Chip":82.6875},{"TEMP":2,"ID":8,"Board":61.375,"Chip":84.0}],"id":1}
    00:14:38.419	error	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: SyntaxError: Unexpected token  in JSON at position 292
    00:14:38.419	error	javascript.1 (32412) at json_parser (script.js.Instanz_0_debug.miner_werte_auslesen:76:20)
    00:14:38.420	error	javascript.1 (32412) at script.js.Instanz_0_debug.miner_werte_auslesen:88:22
    

    Besten Dank schon mal für eure Hilfe!

    Danny 0D 1 Reply Last reply
    0
    • Danny 0D Danny 0

      Hi Leute, ich weiß nicht mehr weiter....

      ich möchte gerne folgenden JSON String durchsuchen und dabei den Wert von TEMPS.0.Chip mit rund 80° finden.
      mit der Variante einen Festen "String" in den json_parsen zu schmeißen läuft alles.... wenn ich den String durch eine Variable ersetze klappt es nicht :(

      JSON String

      {"STATUS":[{"STATUS":"S","When":1639436873,"Code":201,"Msg":"3 Temp(s)","Description":"BOSminer bosminer-plus-am1-s9 0.7.0-52331c5f"}],"TEMPS":[{"TEMP":0,"ID":6,"Board":60.6875,"Chip":80.25},{"TEMP":1,"ID":7,"Board":61.0,"Chip":82.5625},{"TEMP":2,"ID":8,"Board":61.3125,"Chip":83.9375}],"id":1}
      

      und habe dafür folgenden Code in Blockly erzeugt

      async function json_parser(input, json_path) {
          log(input);
          let obj = JSON.parse(input);
          let var_chip = getAttr(obj, 'TEMPS.0.Chip'); // designed for Blockly
          log(var_chip1 = getAttr(obj, json_path)); // designed for Blockly
          return var_chip;
      }
      
      exec('echo \'{"command":"temps"}\' | nc S9-2 4028', async function (error, result, stderr) {
          json_input = ('' + result);
        console.log((await json_parser('{"STATUS":[{"STATUS":"S","When":1639436873,"Code":201,"Msg":"3 Temp(s)","Description":"BOSminer bosminer-plus-am1-s9 0.7.0-52331c5f"}],"TEMPS":[{"TEMP":0,"ID":6,"Board":60.6875,"Chip":80.25},{"TEMP":1,"ID":7,"Board":61.0,"Chip":82.5625},{"TEMP":2,"ID":8,"Board":61.3125,"Chip":83.9375}],"id":1}', 'TEMPS.0.Chip')));
        console.log((await json_parser(json_input, 'TEMPS.0.Chip')));
      });
      console.log("exec: " + 'echo \'{"command":"temps"}\' | nc S9-2 4028');
      

      dazu kommt der output

      00:14:38.412	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: registered 0 subscriptions and 0 schedules
      00:14:38.417	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: {"STATUS":[{"STATUS":"S","When":1639436873,"Code":201,"Msg":"3 Temp(s)","Description":"BOSminer bosminer-plus-am1-s9 0.7.0-52331c5f"}],"TEMPS":[{"TEMP":0,"ID":6,"Board":60.6875,"Chip":80.25},{"TEMP":1,"ID":7,"Board":61.0,"Chip":82.5625},{"TEMP":2,"ID":8,"Board":61.3125,"Chip":83.9375}],"id":1}
      00:14:38.418	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: 80.25
      00:14:38.418	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: 80.25
      00:14:38.418	info	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: {"STATUS":[{"STATUS":"S","When":1639437278,"Code":201,"Msg":"3 Temp(s)","Description":"BOSminer bosminer-plus-am1-s9 0.7.0-52331c5f"}],"TEMPS":[{"TEMP":0,"ID":6,"Board":60.6875,"Chip":80.25},{"TEMP":1,"ID":7,"Board":61.125,"Chip":82.6875},{"TEMP":2,"ID":8,"Board":61.375,"Chip":84.0}],"id":1}
      00:14:38.419	error	javascript.1 (32412) script.js.Instanz_0_debug.miner_werte_auslesen: SyntaxError: Unexpected token  in JSON at position 292
      00:14:38.419	error	javascript.1 (32412) at json_parser (script.js.Instanz_0_debug.miner_werte_auslesen:76:20)
      00:14:38.420	error	javascript.1 (32412) at script.js.Instanz_0_debug.miner_werte_auslesen:88:22
      

      Besten Dank schon mal für eure Hilfe!

      Danny 0D Offline
      Danny 0D Offline
      Danny 0
      wrote on last edited by
      #2

      @danny-0 Habe das Problem in Griff bekommen... beim Auswerten über den exec Befehl war ein Leerzeichen am Ende. Das habe ich entfernt und schon läuft es :-)

      1 Reply Last reply
      0
      Reply
      • Reply as topic
      Log in to reply
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes


      Support us

      ioBroker
      Community Adapters
      Donate

      786

      Online

      32.6k

      Users

      82.1k

      Topics

      1.3m

      Posts
      Community
      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
      ioBroker Community 2014-2025
      logo
      • Login

      • Don't have an account? Register

      • Login or register to search.
      • First post
        Last post
      0
      • Home
      • Recent
      • Tags
      • Unread 0
      • Categories
      • Unreplied
      • Popular
      • GitHub
      • Docu
      • Hilfe