Steven Posté(e) le 17 mars 2015 Auteur Signaler Posté(e) le 17 mars 2015 Rien à voir avec les regex dans ce cas, le message contenant le + est envoyé (je suppose) dans une requête HTTP du style : http://......./text=+30 arrossage samedi Or le + en HTTP signifie un espace. Le + ne sera donc jamais transmis. Cela n'a rien à voir avec GEA. Pour le inc+, c'est une autre histoire qui, elle, est bien liée au regex et est un bug dans GEA.
Steven Posté(e) le 17 mars 2015 Auteur Signaler Posté(e) le 17 mars 2015 Pour corrigé le inc+ et le dec-, il suffit de chercher la ligne suivante : if (GEA.match(entry[GEA.keys["PARAMS"]][i][3], "inc+")) then et de remplacer le mot GEA.match par string.match idem pour cette ligne elseif (GEA.match(entry[GEA.keys["PARAMS"]][i][3], "dec-")) then
Sebbrunie1 Posté(e) le 17 mars 2015 Signaler Posté(e) le 17 mars 2015 Super, merci... Je le fais ce soir.... Trop cool ce forum
Fredric Posté(e) le 17 mars 2015 Signaler Posté(e) le 17 mars 2015 @fredric dans les deux cas tu lance une scène. Avec gea on ne peut pas activer/désactiver une scène. tu devrais expliquer ton besoin global (que cherche tu à¡ faire) pour le moment, c'est une scène qui ferme les volets roulant, cela semble tous bête, mais il y à beaucoup de conditions et je n'ai pas envie de la refaire, surtout qu'elle tourne super bien maintenant, après de multiple test de longue alêne. donc, je la faisais activer par le Scheduler 30 minute avant le couché du soleil et se désactiver 50 minute après le couché du soleil. selon les circonstances, (température, luminosité, lumière allumé ou éteinte, ouvrant etc...) la scène s’exécute. merci quand même, je vais voir, la mettre en autonome surement...
PITP2 Posté(e) le 17 mars 2015 Signaler Posté(e) le 17 mars 2015 @steven j'ai un problème depuis ce matin avec ma nouvelle box et la scène GEA. Elle disparaît après l'avoir enregistrée ... et ne fonctionne plus. Seul moyen de la retrouver c'est de rebooter la box. Fibaro a pris la main sur la box et après 1 heure de tests et bien ils ont pompé le code et l'ont fait tourné chez eux et ont eu le même problème :-) Réponse du support nous allons étudier le code de plus près et revenir vers vous dans l'après midi :-) Il vont en apprendre des choses :-) j'espère qu'ils vont nous sortir une V5 avec GEA inside ;-) je te tiens au jus de ce qu'ils diront sur ton merveilleux travail.
Fredric Posté(e) le 17 mars 2015 Signaler Posté(e) le 17 mars 2015 je cherche le vd de Steven pour activer ou désactiver l'Alarme, je ne trouve pas, une âme charitable peux me donner le lien, ou carrément le créateur si il passe dans le coin
pepite Posté(e) le 17 mars 2015 Signaler Posté(e) le 17 mars 2015 Yes, merci Steven, le top :-) Bon je vais aussi modifier ce soir les lignes inc+ ;-) et dec-
Steven Posté(e) le 17 mars 2015 Auteur Signaler Posté(e) le 17 mars 2015 @Fredric Ce n'est pas un VD pour activer/désactiver l'alarme, mais un VD style réveil. http://www.domotique-fibaro.fr/index.php/topic/1211-support-gea/?p=53670 @PITP2 Tu aurais pu en profiter pour leur dire qu'on a des perf de m... depuis la 4.x C'est clair que si tu y greffes une interface style le mode bloc ... cela devient du luxe mais faut pas rêver.
PITP2 Posté(e) le 17 mars 2015 Signaler Posté(e) le 17 mars 2015 Ce sera pour la deuxième couche les problèmes de perf , la première n'était pas encore sèche Pendant qu'ils bossaient de leur côté et que la prise en main était encore active, j'ai consulté le site web de Lifedomus juste pour leur mettre un peu la pression je sais ce n'est pas bien 1
Steven Posté(e) le 17 mars 2015 Auteur Signaler Posté(e) le 17 mars 2015 @Fredric -- 30 mn avant le couché du soleil on active la scène ... GEA.add(true, 30, "", {{"Time", "Sunset-31", "Sunset-30"}, {"Function", function() fibaro:setSceneEnabled(<IDSCENE>, true) end}}) -- 50 mn après le couché du soleil on DESactive la scène ... GEA.add(true, 30, "", {{"Time", "Sunset+50", "Sunset+51"}, {"Function", function() fibaro:setSceneEnabled(<IDSCENE>, false) end}}) Attention : Non testé. 1
pepite Posté(e) le 17 mars 2015 Signaler Posté(e) le 17 mars 2015 @steven : merciiii,je pense jamais à"function", et hop encore un truc d'appris ;-)
Steven Posté(e) le 17 mars 2015 Auteur Signaler Posté(e) le 17 mars 2015 Disons que c'est a utiliser avec parcimonie car on peut facilement planté tout GEA Mais lorsque cela n'est pas possible nativement avec GEA on peut, grâce à cela, éviter de faire un script trop compliquer et juste greffer une ou deux fonctions directement dans son code GEA.
Fredric Posté(e) le 17 mars 2015 Signaler Posté(e) le 17 mars 2015 Merci @Steven, j'ai mis les lignes en place, j'attends ~18h43, 30 min avant le couché du soleil, je reviens confirmer si cela fonctionne, même si j'ai pas trop de doute le vd réveil va me servir à activer un vd "alarme nuit" , merci pour le partage
Fredric Posté(e) le 17 mars 2015 Signaler Posté(e) le 17 mars 2015 lol ! la scène c'est correctement activée, 22 min plus tard, les volets ce sont fermés, maintenant, j'attends 19h57 environ, que la scène ce déactive Parfait, cela fonctionne , merci @Steven et merci à tous
Shyrka973 Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 @Steven Salut, En remplaçant "GEA.match" par "string.match", mes règles avec les variables globales se sont mises à fonctionner bizarrement. Je pense que remplacer "GEA.match" par "string.match" n'est pas la bonne correction pour ce bug. En effet, le "+" est un caractère modificateur dans la chaine recherchée: en cherchant "inc+", on recherche en réalité "inc" ou "incc" ou "inccc" ... Il faut utiliser le caractère d'échappement "%" comme ceci: string.match("ma chaine", "inc%+") Le code suivant retournera "trouvé": if string.match("inc", "inc+") then fibaro:debug("trouvé") else fibaro:debug("pas trouvé") end Tandis que celui-ci retournera "pas trouvé": if string.match("inc", "inc%+") then fibaro:debug("trouvé") else fibaro:debug("pas trouvé") end Il faut, je pense remplacer GEA.match par string.match mais aussi "inc+" par "inc%+" et "dec+" par "dec%+". En faisant ces modifications dans le code GEA, je n'est plus de dysfonctionnement. Qu'en penses tu ?
Shyrka973 Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 La fonction "GEA.match" utilise "string.match" et que donc le code suivant retournera "trouvé": if string.match("com.fibaro.FGMS001", "com.fibaro.FGMS001") then fibaro:debug("trouvé") else fibaro:debug("pas trouvé") end mais aussi que le code suivant retournera "trouvé": if string.match("comXfibaroXFGMS001", "com.fibaro.FGMS001") then fibaro:debug("trouvé") else fibaro:debug("pas trouvé") end Car le pattern "." est remplacé par n'importe quel caractère.
sebcbien Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 Quand tu sera sûr que tout va bien, communique ton code et je le mettrais sur gitgub
jorderic Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 Hello à tous, Je m'attaque doucement à l'intégration de GEA. J'ai réussi à faire quelques lignes simples (merci @Steven et à tous pour vos différentes contributions!!!) mais la je pèche. Je souhaite faire parler mon lapin pour m'indiquer des valeurs du plugin NETATMO. Voici une ligne que j'ai testée pour m'avertir si le taux de CO2 est supérieur à 1000, vérifier toutes les 30 min: GEA.add({"Value+", id["CO2_SALON"], 1000}, 30*60, "", {{"Global", "Karotz", "Le taux de CO2 est trop élevé il faut aérer"}, {"VirtualDevice", id["VD_KAROTZ"],"1"}}) Mais cela ne fonctionne pas. Quelqu'un pourrait-il m'aider? merci d'avance
sebcbien Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 Peux-tu poster id co2 salon ? Peut être qu'il n'y a pas assez de temps entre l'écriture du message dans la VG et le push button sur le VD
jorderic Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 @sebcbien merci pour ta prompte réponse! CO2_SALON= 269
pepite Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 @steven : ok donc c'est vraiment à utiliser au cas par cas le function @jorderic : justement, comme le dit sebbien, mets un sleep dans ta ligne GEA pour tester ;-) et peux tu mettre ton code avec les balises stp, plus simple à la lecture. GEA.add({"Value+", id["CO2_SALON"], 1000}, 30*60, "", {{"Global", "Karotz", "Le taux de CO2 est trop élevé il faut aérer"}, {"Function", function() fibaro:sleep(300) end}, {"VirtualDevice", id["VD_KAROTZ"],"1"}})
jorderic Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 @pepite j'ai essayé ta ligne de code en changeant la valeur CO à400 et le délai à1*60 pour faire des essais mais j'ai cela en erreur d'execution: [DEBUG] 14:05:42: [ 338 | Congélateur ] Add Autostart : ajout de la tache pour 120 secondes (ID:2) [Repeat] [DEBUG] 14:05:42: [ 291 | Portail ] Add Autostart : ajout de la tache pour 120 secondes (ID:3) [Repeat] [DEBUG] 14:05:42: [ 68 | Lum Bar ] Add Autostart : ajout de la tache pour 120 secondes (ID:4) [turnOff] [if..] [DEBUG] 14:05:42: [ Value [269|CO2 Salon] > 400 ] Add Autostart : ajout de la tache pour 60 secondes (ID:9) [Global,Karotz,Le taux de CO2 est trop élevé il faut aérer] [Function..] [VirtualDevice,341,1] [DEBUG] 14:05:42: GEA Version 5.00 : en exÈcution... [DEBUG] 14:06:40: GEA Version 5.00 : en exÈcution... [DEBUG] 14:06:40: En cours : aucun traitement a effectuer [DEBUG] 14:06:43: [ Value [269|CO2 Salon] > 400 ] sendActions : traitement des actions (ID:9) [Global,Karotz,Le taux de CO2 est trop élevé il faut aérer] [Function..] [VirtualDevice,341,1] [DEBUG] 14:06:43: [ Value [269|CO2 Salon] > 400 ] !!! ERREUR !!! : vÈrification (ID:9) [Global,Karotz,Le taux de CO2 est trop élevé il faut aérer] [Function..] [VirtualDevice,341,1] (comment les codes avec les balises?)
HANSOLO Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 Ou alors: une ligne pour changer le contenu de la variable si le CO2>XXXX Une ligne pour envoyer le contenu de la variable au Karotz si la variable a changé en instantané (-1) comme condition Pas de sleep à ajouter Ainsi si d'autre condition nécessite de faire parler le Karotz, il suffit de rajouter une ligne pour modifier le contenu la variable
pepite Posté(e) le 18 mars 2015 Signaler Posté(e) le 18 mars 2015 @jorderic, les balises code sont <> tu selectionnes ton code et tu cliques sur l'image "<>" ta version de GEA est en 5.00, la derniere est 5.32, mets la à jour pour éviter tout bug supplementaire. tente l'idée d'hansolo, c'est pas bete et ca évite le function qui est à utiliser vraiment avec parcimonie, pas vraiment fait pour GEA (je ne fais que citer steven ;-))
Messages recommandés