Forum eedomus
https://forum.eedomus.com/

Parsing d'un JSON de ESPEASY pour les débutants
https://forum.eedomus.com/viewtopic.php?f=15&t=9302
Page 1 sur 1
Auteur:  Jackoncept [ 02 Fév 2020 21:59 ]
Sujet du message:  Parsing d'un JSON de ESPEASY pour les débutants

BOnjour,
je bricole plein de module avec ESPEasy et le dernier en date me permet de mesurer la production, la tension et l'intensité d'un appareil éléctrique.

En allant sur l'IP de l'appareil et en ajoutant /Json à l'url j'obtiens ce fichier :

Code : Tout sélectionner
{"System":{
"Build":20104,
"Git Build":"",
"System Libraries":"ESP82xx Core bc204a9b, NONOS SDK 2.2.2-dev(38a443e), LWIP: 2.1.2 PUYA support",
"Plugins":48,
"Plugin description":" [Normal]",
"Local Time":"1970-00-00 00:00:00",
"Unit Number":0,
"Unit Name":"ESP_Easy",
"Uptime":199,
"Last Boot Cause":"Cold boot",
"Reset Reason":"External System",
"Load":11.60,
"Load LC":3025,
"CPU Eco Mode":"false",
"Heap Max Free Block":17384,
"Heap Fragmentation":10,
"Free RAM":19264
},
"WiFi":{
"Hostname":"ESP-Easy-0",
"IP Config":"Static",
"IP Address":"10.0.1.114",
"IP Subnet":"255.255.255.0",
"Gateway":"10.0.1.1",
"STA MAC":"BC:DD:C2:B6:75:37",
"DNS 1":"10.0.1.1",
"DNS 2":"(IP unset)",
"SSID":"LJ007",
"BSSID":"58:90:43:A5:7A:54",
"Channel":1,
"Connected msec":11922986,
"Last Disconnect Reason":1,
"Last Disconnect Reason str":"(1) Unspecified",
"Number Reconnects":0,
"Force WiFi B/G":"false",
"Restart WiFi Lost Conn":"false",
"Force WiFi No Sleep":"false",
"Periodical send Gratuitous ARP":"false",
"Connection Failure Threshold":0,
"RSSI":-77
},
"Sensors":[
{
"TaskValues": [
{"ValueNumber":1,
"Name":"Voltage_(V)",
"NrDecimals":2,
"Value":238.20
},
{"ValueNumber":2,
"Name":"Current_(A)",
"NrDecimals":2,
"Value":0.12
},
{"ValueNumber":3,
"Name":"Power_(W)",
"NrDecimals":2,
"Value":1.10
},
{"ValueNumber":4,
"Name":"Energy_(WH)",
"NrDecimals":2,
"Value":0.04
}],
"DataAcquisition": [
{"Controller":1,
"IDX":0,
"Enabled":"false"
},
{"Controller":2,
"IDX":0,
"Enabled":"false"
},
{"Controller":3,
"IDX":0,
"Enabled":"false"
}],
"TaskInterval":2,
"Type":"PZEM-004Tv30-Multiple",
"TaskName":"PZEM",
"TaskDeviceNumber":251,
"TaskEnabled":"true",
"TaskNumber":1
}
],
"TTL":2000
}


A partir de là j'ai su créer un retour d'état HTTP dans eedomus, cliquer sur l'option convertir JSON en XML mais après je suis bloqué :

Comment récupérer la valeur des 4 paramètres qui m'intéresse (Power_W / Current_(A) / Energy_Wh.
Value de ValueNumber 1, 2, 3, 4 ?

La seule valeur que je sais récuperer en mettant /Value c'est la tension. Soit le premier ValueNumber.

J'ai tenté de mettre les valeurs suivantes dans Xpath :
//TaskValues[2]/Value
//Value[2]

J'ai fait des dizaines de recherches sur comment "Parser" un fichier XML mais je ne m'en sors pas… :geek:

