Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes 'meteo gea'.



Plus d’options de recherche

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Bienvenue
    • Nouveau ? Présentez-vous
    • Le bistrot
    • Mon installation domotique
    • Annonces et suggestions
  • La Home Center et ses périphériques
    • La Home Center pour les nuls
    • HC 2 & Lite
    • HC 3
    • Modules Fibaro
    • Modules Z-wave
    • Périphériques et matériels autres
    • Plugins
    • Quick App
    • Multimédia (audio, vidéo ...)
    • Chauffage et Energie
    • Actionneurs & Ouvrants (Portail, volets, piscines, ...)
    • Eclairage
    • Applications Smartphones et Tablettes
  • Autres solutions domotiques
    • Box / Logiciel
    • Modules Nice (433 & 866 MHz)
    • Modules Zigbee
    • GCE Electronics
    • Modules Bluetooth Low Energy
  • Objets connectés
    • Les Assistants Vocaux
    • Netatmo
    • Philips Hue
    • DIY (Do It Yoursel)
  • Sécurité
    • Alarmes
    • Caméras
    • Portiers
    • Serrures
  • Informatique / Réseau
    • Tutoriels
    • Matériels Réseaux
    • Matériels Informatique
    • NAS
    • Virtualisation
  • Les bonnes affaires
    • Sites internet
    • Petites annonces

Rechercher les résultats dans…

Rechercher les résultats qui…


Date de création

  • Début

    Fin


Dernière mise à jour

  • Début

    Fin


Filtrer par nombre de…

Inscription

  • Début

    Fin


Groupe


Jabber


Skype


Ville :


Intéret :


Version

