Demande de création plugin EUC World

Salut,

J’ai une petite question et je ne sais pas à qui demander.

J’aurais besoin d’un plugin qui n’existe pas et je ne suis pas dans le domaine pour le concevoir, le tuto que j’ai vu ne m’aide pas beaucoup.
( https://doc.jeedom.com/fr_FR/dev/tutorial_plugin#Récupération%20des%20informations )

Mon besoin serait de créer un plugin qui ferait communiquer une application android avec Jeedom.
Pour vous donner des détails, c’est l’application « EUC world ». C’est une application qui gère des Gygoroues.

Cette application peux créer un serveur hébergé par le tel et disponible sur le réseau local et accessible via une ip. Celle-ci donne bcp d’informations provenant de son API sur l’énergie consommée, les distances parcouru et un paquet d’autres informations…

Voila à quoi cela ressemble :

Comment les récupérer et les utiliser dans jeedom afin de faire des statistiques, détails de trajets, conso ect ?

Si quelqu’un peut m’aiguiller sur des tutos ou m’indiquer ou pourrais-je mettre ma demande sur le fofo afin qu’un connaisseur puisse m’aider ?

Je vous remercie :slight_smile:

Salut PaTiTan,

Le format des données que tu récupères via l’API est du json.
Je crois qu’avec des plugins existants tu peux extraire des données de ce json. Je ne veux pas mal t’aiguiller car je ne connais pas les détails, mais il me semble que MQTT sait interpréter un json. Il existe plusieurs plugin MQTT: #plugin-mqtt , #plugin-mqtt2 , #plugin-jmqtt et peut-être d’autres. Je ne connais pas les différences. node-red sait aussi le faire, je ne sais pas si node-red est implémenté dans un plugin.

Pour mieux comprendre le json, tu peux copier le contenu et le formatter de manière à ce que la hiérarchie soit lisible, par exemple avec https://jsonformatter.curiousconcept.com mais il en existe d’autres, également offline intégré dans Notepadd++ par exemple.

Une fois que tu auras isolé les informations que tu souhaites extraire, tu peux te renseigner sur les plugins existants, la documentation est accessible sans installation via leur description sur le market, pour te faire une idée.

A toi de jouer.

A+
Michel

Bonjour,

un plugin mqtt je ne crois pas puisqu’ils doivent se connecter sur un broker (serveur) mqtt hors ici c’est un serveur http manifestement (à moins qu’en plus un serveur mqtt existe?)

par contre le #plugin-script permettra de récupérer le json via http et d’en extraire les infos voulues même si cela va faire beaucoup de commandes à créer s’il faut tout récupérer

Merci @Mips et @Michel_F pour vos pistes :slight_smile:

Même s’il faut le faire à la main, j’en ai la motivation :slight_smile:

voila à quoi ça resemble :

{
   "ccu":{
      "v":0.056,
      "d":true,
      "i":false,
      "t":"Courant",
      "p":4
   },
   "ccuo":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Courant batterie",
      "p":4
   },
   "cua":{
      "i":false,
      "t":"Durée"
   },
   "ced":{
      "i":false,
      "t":"Énergie consommée"
   },
   "cpo":{
      "v":1.844,
      "d":true,
      "i":false,
      "t":"Puissance",
      "p":4
   },
   "cpf":{
      "v":0.142,
      "d":true,
      "i":false,
      "t":"Facteur de puissance",
      "p":4
   },
   "cvo":{
      "v":232.445,
      "d":true,
      "i":false,
      "t":"Tension",
      "p":4
   },
   "gal":{
      "v":56.227,
      "d":true,
      "i":false,
      "t":"Altitude",
      "p":11
   },
   "gbe":{
      "v":221.6,
      "d":true,
      "i":false,
      "t":"Orientation",
      "p":4
   },
   "gdi":{
      "v":0.033,
      "d":true,
      "i":false,
      "t":"Distance",
      "p":8
   },
   "gua":{
      "v":24000,
      "d":true,
      "i":false,
      "t":"Durée du trajet",
      "p":10
   },
   "gur":{
      "v":10000,
      "d":true,
      "i":false,
      "t":"Durée en Mvt",
      "p":10
   },
   "gsp":{
      "v":0.036,
      "d":true,
      "i":false,
      "t":"Vitesse",
      "p":7
   },
   "gsa":{
      "v":2.457,
      "d":true,
      "i":false,
      "t":"Vitesse Moy",
      "p":7
   },
   "gsr":{
      "v":4.896,
      "d":true,
      "i":false,
      "t":"Vitesse Moy Mvt",
      "p":7
   },
   "gsx":{
      "v":12.78,
      "d":true,
      "i":false,
      "t":"Vitesse Max",
      "p":7
   },
   "pba":{
      "v":48,
      "d":true,
      "i":false,
      "t":"Niveau batteries",
      "p":2
   },
   "vbcr":{
      "v":0.144,
      "d":true,
      "i":false,
      "t":"Résistance interne batterie",
      "p":4
   },
   "vbch":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Batterie en charge",
      "p":2
   },
   "vbf":{
      "v":75,
      "d":true,
      "i":false,
      "t":"Batterie",
      "p":5
   },
   "vba":{
      "v":75,
      "d":true,
      "i":false,
      "t":"Batterie",
      "p":5
   },
   "vbm":{
      "v":75,
      "d":true,
      "i":false,
      "t":"Batterie Min",
      "p":5
   },
   "vbx":{
      "v":75,
      "d":true,
      "i":false,
      "t":"Batterie Max",
      "p":5
   },
   "vb1ca":{
      "i":false,
      "t":"Capacité réelle"
   },
   "vb1co":{
      "i":false,
      "t":"Capacité nominale"
   },
   "vb1cr":{
      "i":false,
      "t":"Capacité restante"
   },
   "vb1cc":{
      "i":false,
      "t":"Compte des charges"
   },
   "vcb1":{
      "i":false,
      "t":"Courant"
   },
   "vccb1":{
      "i":false,
      "t":"Charge Current"
   },
   "vcdb1":{
      "i":false,
      "t":"Discharge Current"
   },
   "vfvb1":{
      "i":false,
      "t":"Firmware Version"
   },
   "vb1fc":{
      "i":false,
      "t":"Nombre de charges complètes"
   },
   "vhvb1":{
      "i":false,
      "t":"Hardware Version"
   },
   "vb1h":{
      "i":false,
      "t":"Santé"
   },
   "vb1i":{
      "i":false,
      "t":"Déséquilibre"
   },
   "vb1":{
      "i":false,
      "t":"Niveau batteries"
   },
   "vb1md":{
      "i":false,
      "t":"Fabriqué"
   },
   "vmsnb1":{
      "i":false,
      "t":"Numéro de série"
   },
   "vvb1":{
      "i":false,
      "t":"Tension"
   },
   "vb2ca":{
      "i":false,
      "t":"Capacité réelle"
   },
   "vb2cn":{
      "i":false,
      "t":"Capacité nominale"
   },
   "vb2cr":{
      "i":false,
      "t":"Capacité restante"
   },
   "vb2cc":{
      "i":false,
      "t":"Compte des charges"
   },
   "vcb2":{
      "i":false,
      "t":"Courant"
   },
   "vccb2":{
      "i":false,
      "t":"Charge Current"
   },
   "vcdb2":{
      "i":false,
      "t":"Discharge Current"
   },
   "vfvb2":{
      "i":false,
      "t":"Firmware Version"
   },
   "vb2fc":{
      "i":false,
      "t":"Nombre de charges complètes"
   },
   "vhvb2":{
      "i":false,
      "t":"Hardware Version"
   },
   "vb2h":{
      "i":false,
      "t":"Santé"
   },
   "vb2i":{
      "i":false,
      "t":"Déséquilibre"
   },
   "vb2":{
      "i":false,
      "t":"Niveau batteries"
   },
   "vb2md":{
      "i":false,
      "t":"Fabriqué"
   },
   "vmsnb2":{
      "i":false,
      "t":"Numéro de série"
   },
   "vcu":{
      "v":0.19,
      "d":true,
      "i":false,
      "t":"Courant",
      "p":5
   },
   "vcn":{
      "v":0.19,
      "d":true,
      "i":false,
      "t":"Courant Min",
      "p":5
   },
   "vca":{
      "i":false,
      "t":"Courant Moy"
   },
   "vcx":{
      "v":0.22,
      "d":true,
      "i":false,
      "t":"Courant Max",
      "p":5
   },
   "vcli":{
      "i":false,
      "t":"Limite de courant"
   },
   "vcln":{
      "i":false,
      "t":"Limite de courant minimale"
   },
   "vclx":{
      "i":false,
      "t":"Limite de courant maximale"
   },
   "vcp":{
      "i":false,
      "t":"Courant phase"
   },
   "vcpn":{
      "i":false,
      "t":"Courant phase min"
   },
   "vcpa":{
      "i":false,
      "t":"Courant phase moy"
   },
   "vcpx":{
      "i":false,
      "t":"Courant phase max"
   },
   "vdi":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Distance",
      "p":8
   },
   "vdt":{
      "v":37.581,
      "d":true,
      "i":false,
      "t":"Distance Totale",
      "p":8
   },
   "vdu":{
      "v":37.06,
      "d":true,
      "i":false,
      "t":"Distance utilisateur",
      "p":8
   },
   "vdv":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Distance roue",
      "p":8
   },
   "vua":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Durée du trajet",
      "p":10
   },
   "vuc":{
      "i":false,
      "t":"Temps de charge"
   },
   "vur":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Durée en Mvt",
      "p":10
   },
   "vec":{
      "i":false,
      "t":"Consommation d'énergie"
   },
   "veca":{
      "i":false,
      "t":"Conso. d'énergie moy"
   },
   "vedt":{
      "i":false,
      "t":"Énergie totale consommée"
   },
   "vecta":{
      "i":false,
      "t":"Conso. d'énergie totale moy."
   },
   "vfa":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Défauts",
      "p":2
   },
   "vfaha":{
      "v":"Bon",
      "d":true,
      "i":false,
      "t":"Capteur à effet Hall",
      "p":0
   },
   "vfaim":{
      "v":"Bon",
      "d":true,
      "i":false,
      "t":"IMU (Gyroscope)",
      "p":0
   },
   "vfala":{
      "i":false,
      "t":"Capteur de levage \"A\""
   },
   "vfalb":{
      "i":false,
      "t":"Capteur de levage \"B\""
   },
   "vfamo":{
      "v":"Bon",
      "d":true,
      "i":false,
      "t":"Circuit moteur",
      "p":0
   },
   "vfaol":{
      "v":"Normal",
      "d":true,
      "i":false,
      "t":"Charge",
      "p":0
   },
   "vfaot":{
      "v":"Normal",
      "d":true,
      "i":false,
      "t":"Température",
      "p":0
   },
   "vfasn":{
      "v":"Valide",
      "d":true,
      "i":false,
      "t":"Numéro de Série",
      "p":0
   },
   "vlco":{
      "v":33,
      "d":true,
      "i":false,
      "t":"Charge CPU",
      "p":4
   },
   "vlro":{
      "i":false,
      "t":"Recharge"
   },
   "vlrx":{
      "i":false,
      "t":"Recharge Max"
   },
   "vlrn":{
      "i":false,
      "t":"Recharge Régen Max"
   },
   "vpo":{
      "v":14.672,
      "d":true,
      "i":false,
      "t":"Puissance",
      "p":5
   },
   "vpn":{
      "v":14.67,
      "d":true,
      "i":false,
      "t":"Puissance Min",
      "p":5
   },
   "vpa":{
      "i":false,
      "t":"Puissance Moy"
   },
   "vpx":{
      "v":16.986,
      "d":true,
      "i":false,
      "t":"Puissance Max",
      "p":5
   },
   "vrsi":{
      "v":-67,
      "d":true,
      "i":false,
      "t":"RSSI",
      "p":4
   },
   "vrsn":{
      "v":-76,
      "d":true,
      "i":false,
      "t":"Min RSSI",
      "p":4
   },
   "vrsx":{
      "v":-66,
      "d":true,
      "i":false,
      "t":"Max RSSI",
      "p":4
   },
   "vsmg":{
      "v":100,
      "d":true,
      "i":false,
      "t":"Marge de sécurité",
      "p":4
   },
   "vsmn":{
      "v":100,
      "d":true,
      "i":false,
      "t":"Marge de sécurité min",
      "p":4
   },
   "vsmx":{
      "i":false,
      "t":"Marge de sécurité maximale"
   },
   "vsp":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Vitesse",
      "p":7
   },
   "vsx":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Vitesse Max",
      "p":7
   },
   "vsa":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Vitesse Moy",
      "p":7
   },
   "vsr":{
      "v":0,
      "d":true,
      "i":false,
      "t":"Vitesse Moy Mvt",
      "p":7
   },
   "vsli":{
      "v":20,
      "d":true,
      "i":false,
      "t":"Vitesse limite",
      "p":7
   },
   "vsln":{
      "i":false,
      "t":"Limite de vitesse minimale"
   },
   "vslx":{
      "i":false,
      "t":"Limite de vitesse maximale"
   },
   "vte":{
      "v":13,
      "d":true,
      "i":false,
      "t":"Température",
      "p":6
   },
   "vtn":{
      "v":12,
      "d":true,
      "i":false,
      "t":"Temp. Min",
      "p":6
   },
   "vtx":{
      "v":13,
      "d":true,
      "i":false,
      "t":"Temp. Max",
      "p":6
   },
   "vteb":{
      "i":false,
      "t":"Température Batterie"
   },
   "vtebn":{
      "i":false,
      "t":"Min Température Batterie"
   },
   "vtebx":{
      "i":false,
      "t":"Max Température Batterie"
   },
   "vteb1":{
      "i":false,
      "t":"Température"
   },
   "vteab1":{
      "i":false,
      "t":"Ambient Temperature"
   },
   "vtemb1":{
      "i":false,
      "t":"MOSFET Temperature"
   },
   "vtemcb1":{
      "i":false,
      "t":"Charge MOSFET Temperature"
   },
   "vtemdb1":{
      "i":false,
      "t":"Discharge MOSFET Temperature"
   },
   "vteb2":{
      "i":false,
      "t":"Température"
   },
   "vteab2":{
      "i":false,
      "t":"Ambient Temperature"
   },
   "vtemb2":{
      "i":false,
      "t":"MOSFET Temperature"
   },
   "vtemcb2":{
      "i":false,
      "t":"Charge MOSFET Temperature"
   },
   "vtemdb2":{
      "i":false,
      "t":"Discharge MOSFET Temperature"
   },
   "vtec":{
      "i":false,
      "t":"Température CPU"
   },
   "vtecn":{
      "i":false,
      "t":"Température min CPU"
   },
   "vtecx":{
      "i":false,
      "t":"Température max CPU"
   },
   "vtei":{
      "i":false,
      "t":"Température IMU"
   },
   "vtein":{
      "i":false,
      "t":"Température IMU min"
   },
   "vteix":{
      "i":false,
      "t":"Température IMU max"
   },
   "vtem":{
      "i":false,
      "t":"Temp carte mère"
   },
   "vtemn":{
      "i":false,
      "t":"Min Température Carte Mère"
   },
   "vtemx":{
      "i":false,
      "t":"Max Température Carte Mère"
   },
   "vteo":{
      "v":12,
      "d":true,
      "i":false,
      "t":"Température moteur",
      "p":6
   },
   "vtno":{
      "v":12,
      "d":true,
      "i":false,
      "t":"Min Température moteur",
      "p":6
   },
   "vtxo":{
      "v":12,
      "d":true,
      "i":false,
      "t":"Max Température Moteur",
      "p":6
   },
   "vvo":{
      "v":77.22,
      "d":true,
      "i":false,
      "t":"Tension",
      "p":5
   },
   "vvn":{
      "v":77.21,
      "d":true,
      "i":false,
      "t":"Tension Min",
      "p":5
   },
   "vvx":{
      "v":77.22,
      "d":true,
      "i":false,
      "t":"Tension Max",
      "p":5
   },
   "vvch":{
      "i":false,
      "t":"Tension de charge"
   },
   "vil":{
      "i":false,
      "t":"Inclinaison"
   },
   "vro":{
      "i":false,
      "t":"Roulis"
   },
   "vmcf":{
      "v":"Off",
      "n":0,
      "d":true,
      "i":false,
      "t":"Etat du ventilateur",
      "p":1
   },
   "vmcs":{
      "v":"Dur",
      "d":true,
      "i":false,
      "t":"Mode",
      "p":0
   },
   "vmna":{
      "v":"KS-S18-0219",
      "d":true,
      "i":false,
      "t":"Nom",
      "p":0
   },
   "vmmo":{
      "v":"KS-S18",
      "d":true,
      "i":false,
      "t":"Modèle",
      "p":0
   },
   "vfv":{
      "v":"2.19",
      "d":true,
      "i":false,
      "t":"Version",
      "p":0
   },
   "vfvl":{
      "i":false,
      "t":"Version BLE"
   },
   "vfvi":{
      "i":false,
      "t":"Version du convertisseur"
   },
   "vmsn":{
      "v":"KSS181D1548416D205",
      "d":true,
      "i":false,
      "t":"Numéro de série",
      "p":0
   },
   "tdi":{
      "v":0.022,
      "d":false,
      "i":false,
      "t":"Distance",
      "p":8
   },
   "tua":{
      "v":4558000,
      "d":false,
      "i":false,
      "t":"Durée du trajet",
      "p":10
   },
   "tur":{
      "v":5000,
      "d":false,
      "i":false,
      "t":"Durée en Mvt",
      "p":10
   },
   "tsa":{
      "v":0.654,
      "d":false,
      "i":false,
      "t":"Vitesse Moy",
      "p":7
   },
   "tsr":{
      "v":3.756,
      "d":false,
      "i":false,
      "t":"Vitesse Moy Mvt",
      "p":7
   },
   "tsx":{
      "v":4.356,
      "d":false,
      "i":false,
      "t":"Vitesse Max",
      "p":7
   },
   "uhr":{
      "i":false,
      "t":"Rythme cardiaque",
      "p":2
   },
   "wba":{
      "i":false,
      "t":"Niveau batteries"
   },
   "xcc":{
      "i":false,
      "t":"Couverture nuageuse"
   },
   "xhu":{
      "i":false,
      "t":"Humidité"
   },
   "xpr":{
      "i":false,
      "t":"Pression"
   },
   "xrf":{
      "i":false,
      "t":"Pluie"
   },
   "xsf":{
      "i":false,
      "t":"Neige"
   },
   "xte":{
      "i":false,
      "t":"Température"
   },
   "xtn":{
      "i":false,
      "t":"Temp. Min"
   },
   "xtx":{
      "i":false,
      "t":"Temp. Max"
   },
   "xta":{
      "i":false,
      "t":"Température ressentie"
   },
   "xvy":{
      "i":false,
      "t":"Visibilité"
   },
   "xws":{
      "i":false,
      "t":"Vitesse du vent"
   },
   "xwd":{
      "i":false,
      "t":"Direction du vent"
   }
}

Il y en a un bon paquet !!

Effectivement, mais l’avantage pour la simplicité du traitement, c’est qu’il n’y a pas de hiérarchie.
En plus tu as la motivation :wink:

Bon courage !

Mais comment dois-je remplir le champs « requête » pour avoir l’information que je souhaite ? :

Y a un exemple dans la doc du plugin
Vu que le json est effectivement simple (mais long) ça ne devrait pas être trop compliqué à comprendre mais n’hésites pas à demander des précisions si besoin

1 « J'aime »

J’avais épluché le tuto avant de demander :wink:
Mais t’a bien fait de pas répondre !!! c’est exactement comme cela qu’il faut agir pour que l’on apprenne.

Du coup j’ai été manger et j’ai trouver la solution après cette pause haha :

Par contre ça va être long et très très chiant haha :sweat_smile:

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.