Aller au contenu

Recommended Posts

-1 ne s'applique qu'àla 1ère condition.

Pour le reste la durée s'applique àl'ensemble des conditions.

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui pour "inverse" c'est seulement pour la 1ère condition.

Je corrigerais en rentrant :(

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

hello

petite question, si j'ai un VD avec un bouton double ? (ID12 donc mon cas)

comment avec GEA je click sur le bouton ID12-1 et ID12-2 de façon indépendante ?

 

merci

Partager ce message


Lien à poster
Partager sur d’autres sites

les boutons sont numéroés de manières séquentielles, vois ce que mprinfo a expliqué dans "la HC pour les nuls"

Partager ce message


Lien à poster
Partager sur d’autres sites

Question, peut on récupérer l'état de l'interrupteur brancher sur le S2 d'un Dimmer FGD211 ?

Partager ce message


Lien à poster
Partager sur d’autres sites

tu as quoi derriere S2, un bouton qui declenche une scene ? ou juste un interrupteur pour un va-et-vient ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Pour le moment j'ai mis un inter va et vient. Du coup j'ai activé le sceneactivation, et làje peux faire qque chose, mais je voulais directement commander depuis GEA, mais je ne vois pas comment faire.

Partager ce message


Lien à poster
Partager sur d’autres sites

Un coup de "123 sceneActivation" en entête de GEA

 

Et

GEA.add({"SceneActivation", 123 , 16}......

Partager ce message


Lien à poster
Partager sur d’autres sites

comme ca alors :

{“SceneActivationâ€, <id module>, <id scene>}

Partager ce message


Lien à poster
Partager sur d’autres sites

Arghhh, merci, je suis boulet aujourd'hui...

Partager ce message


Lien à poster
Partager sur d’autres sites

:)

Partager ce message


Lien à poster
Partager sur d’autres sites

Dans GEA 5.34 je pense qu'une correction proposée par @Shyrka973 n'a pas été complètement implémentée.

					if (GEA.match(entry[GEA.keys["PARAMS"]][i][3], "inc%+")) then
						local number = tonumber(fibaro:getGlobalValue(entry[GEA.keys["PARAMS"]][i][2]))
						if (type(value) ~= "nil") then fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], number + value) else fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], number + 1) end
					elseif (GEA.match(entry[GEA.keys["PARAMS"]][i][3], "dec%-")) then
						local number = tonumber(fibaro:getGlobalValue(entry[GEA.keys["PARAMS"]][i][2]))
						if (type(value) ~= "nil") then fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], number - value) else fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], number - 1) end
					else
						fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], GEA.getMessage(entry,entry[GEA.keys["PARAMS"]][i][3]))
					end

Devrait être;

					if (string.match(entry[GEA.keys["PARAMS"]][i][3], "inc%+")) then
						local number = tonumber(fibaro:getGlobalValue(entry[GEA.keys["PARAMS"]][i][2]))
						if (type(value) ~= "nil") then fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], number + value) else fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], number + 1) end
					elseif (string.match(entry[GEA.keys["PARAMS"]][i][3], "dec%-")) then
						local number = tonumber(fibaro:getGlobalValue(entry[GEA.keys["PARAMS"]][i][2]))
						if (type(value) ~= "nil") then fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], number - value) else fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], number - 1) end
					else
						fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], GEA.getMessage(entry,entry[GEA.keys["PARAMS"]][i][3]))
					end

GEA.match àremplacer par string.match lignes 1 et 5

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai remplacé ces deux lignes par:

if (string.find(entry[GEA.keys["PARAMS"]][i][3], "inc+", 1, true)) then

et

elseif (string.find(entry[GEA.keys["PARAMS"]][i][3], "dec-", 1, true)) then

Le quatrième paramètre de la fonction string.find à  true permet une recherche simple à  la différence de string.match qui lui va réaliser une recherche complexe.

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Tiens, j'ai un truc anormal. Dans GEA, j'utilise cette ligne :

--Ouverture véranda au couché du soleil
GEA.add(true, 1, "Ouverture véranda",{{"Days","Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday"},{"Time","Sunset-15","Sunset-16"},{"VirtualDevice",91,"7"}})
  

Souci : Quand je modifie qque chose dans GEA autre, et donc que j'effectue une sauvegarde, cela lance cette action... Pourtant elle ne devrait se lancer qu'àSunset-x.

Partager ce message


Lien à poster
Partager sur d’autres sites

Nico, 

Je ne réponds pas à  ta question, mais ton option {"Days", ...} me semble inutile vu que tous les jours sont listés ?

Partager ce message


