Calaos, Home Automation Forum

Full Version: Recuperation de la Meteo
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Bonjour,

Comment peut on récupérer si il fait beau, nuageux ou autre via calaos ?
Pour l intégrer dans un script par exemple :
Si il fait beau ou si il va faire beau aujourdhui descendre les volets.
Le widget affiche le temps sur la page d accueil, il doit avoir un truc pour l etat de l image, non ?

Merci  de votre aide
Avec un WebIO, regarde sur le wiki ou le forum y a eu plusieurs explications deja
Bon j ai un peu avancé, du coup j ai utilisé l api openweather:
Les conditions meteo en fonction de l id sont noté là : https://openweathermap.org/weather-conditions

Donc j ai Créé un Web Analog Input

et mis ceci dedans :
[Image: 2017_06_13_10_12_28_Properties.png]
[Image: 2017_06_13_10_12_49_Properties.png]

Cela me donne bien mon ID
j ai fait un petit script dans l'action pour tester :

Code:
local meteo = calaos:getInputValue("input_53")

if meteo == 800 or meteo == 801 then
print("la valeur meteo est "..meteo)
calaos:setOutputValue("output_9", true)
end
return true

Reste à maintenant inclure le fait que si il fait beau et qu il est de 11h à 18h tu me fermes tel volet (voir ajouter en fonction des mois), puis trouver un moyen pour désactiver l option facilement pour pas se retrouver dehors sans clé avec les volets fermés
Du coup pour le temps j ai utilisé une variable temps durant une durée de 12 à 18h d avril à septembre.
j ai des variables boolean qui sont actives sur l activation de scénario d ouverture le matin 
j avais déjà une variable pour le coucher du soleil qui ferme les volets et qui met à false mes variables
ainsi qu un scenario de fermeture de tous les volets qui met aussi à false mes variables.

Voici la mise à jour de ma règle
Code:
local meteo = calaos:getInputValue("input_53")
local time12_18 = calaos:getInputValue("input_54")
local temperature_salon = calaos:getInputValue("input_23")
local temperature_etage = calaos:getInputValue("input_34")
local auto_volets_bas = calaos:getInputValue("intern_1")
local auto_volets_haut = calaos:getInputValue("intern_2")
local auto_volets_nuit = calaos:getInputValue("intern_3")
local coucher_soleil = calaos:getInputValue("input_5")

if (meteo == 800 or meteo == 801) and time12_18 == true and temperature_salon >= 24 and auto_volets_bas == true then
    print("meteo 800 ou 801 et time true et salon >=24")
    calaos:setOutputValue("output_4", "set 80") -- volet salon gche
    calaos:setOutputValue("output_5", "set 80") -- volet salon dte
    calaos:setOutputValue("output_3", "down") -- volet chambre Parents
    calaos:setOutputValue("intern_1", "false") -- desactivation de cette regle
end
if (meteo == 800 or meteo == 801) and time12_18 == true and temperature_etage >= 24 and auto_volets_haut == true then
    print("meteo 800 ou 801 et time true et etage >=24")
    calaos:setOutputValue("output_39", "down") -- volet mezz gche
    calaos:setOutputValue("output_38", "down") -- volet mezz dte
    calaos:setOutputValue("output_30", "down") -- volet chambre Matheo
    calaos:setOutputValue("intern_2", "false") -- desactivation de cette regle
end
if (meteo == 800 or meteo == 801) and coucher_soleil == false and time12_18 == false and auto_volets_nuit == true then
    print("meteo 800 ou 801 et time false et coucher false")
    calaos:setOutputValue("output_4", "set 0") -- volet salon gche
    calaos:setOutputValue("output_5", "set 0") -- volet salon dte
    calaos:setOutputValue("output_39", "up") -- volet mezz gche
    calaos:setOutputValue("output_38", "up") -- volet mezz dte
    calaos:setOutputValue("intern_1", "true") -- activation de la regle 1
    calaos:setOutputValue("intern_2", "true") -- activation de la regle 2
    calaos:setOutputValue("intern_3", "false") -- desactivation de cette regle
end
return true




ai je bon ?