soulac Posté(e) le 26 septembre 2015 Signaler Posté(e) le 26 septembre 2015 Ok donc c bien ce que j'avais compris mais malheureusement pas de notification pour les relances et des erreurs
sebcbien Posté(e) le 26 septembre 2015 Signaler Posté(e) le 26 septembre 2015 je viens de retrouver le code que j'utilisais. Même principe donc, et le repeat fonctionnait Je pilotais un rgbw, dans une timeframe et sans dimming, mais la tâche se relançait bien. J'ai mis des notificatons pour aider la lecture GEA.add({id2["SDB_MVTZ"],{"Sensor-", id2["RGBW_DRESSING_SDB"],1},estNotHouse_Manuel}, -1, "",{{"Time", "Sunset+120", "Sunrise+45"},{"RGB", id2["RGBW_DRESSING_SDB"], 0, 0, 0, 10}}) local malampesdb = GEA.add({{"Sensor+", id2["RGBW_DRESSING_SDB"],1},{"Sensor-", id2["RGBW_DRESSING_SDB"],20}}, 5*30, "",{{"RGB", id2["RGBW_DRESSING_SDB"], 0, 0, 0, 0}}) GEA.add(id2["SDB_MVTZ"], -1, "mouvement 0 - 1", {{"RestartTask", malampesdb}}) GEA.add(id2["SDB_MVTZ"], 30, "mouvement continu", {{"RestartTask", malampesdb},{"Repeat"}})
soulac Posté(e) le 26 septembre 2015 Signaler Posté(e) le 26 septembre 2015 bon je c plus . J'ai enlevé des lignes pour juste avoir les spots qui s'éteint après 3 min puis je relance si détection mais comme d'hab sa ne marche pas. code si dessous -- Si déjà Allumé, Re-Allumage à 65% dès que détection mouvement sauf si module déjà a + de 64% (économie Z-Wave) GEA.add({id["D_MOUV_SALON"],{"Value+", id["SPOT_CUISINE"], 1},{"Value-", id["SPOT_CUISINE"],64}}, -1, "Allumage",{{"Value", id["SPOT_CUISINE"], 65}}) -- Après 3 min on met la lampe à 65% (prète pour prochain allumage) puis on éteint, uniquement si la lampe est entre 1 et 35 local malampesamdim = GEA.add(id["SPOT_CUISINE"], 3*60,"extinction",{{"Value", id["SPOT_CUISINE"], 65},{"Function", function() fibaro:sleep(300) end},{"turnOff"}},{"Repeat"}) -- Relance des tâches en cas de détection pendant 30 secondes et si la lampe est allumée (économise GEA) GEA.add({{"Value",id["D_MOUV_SALON"], 1},{"Value+", id["SPOT_CUISINE"], 1}}, 30, "relance 30s de mouvement", {{"RestartTask", malampesamdim},{"Repeat"}}) Et toujours la même erreur [DEBUG] 13:14:41: En cours : aucun traitement a effectuer pour l'ID:40[DEBUG] 13:15:06: [ Value [121|D_Mouv_salon] = 1 ] sendActions : traitement des actions (ID:3) [RestartTask,2] [Repeat] [if..][DEBUG] 13:15:06: [ Value [121|D_Mouv_salon] = 1 ] !!! ERREUR !!! : vérification (ID:3) [RestartTask,2] [Repeat] [if..][DEBUG] 13:15:36: [ Value [121|D_Mouv_salon] = 1 ] sendActions : traitement des actions (ID:3) [RestartTask,2] [Repeat] [if..][DEBUG] 13:15:36: [ Value [121|D_Mouv_salon] = 1 ] !!! ERREUR !!! : vérification (ID:3) [RestartTask,2] [Repeat] [if..][DEBUG] 13:15:36: Durée des traitements : 0s nouveau délai : 30s / tourne depuis 1h[DEBUG] 13:16:06: [ Value [121|D_Mouv_salon] = 1 ] sendActions : traitement des actions (ID:3) [RestartTask,2] [Repeat] [if..][DEBUG] 13:16:06: [ Value [121|D_Mouv_salon] = 1 ] !!! ERREUR !!! : vérification (ID:3) [RestartTask,2] [Repeat] [if..][DEBUG] 13:16:36: [ Value [121|D_Mouv_salon] = 1 ] sendActions : traitement des actions (ID:3) [RestartTask,2] [Repeat] [if..]
tibahut Posté(e) le 26 septembre 2015 Signaler Posté(e) le 26 septembre 2015 Une nouvelle "version" de GEA a été ajoutée dans github par un certain tibahut. Il a réalisé un énorme "nettoyage" du code, correction traduction etc. mais n'a a priori pas modifié le code lui même. voici son commentaire: Voici mon humble contribution pour un script que j'apprécie et que j'utilise. Celle-ci est destinée à améliorer la lisibilité du code et à ajouter un peu de doc pour les gens qui veulent utiliser GEA. Le fichier de base a été beautifié. Il en résulte un second fichier minifié pour les box de production. J'ai utilisé le service de minification en ligne : https://mothereff.in/lua-minifier Le fichier Readme.md a été rempli pour inviter les gens à utiliser GEA. Le fichier sample a été créé pour donner des exemples afin d'éviter que les novices soient trompés en copiant le code de GEA dans leur box et que le script ne fonctionne pas. Malheureusement, je n'ai pas assez de module variés pour tester les régressions. Si des gens peuvent tester plus en profondeur que moi, ce serait appréciable. Pour le moment je n'ai pas le temps de tester ça, mais si certains d'entre vous on envie de tester, c'est le moment.. Tout ça est disponible ici https://github.com/sjauquet/GEA et dans ma signature Oui, désolé, j'ai un pseudo différent sur le forum et sur GitHub, je pense que je vais harmoniser tout ça. je pensais mais en fait non ^^ J'ai fait de la beautification en essayant de ne pas tout casser. La version que j'ai faite en PR fonctionne bien sà»r chez moi. Je ne me permettrai pas de proposer un travail non fini. Mais comme je n'ai pas beaucoup de modules et de cas particuliers pour l'instant, je n'ai pas pu tout tester. Encore merci pour avoir créé GEA qui me rend bien service. (et aussi le forum ^^ ) 1
pepite Posté(e) le 26 septembre 2015 Signaler Posté(e) le 26 septembre 2015 @soulac, tu n'as pas enleve le 1 de la ligne 7 pour "MOUV_SALON", c'est false ou true, donc dans ce cas, true ! tu devrais le reecrire comme cela : GEA.add({id["D_MOUV_SALON"],{"Value+", id["SPOT_CUISINE"], 1}}, 30, "relance 30s de mouvement", {{"RestartTask", malampesamdim},{"Repeat"}}) ou GEA.add({{"Value",id["D_MOUV_SALON"], "true"},{"Value+", id["SPOT_CUISINE"], 1}}, 30, "relance 30s de mouvement", {{"RestartTask", malampesamdim},{"Repeat"}})
pepite Posté(e) le 26 septembre 2015 Signaler Posté(e) le 26 septembre 2015 @tibahut, c'est en prod chez toi, super !!
sebcbien Posté(e) le 26 septembre 2015 Signaler Posté(e) le 26 septembre 2015 @soulac @peptite... oui ça ira tout de suite mieux... :-/
soulac Posté(e) le 27 septembre 2015 Signaler Posté(e) le 27 septembre 2015 bonjour messieurs, Bon avec tout c'est modif et code que vous m'avez envoyé je mis perd un peux. Encore merci pour votre aide. Ce matin j'ai encore fait une tentative avec le code si dessous : -- Si déjà Allumé, Re-Allumage à 65% dès que détection mouvement sauf si module déjà a + de 64% (économie Z-Wave) GEA.add({id["D_MOUV_SALON"],{"Value+", id["SPOT_CUISINE"], 1},{"Value-", id["SPOT_CUISINE"],64}}, -1, "Allumage",{{"Value", id["SPOT_CUISINE"], 65}}) -- Après 10min on dimme la lampe à 34% si pas de mouvement local malampesam = GEA.add({"Value+", id["SPOT_CUISINE"],64}, 5*60, "dim a 34",{{"Value", id["SPOT_CUISINE"], 34},{"Repeat"}}) -- Après 3 min on met la lampe à 65% (prète pour prochain allumage) puis on éteint, uniquement si la lampe est entre 1 et 35 local malampesamdim = GEA.add({{"Value-", id["SPOT_CUISINE"],35},{"Value+", id["SPOT_CUISINE"], 1}}, 3*60,"extinction",{{"Value", id["SPOT_CUISINE"], 65},{"Function", function() fibaro:sleep(300) end},{"turnOff"}},{"Repeat"}) -- Relance des tâches en cas de détection pendant 30 secondes et si la lampe est allumée (économise GEA) GEA.add({{"Value",id["D_MOUV_SALON"], "true"},{"Value+", id["SPOT_CUISINE"], 1}}, 30, "relance 30s de mouvement", {{"RestartTask", malampesam},{"RestartTask", malampesamdim},{"Repeat"}}) -- Relance des tâches en cas de détection si la lampe est allumée (économise GEA) GEA.add({{"Value",id["D_MOUV_SALON"], "true"},{"Value+", id["SPOT_CUISINE"], 1}}, -1, "relance mouvement 0 a 1", {{"RestartTask", malampesam},{"RestartTask", malampesamdim}}) Donc résultat pas d'erreur dans le debug c'est déjà sa, mais toujours le même problème pas de notification pour les relances et donc la lumière varie à 34% après les 3 min puis s’éteint .
sebcbien Posté(e) le 27 septembre 2015 Signaler Posté(e) le 27 septembre 2015 essaye encore avec les deux dernières lignes comme ceci: Mais si tu n'a pas de notification c'est que ton capteur ne fontionne pas. L'id est bien dans l'entete ? -- Relance des tâches en cas de détection pendant 30 secondes et si la lampe est allumée (économise GEA) GEA.add({id["D_MOUV_SALON"]},{"Value+", id["SPOT_CUISINE"], 1}}, 30, "relance 30s de mouvement", {{"RestartTask", malampesam},{"RestartTask", malampesamdim},{"Repeat"}}) -- Relance des tâches en cas de détection si la lampe est allumée (économise GEA) GEA.add({id["D_MOUV_SALON"]},{"Value+", id["SPOT_CUISINE"], 1}}, -1, "relance mouvement 0 a 1", {{"RestartTask", malampesam},{"RestartTask", malampesamdim}})
sebcbien Posté(e) le 27 septembre 2015 Signaler Posté(e) le 27 septembre 2015 tien, est-ce un bug ou est-ce normal ? je voulais utiliser la notification par email pour des tâches moins importantes. Avec ceci, je reçois un mail et un push différents: GEA.add(id2["CELLIER_MVT"], -1, "restart instant push", {{"Email", 2, "restart instant mail"},{"RestartTask", malampecellier}}) Avec ceci, je reçois juste un email: GEA.add(id2["CELLIER_MVT"], -1, "restart instant push", {{"Email", 2},{"RestartTask", malampecellier}}) Avec ceci, je ne reçois rien. GEA.add(id2["CELLIER_MVT"], -1, "", {{"Email", 2, "restart instant mail"},{"RestartTask", malampecellier}}) Normal ? pas normal ?
jojo Posté(e) le 27 septembre 2015 Signaler Posté(e) le 27 septembre 2015 je ferais bien des tests pour vérifier, car j'ai toujours été dans le premier cas. Ceci dit j'ai 1 question : GEA.add(id2["CELLIER_MVT"], -1, "restart instant push", {{"Email", 2"},{"RestartTask", malampecellier}}) s'agit-il d'une faute de frappe "{"Email", 2"}", car j'aurais vu "{"Email", 2}". En effet, dans le wiki, il faudrait expliquer la différence entre 1 et 2. Comme il n'y a pas de message précisé dans 3, cela me semble logique qu'il n'envoie rien.
sebcbien Posté(e) le 27 septembre 2015 Signaler Posté(e) le 27 septembre 2015 oui, le ->"<- est une faute de frappe qui j'ai modifié en suite le 2 c'est le user No2, soit Admin, donc envoyé au mail de l'admin dans le 3 le message est spécifié dans l'option email -> {"Email", 2, "restart instant mail"}
sebcbien Posté(e) le 27 septembre 2015 Signaler Posté(e) le 27 septembre 2015 ok, my bad. {"Email", <id_user>,} -- Envoi le message par email à l'utilisateur {"Email", 2} {"Email", <id_user>,<sujet>} -- Envoi le message par email à l'utilisateur {"Email", 2, "Sujet du message"} Ca sert à changer le sujet du message, le corps lui vient du même endroit que pour les push impossible donc de n'envoyer que un email, il faut se farcir aussi la notification. Tout ça vien tdu constat que trop de notification tue le principe. J'aurais voulu réserver le push uniquement aux trucs importants. Pour la vérification que tout va bien par email c suffisant Je vais essayer en spécifiant un id de device qui n'existe pas
sebcbien Posté(e) le 27 septembre 2015 Signaler Posté(e) le 27 septembre 2015 en spécifiant un portable fake, ça fonctionne, je ne reçoit que un email. {"Portable", id["PHONE_FAKE"]},{"Email", id["Admin"]} id PHONE_FAKE renvoie l'id 97 qui est inexistant 1
soulac Posté(e) le 28 septembre 2015 Signaler Posté(e) le 28 septembre 2015 bonsoir donc j'ai écouté tes conseil sebcbien mais rien à faire sa ne marche pas. Voici mes testes : Avec ce code -- Si déjà Allumé, Re-Allumage à 65% dès que détection mouvement sauf si module déjà a + de 64% (économie Z-Wave) GEA.add({{"Value",id["D_MOUV_SALON"], "true"},{"Value+", id["SPOT_CUISINE"], 1},{"Value-", id["SPOT_CUISINE"],64}}, -1, "Allumage",{{"Value", id["SPOT_CUISINE"], 65}}) -- Après 10min on dimme la lampe à 34% si pas de mouvement local malampesam = GEA.add({"Value+", id["SPOT_CUISINE"],64}, 3*60, "dim a 34",{{"Value", id["SPOT_CUISINE"], 34},{"Repeat"}}) -- Après 3 min on met la lampe à 65% (prète pour prochain allumage) puis on éteint, uniquement si la lampe est entre 1 et 35 local malampesamdim = GEA.add({{"Value-", id["SPOT_CUISINE"],35},{"Value+", id["SPOT_CUISINE"], 1}}, 3*60,"extinction",{{"Value", id["SPOT_CUISINE"], 65},{"Function", function() fibaro:sleep(300) end},{"turnOff"}},{"Repeat"}) -- Relance des tâches en cas de détection pendant 30 secondes et si la lampe est allumée (économise GEA) GEA.add({{"Value",id["D_MOUV_SALON"], "true"},{"Value+", id["SPOT_CUISINE"], 1}}, 30, "relance 30s de mouvement", {{"RestartTask", malampesam},{"RestartTask", malampesamdim},{"Repeat"}}) -- Relance des tâches en cas de détection si la lampe est allumée (économise GEA) GEA.add({{"Value",id["D_MOUV_SALON"], "true"},{"Value+", id["SPOT_CUISINE"], 1}}, -1, "relance mouvement 0 a 1", {{"RestartTask", malampesam},{"RestartTask", malampesamdim}}) Avec ce code -- Relance des tâches en cas de détection pendant 30 secondes et si la lampe est allumée (économise GEA) GEA.add({id["D_MOUV_SALON"],{"Value+", id["SPOT_CUISINE"], 1}}, 30, "relance 30s de mouvement", {{"RestartTask", malampesam},{"RestartTask", malampesamdim},{"Repeat"}}) -- Relance des tâches en cas de détection si la lampe est allumée (économise GEA) GEA.add({id["D_MOUV_SALON"],{"Value+", id["SPOT_CUISINE"], 1}}, -1, "relance mouvement 0 a 1", {{"RestartTask", malampesam},{"RestartTask", malampesamdim}}) Mon module est bien déclaré -- salon VR_SALON = 129, OUVERTURE_SALON = 40, LUSTRE_SALON = 114, D_MOUV_SALON = 168, Et en début de GEA --[[ %% autostart %% properties 168 value 95 value %% globals --]] J'ai supprimé mon module puis installé mon module toujours rien. J'ai changé de module et toujours rien SI quelque a une idée ou faire la même chose avec un D_MOUV de fibaro je suis preneur. Merci par avance
PITP2 Posté(e) le 29 septembre 2015 Signaler Posté(e) le 29 septembre 2015 Hello, depuis ce matin ma scène GEA est plantée avec ce message dans le debug [DEBUG] 13:32:31: [ GEA_heure=1 ] Add Autostart : ajout de la tache pour 3600 secondes (ID:1) [Global,GEA_heure,0] [DEBUG] 13:32:31: [1;31m2015-09-29 13:32:31.837274 [ fatal] Runtime error: /opt/fibaro/scenes/767.lua:626: attempt to concatenate a nil value[0m [DEBUG] 13:32:54: [ Scene [99|Telco Entree] = 4 ] Add Property : ajout de la tache pour lancement instantané (ID:5) [Close,5,100] [Close,11,100] [Function..] [DEBUG] 13:32:54: [1;31m2015-09-29 13:32:54.349691 [ fatal] Runtime error: /opt/fibaro/scenes/767.lua:626: attempt to concatenate a nil value[0m J'ai essayé de recréer la scene mais j' ai toujours le même problème .... Je n'ai pas touché à la config GEA depuis un moment donc cela ne doit pas venir de cela. J'ai juste fait un soft reconfig ce matin d'un module RGBW J4ai aussi rebooté la box mais toujorus le même message. C'est la première fois que j'ai ce genre de problème ..
HANSOLO Posté(e) le 29 septembre 2015 Signaler Posté(e) le 29 septembre 2015 vérifie que ton module rgb soit bien en mode rgb
Steven Posté(e) le 29 septembre 2015 Auteur Signaler Posté(e) le 29 septembre 2015 Tu as quoi à la ligne 626 de ton GEA ? Fibaro a enfin compris comment utiliser les Error() :-) et au lieu de remonter l'erreur que cela provoque dans leur code, il remonte l'erreur qui est à l'origine ... c'est vraiment plus pratique. [ fatal] Runtime error: /opt/fibaro/scenes/767.lua:626: attempt to concatenate a nil value[0m
PITP2 Posté(e) le 29 septembre 2015 Signaler Posté(e) le 29 septembre 2015 J'ai ceci en 625 elseif (type(id) == "table" and string.lower(id[1]) == "sceneactivation") then et en 626 ceci return "Scene [" .. id[2].."|"..fibaro:getName(tonumber(id[2])) .. "] = " ..id[3], GEA.getRoom(tonumber(id[2])) et le Rgb est bien en rgb Les autres scènes fonctionnent bien
Steven Posté(e) le 29 septembre 2015 Auteur Signaler Posté(e) le 29 septembre 2015 Tu as donc un soucis avec un SceneActivation, c'est comme si fibaro n'arrive pas trouver le nom de ton module ... vérifie que le module lié àun SceneActivation n'a pas changer d'ID stp.
pepite Posté(e) le 29 septembre 2015 Signaler Posté(e) le 29 septembre 2015 oui c'est plus simple pour debugguer, merci Steven et fibaro ;-)
PITP2 Posté(e) le 29 septembre 2015 Signaler Posté(e) le 29 septembre 2015 C'était bien cela, un problème d'id de sceneactivation qui a sauté suite à un softreconfig du module Rgb Merci Steven et Hansolo pour le coup de main 1
sebcbien Posté(e) le 29 septembre 2015 Signaler Posté(e) le 29 septembre 2015 bonsoir donc j'ai écouté tes conseil sebcbien mais rien à faire sa ne marche pas. Voici mes testes : Avec ce code -- Si déjà Allumé, Re-Allumage à 65% dès que détection mouvement sauf si module déjà a + de 64% (économie Z-Wave) GEA.add({{"Value",id["D_MOUV_SALON"], "true"},{"Value+", id["SPOT_CUISINE"], 1},{"Value-", id["SPOT_CUISINE"],64}}, -1, "Allumage",{{"Value", id["SPOT_CUISINE"], 65}}) -- Après 10min on dimme la lampe à 34% si pas de mouvement local malampesam = GEA.add({"Value+", id["SPOT_CUISINE"],64}, 3*60, "dim a 34",{{"Value", id["SPOT_CUISINE"], 34},{"Repeat"}}) -- Après 3 min on met la lampe à 65% (prète pour prochain allumage) puis on éteint, uniquement si la lampe est entre 1 et 35 local malampesamdim = GEA.add({{"Value-", id["SPOT_CUISINE"],35},{"Value+", id["SPOT_CUISINE"], 1}}, 3*60,"extinction",{{"Value", id["SPOT_CUISINE"], 65},{"Function", function() fibaro:sleep(300) end},{"turnOff"}},{"Repeat"}) -- Relance des tâches en cas de détection pendant 30 secondes et si la lampe est allumée (économise GEA) GEA.add({{"Value",id["D_MOUV_SALON"], "true"},{"Value+", id["SPOT_CUISINE"], 1}}, 30, "relance 30s de mouvement", {{"RestartTask", malampesam},{"RestartTask", malampesamdim},{"Repeat"}}) -- Relance des tâches en cas de détection si la lampe est allumée (économise GEA) GEA.add({{"Value",id["D_MOUV_SALON"], "true"},{"Value+", id["SPOT_CUISINE"], 1}}, -1, "relance mouvement 0 a 1", {{"RestartTask", malampesam},{"RestartTask", malampesamdim}}) Avec ce code -- Relance des tâches en cas de détection pendant 30 secondes et si la lampe est allumée (économise GEA) GEA.add({id["D_MOUV_SALON"],{"Value+", id["SPOT_CUISINE"], 1}}, 30, "relance 30s de mouvement", {{"RestartTask", malampesam},{"RestartTask", malampesamdim},{"Repeat"}}) -- Relance des tâches en cas de détection si la lampe est allumée (économise GEA) GEA.add({id["D_MOUV_SALON"],{"Value+", id["SPOT_CUISINE"], 1}}, -1, "relance mouvement 0 a 1", {{"RestartTask", malampesam},{"RestartTask", malampesamdim}}) Mon module est bien déclaré -- salon VR_SALON = 129, OUVERTURE_SALON = 40, LUSTRE_SALON = 114, D_MOUV_SALON = 168, Et en début de GEA --[[ %% autostart %% properties 168 value 95 value %% globals --]] J'ai supprimé mon module puis installé mon module toujours rien. J'ai changé de module et toujours rien SI quelque a une idée ou faire la même chose avec un D_MOUV de fibaro je suis preneur. Merci par avance ok, simplifions a l'extrème pour debugger: -- Relance des tâches en cas de détection pendant 30 secondes et si la lampe est allumée (économise GEA) GEA.add({id["D_MOUV_SALON"]}, 30, "relance 30s de mouvement") -- Relance des tâches en cas de détection si la lampe est allumée (économise GEA) GEA.add({id["D_MOUV_SALON"]}, -1, "relance mouvement 0 a 1") avec ça tu dois au moins recevoir les deux notifications
soulac Posté(e) le 29 septembre 2015 Signaler Posté(e) le 29 septembre 2015 bonsoir sebcbien je suis en déplacement mais j'ai put faire les modif et depuis je reçois les notifications "relance 30s de mouvement" et relance mouvement 0 a 1" Maintenant tu penses que je dois ajouter quoi ? histoire de faire étape par étape
Messages recommandés