Nico33 Posté(e) le 23 août 2014 Signaler Posté(e) le 23 août 2014 Bonjour, Je débute sur le lua depuis qques jours et je m'attaque à la communication entre mon eedomus et ma HC2. Je souhaite traiter un tableau en json renvoyé par l'eedomus de la forme suivante : { "success": 1, "body":[{"periph_id": "36848", "name": "Temperature multisensor Salon", "last_value": "24.6", "last_value_text": "", "last_value_change": "2014-08-22 21:43:58"}, {"periph_id": "46902", "name": "Température [ambiante] Sejour", "last_value": "22", "last_value_text": "", "last_value_change": "2014-08-22 21:23:44"}, {"periph_id": "74039", "name": "Température [ambiante] Couloir", "last_value": "24", "last_value_text": "", "last_value_change": "2014-08-22 21:49:02"}, {"periph_id": "85366", "name": "Température motion Sejour", "last_value": "24.2", "last_value_text": "", "last_value_change": "2014-08-22 21:46:55"}]} Je n'ai pas trouvé dans les tutos ni dans la recherche la façon de mettre le tableau json dans un tableau exploitable pour le LUA pour en ressortir les données. J'arrive à interroger et à exploiter lorsque ce n'est pas une forme de tableau (interrogation d'un prériph). Avez-vous un lien avec un exemple à me donner ? Nico33
Steven Posté(e) le 23 août 2014 Signaler Posté(e) le 23 août 2014 local monTableauExploitable = json.decode(json_recu)
Nico33 Posté(e) le 23 août 2014 Auteur Signaler Posté(e) le 23 août 2014 Tout simplement ! Merci. Je vais batailler avec les tableaux maintenant 1
Nico33 Posté(e) le 26 août 2014 Auteur Signaler Posté(e) le 26 août 2014 J'obtiens une erreur : [ERROR] 23:56:07: line 12: Expected value but found invalid escape code at character 4711 Je précise que la ligne 12 est celle qui fait le json.decode : fibaro:log("Appel lancé") HC2 = Net.FHttp("api.eedomus.com") response, status, errorcode = HC2:GET("/get?action=periph.caract&periph_id=all&api_user=aaaaaa&api_secret=abcd") local monTableau = json.decode(response) Je précise aussi que le json obtenu est très long car c'est tous les périphs de mon eedomus. Pb de taille du json ?
Krikroff Posté(e) le 26 août 2014 Signaler Posté(e) le 26 août 2014 oui c'est bien possible...Soit le json est mal-formé soit l'eedomus retourne un flux "chunked" et cela pose des problèmes pour FHttp et la solution est l'utilisation de FTcpSocket et d'un buffer...
Messages recommandés