Need help in decoding json
Posted: Monday 07 May 2018 15:09
I had a script to get the real values from the switches on my ESP8266. Unfortunately as of MEGA the json structure has changed with more deeper levels.
I cannot get it decoded.
I like to have the Value of the different Tasknumbers. Or if possible directly using the Taskname (Boven) and the the Value for Taskvalue with name "Switch".
Please help !
"TaskNumber":1,
"Type":"Switch input - Switch",
"TaskName":"Extra",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":0}]
},
{
"TaskNumber":2,
"Type":"Switch input - Switch",
"TaskName":"Boven",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":1}]
},
---
This is complete JSON:
{"System":{
"Build":20102,
"Git Build":"mega-20180504",
"System libraries":"ESP82xx Core 2_4_1, NONOS SDK 2.2.1(cfd48f3), LWIP: 2.0.3",
"Plugins":72,
"Plugin description":" [Normal] [Testing] [Development]",
"Local time":"2018-05-07 09:23:51",
"Unit":0,
"Name":"esp_gdluik",
"Uptime":744,
"Last boot cause":"Manual reboot",
"Load":7,
"Load LC":11128,
"Free RAM":15656
},
"WiFi":{
"Hostname":"esp-gdluik-0",
"IP config":"Static",
"IP":"192.168.0.39",
"Subnet Mask":"255.255.255.0",
"Gateway IP":"192.168.0.1",
"MAC address":"A0:20:A6:25:70:F3",
"DNS 1":"8.8.8.8",
"DNS 2":"0.0.0.0",
"SSID":"Hanny24",
"BSSID":"AC:22:05:2E:80:9D",
"Channel":6,
"Connected msec":44602889,
"Last Disconnect Reason":203,
"Last Disconnect Reason str":"(203) Assoc fail",
"Number reconnects":0,
"RSSI":-79
},
"Sensors":[
{
"TaskNumber":1,
"Type":"Switch input - Switch",
"TaskName":"Extra",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":0}]
},
{
"TaskNumber":2,
"Type":"Switch input - Switch",
"TaskName":"Boven",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":1}]
},
{
"TaskNumber":3,
"Type":"Switch input - Switch",
"TaskName":"Beneden",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":0}]
},
{
"TaskNumber":4,
"Type":"Generic - Dummy Device",
"TaskName":"actie",
"TaskValues": [
{"ValueNumber":1,
"Name":"omhoog",
"Value":0.00},
{"ValueNumber":2,
"Name":"omlaag",
"Value":0.00},
{"ValueNumber":3,
"Name":"",
"Value":0.00},
{"ValueNumber":4,
"Name":"",
"Value":0.00}]
}
]
}
I cannot get it decoded.
I like to have the Value of the different Tasknumbers. Or if possible directly using the Taskname (Boven) and the the Value for Taskvalue with name "Switch".
Please help !
"TaskNumber":1,
"Type":"Switch input - Switch",
"TaskName":"Extra",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":0}]
},
{
"TaskNumber":2,
"Type":"Switch input - Switch",
"TaskName":"Boven",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":1}]
},
---
This is complete JSON:
{"System":{
"Build":20102,
"Git Build":"mega-20180504",
"System libraries":"ESP82xx Core 2_4_1, NONOS SDK 2.2.1(cfd48f3), LWIP: 2.0.3",
"Plugins":72,
"Plugin description":" [Normal] [Testing] [Development]",
"Local time":"2018-05-07 09:23:51",
"Unit":0,
"Name":"esp_gdluik",
"Uptime":744,
"Last boot cause":"Manual reboot",
"Load":7,
"Load LC":11128,
"Free RAM":15656
},
"WiFi":{
"Hostname":"esp-gdluik-0",
"IP config":"Static",
"IP":"192.168.0.39",
"Subnet Mask":"255.255.255.0",
"Gateway IP":"192.168.0.1",
"MAC address":"A0:20:A6:25:70:F3",
"DNS 1":"8.8.8.8",
"DNS 2":"0.0.0.0",
"SSID":"Hanny24",
"BSSID":"AC:22:05:2E:80:9D",
"Channel":6,
"Connected msec":44602889,
"Last Disconnect Reason":203,
"Last Disconnect Reason str":"(203) Assoc fail",
"Number reconnects":0,
"RSSI":-79
},
"Sensors":[
{
"TaskNumber":1,
"Type":"Switch input - Switch",
"TaskName":"Extra",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":0}]
},
{
"TaskNumber":2,
"Type":"Switch input - Switch",
"TaskName":"Boven",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":1}]
},
{
"TaskNumber":3,
"Type":"Switch input - Switch",
"TaskName":"Beneden",
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"Value":0}]
},
{
"TaskNumber":4,
"Type":"Generic - Dummy Device",
"TaskName":"actie",
"TaskValues": [
{"ValueNumber":1,
"Name":"omhoog",
"Value":0.00},
{"ValueNumber":2,
"Name":"omlaag",
"Value":0.00},
{"ValueNumber":3,
"Name":"",
"Value":0.00},
{"ValueNumber":4,
"Name":"",
"Value":0.00}]
}
]
}