Aller au contenu

Recommended Posts

.

Peut tu essayer avec ca ?

GEA.add(id["DETECT_SDB_H"], -1, "",{{"If",{{"Value-", id["LUMIERE_SDB_H"],5}}},{"Time", "06:00", "09:00"} ,{"value",id["LUMIERE_SDB_H"],50}}) 

( ne pas oublier de mettre l'id du détecteur dans l'entète )

.

Partager ce message


Lien à poster
Partager sur d’autres sites

@juke94, tu dois mettre "Time" et pas Time (tu as oublié les ")

Partager ce message


Lien à poster
Partager sur d’autres sites

 @MoicPhil : Merci ca fonctionne  aussi comme tu l'écris !

 

@Jojo : MERCIIIII je suis un boulet ! j'ai quand même passé 2h dessus sans m'apercevoir de cela ^^ en modifiant la ligne maintes et maintes fois !

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

donc moi, chaque fois que je rajoute une commande, je sauve la scène, et vois s'il y a une erreur dans le débug du GEA. Comme ça je sais quelle ligne àune erreur. S'il n'y a pas d'erreur en rouge, c'est que ton code est ok

Partager ce message


Lien à poster
Partager sur d’autres sites

@jojo : pareil !! mais je croyais que c'était mes conditions qui ne fonctionnaient pas et pas la syntaxe ^^

Partager ce message


Lien à poster
Partager sur d’autres sites

 

Salut à  tous  :)

 

Je rencontre un petit problème avec la fonction DST et NOTDST  après le changement d'heure le codes DST devrait se lancer et le NOTDST  s’arrêter  mais ce n'est pas le cas !! suis-je le seul dans cette situation ?

 

 

Salut,

 

j'ai le même problème avec ma gestion jour_nuit

est ce un problème de syntaxe?

-- ---------------------------------------------------------------------------
-- Variable Jour / Nuit en hiver
-- ---------------------------------------------------------------------------		
-- Si la variable est à  jour et qu'on est après le couché du soleil, on remet à  nuit
GEA.add({"Global", "JOUR_NUIT", "JOUR"}, 60*60, "nuit hiver", {{"Time", "Sunset", "Sunrise"}, {"Global", "JOUR_NUIT", "NUIT"}}, {"NOTDST"})
-- Si la variable est à  nuit et qu'on est après le levé du soleil, on remet à  jour
GEA.add({"Global", "JOUR_NUIT", "NUIT"}, 60*60, "jour hiver", {{"Time", "Sunrise", "Sunset"}, {"Global", "JOUR_NUIT", "JOUR"}}, {"NOTDST"})

-- ---------------------------------------------------------------------------
-- Variable Jour / Nuit en été
-- ---------------------------------------------------------------------------		
-- Si la variable est à  jour et qu'on est après le couché du soleil, on remet à  nuit
GEA.add({"Global", "JOUR_NUIT", "JOUR"}, 120*60, "nuit ete", {{"Time", "Sunset", "Sunrise"}, {"Global", "JOUR_NUIT", "NUIT"}}, {"DST"})
-- Si la variable est à  nuit et qu'on est après le levé du soleil, on remet à  jour
GEA.add({"Global", "JOUR_NUIT", "NUIT"}, 120*60, "jour ete", {{"Time", "Sunrise", "Sunset"}, {"Global", "JOUR_NUIT", "JOUR"}}, {"DST"})

Partager ce message


Lien à poster
Partager sur d’autres sites

Il me semble qu'une accolade est mal placée dans tes 4 lignes .

GEA.add({"Global", "JOUR_NUIT", "JOUR"}, 60*60, "nuit hiver", {{"Time", "Sunset", "Sunrise"}, {"Global", "JOUR_NUIT", "NUIT"}, {"NOTDST"}})

Partager ce message


Lien à poster
Partager sur d’autres sites

 

pour l'action immediate, tu mets l'id de ton dimmer dans l'enetete : id_dimmer value et tu mets -1 à  la place de 30.

