Aller au contenu
Lazer

Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3

Recommended Posts

Bonjour bonjour,

 

Suis là suis là, je lis tout comme toujours ;-) mais c'est vrai que c'est devenu très orienté HC3 et c'est bien normal..mais comme je n'en ai pas..vous parlez une autre langue pour moi ;-)

 

Je confirme ma proposition @Lazer ;-)

Pour ce qui est du wiki en ligne, c'est sur du matériel qui appartient à @Steven

 

Le 07/12/2020 à 19:52, Dragoniacs a dit :

lorsque GEA détecte que l'osmolateur est coupé alors que la réserve est pleine, il réalise le "turnOn". Et le cycle suivant, cette ligne apparait en "stoppé" dans le debug. Est-ce normal ?

Est-ce quand tu testes avec "0" en durée ?

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Je viens de tester, ça le fait avec la valeur 30.

Envoyé de mon RMX1993 en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

 

J'ai pas résisté et essayé de remettre le GEA sur ma HC3.
J'ai vraiment l'impression de repartir à zéro...

 

Je rencontre un petit problème :

[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]:
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: --------------------------------------------------------------------------------
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Démarrage automatique de GEA 7.03 (mode autostart)
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: --------------------------------------------------------------------------------
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Utilisation de minifiertools v. 3.00
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Vérification automatique toutes les 30 secondes
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Création de la variable globale : GEA_Tasks
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Création de la variable globale : GEA_History
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: --------------------------------------------------------------------------------
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Recherche de plugins, ... : Aucun plugin trouvé
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Chargement du code utilisateur setEvents() ...
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: --------------------------------------------------------------------------------
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Ajout auto : #1 Démarrage GEA
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Ajout auto : #2 Démarrage box
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Ajout auto : #3 Détection nouvelle version
[09.12.2020] [22:43:00] [TRACE] [QA_GEA_453]: Ajout auto : #4 Détection nouvelle version beta
[09.12.2020] [22:43:00] [ERROR] [QUICKAPP453]: QuickApp crashed
[09.12.2020] [22:43:00] [ERROR] [QUICKAPP453]: main.lua:2605: attempt to call a nil value (method 'gsub')

Qui correspond donc à cette fonction dans le main:

	message:gsub("({.-})", function(c)
		if forLog then
			-- ne rien faire
		else
		local d = tools.split(c:gsub("{", ""):gsub("}", ""), ",")
			for i = 1, #d do
				d[i] = tools.trim(d[i])
				if tools.isNumber(d[i]) then d[i] = tonumber(d[i])
				elseif d[i]:lower()=="true" then d[i] = true
				elseif d[i]:lower()=="false" then d[i] = false
				end
			end
			local res, mess = self:getOption(d).getValue()
			if type(mess) == "nil" then mess = "n/a" end
			message = message:gsub(c, tostring(mess))
		end

Une idée du pourquoi du comment ?

 

En vous remerciant

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 31 minutes, pepite a dit :

@Manu31

Quelle est ta ligne #5 ?

Bonjour,

 

Malheureusement je n'ai pas de ligne #5; je suppose que c'est normale puisque le quickapp crash.
Il boucle sur la même séquence toute les minutes :S

Partager ce message


Lien à poster
Partager sur d’autres sites

Tu veux dire que ça crashe juste avec la config par défaut (les 4 règles prédéfinies), sans ajouter aucune règle perso ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

 

@Lazer j'ai supprimer et réinstaller avec la V7.04.
Ca marche nickel ;) va savoir pourquoi 

 

Aller je me lance à refaire tout en GEA ^^

Encore merci à vous

Modifié par Manu31

Partager ce message


Lien à poster
Partager sur d’autres sites

