DZVents : mise en cache des données de l’API prevision_meteo.ch

Vous avez crée un script lua dont vous êtes fier, un .sh génial, un programme python hors du commun, un tuto , c'est ici que vous pouvez les partager.
Soyez précis quant aux prérequis, les manips à faire pour que votre bijou fonctionne (des chmod ?, un apt-get à faire ...)
Décrivez précisément son fonctionnement
Placez votre code entre [Quote] et {/Quote]
papoo
Messages : 1956
Enregistré le : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par papoo » 27 nov. 2019, 21:42

ce script simplifié ne teste pas si le résultat est en json.
tu peux éventuellement faire un test en ajoutant l'url

Code : Tout sélectionner

["testUrl4"] = 'https://www.prevision-meteo.ch/services/json/lat=45.85860lng=1.23190'
si cela fonctionne modifie le script previsionMeteo.lua

Code : Tout sélectionner

            if (not item.isJSON) then
                logWrite('Last http response was not what expected. Trigger: '..item.trigger,domoticz.LOG_ERROR)
            else
                local contents = domoticz.utils.toJSON(item.json)
                contents = contents:gsub('https://www(.?)prevision(.?)meteo(.?)ch/style/images/icon/', iconsPath) 
                logWrite(contents)
                if contents then
                    file = io.open(jsonFile, "w+")
                    file:write( contents )
                    io.close( file )
                    --file:close()
                    logWrite('ecriture des données dans le fichier '..jsonFile)
                end
            end
par

Code : Tout sélectionner

          --  if (not item.isJSON) then
               -- logWrite('Last http response was not what expected. Trigger: '..item.trigger,domoticz.LOG_ERROR)
          --  else
                local contents = domoticz.utils.toJSON(item.json)
                contents = contents:gsub('https://www(.?)prevision(.?)meteo(.?)ch/style/images/icon/', iconsPath) 
                logWrite(contents)
                if contents then
                    file = io.open(jsonFile, "w+")
                    file:write( contents )
                    io.close( file )
                    --file:close()
                    logWrite('ecriture des données dans le fichier '..jsonFile)
                end
        --    end
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Doudy
Messages : 219
Enregistré le : 07 mai 2016, 17:23

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par Doudy » 28 nov. 2019, 09:27

papoo a écrit :
27 nov. 2019, 21:42
ce script simplifié ne teste pas si le résultat est en json.
tu peux éventuellement faire un test en ajoutant l'url

Code : Tout sélectionner

["testUrl4"] = 'https://www.prevision-meteo.ch/services/json/lat=45.85860lng=1.23190'
si cela fonctionne modifie le script previsionMeteo.lua
Voilà le résultat :

Code : Tout sélectionner