GEA.add({dimmereteint, intrusion} -1, "", {{"StopScenario", <id>}, {"Global", "Etat_Alarme", "nouvellevaleur"}})

 

salut,

bon ca ne stop pas la scene et le dimmer clignote toujours

 

j'ai ca dans le debug bizarre

[DEBUG] 22:18:57: GEA Version 5.33 : en exécution...
[DEBUG] 22:19:00: [ Value [181|Ecl_Chambre_Parents] = 0 ] Add Property : ajout de la tache pour lancement instantané (ID:22) [StopScenario,185] [Global,Etat_Alarme,OFF] [If..]
[DEBUG] 22:19:00: GEA Version 5.33 : en exécution...

mon script

--[[
%% autostart
%% properties
50 value
157 value
181 value
%% globals
Etat_Alarme
--]]


ECL_CHAMBRE_PARENTS = 181, 


--Arret Scene Intrusion 
local Ecl_Parents_off = {"Value", id["ECL_CHAMBRE_PARENTS"], 0} 
GEA.add({Ecl_Parents_off,Intrusion}, -1, "Mode Panic OFF", {{"StopScenario", 185}, {"Global", "Etat_Alarme", "OFF"}})
 
 

la scene a bien l'ID 185

 

avez vous une idée ?

j'ai essayé de mettre 3s de tempo dans la scene, mais ca marche pas.

 

merci

Partager ce message


Lien à poster
Partager sur d’autres sites

bijour,

 

En conditions multiples, peut-etre que l'instantané n'aime pas, attendons les experts pour leur avis sur l'instantané et conditions multiples avec la syntaxe testée avant, mais je pense que c'est OK tout de même ;-)

Et quand tu appuies sur l'interr, ca met bien la valeur du dimmer à  0 ? au cas où ;-)

 

Et avec cette syntaxe ?

local intrusion = {"If", {"Global", "Etat_Alarme", "ON"}}
local Ecl_Parents_off = {"Value", id["ECL_CHAMBRE_PARENTS"], 0}
GEA.add({Ecl_Parents_off}, -1, "Mode Panic OFF", {intrusion, {"StopScenario", 185}, {"Global", "Etat_Alarme", "OFF"}})

Partager ce message


Lien à poster
Partager sur d’autres sites

Il faut y aller progressivement :

 

1. Test

--local Ecl_Parents_off = {"Value", id["ECL_CHAMBRE_PARENTS"], 0} 
GEA.add(id["ECL_CHAMBRE_PARENTS"], -1, "Mode Panic OFF", {{"Inverse"},{"StopScenario", 185}, {"Global", "Etat_Alarme", "OFF"}})

2. Test

local intrusion = {"Global", "Etat_Alarme", "ON"}
--local Ecl_Parents_off = {"Value", id["ECL_CHAMBRE_PARENTS"], 0}
GEA.add({id["ECL_CHAMBRE_PARENTS"], intrusion }, -1, "Mode Panic OFF", {{"Inverse"}, {"StopScenario", 185}, {"Global", "Etat_Alarme", "OFF"}})
 

Si aucun des deux ne fonctionne, remplace le StopScenario, 185 par l'allumage d'une ampoule (si tu peux). Cela permet de voir très rapidement, si c'est le code qui ne fonctionne pour ou si c'est ton scénario qui n'arrive pas se stopper.

Partager ce message


Lien à poster
Partager sur d’autres sites

àtoi de jouer àsakkhho, plein de syntaxes a tester ;-) avec Steven

D'ailleurs désolé suis un boulet, j'aurais pu aussi te proposer avec le Inverse ;-)

J'adore ce forum, beaucoup d'aides !!

Partager ce message


Lien à poster
Partager sur d’autres sites

il me semble qu'il y a une erreur de syntaxe. N'as-tu rien qui apparaît dans le debug de la scène ?

