Aller au contenu

Messages recommandés

Posté(e)

je viens de tester ceci, mais toujours rien ... je ne peux pas croire qu'il s'agisse d'un bug, je dois mal l'utiliser (ce n'est pas ton style de proposer un truc qui ne fonctionne pas).

 

J'ai donc réimporté le QA alarme et en ai modifié l'heure "comme il faut(drait)"

 

Voici les 2 instructions GEA que j'ai essayées :

GEA.add ({"Alarm", id["GEA_ALARME_D_PISCINE"], 1}, 0, 
         "Démarrage pompe piscine", {"TurnOn", id["PISCINE_POMPE"]})


et ensuite

GEA.add ({"Alarm", id["GEA_ALARME_D_PISCINE"]}, 0, 
         "Démarrage pompe piscine", {"TurnOn", id["PISCINE_POMPE"]})

et toujours le même log :


[05.07.2022] [19:22:29] [DEBUG] [QA_GEA_167]: @1470s [Validation] #5 : ["Alarm",[255]] => ["TurnOn",[233]] *repeat*

 

 

 

Posté(e)

C'est quand même étrange, j'ai 2 GEA Alarm en prod qui fonctionnent chez moi.

Mais 2 QuickApps différents avec 1 seule alarme chacun, pas 2 alarmes dans le même QuickApp.

C'est pour ça que je te demandais de tester avec juste 1 seule alarme.

Sinon l'alarme tu l'as configuré avec les boutons du QA, ou bien programmatiquement via la fonction setTime() ?

Quand on a un bug suspecté, on reprend les choses à la base, isoler le bug, donc choix de l'heure via les boutons.

Posté(e)

en effet , il faut alors faire au plus simple .

c'est pour ça que j'y croyais vraiment à 2 fois 1 alarme . quelle instruction utilises tu dans GEA ? la première ou la seconde ?

Posté(e)

Exemple le plus simple du monde :

GEA.add({"Alarm", id["GEA_ALARM_OPENEVSE"]}, 0, "", {"TurnOn", id["CHARGEUR_OPENEVSE"]}, "Charge voiture OpenEVSE programmé")

J'en ai un autre avec des conditions supplémentaires, et ça marche aussi bien (depuis des années même, puisque c'est pour programmer le chauffage le matin quand je me lève plus tôt que l'heure normale, par exemple vers 05:50....)

Posté(e)

Salut les amis encore moi.

J'ai un intercom FIBARO qui, lorsque l'on fait le PIN sur l'anneau, active le relai 1 qui déclenche l'ouverture de la porte qui est branchée sur un relai FGS221

j'ai regardé les conditions de ma scène que j'ai mise en oeuvre pour déclencher tout ça et j'ai ça.

{
  conditions = { {
      id = 726,
      isTrigger = true,
      operator = "==",
      property = "firstRelayIsOpen",
      type = "device",
      value = true
    } },

j'ai donc tenté (puisque je ne trouve rien dans la doc sur cette condition) cette syntaxe.

GEA.add({"firstRelayIsOpen", 726, "true"}, -1, "Ouverture Porte d'Entrée", {"turnOn", id["Porte"]})

mais ça marche pas. et le DEBUG me renvoie ça

Citation
Citation


[06.07.2022] [17:26:14] [TRACE] [QA_GEA_728]: ----------------------------------------------------------------------------------------------------
[06.07.2022] [17:26:14] [TRACE] [QA_GEA_728]: Démarrage par événement de GEA 7.37 : mode device #748 Porte d'Entrée (Couloir) value
[06.07.2022] [17:26:14] [TRACE] [QA_GEA_728]: ----------------------------------------------------------------------------------------------------
[06.07.2022] [17:26:14] [DEBUG] [QA_GEA_728]: Ajout immédiat #13 : [748] => 
[06.07.2022] [17:26:14] [ERROR] [QA_GEA_728]: Ajout immédiat #14 : Règle exclue : Option "firstRelayIsOpen" n'existe pas
[06.07.2022] [17:26:14] [ERROR] [QA_GEA_728]: Ajout immédiat #17 : Règle exclue : Option "firstRelayIsOpen" n'existe pas
[06.07.2022] [17:26:14] [DEBUG] [QA_GEA_728]: @0s [Validation*] #13 : [748] => 
[06.07.2022] [17:26:14] [DEBUG] [QA_GEA_728]: [Démarrage] #13 : [748] => 
[06.07.2022] [17:26:16] [TRACE] [QA_GEA_728]: ----------------------------------------------------------------------------------------------------
[06.07.2022] [17:26:16] [TRACE] [QA_GEA_728]: Démarrage par événement de GEA 7.37 : mode device #748 Porte d'Entrée (Couloir) value
[06.07.2022] [17:26:16] [TRACE] [QA_GEA_728]: ----------------------------------------------------------------------------------------------------
[06.07.2022] [17:26:16] [DEBUG] [QA_GEA_728]: Ajout immédiat #13 : [748] => 
[06.07.2022] [17:26:16] [ERROR] [QA_GEA_728]: Ajout immédiat #14 : Règle exclue : Option "firstRelayIsOpen" n'existe pas
[06.07.2022] [17:26:16] [ERROR] [QA_GEA_728]: Ajout immédiat #17 : Règle exclue : Option "firstRelayIsOpen" n'existe pas

 

 

Une Piste ?

Posté(e)

L'option "firstRelayIsOpen" n'existe pas, en effet, là dessus le log de GEA ne se trompe pas.
Tu peux le vérifier dans le doc (tu ne la trouveras pas)

 

Je n'ai pas cet Intercom, mais à la lecture du trigger de ta scène, tu peux déclencher sur la Property firstRelayIsOpen.

Tu trouveras la syntaxe de l'option "Property" dans la doc de syntaxe bien sûr, je pense que ça devrait donner un truc du genre, à tester :

GEA.add({"Property", 726, "firstRelayIsOpen", true}, -1, "Ouverture porte", ACTIONS...}

 

  • Like 1
Posté(e)
Le 06/07/2022 à 09:02, jojo a dit :

Merci, je refais de multiples tests ce pm (serait-ce me come-back de mes chars ?:11:)

J'ai donc testé dans tous les sens, et même fait un reboot (inutile évidemment) de mon HC3.

 et toujours rien

[07.07.2022] [17:31:27] [TRACE] [QA_GEA_ALARM_255]: Alarme 1 Heure : 16:32
[07.07.2022] [17:31:28] [TRACE] [QA_GEA_ALARM_255]: UIEvent: {"eventType":"onReleased","values":[],"elementName":"button_Minute_Plus","deviceId":255}
[07.07.2022] [17:31:28] [TRACE] [QA_GEA_ALARM_255]: Alarme 1 Heure : 16:33
[07.07.2022] [17:31:33] [TRACE] [QA_GEA_ALARM_255]: UIEvent: {"eventType":"onReleased","values":[],"elementName":"button_Alarme","deviceId":255}
[07.07.2022] [17:31:33] [DEBUG] [QA_GEA_ALARM_255]: Alarme 0

[07.07.2022] [17:31:55] [DEBUG] [QA_GEA_167]: ... check running #15 @450s...
[07.07.2022] [17:31:55] [DEBUG] [QA_GEA_167]: @450s [Validation] #2 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*
[07.07.2022] [17:32:25] [DEBUG] [QA_GEA_167]: ... check running #16 @480s...
[07.07.2022] [17:32:26] [DEBUG] [QA_GEA_167]: @480s [Validation] #2 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*
[07.07.2022] [17:32:55] [DEBUG] [QA_GEA_167]: ... check running #17 @510s...
[07.07.2022] [17:32:55] [DEBUG] [QA_GEA_167]: @510s [Validation] #2 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*
[07.07.2022] [17:33:25] [DEBUG] [QA_GEA_167]: ... check running #18 @540s...
[07.07.2022] [17:33:25] [DEBUG] [QA_GEA_167]: @540s [Validation] #2 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*
[07.07.2022] [17:33:55] [DEBUG] [QA_GEA_167]: ... check running #19 @570s...
[07.07.2022] [17:33:55] [DEBUG] [QA_GEA_167]: @570s [Validation] #2 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*
[07.07.2022] [17:34:25] [DEBUG] [QA_GEA_167]: GEA run since 10m - Memory used: 9462.69 KB - CPU consumed: 250.97 ms ( 0.021 % )

c'est sûr que ça devrait fonctionner. J'ai donc du louper qqch :

 

Voici ce que j'ai fait :

  1. créé le QA "GEA Alarme_D_Piscine" (id = 255)
  2. modifier mon GEA existant en y ajoutant cette ligne
    GEA.add ({"Alarm", id["GEA_ALARME_D_PISCINE"]}, 0, 
             "Démarrage pompe piscine", {{"OnOff", id["BUREAU_PRISE"]}, {"TurnOn", id["PISCINE_POMPE"]}})
  3. Configurer l'heure avec le Web Gui
  4. attendre et espérer.

Il y a donc ûrement un truc évident que je n'ai pas fait ...

 

(Comme c'est un MUST HAVE la gestion de la pompe de ma piscine (et pas un NICE to have, comme contrôle que toutes les portes sont bien fermées quand je pars, ou notif quand le facteur est passé, ...), ça DOIT fonctionner, ou alors je crée une scène LUA avec déclenchement horaire, mais comment ? en attendant que j'arrive à le faire fonctionner via GEA)

Posté(e)

vous conaissez mon obstination.

Alors j'ai mis une alarme à 18:55 et voici le résultat du lldebug :

[07.07.2022] [18:54:22] [DEBUG] [QA_GEA_167]: ... check running #7 @210s...
[07.07.2022] [18:54:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() copy.name="Alarm" id=255 property=255 value=255 value2=255 value3=255 value4=255
[07.07.2022] [18:54:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.getValue() 2 return copy.lastvalue, copy.lastDisplayValue : false, false
[07.07.2022] [18:54:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() result = false
[07.07.2022] [18:54:22] [DEBUG] [QA_GEA_167]: GEA:check() result = false, false
[07.07.2022] [18:54:22] [DEBUG] [QA_GEA_167]: GEA:check() ready = false
[07.07.2022] [18:54:22] [DEBUG] [QA_GEA_167]: @210s [Validation] #1 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*
[07.07.2022] [18:54:52] [DEBUG] [QA_GEA_167]: ... check running #8 @240s...
[07.07.2022] [18:54:52] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() copy.name="Alarm" id=255 property=255 value=255 value2=255 value3=255 value4=255
[07.07.2022] [18:54:52] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.getValue() 2 return copy.lastvalue, copy.lastDisplayValue : false, false
[07.07.2022] [18:54:52] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() result = false
[07.07.2022] [18:54:52] [DEBUG] [QA_GEA_167]: GEA:check() result = false, false
[07.07.2022] [18:54:52] [DEBUG] [QA_GEA_167]: GEA:check() ready = false
[07.07.2022] [18:54:52] [DEBUG] [QA_GEA_167]: @240s [Validation] #1 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*
[07.07.2022] [18:55:22] [DEBUG] [QA_GEA_167]: ... check running #9 @270s...
[07.07.2022] [18:55:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() copy.name="Alarm" id=255 property=255 value=255 value2=255 value3=255 value4=255
[07.07.2022] [18:55:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.getValue() 2 return copy.lastvalue, copy.lastDisplayValue : false, false
[07.07.2022] [18:55:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() result = false
[07.07.2022] [18:55:22] [DEBUG] [QA_GEA_167]: GEA:check() result = false, false
[07.07.2022] [18:55:22] [DEBUG] [QA_GEA_167]: GEA:check() ready = false
[07.07.2022] [18:55:22] [DEBUG] [QA_GEA_167]: @270s [Validation] #1 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*
[07.07.2022] [18:55:52] [DEBUG] [QA_GEA_167]: GEA run since 5m - Memory used: 8077.52 KB - CPU consumed: 1370.82 ms ( 0.114 % )
[07.07.2022] [18:55:52] [DEBUG] [QA_GEA_167]: ... check running #10 @300s...
[07.07.2022] [18:55:52] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() copy.name="Alarm" id=255 property=255 value=255 value2=255 value3=255 value4=255
[07.07.2022] [18:55:52] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.getValue() 2 return copy.lastvalue, copy.lastDisplayValue : false, false
[07.07.2022] [18:55:52] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() result = false
[07.07.2022] [18:55:52] [DEBUG] [QA_GEA_167]: GEA:check() result = false, false
[07.07.2022] [18:55:52] [DEBUG] [QA_GEA_167]: GEA:check() ready = false
[07.07.2022] [18:55:52] [DEBUG] [QA_GEA_167]: @300s [Validation] #1 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*

J'y pense, car comme quand on debuge il faut tout envisager, et surtout les idées les plus saugrenues :

La langue de mon HC3 qui est en uk ne pourrait-elle pas être la cause ?

Posté(e)

Merci pour le log détaillé @jojo j'ai pas eu le temps de demander :D
 

Malheureusement ça ne nous apprend rien de pertinent, on voit juste que la fonction revoie la valeur false, comme si l'heure du réveil n'était toujours pas atteinte.

Bien pensé pour l'heure anglais/français, dommage que ça ne soit pas ça.

Mais ça me fait penser à autre chose, mes 2 alarmes ont lieu le matin (heure AM en anglais...), est-ce que tu pourrais faire un essai avec une heure demain matin ? Idéalement avant 10h, on sait jamais dès fois que le bug concerne le 2nd digit.

 

Sinon je vais te préparer un code incluant des debugs supplémentaires au niveau de la fonction Alarm, mais je n'ai pas le temps tout de suite...

  • Thanks 1
Posté(e)

ok, je vais essayé un test avant 10h.

Sauf que le test que j'ai fait est au niveau de la langue, pas du fuseau horaire ...

Voici ma config. Est-ce la même que la tienne ?

image.png.a0deba8301038f632d2d7558fbf0ded5.png

Posté(e) (modifié)

avant 10:00, ce n'est pas ça ...

[08.07.2022] [09:38:58] [TRACE] [QA_GEA_ALARM_255]: UIEvent: {"eventType":"onReleased","values":[],"elementName":"button_Alarme","deviceId":255}
[08.07.2022] [09:38:58] [DEBUG] [QA_GEA_ALARM_255]: Alarme 1
[08.07.2022] [09:39:03] [TRACE] [QA_GEA_ALARM_255]: UIEvent: {"eventType":"onReleased","values":[],"elementName":"button_Minute_Plus","deviceId":255}
[08.07.2022] [09:39:03] [TRACE] [QA_GEA_ALARM_255]: Alarme 1 Heure : 09:39
[08.07.2022] [09:39:03] [TRACE] [QA_GEA_ALARM_255]: UIEvent: {"eventType":"onReleased","values":[],"elementName":"button_Minute_Plus","deviceId":255}
[08.07.2022] [09:39:03] [TRACE] [QA_GEA_ALARM_255]: Alarme 1 Heure : 09:40
[08.07.2022] [09:39:12] [TRACE] [QA_GEA_ALARM_255]: UIEvent: {"eventType":"onReleased","values":[],"elementName":"button_Alarme","deviceId":255}
[08.07.2022] [09:39:12] [DEBUG] [QA_GEA_ALARM_255]: Alarme 0

[08.07.2022] [09:40:22] [DEBUG] [QA_GEA_167]: ... check running #1779 @53370s...
[08.07.2022] [09:40:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() copy.name="Alarm" id=255 property=255 value=255 value2=255 value3=255 value4=255
[08.07.2022] [09:40:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.getValue() 2 return copy.lastvalue, copy.lastDisplayValue : false, false
[08.07.2022] [09:40:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() result = false
[08.07.2022] [09:40:22] [DEBUG] [QA_GEA_167]: GEA:check() result = false, false
[08.07.2022] [09:40:22] [DEBUG] [QA_GEA_167]: GEA:check() ready = false
[08.07.2022] [09:40:22] [DEBUG] [QA_GEA_167]: @53370s [Validation] #1 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*
[08.07.2022] [09:40:48] [DEBUG] [QA_GEA_ALARM_255]: Total memory in use by Lua : 1037.09 KB
[08.07.2022] [09:40:52] [DEBUG] [QA_GEA_167]: GEA run since 14h 50m - Memory used: 1264.11 KB - CPU consumed: 361.65 ms ( 0.030 % )
[08.07.2022] [09:40:52] [DEBUG] [QA_GEA_167]: ... check running #1780 @53400s...
[08.07.2022] [09:40:52] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() copy.name="Alarm" id=255 property=255 value=255 value2=255 value3=255 value4=255
[08.07.2022] [09:40:52] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.getValue() 2 return copy.lastvalue, copy.lastDisplayValue : false, false
[08.07.2022] [09:40:52] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() result = false
[08.07.2022] [09:40:52] [DEBUG] [QA_GEA_167]: GEA:check() result = false, false
[08.07.2022] [09:40:52] [DEBUG] [QA_GEA_167]: GEA:check() ready = false
[08.07.2022] [09:40:52] [DEBUG] [QA_GEA_167]: @53400s [Validation] #1 : ["Alarm",[255]] => ["OnOff",[104]] ["TurnOn",[233]] *repeat*

(maintenant, si tu veux encore plus tôt il faudrait demander  à @pepite :))

Modifié par jojo
Posté(e)
Le 06/07/2022 à 18:40, Lazer a dit :

L'option "firstRelayIsOpen" n'existe pas, en effet, là dessus le log de GEA ne se trompe pas.
Tu peux le vérifier dans le doc (tu ne la trouveras pas)

 

Je n'ai pas cet Intercom, mais à la lecture du trigger de ta scène, tu peux déclencher sur la Property firstRelayIsOpen.

Tu trouveras la syntaxe de l'option "Property" dans la doc de syntaxe bien sûr, je pense que ça devrait donner un truc du genre, à tester :


GEA.add({"Property", 726, "firstRelayIsOpen", true}, -1, "Ouverture porte", ACTIONS...}

 

Salut @Lazer juste pour te dire que ça fonctionne parfaitement. Merci pour ton aide !!

 

  • Like 1
Posté(e)

J'ai toujours freiné des 4 fers pour m'y mettre mais je regrette de ne pas l'avoir fait avant... c'est vraiment top et ça évite de surcharger la box de scènes en tout genre...

Quand on a compris le fonctionnement ... et pis si on sait pas les dieux sont là !!!

 

  • Like 1
Posté(e)
il y a 3 minutes, Lazer a dit :

@jojo OK dommage... donc il va falloir que je t'envoie le code modifié... quand je pourrai... j'espère qu'entre temps tu peux faire autrement.

Merci, maintenant je prépare ma migration : la semaine charnière sera celle du 15 août

=> d'ici là, c'est ma LD qui pilote tout, ensuite, si pas de solution pour GEA Alarme, j'aviserai.

Comme je le dis tout le temps à mon chef :

"Tout problème a une solution, et si pas de solution, c'est qu'il n'y a pas de problème ..."

 

en tout cas MERCI pour tout

Posté(e)

J'ai vu sur le forum officiel un gars se plaindre, alors qu'il a 300 scènes sur son HC3..... tu m'étonnes, c'est complètement ingérable 300 scènes.

Alors que ça se gère très bien avec GEA... Il faut juste ne pas avoir peur de la syntaxe en mode texte.

Posté(e)
il y a une heure, jojo a dit :

"Tout problème a une solution, et si pas de solution, c'est qu'il n'y a pas de problème ..."

sur mon heure de table, je viens de penser à une alternative (bcp moins propre et flexible que GEA Alarme), mais je vais la développer et la tester pour être prêt au cas où.

Posté(e)
.07.2022] [14:37:22] [DEBUG] [QA_GEA_167]: ... vérification en cours #19 @570s...
[08.07.2022] [14:37:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() copy.name="Alarm" id=256 property=256 value=256 value2=256 value3=256 value4=256
[08.07.2022] [14:37:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.getValue() 2 return copy.lastvalue, copy.lastDisplayValue : true, true
[08.07.2022] [14:37:22] [DEBUG] [QA_GEA_167]: GEA:encapsule() copy.check() result = true
[08.07.2022] [14:37:22] [DEBUG] [QA_GEA_167]: GEA:check() result = true, true
[08.07.2022] [14:37:22] [DEBUG] [QA_GEA_167]: GEA:check() ready = true
[08.07.2022] [14:37:22] [DEBUG] [QA_GEA_167]: @570s [Validation*] #1 : ["Alarm",[256]] => ["Email",["admin","body","Test GEA Alarme"]] *répété*
[08.07.2022] [14:37:22] [DEBUG] [QA_GEA_167]: GEA:check() difftime(0.0) < 30

:60:

Posté(e)

zut, zut et re-zut !

Quand j'ai changé la zone de temps (de Zurich) à Paris, ça a fonctionné (voir log message précédent).

Je l'ai re-basculée à Zurich, et ... ça fonctionnait toujours ???

Je l'ai mise à Brussels, et ça ne fonctionnait plus.

Je m'ai à nouveau mise sur Paris, et ça ne fonctionne toujours pas (j'aurais espéré que oui ...)

 

Mon analyse est la suivante :

GEA Alarme envoie une heure qui ne correspond pas à celle de GEA.

Comme la fonction "Time" dans GEA fonctionne correctement, je dirais qu'il faudrait chercher au niveau de GEA Alarme ...

Posté(e)

image.png.03b145f7ba11d708e34ced39d685f279.png

Je ne comprends plus rien ... J'ai laissé courir mon GEA Alarme de test (programmée tous les jours à 15:02) pour voir si je recevais l'action à une autre heure ey identifier ici un soucis de fuseau horaire...

Mais là, c'est arrivé exactement à l'heure convenue. Faudrait-il attendre 24h pour que ce soit ok ?

Je continue d'autres tests.

(en attendant mon autre moche solution fonctionne)

×
×
  • Créer...