2019-11-28 09:20:04.477 Status: dzVents: Info: Test Urls v0.1: ------ Start external script: testsUrl.lua: HTTPResponse: "testUrl4"
2019-11-28 09:20:04.477 Status: dzVents: !Info: Test Urls v0.1: Domoticz version: 4.10717, and dzVents version : 2.4.19
2019-11-28 09:20:04.478 Status: dzVents: !Info: Test Urls v0.1: {"city_info":{"name":"NA","country":"--","latitude":"45.85860","longitude":"1.23190","elevation":"NA","sunrise":"08:10","sunset":"17:15"},"forecast_info":{"latitude":"45.85860","longitude":"1.23190","elevation":"316.0"},"current_condition":{"date":"28.11.2019","hour":"10:00","tmp":9,"wnd_spd":27,"wnd_gust":53,"wnd_dir":"O","pressure":1002.7,"humidity":92,"condition":"Eclaircies","condition_key":"eclaircies","icon":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/eclaircies.png","icon_big":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/eclaircies-big.png"},"fcst_day_0":{"date":"28.11.2019","day_short":"Jeu.","day_long":"Jeudi","tmin":8,"tmax":10,"condition":"Eclaircies","condition_key":"eclaircies","icon":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/eclaircies.png","icon_big":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/eclaircies-big.png","hourly_data":{"0H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-faiblement-orageuse.png","CONDITION":"Nuit faiblement orageuse","CONDITION_KEY":"nuit-faiblement-orageuse","TMP2m":9.1,"DPT2m":8.2,"WNDCHILL2m":6,"HUMIDEX":null,"RH2m":94,"PRMSL":1000.5,"APCPsfc":0.3,"WNDSPD10m":23,"WNDGUST10m":54,"WNDDIR10m":257,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"0.00","MCDC":"0.00","LCDC":"99.70","HGT0C":1700,"KINDEX":39,"CAPE180_0":"150.000","CIN180_0":0},"1H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-faiblement-orageuse.png","CONDITION":"Nuit faiblement orageuse","CONDITION_KEY":"nuit-faiblement-orageuse","TMP2m":9,"DPT2m":8.1,"WNDCHILL2m":6,"HUMIDEX":null,"RH2m":94,"PRMSL":1000.6,"APCPsfc":0.1,"WNDSPD10m":21,"WNDGUST10m":47,"WNDDIR10m":250,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"0.00","MCDC":"0.00","LCDC":"0.00","HGT0C":1700,"KINDEX":39,"CAPE180_0":"125.000","CIN180_0":0},"2H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-avec-averses.png","CONDITION":"Nuit avec averses","CONDITION_KEY":"nuit-avec-averses","TMP2m":8.3,"DPT2m":7.6,"WNDCHILL2m":4.8,"HUMIDEX":null,"RH2m":95,"PRMSL":1000.8,"APCPsfc":0.1,"WNDSPD10m":25,"WNDGUST10m":44,"WNDDIR10m":253,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"0.00","MCDC":"0.00","LCDC":"62.60","HGT0C":1700,"KINDEX":38,"CAPE180_0":"120.000","CIN180_0":0},"3H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-avec-averses.png","CONDITION":"Nuit avec averses","CONDITION_KEY":"nuit-avec-averses","TMP2m":8.1,"DPT2m":7.5,"WNDCHILL2m":4.8,"HUMIDEX":null,"RH2m":96,"PRMSL":1000.3,"APCPsfc":0.2,"WNDSPD10m":22,"WNDGUST10m":41,"WNDDIR10m":260,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"0.00","MCDC":"0.00","LCDC":"99.80","HGT0C":1700,"KINDEX":39,"CAPE180_0":"104.000","CIN180_0":0},"4H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/pluie-faible.png","CONDITION":"Pluie faible","CONDITION_KEY":"pluie-faible","TMP2m":8.7,"DPT2m":8.3,"WNDCHILL2m":5.9,"HUMIDEX":null,"RH2m":98,"PRMSL":999.5,"APCPsfc":0.2,"WNDSPD10m":18,"WNDGUST10m":35,"WNDDIR10m":248,"WNDDIRCARD10":"SO","ISSNOW":0,"HCDC":"0.00","MCDC":"0.00","LCDC":"44.30","HGT0C":1800,"KINDEX":41,"CAPE180_0":"208.000","CIN180_0":0},"5H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-legerement-voilee.png","CONDITION":"Nuit l\u00e9g\u00e8rement voil\u00e9e","CONDITION_KEY":"nuit-legerement-voilee","TMP2m":7.7,"DPT2m":7,"WNDCHILL2m":4.4,"HUMIDEX":null,"RH2m":95,"PRMSL":999.8,"APCPsfc":0,"WNDSPD10m":21,"WNDGUST10m":44,"WNDDIR10m":267,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"44.40","MCDC":"0.00","LCDC":"0.00","HGT0C":1700,"KINDEX":40,"CAPE180_0":"73.000","CIN180_0":0},"6H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-nuageuse.png","CONDITION":"Nuit nuageuse","CONDITION_KEY":"nuit-nuageuse","TMP2m":8.3,"DPT2m":7.3,"WNDCHILL2m":4.4,"HUMIDEX":null,"RH2m":94,"PRMSL":1000.3,"APCPsfc":0,"WNDSPD10m":30,"WNDGUST10m":47,"WNDDIR10m":269,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"100.00","MCDC":"0.00","LCDC":"11.00","HGT0C":1700,"KINDEX":43,"CAPE180_0":"107.000","CIN180_0":0},"7H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-nuageuse.png","CONDITION":"Nuit nuageuse","CONDITION_KEY":"nuit-nuageuse","TMP2m":7.8,"DPT2m":6.7,"WNDCHILL2m":4,"HUMIDEX":null,"RH2m":93,"PRMSL":1000.8,"APCPsfc":0,"WNDSPD10m":26,"WNDGUST10m":47,"WNDDIR10m":260,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"100.00","MCDC":"0.00","LCDC":"33.30","HGT0C":1700,"KINDEX":45,"CAPE180_0":"37.000","CIN180_0":-10},"8H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-avec-averses.png","CONDITION":"Nuit avec averses","CONDITION_KEY":"nuit-avec-averses","TMP2m":8.7,"DPT2m":7.6,"WNDCHILL2m":5.1,"HUMIDEX":null,"RH2m":93,"PRMSL":1001.6,"APCPsfc":1,"WNDSPD10m":27,"WNDGUST10m":44,"WNDDIR10m":268,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"100.00","MCDC":"0.00","LCDC":"0.00","HGT0C":1700,"KINDEX":46,"CAPE180_0":"111.000","CIN180_0":-15},"9H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/eclaircies.png","CONDITION":"Eclaircies","CONDITION_KEY":"eclaircies","TMP2m":8.3,"DPT2m":6.9,"WNDCHILL2m":4.2,"HUMIDEX":null,"RH2m":91,"PRMSL":1002,"APCPsfc":0,"WNDSPD10m":32,"WNDGUST10m":50,"WNDDIR10m":252,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"100.00","MCDC":"35.30","LCDC":"0.00","HGT0C":1600,"KINDEX":46,"CAPE180_0":"17.000","CIN180_0":-31},"10H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/eclaircies.png","CONDITION":"Eclaircies","CONDITION_KEY":"eclaircies","TMP2m":9,"DPT2m":7.6,"WNDCHILL2m":5.5,"HUMIDEX":null,"RH2m":92,"PRMSL":1002.7,"APCPsfc":0,"WNDSPD10m":27,"WNDGUST10m":53,"WNDDIR10m":262,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"100.00","MCDC":"100.00","LCDC":"0.00","HGT0C":1700,"KINDEX":42,"CAPE180_0":"73.000","CIN180_0":-48},"11H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/averses-de-pluie-faible.png","CONDITION":"Averses de pluie faible","CONDITION_KEY":"averses-de-pluie-faible","TMP2m":9,"DPT2m":8,"WNDCHILL2m":5.7,"HUMIDEX":null,"RH2m":93,"PRMSL":1003,"APCPsfc":0.1,"WNDSPD10m":25,"WNDGUST10m":43,"WNDDIR10m":257,"WNDDIRCARD10":"O","ISSNOW":0,"HCDC":"100.00","MCDC":"100.00","LCDC":"3.90","HGT0C":1700,"KIND
2019-11-28 09:20:04.478 Status: dzVents: Info: Test Urls v0.1: ------ Finished testsUrl.lua
Je suppose que cela est correct.
Donc, je continue à suivre tes indications.
;)
PI 3 = RFXCOM
PI 3 + Touchscreen 7" affichage Domoticz
RFXCOM 433
Domoticz Version: 4.10717 - Python Version: 3.5.3

