Aller au contenu

Créer Variable Avec Temps X Avant Le Couché Du Soleil


Messages recommandés

Posté(e)

Déjà  dans le scheduler tu met le code suivant et remplace sceneID par le numéro:

luaDaySchedule:add("Sunset","sceneID", "" , "startScene", {"All"}, false , -45);

Donc déjà  ta scène ce lancera seul et tu peux enlever cette condition.

 

Après pour gérer la météo tu peux faire

--[[
%% properties
3 WeatherConditionConverted
%% globals
--]]

if (( fibaro:getValue(3, "WeatherConditionConverted") == "clear" ) then
  fibaro:setGlobal("METEO", "DECOUVERT");
elseif ( fibaro:getValue(3, "WeatherConditionConverted") == "cloudy" ) then
  fibaro:setGlobal("METEO", "COUVERT");
elseif ( fibaro:getValue(3, "WeatherConditionConverted") == "fog" ) then
  fibaro:setGlobal("METEO", "BROUILLARD");
elseif ( ( fibaro:getValue(3, "WeatherConditionConverted") == "rain" ) then
  fibaro:setGlobal("METEO", "PLUIE");
elseif ( fibaro:getValue(3, "WeatherConditionConverted") == "snow" ) then
  fibaro:setGlobal("METEO", "NEIGE");
elseif ( fibaro:getValue(3, "WeatherConditionConverted") == "storm" ) then
  fibaro:setGlobal("METEO", "ORAGE");
end
fibaro:sleep(60*1000);

Pour Ta variable JOUR_NUIT:

luaDaySchedule:add("Sunset","JOUR_NUIT", "JOUR" , "setGlobal", {"All"}, false , 0);
luaDaySchedule:add("Sunrise","JOUR_NUIT", "NUIT" , "setGlobal", {"All"}, false , 0);

Et pour finir voilà  le code que tu peux faire:

--[[
%% properties
%% globals
--]]

if ( ( fibaro:getGlobalValue("JOUR_NUIT") == "JOUR" ) and ( fibaro:getGlobalValue("METEO") == "DECOUVERT" )) then
  fibaro:call(24, "setValue", "75");
  fibaro:call(19, "setValue", "75");
  fibaro:call(22, "sendDefinedPushNotification", "4");

elseif ( ( fibaro:getGlobalValue("JOUR_NUIT") == "JOUR" ) and ( fibaro:getGlobalValue("METEO") == "PLUIE" )) then

elseif ( ( fibaro:getGlobalValue("JOUR_NUIT") == "JOUR" ) and ( fibaro:getGlobalValue("METEO") == "COUVERT" )) then

elseif ( ( fibaro:getGlobalValue("JOUR_NUIT") == "JOUR" ) and ( fibaro:getGlobalValue("METEO") == "ORAGE" )) then

elseif ( ( fibaro:getGlobalValue("JOUR_NUIT") == "NUIT" ) and ( fibaro:getGlobalValue("METEO") == "PLUIE" )) then

elseif ( ( fibaro:getGlobalValue("JOUR_NUIT") == "NUIT" ) and ( fibaro:getGlobalValue("METEO") == "COUVERT" )) then

elseif ( ( fibaro:getGlobalValue("JOUR_NUIT") == "NUIT" ) and ( fibaro:getGlobalValue("METEO") == "ORAGE" )) then

end
fibaro:sleep(60*1000);

Voilà  tu as tout et tu peux lancer ta scène pour d'autre occasion

 

Shad

Il faut ajouter les jours de la semaine dans cette scène ?  ;)

  • Upvote 1
Posté(e)

Donc si je comprend bien si je veux déclancher une scène un jour bien précis il ne faut pas l'ajouter à  la scène ? mais au sheduler il faut faire comment  Stp

Posté(e)

Diuck, c'est pas méchant. Mais honnêtement cherche un peu.

Sa fait X fois que je te dis de lire le tuto que j'ai fais car tout est écrit.

 

 

luaDaySchedule:add(<time>,<id>, <parameter> , <action>, <days> ,<catchup>,<p1>,<p2>,<p3>)

 

CHOIX DES JOURS DE LANCEMENT DES SCENARIOS:
 
<days> Remplacer cette balise par jour de la semaine
 
Il est également possible de mettre plusieurs jours de la semaine avec {"Sunday','Monday"}.
Il y a 3 commandes spécial:

{"All"] = Tous les jours de la semaines
{"Weekend"} = Samedi et Dimanche
{"Weekday"} = Lundi au Vendredi
Ils peuvent également être fusionner avec les jours de la semaine
{"Weekend","Monday"} = Samedi, Dimanche et Lundi
 

Posté(e)

Oui je sais j'abuse un peu mais ce que tu post peux aider d'autres comme moi merci Shad  :60:   

Posté(e)

j'ai pas suivi le début du fil mais je pense que les jours, c'est pour lancer la scène, donc c'est dans les lignes de Scheduler que tu dois mettre les jours.

 

à  la place de "All" tu mais les jours que tu souhaite pour le lancement de ta scène.

 

"Monday","Tuesday","Wednesday","Thursday","Friday" où "Weekend", tu peux aussi cumuler. 

 

 

 

  :angry:  c'est tellement lent ma connexion que j'avais même pas les derniers msg

 

désolé Shad, tu avais déjà  répondu

Posté(e)

Merci Fredric pour ces infos

 

je viens de modifier une scène toute simple pour la déclancher avec le Scheduler et j'ai une erreur ci-joint la scène  Galère !!

--[[
%% properties
%% globals
JOUR_NUIT
--]]

if ( ( fibaro:getGlobalValue("JOUR_NUIT") == "JOUR" )) then

	fibaro:call(25, "open");
	fibaro:call(25, "setValue2", "99");
	fibaro:call(20, "open");
	fibaro:call(20, "setValue2", "99");
	fibaro:call(22, "sendDefinedPushNotification", "6");

end
fibaro:sleep(60*1000);

Posté(e)

Comme dit Fredric je suis parti des bloc c'est ca mais la scène fonctionnée el Lua et non pas en bloc

Posté(e)

si tu lance ta scène manuellement, elle fonctionne?

là, c'est l'erreur dans le Scheduler, regarde si ta scène fait une erreur

Posté(e)

oui elle marche la scène 


-- Ouverture volets Ouest --
luaDaySchedule:add("Sunset","sceneID", "30" , "startScene", {"Monday","Tuesday","Wednesday","Thursday","Friday","Weekend"}, false , -58);

Posté(e)

Exemple tiré des exemples dans le scheduler:

--run scene id 21 at 13:30 Monday to Friday
--luaDaySchedule:add("13:30","21", "" , "startScene", {"Weekday"}  ,false)

Sa correspond à  quoi ton 30 ???

Posté(e)

Ouffff ca y est 3 scènes créer avec le sheduler merci à  Shad :P et à  Fredric :) pour votre aide  :60:

Posté(e)

Bonjour à  tous 

 

Bon alors ce matin  rien ne fonctionne !!  après plusieurs minutes de recherche et de test je me suis rendu compte que cette ligne dans ma scène pose problème  if ( ( fibaro:getGlobalValue("JOUR_NUIT") == "JOUR" ) il m'a fallu modifier la valeur JOUR/NUIT == JOUR  en  JOUR/NUIT == NUIT   pour l'essayer,  donc en résumé la valeur NUIT fonctionne le jour et la valeur JOUR fonctionne la nuit  :angry: 

 

Question:

Lorsque l'on créer une scène qui sera commandé par le scheduler doit on incorporer dans la scène la valeur JOUR/NUIT alors que le scheduler à  déjà  cette valeur ?  ;)

--[[
%% properties
%% globals
JOUR_NUIT
METEO
--]]
  
if ( ( fibaro:getGlobalValue("JOUR_NUIT") == "JOUR" ) and (
fibaro:getGlobalValue("METEO") == "DECOUVERT" )) then

fibaro:call(24, "setValue", "75");
fibaro:call(19, "setValue", "75");
fibaro:call(22, "sendDefinedPushNotification", "4");

end
fibaro:sleep(60*1000);

Scène modifiée suppression de la valeur JOUR/NUIT

--[[
%% properties
%% globals
METEO
--]]
  
if (( fibaro:getGlobalValue("METEO") == "DECOUVERT" )) then
  
    fibaro:call(24, "setValue", "75");
	fibaro:call(19, "setValue", "75");
	fibaro:call(22, "sendDefinedPushNotification", "4");

end
fibaro:sleep(60*1000);
 

La commande scheduler avec la valeur JOUR/NUIT == JOUR + 90mn

-- Off volets Est début d'ensoleillement --
luaDaySchedule:add("Sunrise","26", "" , "startScene", {"Monday","Tuesday","Wednesday","Thursday","Friday","Weekend"}, false , 90);

Et la ok la scène commandée par le scheduler fonctionne. 

 

 

La commande scheduler avec la valeur JOUR / NUIT ==  JOUR + 360mn 

-- On volets Est fin d'ensoleillement --
luaDaySchedule:add("Sunrise","27", "" , "startScene", {"Monday","Tuesday","Wednesday","Thursday","Friday","Weekend"}, false , 360);

Scène 27 sans la valeur JOUR / NUIT

--[[
%% properties
%% globals
--]]

if (( fibaro:getGlobalValue("") == "" )) then

	fibaro:call(24, "open");
	fibaro:call(19, "open");
	fibaro:call(22, "sendDefinedPushNotification", "3");

end
fibaro:sleep(60*1000);

Résultat du Scheduler  :P post-495-0-76854600-1399199604_thumb.png

 

 

 

La commande scheduler avec la valeur JOUR / NUIT ==  NUIT -390mn

-- Off volets Ouest début d'ensoleillement --
luaDaySchedule:add("Sunset","29", "" , "startScene", {"Monday","Tuesday","Wednesday","Thursday","Friday","Weekend"}, false , -390);

Scène 29 sans la valeur JOUR / NUIT

--[[
%% properties
%% globals
METEO
--]]

if (( fibaro:getGlobalValue("METEO") == "DECOUVERT" )) then
	
	fibaro:call(25, "setValue", "40");
	fibaro:call(20, "setValue", "50");
	fibaro:call(22, "sendDefinedPushNotification", "5");

end
fibaro:sleep(60*1000);



Résultat du Scheduler 

 

 

Donc je pense que l'on peut en déduire que la variable JOUR / NUIT  peut ne pas être ajoutée à  une scène qui est commandée par le Scheduler à  confirmer par les PRO  :P

post-495-0-01067200-1399207790_thumb.png

Posté(e)

Vu que c'est le Scheduler qui fait la variable Jour_Nuit et qui lance ta scène, dans ton cas présent, il n'y àpas d’intérêt de remettre la condition "si nuit".

Posté(e)

Merci pour ta réponse Fredric  :D

 

J'avais un doute quand même car je me suis basé sur une scène en exemple que Shad m'a envoyé message 108. 

×
×
  • Créer...