Ce que j'aurais vu, est qu'il manque une { au début des actions (juste après la , des notifications)

Partager ce message


Lien à poster
Partager sur d’autres sites

Non Jojo tout est ok dans le debug  :angry:

 

Je Post le code complet pour que cela soit plus lisible

Le code avec l'option NOTDST viens de se lancer alors qu'il ne devrait pas !!

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--                                                            --  GESTION VOLETS LUXMENS --  "OUEST APRES MIDI" - DST -                                                                       
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 
 local si_pas_ferme_17_25_27_29 = {"If", {{"Value+",17, 90},{"Value+",25, 90},{"Value+",27, 90},{"Value+",29, 90}}} -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS
 local si_pas_ouvert_17_25 = {"If", {{"Value-",17, 90},{"Value-",25, 90}}} -- 17-SALON  25-AR-CUIS                                                                                                                 
 local si_pas_ouvert_27_29 = {"If", {{"Value+",17, 90},{"Value+",25, 90},{"Value-",27,90},{"Value-",29,90}}} -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS                                                      
 local temps_1_volet = {"Time", "13:00", "Sunset"}
  
 -- FERMETURE DST --
 
 -- FERMETURE VOLETS_17_25_27_29 --
 -- luminosité est supérieur à  900 Lux pendant 5 minutes entre 13h et Sunset, baisse les volets 17 salon, 25 AR cuisine, 27 Chambre parents, 29 Chambre Lucas  
GEA.add({"Value+",id["CPT_LUX_AR_C"],900}, 5*60, "Fermeture volets Ouest Partiel DST #value# Lux #time#",{si_pas_ferme_17_25_27_29, temps_1_volet,
{"DST"},{"Open",17,45},{"Open",25,40},{"Open",27,40},{"Open",29,40}}) -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS

  
  -- OVERTURE DST --
 
 -- OUVERTURES VOLETS_17_25 --
 -- la luminosité est inférieur à  200 Lux pendant 15 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
GEA.add({"Value-",id["CPT_LUX_AR_C"],200}, 15*60, "Remontée volets SALON à  60 AR_CUIS à  70 DST #value# Lux #time#",{si_pas_ouvert_17_25, temps_1_volet,
{"DST"},{"Open",17,60},{"Open",25,70}}) --  17-SALON  25-AR-CUIS

   -- OUVERTURES VOLETS_17_25 --
 -- luminosité est inférieur à  100 Lux pendant 15 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
GEA.add({"Value-",id["CPT_LUX_AR_C"],200}, 30*60, "Remontée volets SALON et AR_CUISINE à  100 DST #value# Lux #time#",{si_pas_ouvert_17_25, temps_1_volet,
{"DST"},{"Open",17,98},{"Open",25,99}}) -- 17-SALON  25-AR-CUIS 

   -- OUVERTURES VOLETS_27_29 --
 -- On remonte les volets 27 Chambre parents, 29 Chambre Lucas si volets RDC Ouverts --                                     
GEA.add(true, 8*60,"Remontée volets CHB_PARENTS et CHB_LUCAS à  100 DST #value# Lux #time#",{si_pas_ouvert_27_29, temps_1_volet,
{"DST"},{"Open",27,99},{"Open",29,98}}) -- 27-CHB-PARENTS  29-CHB-LUCAS

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--                                                          --  GESTION VOLETS LUXMENS --  "OUEST APRES MIDI" - NOTDST -                         
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                                                                                
 -- FERMETURE NOTDST --

 -- FERMETURE VOLETS_17_25_27_29 --
 -- luminosité est supérieur à  600 Lux pendant 5 minutes entre 13h et Sunset, baisse les volets 17 salon, 25 AR cuisine, 27 Chambre parents, 29 Chambre Lucas  
GEA.add({"Value+",id["CPT_LUX_AR_C"],600}, 5*60, "Fermeture volets Ouest Partiel NOTDST #value# Lux #time#",{si_pas_ferme_17_25_27_29, temps_1_volet,
{"NOTDST"},{"Open",17,55},{"Open",25,50},{"Open",27,50},{"Open",29,50}}) -- 17-SALON  25-AR-CUIS  27-CHB-PARENTS  29-CHB-LUCAS

  
  -- OVERTURE NOTDST --

 -- OUVERTURES VOLETS_17_25 --
 -- la luminosité est inférieur à  200 Lux pendant 15 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
GEA.add({"Value-",id["CPT_LUX_AR_C"],200}, 15*60, "Remontée volets SALON à  70 et AR_CUIS à  80 pcts à  NOTDST #value# Lux #time#",{si_pas_ouvert_17_25, temps_1_volet,
{"NOTDST"},{"Open",17,70},{"Open",25,80}}) --  17-SALON  25-AR-CUIS

  -- OUVERTURES VOLETS_17_25 --
 -- la luminosité est inférieur à  200 Lux pendant 30 minutes entre 13h et Sunset, remonte les volets 17 salon, 25 AR cuisine
GEA.add({"Value-",id["CPT_LUX_AR_C"],200}, 30*60, "Remontée volets SALON et AR_CUIS à  100 NOTDST #value# Lux #time#",{si_pas_ouvert_17_25, temps_1_volet,
{"NOTDST"},{"Open",17,98},{"Open",25,99}}) --  17-SALON  25-AR-CUIS

 -- OUVERTURES VOLETS_27_29 --
 -- On remonte les volets 27 Chambre parents, 29 Chambre Lucas si volets RDC Ouverts --
GEA.add(true, 8*60, "Remontée volets CHB_PARENTS et CHB_LUCAS à  100 NOTDST #value# Lux #time#",{si_pas_ouvert_27_29, temps_1_volet,
{"NOTDST"},{"Open",27,99},{"Open",29,98}}) -- 27-CHB-PARENTS  29-CHB-LUCAS

Modifié par Diuck

Partager ce message


Lien à poster
Partager sur d’autres sites

Dans ton DEBUG tu as bien la prise en compte de DST ou NODST ?

 

Vois pas d'erreur de syntaxe moi.

 

Et si tu essayais sans DST ou NOTDST  ligne par ligne et plus simple pour reperer dou ca vient.

COmme ca par exemple :

-- FERMETURE VOLETS_17_25_27_29 --
-- luminosité est supérieur à  900 Lux pendant 5 minutes entre 13h et Sunset, baisse les volets 17 salon, 25 AR cuisine, 27 Chambre parents, 29 Chambre Lucas
GEA.add({"Value+",id["CPT_LUX_AR_C"],900}, 5*60, "Fermeture volets Ouest Partiel DST #value# Lux #time#",{si_pas_ferme_17_25_27_29, temps_1_volet}) -- 17-SALON 25-AR-CUIS 27-CHB-PARENTS 29-CHB-LUCAS
  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

en effet, avec tout je vois mieux. Sorry pour la mauvaise piste.

As-tu essayé en changeant l'ordre des actions ? et si tu mettai {DST} / {NOTDST} en première action ?

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

ERREEEEUUUUR :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Hummmm, je ne sais pas ce qui c'est passé mais NOTDST s'est transformé en NODST ... j'ai du faire une boulet dans une version. J'en suis navré.

 

En attendant, il faut donc remplacer les NOTDST par NODST

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

yeah bien vu, NOT PAN NOT GAIN ;-)

