Re: Covid-19
Publié : 12 mai 2020, 16:15
Bonjour totof60, merci, ça fonctionne parfaitement.
Reprenez le contrôle de votre domotique
https://easydomoticz.com/forum/
Code : Tout sélectionner
local url_info_covid = "https://www.data.gouv.fr/api/1/datasets/5eb55e49899a159c2e0053c2/resources/e13851d0-0228-4252-91b9-cf091a0452a4/"Code : Tout sélectionner
--Données sauvegardées pour Covid 19 si données Gouvernementales incorrectes (NaN)
local casConfirmes = uservariables['casConfirmes']
local deces = uservariables['deces']
local decesEhpad = uservariables['decesEhpad']
local casConfirmesEhpad = uservariables['casConfirmesEhpad']
local gueris = uservariables['gueris']
local domoticz_url = '192.168.0.251:8080'
local urljson1 = '/json.htm?type=command¶m=updateuservariable&vname='
local urljson2 = '&vtype=0&vvalue='
Code : Tout sélectionner
local config = assert(io.popen(curl..' "'.. url_info_covid ..'"'))
local blocjson = config:read('*all')
config:close()
local jsonValeur = json:decode(blocjson)
if jsonValeur then
local urlcovid = jsonValeur.url
--exemple de retour url = "https://static.data.gouv.fr/resources/indicateurs-covid-19/20200517-194046/fra-latest.json"
local config = assert(io.popen(curl..' "'.. urlcovid ..'"'))
local blocjson = config:read('*all')
config:close()
local jsonValeur2 = json:decode(blocjson)
if jsonValeur2 then
local gueristot = jsonValeur2.gueris
if gueris ~= nil and gueristot == "NaN" then
gueristot = gueris
else
commandArray[#commandArray+1]={['OpenURL']=domoticz_url .. urljson1 .. 'gueris' .. urljson2 .. gueristot}
end
local confirmed = jsonValeur2.casConfirmes
if casConfirmes ~= nil and confirmed == "NaN" then
confirmed = casConfirmes
else
commandArray[#commandArray+1]={['OpenURL']=domoticz_url .. urljson1 .. 'casConfirmes' .. urljson2 .. confirmed}
end
local confirmedehpad = jsonValeur2.casConfirmesEhpad
if casConfirmesEhpad ~= nil and confirmedehpad == "NaN" then
confirmedehpad = casConfirmesEhpad
else
commandArray[#commandArray+1]={['OpenURL']=domoticz_url .. urljson1 .. 'casConfirmes' .. urljson2 .. confirmedehpad}
end
local confirmes = confirmed + confirmedehpad
local deaths = jsonValeur2.deces
if deces ~= nil and deaths == "NaN" then
deaths = deces
else
commandArray[#commandArray+1]={['OpenURL']=domoticz_url .. urljson1 .. 'deces' .. urljson2 .. deaths}
end
local deathsehpad = jsonValeur2.decesEhpad
if decesEhpad ~= nil and deathsehpad == "NaN" then
deathsehpad = decesEhpad
else
commandArray[#commandArray+1]={['OpenURL']=domoticz_url .. urljson1 .. 'decesEhpad' .. urljson2 .. deathsehpad}
end
local decestot = deaths + deathsehpad
--if recovered ~= nil then voir_les_logs("--- --- --- Guéris : "..recovered,debugging) end
--if confirmed ~= nil then voir_les_logs("--- --- --- Cas confirmés : "..confirmed,debugging) end
--if deaths ~= nil then voir_les_logs("--- --- --- Décédés : "..deaths,debugging) end
if covid_deces ~= nil then commandArray[#commandArray+1] = {['UpdateDevice'] = covid_deces ..'|0|'.. decestot} end
if covid_infected ~= nil then commandArray[#commandArray+1] = {['UpdateDevice'] = covid_infected ..'|0|'.. confirmes} end
if covid_gueri ~= nil then commandArray[#commandArray+1] = {['UpdateDevice'] = covid_gueri ..'|0|'.. gueristot} end
end
end