Doudy
Messages : 219
Enregistré le : 07 mai 2016, 17:23

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par Doudy » 28 nov. 2019, 09:38

papoo a écrit :
27 nov. 2019, 21:42
si cela fonctionne modifie le script previsionMeteo.lua
Eh bien cela n'a pas l'air de fonctionner !
Il y a encore un petit soucis.

Code : Tout sélectionner

 2019-11-28 09:33:00.436 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Start external script: previsionMeteo.lua:, trigger: every 1 minutes
2019-11-28 09:33:00.437 Status: dzVents: Debug: Extraction prévisions météo v1.01: latitude : 45.85860
2019-11-28 09:33:00.437 Status: dzVents: Debug: Extraction prévisions météo v1.01: longitude : 1.23190
2019-11-28 09:33:00.437 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: url = https://www.prevision-meteo.ch/services/json/lat=45.85860lng=1.23190
2019-11-28 09:33:00.437 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: method = GET
2019-11-28 09:33:00.437 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: post data = nil
2019-11-28 09:33:00.437 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: headers = nil
2019-11-28 09:33:00.437 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: callback = prevision-meteo_response
2019-11-28 09:33:00.437 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Finished previsionMeteo.lua
2019-11-28 09:33:00.438 Status: EventSystem: Script event triggered: /home/pi/domoticz/dzVents/runtime/dzVents.lua
2019-11-28 09:33:02.469 Status: dzVents: Info: Handling httpResponse-events for: "prevision-meteo_response
2019-11-28 09:33:02.469 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Start external script: previsionMeteo.lua: HTTPResponse: "prevision-meteo_response"
2019-11-28 09:33:02.473 Status: dzVents: Debug: Extraction prévisions météo v1.01: null
2019-11-28 09:33:02.473 Status: dzVents: Error (2.4.19): Extraction prévisions météo v1.01: An error occured when calling event handler previsionMeteo
2019-11-28 09:33:02.473 Status: dzVents: Error (2.4.19): Extraction prévisions météo v1.01: ...e/pi/domoticz/scripts/dzVents/scripts/previsionMeteo.lua:132: attempt to index global 'file' (a nil value)
2019-11-28 09:33:02.473 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Finished previsionMeteo.lua 
J'espère que cela pourra éclairer ta lanterne.
;)
PI 3 = RFXCOM
PI 3 + Touchscreen 7" affichage Domoticz
RFXCOM 433
Domoticz Version: 4.10717 - Python Version: 3.5.3