Partager ce message


Lien à poster
Partager sur d’autres sites

Pour info, l'erreur est survenue entre la v 4.021 et la 4.30. Entre ces deux version j'ai modifié le code afin d’autoriser l'écriture en majuscule ET minuscule. En faisant ma manipulation, j'ai modifié ainsi :

 

elseif (type(entry[GEA.keys["PARAMS"]]) == "table" and entry[GEA.keys["PARAMS"]][1] == "NOTDST") then

 

par

 

elseif (type(entry[GEA.keys["PARAMS"]]) == "table" and string.lower(entry[GEA.keys["PARAMS"]][1]) == "nodst") then

 

j'ai donc perdu un petit T en passant :(

Partager ce message


Lien à poster
Partager sur d’autres sites

Etant en pleine transition vers GEA, je transforme mes vieilles scènes héritées de mon HCL.

Et là, je tombe sur un os, qu'il ne me semble pas avoir vu dans la doc.

Je souhaite faire 2 actions (jusque là, facile) dont une avec un délais.

Voici ce que ça donne en mode bloc

Je ne veux pas faire 2 lignes GEA différentes, car la 2° action ne doit s'exécuter que si la scène a démarré.

J'aimerais éviter de créer une variable globale transitoire pour ce cas la.

Merci

Partager ce message


