Yohan Posté(e) le 12 décembre 2014 Signaler Posté(e) le 12 décembre 2014 Ca devient compliqué 971jmd fais un effort on comprend rien à tes postes tu t'autocites maintenant !!
971jmd Posté(e) le 13 décembre 2014 Signaler Posté(e) le 13 décembre 2014 @ SEBBRUNIE1 Effectivement incrémenté, ne fonctionne pas. inc+ Décrémenté, fonction bien dec- GEA.add( id["DETECTEUR"], -1, "test", {{"Global", "Pluie", "dec-"}})
971jmd Posté(e) le 13 décembre 2014 Signaler Posté(e) le 13 décembre 2014 bonjour Steven pour des raisons que j'ignore, les scènes activation ne fonctionne plus et revoient un message d'erreur dans la v5 GEA [ERROR] 22:33:59: line 366: attempt to index field '?' (a nil value) pour info quand je copie le code scène activation dans la version GEA 4.11 toute fonction très bien.
971jmd Posté(e) le 13 décembre 2014 Signaler Posté(e) le 13 décembre 2014 Mon code fonctionne bien, mais j'aurai souhaité utiliser ma dernière variable "20" pour bloquer la détection. ---------------------- CH AMELIA ET SALLE DE BAIN -------------------- local pause = {"Function", function() fibaro:sleep(3000) end} GEA.add( id["DETECTEUR"], -1, "on", {{"turnOn",id["chamelia"]}, pause, {"turnOn",id["sbamaelia"]}, {"Time", "17:00", "06:00"}}) -------- Eteindre les lampes selon les 4 variables Temps -------------- local lampetimer1 = GEA.add( true , 5*60, "5mm", {{"turnOff", id["chamelia"]}, {"turnOff",id["sbamaelia"]}, {"If",{{"Global", "temps", "5"}}}}) local lampetimer2 = GEA.add( true , 10*60, "10mm", {{"turnOff", id["chamelia"]}, {"turnOff",id["sbamaelia"]}, {"If",{{"Global", "temps", "10"}}}}) local lampetimer3 = GEA.add( true , 15*60, "15mm", {{"turnOff", id["chamelia"]}, {"turnOff",id["sbamaelia"]}, {"If",{{"Global", "temps", "15"}}}}) local lampetimer4 = GEA.add( true , -1, "manu", {{"turnOff", id["chamelia"]}, {"turnOff",id["sbamaelia"]}, {"If",{{"Global", "temps", "20"}}}}) GEA.add( id["DETECTEUR"], -1, "restart pour 1mm", {{"RestartTask", lampetimer1}, {"If",{{"Global", "temps", "5"}}}}) GEA.add( id["DETECTEUR"], -1, "restart pour 3mm", {{"RestartTask", lampetimer2}, {"If",{{"Global", "temps", "10"}}}}) GEA.add( id["DETECTEUR"], -1, "restart pour 5mm", {{"RestartTask", lampetimer3}, {"If",{{"Global", "temps", "15"}}}}) GEA.add( id["DETECTEUR"], -1, "Manuel", {{"RestartTask", lampetimer4}, {"If",{{"Global", "temps", "20"}}}})
Sebbrunie1 Posté(e) le 13 décembre 2014 Signaler Posté(e) le 13 décembre 2014 @ 971jmd même message d'erreur avec dec- Snifff
971jmd Posté(e) le 13 décembre 2014 Signaler Posté(e) le 13 décembre 2014 @ SEBBRUNIE1 quelle version GEA et HC2 utilises-tu ? tu as bien créé ta variable "Pluie" dans le tableau variable du hc2 ? fais attention aux majuscules et minuscule
Sebbrunie1 Posté(e) le 13 décembre 2014 Signaler Posté(e) le 13 décembre 2014 HC2: 4.018 et GEA 5.0 Avec dec-, ma variable se met bien à jour.... malgré le message d'erreur...
sebcbien Posté(e) le 13 décembre 2014 Signaler Posté(e) le 13 décembre 2014 Bon, j'abandonne... comment est-ce possible que la ligne GEA "Demande de fermeture inutile" puisse s'executer alors que la commande gea était vraie... Si je demande une fermeture, et que la variable globale Porte_Garage est à Not_Closed, la porte se ferme, mais la ligne suivante qui elle a la condition Porte_Garage = Closed s'execue aussi !!! local estClosed = {"Global", "Porte_Garage", "Closed"} local estNot_Closed = {"Global", "Porte_Garage", "Not_Closed"} -- Si demande d'ouverture et porte fermée, then push, ouvre porte et reset global à en_attente GEA.add({{"Global", "Porte_Gar_Action", "Demande_Ouverture"}, estClosed}, -1, "Demande Ouverture Porte Garage GEA à #time#", {{"turnOn",id["REMOTE_GARAGE"]}}) -- Si demande de fermeture et porte non fermée (position inconnue), then push, ferme porte GEA.add({{"Global", "Porte_Gar_Action", "Demande_Fermeture"}, estNot_Closed}, -1, "Demande Fermeture Porte Garage GEA à #time#", {{"turnOn",id["REMOTE_GARAGE"]}}) -- Si demande de fermeture et porte fermée, then reset global à en_attente GEA.add({{"Global", "Porte_Gar_Action", "Demande_Fermeture"}, estClosed}, -1, "Demande Fermeture Inutile", {{"Global", "Porte_Gar_Action", "En_Attente"}})
sebcbien Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 en fait ceci GEA.add({{"Global", "Porte_Gar_Action", "Demande_Fermeture"}, estNot_Closed}, -1, "Demande Fermeture Porte Garage GEA à #time#", {{"turnOn",id["REMOTE_GARAGE"]}}) ou ceci, pour GEA c'est la même chose, il execute... GEA.add({{"Global", "Porte_Gar_Action", "Demande_Fermeture"}, estClosed}, -1, "Demande Fermeture Porte Garage GEA à #time#", {{"turnOn",id["REMOTE_GARAGE"]}})
sebcbien Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 et dans le debug, il execute les tâches alors que l'une devrait forcément exclure l'autre. est-ce possible que les IF (même comportement avec des IF, j'ai essayé) et conditions soient cassés en V5 ?? je suis en 3.591 HEEEEEEEEELLLLPP ;-) [DEBUG] 02:28:09: GEA Version 5.00 : en exécution... [DEBUG] 02:28:19: [ Porte_Gar_Action=Demande_Ouverture ] Add Global : ajout de la tache pour lancement instantané (ID:8) [turnOn,69] [If..] [DEBUG] 02:28:19: [ Porte_Gar_Action=Demande_Fermeture ] Add Global : ajout de la tache pour lancement instantané (ID:9) [turnOn,69] [If..] [DEBUG] 02:28:19: [ Porte_Gar_Action=Demande_Fermeture ] Add Global : ajout de la tache pour lancement instantané (ID:10) [Global,Porte_Gar_Action,En_Attente] [If..] [DEBUG] 02:28:19: GEA Version 5.00 : en exécution... [DEBUG] 02:28:19: [ Porte_Gar_Action=Demande_Fermeture ] sendActions : traitement des actions (ID:9) [turnOn,69] [If..] [DEBUG] 02:28:19: [ Porte_Gar_Action=Demande_Fermeture ] sendActions : !ACTION! : turnOn (ID:9) [turnOn,69] [If..] [DEBUG] 02:28:19: [ Porte_Gar_Action=Demande_Fermeture ] sendActions : !ACTION! : sendPush Demande Fermeture Porte Garage GEA à 02:28:19 (ID:9) [turnOn,69] [If..] [DEBUG] 02:28:19: [ Porte_Gar_Action=Demande_Fermeture ] sendActions : traitement des actions (ID:10) [Global,Porte_Gar_Action,En_Attente] [If..] [DEBUG] 02:28:20: [ Porte_Gar_Action=Demande_Fermeture ] sendActions : !ACTION! : setGlobal Porte_Gar_Action,En_Attente (ID:10) [Global,Porte_Gar_Action,En_Attente] [If..] [DEBUG] 02:28:20: [ Porte_Gar_Action=Demande_Ouverture ] Add Global : ajout de la tache pour lancement instantané (ID:8) [turnOn,69] [If..] [DEBUG] 02:28:20: [ Porte_Gar_Action=Demande_Fermeture ] Add Global : ajout de la tache pour lancement instantané (ID:9) [turnOn,69] [If..] [DEBUG] 02:28:20: [ Porte_Gar_Action=Demande_Fermeture ] sendActions : !ACTION! : sendPush Demande Fermeture Inutile (ID:10) [Global,Porte_Gar_Action,En_Attente] [If..] [DEBUG] 02:28:20: [ Porte_Gar_Action=Demande_Fermeture ] Add Global : ajout de la tache pour lancement instantané (ID:10) [Global,Porte_Gar_Action,En_Attente] [If..]
zozotte Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 Hello, Est ce que tu peux essayer d'abord sans les variables pour voir si c'est lié à ca ou pas ? je vois pas spécialement d'erreur et chez moi les conditions on a l'air de fonctionner ok GEA.add({{"Global", "Porte_Gar_Action", "Demande_Fermeture"}, {"Global", "Porte_Garage", "Closed"}}, -1, "Demande Fermeture Porte Garage GEA à #time#", {{"turnOn",id["REMOTE_GARAGE"]}}) GEA.add({{"Global", "Porte_Gar_Action", "Demande_Fermeture"}, {"Global", "Porte_Garage", "Not_Closed"}}, -1, "Demande Fermeture Porte Garage GEA à #time#", {{"turnOn",id["REMOTE_GARAGE"]}})
sebcbien Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 J'avais d'abord essayé sans, comme ça ne marchait pas j'ai mis les variables mais même comportement... Je viens de réessayer, idem :-/ Je suis en 3.591 et gea 5 et toi ? Sent From my Vic20
971jmd Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 @ SEBBRUNIE1 je confirme sa fonction nikel inc+ et dec- sous GEA V 4.11
sebcbien Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 Tu pourrais l'uploader stp ? Sent From my Vic20
zozotte Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 HC2 3.59 et GEA 5.0 hmm et si tu met en 2e condition une autre variable ? (juste pour voir )
sebcbien Posté(e) le 14 décembre 2014 Signaler Posté(e) le 14 décembre 2014 Ah ça j'ai pas encore essayé ! Je fait ça demain. Sent From my Vic20
Steven Posté(e) le 15 décembre 2014 Auteur Signaler Posté(e) le 15 décembre 2014 Content d'avoir quitté le bateau car c'est vraiment du grand n'importe quoi. Si cela ne fonctionne pas, n'utiliser pas GEA c'est plus simple ainsi. 1
pepite Posté(e) le 15 décembre 2014 Signaler Posté(e) le 15 décembre 2014 ah non GEA c'est le TOP pour moi, surtout ne pas l'abandonner..pour un noob comme moi c'est le PIED !! Encore MERCI
sebcbien Posté(e) le 15 décembre 2014 Signaler Posté(e) le 15 décembre 2014 HoulàSteven, un coup de blues ?
Shyrka973 Posté(e) le 15 décembre 2014 Signaler Posté(e) le 15 décembre 2014 @Steven Salut, J'ai trouvé deux bugs dans le code de la V5 concernant "Global". if (type(entry[GEA.keys["PARAMS"]][i]) == "table" and string.lower(entry[GEA.keys["PARAMS"]][i][1]) == "global" and #entry[GEA.keys["PARAMS"]][i] > 2) thenlocal value = string.match(entry[GEA.keys["PARAMS"]][i][3], "(%d+)") 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])) fibaro:setGlobal(entry[GEA.keys["PARAMS"]][i][2], number - 1) 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.log("sendActions", entry, "!ACTION! : setGlobal " .. entry[GEA.keys["PARAMS"]][i][2] ..",".. GEA.getMessage(entry, entry[GEA.keys["PARAMS"]][i][3]) , true) 1- La ligne 8 est en trop. 2- la fonction "type" retourne une chaine donc type(value) ~= nil devrait être type(value) ~= "nil".
Sebbrunie1 Posté(e) le 15 décembre 2014 Signaler Posté(e) le 15 décembre 2014 Ca fonctionne super bien.... Merci pour tout ca.... Qu'est ce qu'on deviendrait sans toi
sebcbien Posté(e) le 15 décembre 2014 Signaler Posté(e) le 15 décembre 2014 Je ne peut pas tester ça avant jeudi soir, mais j'espère que ça résoudra mon problème.Merci :-)P.s. est-ce que vous pensez que faire tourner 3 gea différents, avec deux versions différentes (3.82 et 5.0) peut causer le genre de problème que je rencontre ? Je pense plus précisément àla variable globale utilisée par gea: GEA_Tasks. Une interférence est peut-être possible entre deux instances GEA ?!Sent From my Vic20
Steven Posté(e) le 15 décembre 2014 Auteur Signaler Posté(e) le 15 décembre 2014 Je te confirme qu'il va y avoir des interférence, tu devrais utiliser une variable par instance de GEA. Pour spécifier une autre variable, il te suffit de rajouter dans ton code : GEA.globalTasks = "GEA_Tasks_V5" ou GEA.globalTasks = "GEA_Tasks_V3_82" Cela aura pour effet d'utiliser la variable GEA_Tasks_V5 au lieu de la standard et ce uniquement pour cette instance. 1
Steven Posté(e) le 15 décembre 2014 Auteur Signaler Posté(e) le 15 décembre 2014 @Shyrka Voici la version 5.01 qui regroupe tes modifications ainsi que celles de Hansolo, je te laisse vérifier et publier si c'est bon Modifications : - RGB détection du on ou off sur une version 3.590 - Global inc+ et dec- GEA._5_01.lua
Messages recommandés