papoo
Messages : 1956
Enregistré le : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par papoo » 28 nov. 2019, 21:26

ma lanterne commence à manquer sérieusement de lumière. :D
on dirait que ton système ne comprend pas le json.
en gardant les modifs précédentes,
si tu commente les lignes suivantes, quel est le résultat?

Code : Tout sélectionner

        if contents then
                    file = io.open(jsonFile, "w+")
                    file:write( contents )
                    io.close( file )
                    --file:close()
                    logWrite('ecriture des données dans le fichier '..jsonFile)
                end
  
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Doudy
Messages : 219
Enregistré le : 07 mai 2016, 17:23

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par Doudy » 29 nov. 2019, 08:50

Bonjour,
papoo a écrit :
28 nov. 2019, 21:26
en gardant les modifs précédentes,
si tu commente les lignes suivantes, quel est le résultat?
Voilà, le résultat :

Code : Tout sélectionner

2019-11-29 08:45:00.297 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Start external script: previsionMeteo.lua:, trigger: every 1 minutes
2019-11-29 08:45:00.297 Status: dzVents: Debug: Extraction prévisions météo v1.01: latitude : 45.85860
2019-11-29 08:45:00.297 Status: dzVents: Debug: Extraction prévisions météo v1.01: longitude : 1.23190
2019-11-29 08:45:00.297 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: url = https://www.prevision-meteo.ch/services/json/lat=45.85860lng=1.23190
2019-11-29 08:45:00.297 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: method = GET
2019-11-29 08:45:00.298 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: post data = nil
2019-11-29 08:45:00.298 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: headers = nil
2019-11-29 08:45:00.298 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: callback = prevision-meteo_response
2019-11-29 08:45:00.298 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Finished previsionMeteo.lua 