Nouvelle version 7.05 Beta

  • Corrige le non fonctionnement de la condition "Time" (et de plein d'autres conditions.... bug introduit lors des modification apportées à la version 7.04

 

GEA v7.05.lua

 

  • Like 3

Partager ce message


Lien à poster
Partager sur d’autres sites

Attention à cette version 7.05 que je me suis (trop) empressé de partager hier soir, elle corrige bien le "Time" et quelques autres conditions, mais ramène des bugs qui avaient été corrigés lors de la version précédente.

Toujours la même origine, le fait que le JSON des modules à changé entre la HC2 et la HC3 : sur la HC2, les propriétés étaient de type "string", et Steven avait écrit son code en se basant sur cela.

Sur HC3, les différentes propriétés peuvent prendre n'importe quel type (boolean, string, number, table). C'est plus logique, mais ça m'oblige à adapter GEA un peu plus profondément que je ne le pensais.

J'ai déjà réécrit la fonction qui fait la comparaison (copy.check) et quelques bricoles autour, ça a l'air de fonctionner.

En cours de test...

 

J'en profite pour ajouter quelques petits trucs supplémentaires à venir dans la prochaine version (gestion des Thermostats notamment)

  • Like 1
  • Thanks 2

Partager ce message


Lien à poster
Partager sur d’autres sites

Mise à jour majeure de GEA v7.10 :

  • Major bug fixes (ouais, rien que ça :D .... espérons que ça résolve une bonne fois pour toute les problèmes de détections des différentes conditions)
  • Amélioration de la gestion des zones d'alarmes : permet de spécifier plusieurs ID de zones à armer/désarmer dans une seule commande "setArmed" ou "setDisarmed"
  • Ajout des thermostats : "ThermostatMode", "ThermostatFanMode", "CoolingThermostatSetpoint", "HeatingThermostatSetpoint"
  • Ajout des profils : "Profile"
  • Ajout de labels dans le QuickApp :
    • Running
    • Version
    • Intervalle
    • Portables
    • Debug
  • Ajout de boutons dans le QuickApp :
    • ON / OFF => permet de reprendre / suspendre GEA
  • Suppression des Variables Globales (vous pouvez les supprimer manuellement). Les variables sont maintenant stockées dans le QuickApp GEA, ce qui est plus propre, et permet de faire tourner plusieurs instances de GEA simultanément et indépendamment (par exemple une instance de prod, et une autre de test)

 

Remarque : plutôt que d'utiliser des boutons ON et OFF que je n'aime pas du tout, j'aurais pu faire un QuickApp de type Binary Switch, donc directement activable depuis l'interface Web / Mobile.

Mais il est si facile de cliquer par inadvertance sur une icône, que cela aurait risqué de désactiver malencontreusement GEA, qui est un élément critique aux fonctionnement de box box car il gère tous les scénarios.

Donc finalement, utiliser des boutons, peu accessibles par nature, permet de sécuriser le fonctionnement de GEA.

 

Étant donné les modifications sur la structure du QuickApp, plutôt que de vous partager le fichier LUA, cette fois-ci je vous partage directement le fichier FQA qu'il faudra importer.

Vous pouvez supprimer l'ancien QuickApp ou le réutiliser pour autre chose.

 

Screenshot-QuickApp-GEA-HC3-v7.10.png

Screenshot-QuickApp-GEA-HC3-variables-v7.10.png

 

GEA_v7.10.fqa

 

Modifié par Lazer
  • Like 2

Partager ce message


Lien à poster
Partager sur d’autres sites

salut j'ai tester et GEA 7.10  Crached

 

quand lance la fonction suivant qui fonctionnait très bien sur la versions précédent 

 

---  id["SUSPLMAPEENFANT"]
GEA.add({"Global", "SECURIT", "Bloquée"},    -1,   "Inter bloquée",    { {"Protection", id["SUSPLMAPEENFANT"], "local", "on"} })
----Déblocquée
GEA.add({"Global", "SECURIT", "Déblocquée"}, -1,   "Inter Déblocquée", { {"Protection", id["SUSPLMAPEENFANT"], "local", "off"} })

 

[13.12.2020] [22:27:20] [ERROR] [QUICKAPP246]: QuickApp crashed[13.12.2020] [22:27:20] [ERROR] [QUICKAPP246]: main.lua:3109: attempt to index a nil value (upvalue 'self')

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

En effet, je ne sais pas comment j'ai pu passer à coté :wacko:

 

Voici le correctif dans la version 7.11 :

 

GEA v7.11.lua

Partager ce message


Lien à poster
Partager sur d’autres sites

j'ai tester 

 

et les commande suivante ne fonctionne plus sous 7.11

GEA.add( {{"Value", id["DECO_AV"] , 1},{"Time", "07:00", "17:00"}}, -1, "", {{"turnOff", id["DECO_AV"]} })

GEA.add( {{"Value", id["DECO_AV"] , 1},{"Time", "07:00", "17:00"}}, 30, "", {{"turnOff", id["DECO_AV"]}, {"Repeat"} })

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Certes, mais que dit le log (avec GEA.debug = true) ?

 

EDIT : il y a de grandes chances que la condition ne soit pas remplie car c'est ton module DECO_AV qui ne prend pas la valeur value = 1

Regarde son JSON

On en a parlé avec @Dragoniacs il y a quelques jours, les valeurs prises par les modules ont changé entre la HC2 et la HC3.

 

 

Modifié par Lazer
  • Like 2

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 42 minutes, 971jmd a dit :

GEA.add( {{"Value", id["DECO_AV"] , 1},{"Time", "07:00", "17:00"}}, -1, "", {{"turnOff", id["DECO_AV"]} })

Essaie cela ;-)

 

GEA.add( {{"Value", id["DECO_AV"] , true},{"Time", "07:00", "17:00"}}, -1, "", {{"turnOff", id["DECO_AV"]} })

 

Partager ce message


Lien à poster
Partager sur d’autres sites
GEA.add({"SceneActivation",  id["MINITELECOM"]  ,  3}, -1, "", {{"Open", id["VL_BAR"], 100  }})	