Lien à poster
Partager sur d’autres sites

@Nico:

 

GEA.add(true, 1, "Ouverture véranda",{{"Days","Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday"},{"Time","Sunset-15","Sunset-16"},{"VirtualDevice",91,"7"}})


Sunset est le couché du Jour donc ton action est valide de Sunset-15 à  Sunset-16 soit pendant 23H59 minutes.... donc normal le déclenchement. Si tu veux entre 15 et 16 avant le couché, c'est {"Time","Sunset-16","Sunset-15"} Ou alors j'ai mal compris et désolé :)
 

GEA.add(true, 1, "Ouverture véranda",{{"Days","WeekDay"},{"Time","Sunset-16","Sunset-15"},{"VirtualDevice",91,"7"}})

Nicolas

 

Partager ce message


Lien à poster
Partager sur d’autres sites

bien vu @Nikko

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci ! Je croyais que c'était l'heure moi... Pourtant je suis sur que cela fonctionnait sur une autre action.

Mais donc si je veux que cela s'ouvre 15 minute avant le Sunset du jour, je mets juste Time avec Sunset-15. En fait je mettais toujours une borne -15-16 pour être sûr qu'ils le prennent, cela date du début de GEA, je peux les virer maintenant, c'est hyper stable.

Partager ce message


Lien à poster
Partager sur d’autres sites

en fait si je veux être sà»r qu'il s'ouvre à  sunset-15 ET que si à  sunset-15 la HC2 n'était pas disponible (panne de courant, backup, ...)

je mettrais  (et ainsi si la HC2 revient à  elle avant 23:00, les stores s'ouvrent)

{"Time","Sunset-15","23:00"}

Teste aussi sans le {"Days", ...} cela surcharge selon moi le script

Partager ce message


Lien à poster
Partager sur d’autres sites

 

STOP :)

 

Utilisé un sleep de 20mn dans GEA va planté GEA .. on a le droit d'y mettre des petit sleep (sans jeu de mot) pour autant que le total des "sleep" ne dépasse pas les 30 secondes. Sinon GEA ne sera pas capable de ce lancer toutes les 30 secondes.

 

Il y a des solutions à  cela :


local varecsoui = {"Global", "varecs", "oui"}
local varecsnon = {"Global", "varecs", "non"}

-- Tache en sommeil (NotStarted)
-- Cette tache va passer la variable à  Non si elle est à  Oui depuis plus de 20 minutes
local autoOff = GEA.add(varecsoui, 20*60, "Variable ECS à  OUI depuis #durationfull#", {varecsnon, {"NotStarted"}}) -- Tache en sommeil cas non démarrée

-- Cette tache va passer la variable à  Oui si la lumière de la douche est allumée et que la variable est à  non
-- Elle va aussi redémarrer la tache si dessus
GEA.add({id["lumrdc_douche"], varecsnon}, 30, "",{varecsoui, {"RestartTask", autoOff}})

Steven,

Je constate (grâce à  ton code qui traque les changements de variables :13: ) que ma varecs repasse à  non après 20 min SI la tâche GEA qui fait le RestartTask de autoOff a tourné.

 

Donc si ma varecs est à  oui autrement que par la lumrdc_douche elle ne repasse pas à  non après 20 min SAUF si UNE fois le RestartTask de autoOff a fait son oeuvre.

 

En fait ce que je voudrais, c'est que le RestartTask ne fonctionne qu'une seule fois. Et donc dès que la tâche a tourné un fois, elle se remette en NotStarted, jusqu'au prochain RestartTask. Cela ne semble pas être le cas.

 

Fonctionnellement, je veux que varecs repasse à  non (après 20 min) seulement si elle est passée à  oui "à  cause" de lumrdc_douche (qui entre temps peut avoir été éteinte).

 

Je sais, c'est tiré par les cheveux, mais c'est hyper simple en mode BLOC (ça c'est proche de l'insulte, mais c'en n'est pas !)

 

Merci de vos idées

Partager ce message


Lien à poster
Partager sur d’autres sites

Regarde MaxTime stp. J'ai plus de réseau àla maison pour l'instant, je peux donc pas faire mieux.

Partager ce message


Lien à poster
Partager sur d’autres sites

tu n'as plus de réseau, ce qui explique pourquoi le wiki GEA est aux abonnés absents.

Je regarde MaxTime : merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui désolé pour le dérangement. Encore 2 ou 3 jours max j'espère.

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut Jojo et steven

 

Mets un 

{"MaxTime", 1}

je relaie steven, sans réseau ;-) courage

Partager ce message


Lien à poster
Partager sur d’autres sites

×