2019-11-29 08:45:06.230 Status: dzVents: Info: Handling httpResponse-events for: "prevision-meteo_response
2019-11-29 08:45:06.230 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Start external script: previsionMeteo.lua: HTTPResponse: "prevision-meteo_response"
2019-11-29 08:45:06.234 Status: dzVents: Debug: Extraction prévisions météo v1.01: null
2019-11-29 08:45:06.234 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Finished previsionMeteo.lua 
J'allume la lumière :idea: :idea: :idea: si cela peut t'aider.... :lol:
PI 3 = RFXCOM
PI 3 + Touchscreen 7" affichage Domoticz
RFXCOM 433
Domoticz Version: 4.10717 - Python Version: 3.5.3

Doudy
Messages : 219
Enregistré le : 07 mai 2016, 17:23

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par Doudy » 01 déc. 2019, 11:17

Hello, bon dimanche,

Pourtant lorsque je fais "https://www.prevision-meteo.ch/services ... ng=1.23190" dans mon navigateur j'obtiens bien ceci :

Code : Tout sélectionner

{"city_info":{"name":"NA","country":"--","latitude":"45.85860","longitude":"1.23190","elevation":"NA","sunrise":"08:13","sunset":"17:14"},"forecast_info":{"latitude":"45.85860","longitude":"1.23190","elevation":"316.0"},"current_condition":{"date":"01.12.2019","hour":"11:00","tmp":6,"wnd_spd":11,"wnd_gust":18,"wnd_dir":"SE","pressure":1010.4,"humidity":97,"condition":"Ciel voil\u00e9","condition_key":"ciel-voile","icon":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/ciel-voile.png","icon_big":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/ciel-voile-big.png"},"fcst_day_0":{"date":"01.12.2019","day_short":"Dim.","day_long":"Dimanche","tmin":5,"tmax":7,"condition":"Eclaircies","condition_key":"eclaircies","icon":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/eclaircies.png","icon_big":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/eclaircies-big.png","hourly_data":{"0H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-avec-averses.png","CONDITION":"Nuit avec averses","CONDITION_KEY":"nuit-avec-averses","TMP2m":6.6,"DPT2m":5.9,"WNDCHILL2m":3.3,"HUMIDEX":null,"RH2m":96,"PRMSL":1010.2,"APCPsfc":0.2,"WNDSPD10m":18,"WNDGUST10m":28,"WNDDIR10m":215,"WNDDIRCARD10":"SO","ISSNOW":0,"HCDC":"67.00","MCDC":"0.00","LCDC":"31.30","HGT0C":1600,"KINDEX":44,"CAPE180_0":"0.000","CIN180_0":0},"1H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-avec-averses.png","CONDITION":"Nuit avec averses","CONDITION_KEY":"nuit-avec-averses","TMP2m":4.7,"DPT2m":3.8,"WNDCHILL2m":2.3,"HUMIDEX":null,"RH2m":95,"PRMSL":1009.9,"APCPsfc":0.3,"WNDSPD10m":10,"WNDGUST10m":27,"WNDDIR10m":199,"WNDDIRCARD10":"S","ISSNOW":0,"HCDC":"100.00","MCDC":"0.00","LCDC":"37.00","HGT0C":1500,"KINDEX":44,"CAPE180_0":"0.000","CIN180_0":-1},"2H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-nuageuse.png","CONDITION":"Nuit nuageuse","CONDITION_KEY":"nuit-nuageuse","TMP2m":5.8,"DPT2m":5.6,"WNDCHILL2m":2.7,"HUMIDEX":null,"RH2m":99,"PRMSL":1010,"APCPsfc":0,"WNDSPD10m":15,"WNDGUST10m":24,"WNDDIR10m":195,"WNDDIRCARD10":"S","ISSNOW":0,"HCDC":"100.00","MCDC":"1.90","LCDC":"55.30","HGT0C":1500,"KINDEX":44,"CAPE180_0":"1.000","CIN180_0":0},"3H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-nuageuse.png","CONDITION":"Nuit nuageuse","CONDITION_KEY":"nuit-nuageuse","TMP2m":6.1,"DPT2m":6,"WNDCHILL2m":3.3,"HUMIDEX":null,"RH2m":100,"PRMSL":1009.3,"APCPsfc":0,"WNDSPD10m":14,"WNDGUST10m":24,"WNDDIR10m":187,"WNDDIRCARD10":"S","ISSNOW":0,"HCDC":"100.00","MCDC":"2.40","LCDC":"95.90","HGT0C":1500,"KINDEX":43,"CAPE180_0":"3.000","CIN180_0":-2},"4H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-nuageuse.png","CONDITION":"Nuit nuageuse","CONDITION_KEY":"nuit-nuageuse","TMP2m":6.1,"DPT2m":6,"WNDCHILL2m":3.4,"HUMIDEX":null,"RH2m":99,"PRMSL":1008.8,"APCPsfc":0,"WNDSPD10m":13,"WNDGUST10m":22,"WNDDIR10m":190,"WNDDIRCARD10":"S","ISSNOW":0,"HCDC":"100.00","MCDC":"1.50","LCDC":"66.70","HGT0C":1500,"KINDEX":42,"CAPE180_0":"3.000","CIN180_0":0},"5H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-nuageuse.png","CONDITION":"Nuit nuageuse","CONDITION_KEY":"nuit-nuageuse","TMP2m":6.2,"DPT2m":5.9,"WNDCHILL2m":4.3,"HUMIDEX":null,"RH2m":98,"PRMSL":1008.5,"APCPsfc":0,"WNDSPD10m":9,"WNDGUST10m":20,"WNDDIR10m":185,"WNDDIRCARD10":"S","ISSNOW":0,"HCDC":"45.40","MCDC":"0.10","LCDC":"19.10","HGT0C":1400,"KINDEX":41,"CAPE180_0":"4.000","CIN180_0":-3},"6H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/stratus.png","CONDITION":"Stratus","CONDITION_KEY":"stratus","TMP2m":6,"DPT2m":5.7,"WNDCHILL2m":3.9,"HUMIDEX":null,"RH2m":98,"PRMSL":1009,"APCPsfc":0,"WNDSPD10m":10,"WNDGUST10m":17,"WNDDIR10m":182,"WNDDIRCARD10":"S","ISSNOW":0,"HCDC":"0.00","MCDC":"0.00","LCDC":"0.00","HGT0C":1400,"KINDEX":41,"CAPE180_0":"1.000","CIN180_0":-4},"7H00":{"ICON":"https:\/\/www.prevision-meteo.ch\/style\/images\/icon\/nuit-nuageuse.png","CONDITION":"Nuit nuageuse","CONDITION_KEY":"nuit
Tout n'est pas affiché car :

Code : Tout sélectionner

Votre message contient 69562 caractères.
Le nombre maximum de caractères autorisés est de 60000.
Pourquoi ça ne fonctionne pas dans le script ?
:?
PI 3 = RFXCOM
PI 3 + Touchscreen 7" affichage Domoticz
RFXCOM 433
Domoticz Version: 4.10717 - Python Version: 3.5.3

Doudy
Messages : 219
Enregistré le : 07 mai 2016, 17:23

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par Doudy » 01 déc. 2019, 11:36

En réactivant (décommentant) :

Code : Tout sélectionner

                local contents = domoticz.utils.toJSON(item.json)
                contents = contents:gsub('https://www(.?)prevision(.?)meteo(.?)ch/style/images/icon/', iconsPath) 
                logWrite(contents)
                if contents then
                    file = io.open(jsonFile, "w+")
                    file:write( contents )
                    io.close( file )
                    --file:close()
                    logWrite('ecriture des données dans le fichier '..jsonFile)
                end
j'ai le message suivant :

Code : Tout sélectionner

 2019-12-01 11:33:11.029 Status: dzVents: Error (2.4.19): Extraction prévisions météo v1.01: An error occured when calling event handler previsionMeteo
2019-12-01 11:33:11.029 Status: dzVents: Error (2.4.19): Extraction prévisions météo v1.01: ...e/pi/domoticz/scripts/dzVents/scripts/previsionMeteo.lua:132: attempt to index global 'file' (a nil value) 
ligne 132 :

Code : Tout sélectionner

                    file:write( contents )
Une piste ?
;)
PI 3 = RFXCOM
PI 3 + Touchscreen 7" affichage Domoticz
RFXCOM 433
Domoticz Version: 4.10717 - Python Version: 3.5.3