1 résultat trouvé

  1. sebcbien

    Yams - Yet Another Meteo Station

    Bonjour, Je crée ce petit fil pour publier mes modifications du plugin météo de Steven. Voici à quoi ça ressemble: Voici la version de Steven: (chez moi le mm de pluie ne fonctionnent pas) http://www.domotique-fibaro.fr/index.php/topic/1211-support-gea/page-220#entry92618 Et voici ma version modifiée qui pousse les résultats dans 3 Variables Globales (à créer) afin de pouvoir être utilisées ailleurs comme par exemple dans GEA. voici le fichier du VD: Prévision_Météo.vfib et le screenshot: Pour la configuration, il suffit donc de créer les 3 VG non prédéfinies: Meteo_Lendemain Meteo_Actuelle Meteo_Actuelle_Jou et de mettre le nom de la ville ici: local ville = "bruxelles" Voici le code principal pour info: local ville = "bruxelles" local Meteo_Actuelle_Local = " " local Meteo_Lendemain_Local = " " local Meteo_Actuelle_Journee_Local = " " local dateTag = os.date("%H:%M", os.time()) -- ================================== -- local URL = Net.FHttp("www.prevision-meteo.ch") response, status, errorCode = URL:GET("/services/json/" .. ville) local jsonTable = json.decode(response) local lieu = jsonTable.city_info.name .. " ["..jsonTable.city_info.elevation.. "m]" local current = jsonTable.current_condition.condition -- conditions actuelle local current_journee = jsonTable.fcst_day_0.condition -- conditions générale de la journée local temp = jsonTable.current_condition.tmp .. "°C ["..jsonTable.fcst_day_0.tmin .. "°/" .. jsonTable.fcst_day_0.tmax.."°]" local Meteo_Day = jsonTable.fcst_day_0.day_long local Meteo_Time = "["..jsonTable.current_condition.hour.."]" local pluie = 0 local snow = false for k, v in pairs(jsonTable.fcst_day_0.hourly_data) do if (tonumber(v.APCPsfc) > 0) then pluie = pluie + tonumber(v.APCPsfc) fibaro:debug("Pluie à "..k.." - Total du jour: "..pluie.."mm") end if v.ISSNOW == 1 then snow = true fibaro:debug("K: "..k.." = !! NEIGE !!") end end pluie = pluie .. " " if (snow) then pluie = pluie .. "!! NEIGE !!" end local id = fibaro:getSelfId() fibaro:call(id, "setProperty", "ui.Label1.value", lieu) fibaro:call(id, "setProperty", "ui.Label2.value", current_journee) fibaro:call(id, "setProperty", "ui.Label3.value", current) fibaro:call(id, "setProperty", "ui.Label4.value", temp) fibaro:call(id, "setProperty", "ui.Label5.value", pluie.." mm") Meteo_Actuelle_Local = Meteo_Time.." Météo Actuelle: "..current.." T°: "..temp.." Pluie: "..pluie.." mm" fibaro:setGlobal("Meteo_Actuelle", Meteo_Actuelle_Local) fibaro:debug(dateTag .." "..Meteo_Actuelle_Local) Meteo_Actuelle_Journee_Local = Meteo_Time.." Météo de ce "..Meteo_Day..": "..current_journee.." T°: "..temp.." Pluie: "..pluie.." mm" fibaro:setGlobal("Meteo_Actuelle_Jou", Meteo_Actuelle_Journee_Local) fibaro:debug(dateTag .." "..Meteo_Actuelle_Journee_Local) current = jsonTable.fcst_day_1.condition temp = "["..jsonTable.fcst_day_1.tmin .. "°/" .. jsonTable.fcst_day_1.tmax.."°]" Meteo_Day = jsonTable.fcst_day_1.day_long pluie = 0 snow = false for k, v in pairs(jsonTable.fcst_day_1.hourly_data) do if (tonumber(v.APCPsfc) > 0) then pluie = pluie + tonumber(v.APCPsfc) fibaro:debug("Pluie à "..k.." - Total du jour: "..pluie.."mm") end if v.ISSNOW == 1 then snow = true fibaro:debug("K: "..k.." = !! NEIGE !!") end end pluie = pluie .. " " if (snow) then pluie = pluie .. "!! NEIGE !!" end fibaro:call(id, "setProperty", "ui.Label6.value", current) fibaro:call(id, "setProperty", "ui.Label7.value", temp) fibaro:call(id, "setProperty", "ui.Label8.value", pluie.." mm") Meteo_Lendemain_Local = Meteo_Time.." Météo de demain "..Meteo_Day..": "..current.." T°: "..temp.." Pluie: "..pluie.." mm" fibaro:setGlobal("Meteo_Lendemain", Meteo_Lendemain_Local) fibaro:debug(dateTag .." ".. Meteo_Lendemain_Local) Et pour finir, voici le code GEA pour exploiter tout ceci: Je l'ai écrit de cette manière qu'il n'y a pas de push si on n'est pas à la maison et uniquement une seule fois par jour chaque météo (du jour et du lendemain) - la météo du jour est poussée sur le smartphone au matin au moment ou on désactive le mode nuit pour savoir le temps lorsque l'on s'habille) - la météo du lendemain est poussée le soir au retour sur le smartphone afin de savoir le temps du lendemain pour préparer les vêtements des enfants avant de les mettre au lit. afin de me passer de VG, j'ai ajouté un petit délai, donc mettre ça en fin de liste GEA local estAt_Home = {"Global", "PresentState", "At_Home"} local estAway = {"Global", "PresentState", "Away"} local est_AtHome_Or_Kids_Sleeping = {"Global", "PresentState", "Kids_Sleeping|At_Home"} ---------------------METEO---------------------- -- Météo soir 10 min après retour maison (away pendant plus de 30 minutes) isLongAwayOff = false GEA.add(estAway, 30*60, "", {{"function",function() isLongAwayOff = true end}}) GEA.add({estAt_Home,{"Global!", "Meteo_Lendemain", ""},{"function",function() return isLongAwayOff end}}, 10*60, "#value[2]#",{{"Time", "17:00", "20:30"},{"Portable", id["PHONE_SEB"]},{"Portable", id["PHONE_GG"]},{"function",function() isLongAwayOff=false end}}) ------------------------------ -- Météo matin Instantanée au changement de presentState GEA.add({est_AtHome_Or_Kids_Sleeping}, -1, "",{{"function",function() fibaro:debug(" ------- waiting 1 s for PrevisousState dependent actions ------") end},{"function",function() fibaro:sleep(1100) end}}) GEA.add({est_AtHome_Or_Kids_Sleeping,{"Global!", "Meteo_Actuelle_Jou", ""},{"Global", "PreviousState", "Night_All_Off"}}, -1, "#value[2]#",{{"Portable", id["PHONE_SEB"]},{"Portable", id["PHONE_GG"]}}) -- !!!!!!!!!!! LES ACTIONs instantanées placées CI DESSOUS AURONT UN DELAI DE 1,1 A CHAQUE CHANGMENT de PresentState = à At_Home ou Kids_Sleepin !!!!!!!!!! ------------- La variable globale previousState est définie par la scène ci-dessous, qui permet au script de savoir dans quel état se trouvait la maison juste avant le changement de la VG PresentState Pour cela il faut crée une VG PreviousState (de préférence prédéfinie) Connaitre l'état précédent de la maison peut être utile a de nombreuses occasions dont ici la météo. Mais je l'utilise aussi pour différencier si la maison est au réveil ou au passage en mode nuit etc. Ce n'est pas nécessaire donc mais utile pour une meilleure domotisation avec moins de notifications inutiles, actions à réaliser manuellement. --[[ %% properties %% globals PresentState --]] local This_Instance_State = fibaro:getGlobalValue("PresentState"); fibaro:debug(os.date("%a %d/%m", os.time()).." new start with PresentState = " .. This_Instance_State); while This_Instance_State == fibaro:getGlobalValue("PresentState") do fibaro:sleep(1000); --fibaro:debug("waiting with this instance = "..This_Instance_State) end fibaro:setGlobal("PreviousState", This_Instance_State); fibaro:debug(os.date("%a %d/%m", os.time()).." Exit With PreviousState set at: ".. This_Instance_State);
×