[LUA] Quantité de précipitation avec OpenWeatherMap

Vous avez créé 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.
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par Keros »

Je n'avais pas vu, mais je pense qu'il serait mieux que tu retires les morceaux de code qui ne correspondent pas à la récupération des quantités de précipitation. Ces éléments ne seront pas perdu puisqu'ils sont déjà dans le forum ;)
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Vianncy
Messages : 27
Inscription : 16 janv. 2021, 18:30

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par Vianncy »

Effectivement, tu as raison. Je ne voulais pas tout mettre au début, puis j'ai pensé que ça aiderait les gens à mieux comprendre de mettre le code entier. Au final, j'ai plus l'impression d'avoir embrouillé certaines personnes qu'autre chose. Désolé! :oops:
Finalement, j'ai supprimé ce qui ne concerne pas le sujet du topic et garder que ce qui concerne nos quantités de précipitation. En espérant que ce soit plus clair pour tout le monde. ;)
Doudy
Messages : 457
Inscription : 07 mai 2016, 17:23

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par Doudy »

Après test dans ton "Le code en entier:" il me semble qu'il manque :

Code : Tout sélectionner

local time              = os.date("*t")       -- Si vous souhaitez exécuté ce script toutes les X min
local start_hour        = '06:00'             -- Si vous souhaitez exécuté ce script tous les jours à 6h
local actual_hour       = os.date("%H:%M")
C'est pour "actual_hour"
;)
RaspberryPi - RFLink - Zwave - WH2600
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3
Doudy
Messages : 457
Inscription : 07 mai 2016, 17:23

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par Doudy »

Par contre avec Daksky, j'ai ceci :
Image
Avec OWM, j'ai ceci :
Image

2h : 0.0mm <--> 14%
4h : 0.0 mm <--> 10%
12 h : 1.07 mm <--> 49%
24 h : 3.8 mm <--> 22%

Darksky mise à jour : 2021-01-18 16:30:10
OWM mise à jour : 2021-01-18 16:30:04
RaspberryPi - RFLink - Zwave - WH2600
Domoticz : 2020.2 | Dashticz : V3.12 Master | dzvents : 3.0.2 | Python : 3.7.3
Vianncy
Messages : 27
Inscription : 16 janv. 2021, 18:30

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par Vianncy »

Doudy a écrit : 18 janv. 2021, 16:28 Après test dans ton "Le code en entier:" il me semble qu'il manque :

Code : Tout sélectionner

local time              = os.date("*t")       -- Si vous souhaitez exécuté ce script toutes les X min
local start_hour        = '06:00'             -- Si vous souhaitez exécuté ce script tous les jours à 6h
local actual_hour       = os.date("%H:%M")
C'est pour "actual_hour"
;)
Effectivement. J'ai pas pu tester ce midi après avoir enlevé le 'en-trop'. C'est rajouté, merci. ;)
Vianncy
Messages : 27
Inscription : 16 janv. 2021, 18:30

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par Vianncy »

Doudy a écrit : 18 janv. 2021, 16:40 Par contre avec Daksky, j'ai ceci :
Image
Avec OWM, j'ai ceci :
Image

2h : 0.0mm <--> 14%
4h : 0.0 mm <--> 10%
12 h : 1.07 mm <--> 49%
24 h : 3.8 mm <--> 22%

Darksky mise à jour : 2021-01-18 16:30:10
OWM mise à jour : 2021-01-18 16:30:04
Merci de ton retour. ;)
Je ne connais Daksky que de nom, je ne l'ai jamais utilisé. Que récupères-tu dans ces valeurs en pourcentage ? Les probabilités de pluie ?
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par Keros »

Oula, ne commencez pas à comparer les services météos :mrgreen:
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
garycooper
Messages : 453
Inscription : 07 août 2017, 23:58

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par garycooper »

Juste une question, peut-on calculer la quantité de précipitation (pluie et neige) sans créer les capteurs 1h, 2h, 4h et 6h ? A y réfléchir, cela me semble plutôt superflu et j'aurai juste voulu avoir les prévisions de précipitation pluie et neige dans 12h.
du coup, j'ai créé 2 capteurs déclarés comme ça :
local douzeHeurespluieDeviceIdx = 31
local douzeHeuresneigeDeviceIdx = 32
mais le code que j'ai mis

Code : Tout sélectionner

    for i=1, 12 do --On parcourt les 12 prochaines heures.
        if (jsonValeur.hourly[i].rain) then  --Pluie prévue ?
            somme = somme + jsonValeur.hourly[i].rain["1h"] --Si oui, on additionne la quantité annoncée à cette heure à la somme des quantités. Sinon, on ne fait rien.
        end 
        if (jsonValeur.hourly[i].snow) then  --Neige prévue ?
            somme =  somme + jsonValeur.hourly[1].snow["1h"] --Même principe.
        end

        if (i == 2) then 
            quantiteDeuxHeures = somme
        elseif (i == 4) then
            quantiteQuatresHeures = somme
        
        elseif (i == 6) then
            quantiteSixHeures = somme
        
        elseif (i == 12) then
            quantiteDouzeHeures = somme
        end
        
    end
    
    commandArray[douzeHeurespluieDeviceIdx]  = { ['UpdateDevice'] = douzeHeurespluieDeviceIdx..'|1|0;'..quantiteDouzeHeures }
    commandArray[douzeHeuresneigeDeviceIdx]  = { ['UpdateDevice'] = douzeHeuresneigeDeviceIdx..'|1|0;'..quantiteDouzeHeures }

me remonte
Error: EventSystem: in /home/pi/domoticz/scripts/lua/script_time_test.lua: /home/pi/domoticz/scripts/lua/script_time_test.lua:172: attempt to concatenate a nil value (global 'quantiteDouzeHeures')
garycooper
Messages : 453
Inscription : 07 août 2017, 23:58

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par garycooper »

Je m'auto-réponds. J'avais oublié la ligne

Code : Tout sélectionner

     local somme = 0 -- Somme des quantité. Peut être placée en en-tête.
Ca fonctionne (à priori). Je vais tester quelques jours
Vianncy
Messages : 27
Inscription : 16 janv. 2021, 18:30

Re: [LUA] Quantité de précipitation avec OpenWeatherMap

Message par Vianncy »

Pour faire ce que tu veux, tu peux aussi supprimer les variables de quantités pour les heures que tu ne veux pas et supprimer les if qui deviennent inutile (dans ton cas, tu peux conserver que ce qui concerne les 12h).
Autre point, tel que j'ai la mis, la somme regroupe pluie+neige. Si tu veux avoir séparément pluie et neige, il faut créer que tu ais une variable de somme pour la pluie et une pour la neige. Pareil pour les variables de quantités, une pour la pluie et la neige (à mettre ensuite dans ta fonction commandArray). ;)

Je ne sais pas si je suis très clair.. Si t'as des questions, n'hésite pas.
Répondre