eric_le_belge Posté(e) le 19 février 2020 Signaler Posté(e) le 19 février 2020 Bonjour à tous, je suis jeune padawan dans le json, et je patauge un peu. J'ai un script qui interroge openweather, cela fonctionne pas trop mal, je reçois (normalement) quelque chose comme ceci {"coord":{"lon":5.26,"lat":50.58},"weather":[{"id":801,"main":"Clouds","description":"peu nuageux","icon":"02d"}],"base":"stations","main":{"temp":7.45,"feels_like":0.1,"temp_min":6,"temp_max":9.44,"pressure":1022,"humidity":60},"visibility":10000,"wind":{"speed":7.7,"deg":260},"clouds":{"all":20},"dt":1582123375,"sys":{"type":1,"id":1249,"country":"BE","sunrise":1582094682,"sunset":1582131680},"timezone":3600,"id":2784639,"name":"Villers-le-Bouillet","cod":200} bon je n'ai pas reinventé la roue, c'est un script déjà existant que j'adapte, en gros il va chercher l'info et la sauve dans une VG weather_today. je peux faire un fibaro:debug sur les champs de "main", pas de problème. Je reçois la température, l'humidité... function VD_Update() -- Récupération des données et actualisation des labels fibaro:debug("Actualisation des labels") local today_datas = fibaro:getGlobal("weather_today") if today_datas~="{}" then fibaro:debug("Décodage des datas") jsonTable0 = json.decode(today_datas) fibaro:debug("Humidité: "..jsonTable0.main.humidity) fibaro:debug("Temp: "..jsonTable0.main.temp) else fibaro:debug("Variable vide, on relance la scène") end end Mais comment je peux obtenir les valeurs des autres tableaux ?? si je fais un fibaro:debug("toto: "..jsonTable0.weather.description) ben ça marche po... /opt/fibaro/scenes/60.lua:125:attemp to concatenate field 'main' (a nil value). ps: si quelqu'un peut me dire comment faire un copier/coller de la fenêtre debug, je le bénirais jusqu'à la fin de la vie de mon HC2.
eric_le_belge Posté(e) le 24 février 2020 Auteur Signaler Posté(e) le 24 février 2020 Je me réponds, peut-être que cela aidera quelqu'un à l'avenir jsonTable.data[1].weather.description
Dragoniacs Posté(e) le 24 février 2020 Signaler Posté(e) le 24 février 2020 Je crois qu'il y a déjà un article complet sur cette solution, quelque part sur le forum. Je suis sur mon tel, je peux pas faire de recherche...Envoyé de mon SM-A530F en utilisant Tapatalk
Barelle Posté(e) le 24 février 2020 Signaler Posté(e) le 24 février 2020 Ainsi, cela devrait mieux fonctionner : fibaro:debug("toto: "..jsonTable0.weather[1].description) 1
Fredmas Posté(e) le 19 novembre 2021 Signaler Posté(e) le 19 novembre 2021 Je réponds tardivement, mais partant des QuickApp de @couillerot : https://www.domotique-fibaro.fr/topic/15134-quick-app-prévisions-météo-weatherbit-v12/ https://www.domotique-fibaro.fr/topic/15135-quick-app-météo-weatherbit-v12/ encore merci à lui j'ai découvert le fonctionnement de WeatherBit, et surtout j'en ai créé un deuxième actuellement en test parallèle avec OpenWeather. Donc @eric_le_belge si encore besoin, je pourrais éventuellement te partager certains appel API vers leur JSON, ou partager mutuellement quelques bonnes pratiques. Et sinon c'est que tu t'en es sorti, que tu n'as plus besoin, donc content pour toi
Messages recommandés