GEA.add({{"Value+", id["VL_BAR"], 70 }} , -1, "VLBAR OUVER 70T", {{"Global", "VL", "ok"} })

GEA.add({{"SceneActivation", id["MINITELECOM"] , 3}, {"(Global)", "VL", "ok"}} , -1, "", {
    {"Open", id["VL_PRINCIPAL"], 100  }, {"Global", "VL", "0"}   })	

Et autre chose aussi, la semaine dernière j'avais eu un petit souci avec le code suivant :

 

Vous m'avez suggéré de rajouter des parenthèses {"(Global)", "VL", "ok"}}    ça fonctionnait très bien mai sous la 7.11 ça ne fonctionne plus

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Mais c'est quoi le type de ton module DECO_AV ?

Tu es certain qu'il ne prend pas les valeurs true et false ? Typiquement si c'est un binary ou sensor switch

 

GEA 7.2 n'existe pas (encore).

Et tu ne peux pas te baser sur le fonctionnement des versions betas précédentes, comme expliqué plusieurs fois, le test des conditions était buggué, c'était du rafistolage et de l'adaptation du code HC2 existant. Depuis la version 7.1, j'ai réécris la fonction qui teste les valeurs des QuickApps.

Mais je le répète, et c'est lié au changement de comportement de la HC3 par rapport à la HC2 (et non pas à GEA), il faut que tu testes des valeurs qui existent dans ton module, et pas n'importe quoi au prétexte que ça marchait avant.

Il faut bien comprendre que 1 et true, ce sont 2 valeurs totalement différentes qui ne peuvent jamais déclencher une condition.

 

Pour ton dernier message, c'est laquelle des 3 lignes qui ne fonctionne pas ?

 

Je veux bien t'aider, mais je vais te redire ce que je t'avais déjà dit au début du topic : un peu de rigueur dans ton code STP, et si tu veux qu'on t'aide, aide-nous... en commençant par donner les logs. Parce que "ça marche pas", c'est le meilleur moyen de ne pas avoir de réponse.

Partager ce message


Lien à poster
Partager sur d’autres sites

Effectivement ce n'est pas 7.2 mai 7.02 ou tout fonctionnait bien 

 

pour le module c'est une  WP   ( DECO_AV ) 

 

Concernant mon dernier message il s'agit de la troisième ligne, où vous m'avez suggéré de mettre globale entre parenthèses et effectivement le code fonctionne à merveille sous le 7.02

 

GEA.add({{"SceneActivation", id["MINITELECOM"] , 3}, {"(Global)", "VL", "ok"}} , -1, "", {
    {"Open", id["VL_PRINCIPAL"], 100  }, {"Global", "VL", "0"}   })	

 Et depuis la mise à jour à la 7.11 ça ne fonctionne plus ainsi que la ligne avec la WP

 

GEA.add( {{"Value", id["DECO_AV"] , 1},{"Time", "07:00", "17:00"}}, -1, "", {{"turnOff", id["DECO_AV"]} })

 

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

7.02 OK, bon la détection des conditions était déjà toute bugguée. Toutes les versions avant la 7.11 de ce jour devraient être abandonnées.

 

Ton Wall Plug, c'est donc bien un Binary Switch, tu coup tu comprends bien que jamais il ne prendra la valeur 1, donc ta condition ne sera jamais valide.

Il faut utiliser true comme je te l'ai déjà dit. Bref, relis les derniers échanges, notamment ceux avec @Dragoniacs car le sujet a été traité.

 

Un truc dans le genre (non testé) :

GEA.add( {{"Value", id["DECO_AV"], true}, {"Time", "07:00", "17:00"}}, -1, "", {{"turnOff", id["DECO_AV"]}} )
GEA.add( {{"Value", id["DECO_AV"], true}, {"Time", "07:00", "17:00"}}, 30, "", {{"turnOff", id["DECO_AV"]}, {"Repeat"}} )

 

Pour le "SceneActivation", je vais faire quelques tests et tenter de reproduire.... à suivre

Partager ce message


Lien à poster
Partager sur d’autres sites

Je ne comprends pas très bien mais bon bizarre tout fonctionne apparemment

 

ça fonctionne 

GEA.add({{"SceneActivation", id["MINITELECOM"] , 3}, {"(Global)", "VL", "ok"}} , -1, "", {
    {"Open", id["VL_PRINCIPAL"], 100  }, {"Global", "VL", "0"}   })
{"Value", id["DECO_AV"], true}

Partager ce message


Lien à poster
Partager sur d’autres sites

Ah tu vois :)

 

Mais euh... ton "SceneActivation" aussi fonctionne ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Je suis au moins dû me mêler les pinceaux, je ne suis plus sur Windows mais sur MacBook Pro M1 et j'ai dû me tromper d'un copier coller y'a quelque chose qui a du se passer j'en suis sincèrement désolé, le Mac est vraiment quelque chose de nouveau pour moi. 

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

×