Lien à poster
Partager sur d’autres sites

T time pour tout le monde alors  :P

cela prouve juste que Steven est humain c'est rassurant  :2:

  • Upvote 2

Partager ce message


Lien à poster
Partager sur d’autres sites

Est-ce que tu peux ecrire ce que tu souhaites faire stp, bizarrment des que je vois un mode bloc, c'est moins clair pour moi, je me perds hihihi

 

ce que j'ai compris :

 

si lumsdbRdc allumé et ECS non

alors var_ECS à  OUI

sleep 1200s

et var_ECS à  NON

 

avec tes 2 lignes GEA, aps besoin de variable transitoire pour moi

 

Comme ca par exemple mais j'ai pe pas bien compris ce que tu souhaitais

local varecsoui = {"Global", "varecs", "oui"}
local varecsnon = {"Global", "varecs", "non"}
GEA.add({id["lumrdc_douche"], varecs_non}, 30, "",{{"Global", "varecs", "oui"}})
GEA.add(varecsoui, 1*60, "", {{"Global", "varecs", "non"}})

Partager ce message


Lien à poster
Partager sur d’autres sites

Voici ce que je fais en Bloc :

 

SI Lum_SdB_Douche = ON ET la variable ECS == Non

ALORS mettre la variable ECS à  Oui (je le fais via un VD) ET la repasser à  Non après 1200s (toujours via un VD)

 

Effectivement, ton code GEA ferait bien son travail, MAIS

(je suis tordu, et ne t'ai peut-être pas tout dit) :

La scène ne démarre que si ECS == Non, et donc elle remet la variable à  Non après 1200s.

Et avec ton code, quoi qu'il arrive, la variable se met à  Non après 1*60s, car si par ailleurs (ce qui est le cas) j'avais programmé que ECS était à  Oui pendant 3h, bardaf...

Je ne veux donc produire de l'eau chaude (ECS == Oui) que durant 1200s si je n'étais pas en mode de production d'eau chaude (ECS == Non).

 

Est-ce plus clair ?

Partager ce message


Lien à poster
Partager sur d’autres sites

donc en 2 lignes c'est jouable quand meme, enfin je crois :

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

GEA.add({id["lumrdc_douche"], varecsnon}, -- si LUM douche ON et Variable ECS àNON
30, "", -- duree message
{{"Global", "varecs", "oui"} -- PAssage de la variable ECS àOUI
})
GEA.add(varecsoui, -- si ECS = OUI (mis par la ligne précédente
 20*60, -- 1200s soit 20 minutes
"Variable ECS àOUI depuis #durationfull#", -- message avec récuperation de duree totale de la condition
 {{"Global", "varecs", "non"} -- passage de la variable ECS àNON après 20 mins
})

en 1 ligne mais avec insertion de function a utiliser avec parcimonie ;-) je cite ..devine qui..

GEA.add({id["lumrdc_douche"], varecsnon}, 30, "",{{"Global", "varecs", "oui"}, {"Function", function() fibaro:sleep(20*60*1000) end}, {"Global", "varecs", "non"}})

Partager ce message


Lien à poster
Partager sur d’autres sites

×