Invité chris6783 Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 C drôle on a tous ce même problème :-)
Moicphil Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 @ Flechg Je ne suis pas sur de bien comprendre ce que tu souhaites faire, mais je remarque que tu as la fonction "inverse" sur tes 2 lignes, du coup tes 2 lignes sont semblables. Peut être le supprimer sur la 1ere ligne ? . GEA.add(id["DET_SALON"], 5*60, "detecteur armer #time#", {{"Time", "08:20", "11:55"}, {"Time", "13:20", "15:45"}, {"Days", "Monday, Tuesday, Wednesday, Thursday, Friday"}, {"setArmed", 277}}) --arme le module GEA.add(id["DET_SALON"], 30, "detecteur desarmer #time#", {{"Time", "11:55", "11:56"}, {"Time", "15:45", "15:46"}, {"Days", "Monday, Tuesday, Wednesday, Thursday, Friday"}, {"Inverse"}, {"setDisarmed", 277}}) --desarme le module
pepite Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 @Hansolo : j'adoooooore :60: @flechg Attention, il est préférable que le Inverse soit en début des options, plus simple à la lecture pour l'inversion de la condition -- Arme le module GEA.add(id["DET_SALON"], 5*60, "detecteur armer #time#", {{"Inverse"},{"Time", "08:20", "11:55"}, {"Time", "13:20", "15:45"}, {"Days", "Monday, Tuesday, Wednesday, Thursday, Friday"}, {"setArmed", 277}}) --desarme le module GEA.add(id["DET_SALON"], 30, "detecteur desarmer #time#", {{"Time", "11:55", "11:56"}, {"Time", "15:45", "15:46"}, {"Days", "Monday, Tuesday, Wednesday, Thursday, Friday"}, {"setDisarmed", 277}}) ou comme ca, astuce de Steven --La valeur du detecteur est toujours > à -1 (puisque 0 ou 1) donc GEA ignore l'etat du module et regarde s'il est armé (Armed)ou desarmé (Disarmed) --Arme le module s'il est desarmé GEA.add({"Value+", id["DET_SALON"], -1}, 5*60, "detecteur armer #time#", {{"Disarmed"}, {"Time", "08:20", "11:55"}, {"Time", "13:20", "15:45"}, {"Days", "Monday, Tuesday, Wednesday, Thursday, Friday"}, {"setArmed", 277}}) --Desarme le module s'il est armé GEA.add({"Value+", id["DET_SALON"], -1}, 30, "detecteur desarmer #time#", {{"Armed"}, {"Time", "11:55", "11:56"}, {"Time", "15:45", "15:46"}, {"Days", "Monday, Tuesday, Wednesday, Thursday, Friday"}, {"setDisarmed",277}}) 1
Sebbrunie1 Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 Chers Tous, la dernière version de GEA n'a pas la correction pour la pris en compte des inc+ et dec- Quelqu'un peut faire la correction dans le model comme l'avait préconisé Steven? Merci beaucoup....
HANSOLO Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 Sur un malentendu ça pouvait marcher! 1
Sebbrunie1 Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 Bonjour, j'ai ces ligne qui ne fonctionnent pas: -- Si fenetre ouverte, chauffage coupé GEA.add({"Value", id["FENETRENOE"], "1"}, -1, "Fenetre Noe Ouverte, chauffage arreté", {{"turnOff", id["RADIATEURNOE"]}}) -- Si fentre refermé, chauffage remis en route GEA.add({"Value", id["FENETRENOE"], "0"}, -1, "Fenetre Noe refermé, chauffage remis", {{"turnOn", id["RADIATEURNOE"]}}) -- Alerte fenetre Noe ouverte GEA.add({"Value", id["FENETRENOE"], "1"}, -1, "Alerte fentre Noe ouverte", {"Global", "mysms", "Alerte fentre Noe ouverte"}, {"VirtualDevice", id["FRESMS"], 1}) Dois je changer dans la ligne GEA.match en string.match? elseif (type(id) == "table" and string.lower(id[1]) == "global" and #id > 2) then GEA.log("isActivate", entry, "type : global variable", false) result = GEA.match(fibaro:getGlobalValue(id[2]), id[3]) master[GEA.keys["VALUE"]][nb] = fibaro:getGlobalValue(id[2])
Nikko Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 @sebbrunie: Pour des capteurs de fenetre tu dois pouvoir écrire: -- Si fenetre ouverte, chauffage coupé GEA.add(id["FENETRENOE"], -1, "Fenetre Noe Ouverte, chauffage arreté", {{"turnOff", id["RADIATEURNOE"]}}) -- Si fentre refermé, chauffage remis en route GEA.add(id["FENETRENOE"], -1, "Fenetre Noe refermé, chauffage remis", {{"Inverse"},{"turnOn", id["RADIATEURNOE"]}}) Si tu veux conserver value, certains capteurs n'envoient pas 1 mais 255 donc au lieu de: {"Value", id["FENETRENOE"], "1"} utlise: {"Value+", id["FENETRENOE"], 0} Ton dernier GEA, il manque les accolades qui englobent, les options: GEA.add({"Value", id["FENETRENOE"], "1"}, -1, "Alerte fentre Noe ouverte", {{"Global", "mysms", "Alerte fentre Noe ouverte"}, {"VirtualDevice", id["FRESMS"], 1}}) En espérant que ça aide (et que ce soit juste....) Nicolas
Sebbrunie1 Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 @NiKKO pour les {}, c'est sur que c'est bon... merci, je ne l'avais pas vu.... Steven avait dit que pour l'action inc+ et dec-, il fallait changer GEA.match en string.match. Je me demandais si c'était aussi valable partout ? On ricane pas car la question démontre peut être que je n'y comprends rien
Nikko Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 Peut être valable pour inc+ et inc-, mais c'est pour une variable globale que tu veux modifier, dans la partie Option et pas condition, cf exemple de Steven ( http://www.domotique-fibaro.fr/index.php/topic/1082-gea-gestionnaire-d%C3%A9v%C3%A9nements-automatique/ ); Dans ton cas tu travaille avec la Condition Value Nicolas
pepite Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 je crois que tu melanges un peu ce que fait inc+ et dec- Cela ne concerne que la valeur de variable est numerique : {"Global", "Toto", 1} si la ligne suivante tu ecris {"Global", "Toto", inc+}, la valeur de Toto est donc de 1 + "inc+" , soit 1+1 = 2
pepite Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 @jojo : et sans calculette ;-) et meme pas un math.floor en lua ;-)
atalata Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 Merci pour les infos sur le setTargetLevel j'avais essayé le value en direct, mais le SRT321 ne se met pas à jour avec cette solution, je n'ai aucune idée pourquoi; Y a aussi un paramètre targetLevel que j'ai essayé de setter avec la propriété, mais là aussi il refuse de se mettre à jour. Seule l'action setTargetLevel fonctionne étrangement. comme je veux piloter le planning du chauffage par GEA qui me permettra de faire des choses bcp plus riche que le panel heating, il me fallait absolument cette fonciton. Du coup j'ai rajouté ca dans le moteur de push message de GEA -- settargetlevel elseif (type(entry[GEA.keys["PARAMS"]]) == "table" and string.lower(entry[GEA.keys["PARAMS"]][1]) == "settargetlevel" and #entry[GEA.keys["PARAMS"]] > 2) then fibaro:call(entry[GEA.keys["PARAMS"]][2], "setTargetLevel", entry[GEA.keys["PARAMS"]][3]) GEA.log("sendActions", entry, "!ACTION! : setTargetLevel " .. entry[GEA.keys["PARAMS"]][3] ..", true ) et du coup la syntaxe de GEA pour l'option c'est tout simplement -- {"setTargetLevel", <id module>, <temperature consigne>} -- Met <température consigne> dans <id module> Si c'est reporté dans le code GEA ca m'arrange, sinon je ferais le report à chaque version c'est pas trop lourd
pepite Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 Bien joue @atalata, teste sur un peu plus de temps et si c'est ok je pense que les experts voudront bien mettre a jour le GIT pour une nouvelle version ;-)
flechg Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 @ pepite et moicphil merci pour votre aide
Shyrka973 Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 @sebbrunie1 Peux-tu tester la modification suivante en remplaçant ces deux lignes: if (GEA.match(entry[GEA.keys["PARAMS"]][i][3], "inc%+")) then elseif (GEA.match(entry[GEA.keys["PARAMS"]][i][3], "dec%-")) then par: if (string.find(entry[GEA.keys["PARAMS"]][i][3], "inc+", 1, true)) then elseif (string.find(entry[GEA.keys["PARAMS"]][i][3], "dec-", 1, true)) then
Sebbrunie1 Posté(e) le 3 avril 2015 Signaler Posté(e) le 3 avril 2015 par GEA.match par string.match, ca marche... j'essaye ton code demain.
Sebbrunie1 Posté(e) le 4 avril 2015 Signaler Posté(e) le 4 avril 2015 Bonjour, est ce qu'une tache peut s'auto arrêter? local ProcheMaison = GEA.add({"Global-", "DistanceMaison", "0.1"}, 30, "Je suis à moins de #value# m à #time# de la maison", {{"Repeat"}, {"StopTask", ProcheMaison}})
katagena Posté(e) le 4 avril 2015 Signaler Posté(e) le 4 avril 2015 Bonjour à tous, Petite question... j'ai une multiprises Greenwave avec dessus ma TV (ID: 1), ma barre de son (ID: 2) et un disque USB pour enregistrer (ID: 3). Voici la question... j'aimerai que tout de suite quand la TV consomme plus que X, la barre de son et le disque s'allume! Autrement dit, quand ma TV sort de veille. Malheureusement, je ne sais pas comment mettre le "tout de suite" avec les niveaux de consommation?!? Merci d'avance.
971jmd Posté(e) le 4 avril 2015 Signaler Posté(e) le 4 avril 2015 @katagena Qu'elle est la consommation en veille de la tv
971jmd Posté(e) le 4 avril 2015 Signaler Posté(e) le 4 avril 2015 --[[ %% autostart %% properties 1 value %% globals --]] ----- on GEA.add({"Sensor+", id["TV_ID1"], 4}, -1, "", {{"turnON", id["XXXX"]}, {"turnON", id["XXXX"]}, {"Repeat"}}) -----off GEA.add({"Sensor-", id["TV_ID1"], 5}, -1, "", {{"turnOff", id["XXXX"]}, {"turnOff", id["XXXX"]}, {"Repeat"}})
katagena Posté(e) le 4 avril 2015 Signaler Posté(e) le 4 avril 2015 Merci 971jmd... Juste une question, àquoi sert le "repeat" ici? Merci pour la réponse!
971jmd Posté(e) le 4 avril 2015 Signaler Posté(e) le 4 avril 2015 pour exécuter le code à chaque fois que tu aura besoin si tu ne mai pas "repeat" le code s’exécutera une seul fois fait un teste avec et sans pour voir
971jmd Posté(e) le 4 avril 2015 Signaler Posté(e) le 4 avril 2015 j'ai dit un bêtise, tu n'a pas besoin de "repeat" vue que tu -1 (GEA.add({"Sensor+", id["TV_ID1"], 4}, -1, .....
Messages recommandés