papoo
Messages : 1956
Enregistré le : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par papoo » 01 déc. 2019, 12:07

Nil= rien
Il n’y a rien à écrire dans le fichier donc erreur
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github

Doudy
Messages : 219
Enregistré le : 07 mai 2016, 17:23

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par Doudy » 03 déc. 2019, 11:48

Hello,
Je viens de refaire quelques tests.
J'ai modifié les propriétés du dossier monitor
Image

Hier, le script a réussi à créer le fichier prevision-meteo.json mais je ne sais plus quand et comment cela s'est produit
Image

Voilà maintenant les résultats du log :

Code : Tout sélectionner

2019-12-03 09:24:00.657 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Start external script: previsionMeteo.lua:, trigger: every 6 minutes
2019-12-03 09:24:00.657 Status: dzVents: Debug: Extraction prévisions météo v1.01: latitude : 45.85860
2019-12-03 09:24:00.657 Status: dzVents: Debug: Extraction prévisions météo v1.01: longitude : 1.23190
2019-12-03 09:24:00.657 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: url = https://www.prevision-meteo.ch/services/json/lat=50.66334lng=3.79129
2019-12-03 09:24:00.657 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: method = GET
2019-12-03 09:24:00.657 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: post data = nil
2019-12-03 09:24:00.657 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: headers = nil
2019-12-03 09:24:00.657 Status: dzVents: Debug: Extraction prévisions météo v1.01: OpenURL: callback = prevision-meteo_response
2019-12-03 09:24:00.657 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Finished previsionMeteo.lua