Merci pour votre aide !!
Auteur:  benj70b [ 02 Fév 2020 22:55 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

Le fichier transformer en XML n'est pas valide a cause de <Force_WiFi_B/G> le / ne passe pas !

Sinon avec ESPEsasy tu peux faire du push vers l'eedomus ex: de ma conf avec les sonoff

Dans controllers :
dans ip controller mettre l'ip de l'eedomus
et dans controller publish
Code : Tout sélectionner
api/set?ction=periph.value&periph_id=%id%&value=%value%&api_user=XXXXX&api_secret=YYYYYY&update_only=1



esp1.png
esp1.png (27.58 Kio) Consulté 9088 fois


et dans device :
Mettre le code API de ton periph eedomus dans IDX
esp2.png
esp2.png (20.75 Kio) Consulté 9088 fois
Auteur:  Jackoncept [ 02 Fév 2020 23:24 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

en 1 mot : GENIAL !!!!

Merci bcp :!: :!: :!: :!: :!:
Auteur:  Jackoncept [ 22 Mars 2020 11:11 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

Hello,
J'en profite de ta maitrise du lien eedomus <-> espeasy pour poser la question suivante :

J'aimerai faire l'inverse : récuperer une donnée d'un périphérique de l'eedomus dans un ESP flashé avec ESPEasy. j'ai beau avoir fouillé je ne sais pas si c'est possible ? :?:

Bon Dimanche à tous!
Auteur:  benj70b [ 25 Mars 2020 22:39 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

bonjour, par defaut on ne peut pas faire , il faut developper un plugin espeasy.
Auteur:  donDams [ 05 Nov 2020 16:33 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

benj70b a écrit:Mettre le code API de ton periph eedomus dans IDX


Bonjour,
Quel type de périphérique créer dans eedomus et comment le paramétrer?
Merci
Auteur:  donDams [ 06 Nov 2020 18:44 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

Mon problème est le suivant:
J'ai connecté un capteur de présence à un wemos D1 mini que j'ai flasher avec Espeasy Mega.
J'arrive à récupérer l'info, et je veux la transmettre à ma box Eedomus.
Mais ça ne fonctionne pas. J'ai essayé avec un capteur HTTP et j'arrive bien à récupérer l'état en écrivant un requête json mais impossible de faire lire cet état à la box.
De plus je suis intéressé par la fonction "push" du wemos mais je n'arrive pas à la mettre en œuvre.
si quelqu'un à des idées je suis preneur.

merci

Damien
Auteur:  Goupil54 [ 19 Avr 2021 18:03 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

Bonjour, je vois que vous êtes des pro eedomus <-> ESP easy, j'ai plusieurs sonoff basic qui fonctionne très bien. Je viens d'acheter un sonoff POW R2 que je me suis empressé de flasher avec ESP Easy. Comme les sonoff basic pas de souci pour activer le relais depuis la box ou le bouton. Maintenant je voudrais récupérer les infos de puissance, tension, intensité mais je pense que je n'ai pas le bon firmware... j'ai une puce CSE 7759B sur mon sonoff mais dans mon ESP Easy, je n'ai rien qui correspond à cette puce, donc aucune info ne remonte... Si quelqu'un a un firmware qui fonctionne bien pour le sonoff POW R2 est-ce que vous pourriez me mettre un lien pour que je le charge et enfin exploiter ce module avec ma box? Merci d'avance
Auteur:  Michteedo [ 20 Avr 2021 04:59 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

Bonjour,
j'ai fait se que vous dites; mais après? on li le fichier Xml?
et l'adresse d Eedomus, c est celle de secours?
et le code API, ou le trouve t on?
MI
Auteur:  merguez07 [ 20 Avr 2021 07:51 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

Bonjour Michteedo,

Michteedo a écrit:j'ai fait se que vous dites


tu parles de la config espeasy proposée par benj70b ?

si oui :
Michteedo a écrit:et l'adresse d Eedomus, c est celle de secours?

oui c'est l'adresse IP de ta box Eedomus

Michteedo a écrit:mais après? on li le fichier Xml?

Non, la valeur est directement implantée dans le capteur http désigné

Michteedo a écrit:et le code API, ou le trouve t on?


tu parles de quel code API ?
Auteur:  Michteedo [ 17 Août 2021 18:12 ]
Sujet du message:  Re: Parsing d'un JSON de ESPEASY pour les débutants

Bonjour, je reviens vers vous.....
Je cherche le code API de la Box Eedomus, merci
J'ai installé un electrodragon et je voudrais recuperer la valeur analogique de celle ci, merci...
Mi
Page 1 sur 1 Le fuseau horaire est UTC+1 heure