2019-12-03 09:24:05.822 Status: dzVents: Info: Handling httpResponse-events for: "prevision-meteo_response
2019-12-03 09:24:05.822 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Start external script: previsionMeteo.lua: HTTPResponse: "prevision-meteo_response"
2019-12-03 09:24:05.822 Status: dzVents: Error (2.4.19): Extraction prévisions météo v1.01: Last http response was not what expected. Trigger: prevision-meteo_response
2019-12-03 09:24:05.822 Status: dzVents: Info: Extraction prévisions météo v1.01: ------ Finished previsionMeteo.lua 
Il y a toujours l'erreur : "Last http response was not what expected"
Je me demande si ce n'est pas la durée d'accès aux data du site meteo.ch qui pose problème !
J'ai fait des tests dans un navigateur avec l'adresse https://www.prevision-meteo.ch/services ... ng=3.79129 et il faut :
test 1 : 30"
test 2 : 26"
test 3 : 26"
test 4 : 31"
test 5 : 28"
pour avoir une réponse !

:idea: :?:
PI 3 = RFXCOM
PI 3 + Touchscreen 7" affichage Domoticz
RFXCOM 433
Domoticz Version: 4.10717 - Python Version: 3.5.3

raphy383
Messages : 10
Enregistré le : 03 oct. 2019, 21:31

Re: DZVents : mise en cache des données de l’API prevision_meteo.ch

Message par raphy383 » 03 déc. 2019, 12:04

Hello,

quels étaient les droits auparavant ?

dans tous les cas, maintenant, tu dois modifier les propriétés du fichier json qui a été créé :
sur ta capture d'écran, c'est un fichier "root", et il ne pourra pas etre "relu" sinon.

Pour ce qui est du délai, oui c'est grand, et ça n'a pas tendance à s'améliorer... d’où l’intérêt de ce script (merci papoo) qui place les info en cache.

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Répondre