Aller au contenu

Support Gea


Steven

Messages recommandés

@steven:

Merci.

J'ai déplacé cette ligne dans mon instance GEA "différé", sans entête.

Maintenant j'ai ça en debug, ouf:

[DEBUG] 15:19:13: Durée des traitements : 1s nouveau délai : 29s / tourne depuis 45m 1s
[DEBUG] 15:24:13: Durée des traitements : 1s nouveau délai : 29s / tourne depuis 50m 1s
[DEBUG] 15:29:13: Durée des traitements : 1s nouveau délai : 29s / tourne depuis 55m 1s
[DEBUG] 15:34:13: Durée des traitements : 1s nouveau délai : 29s / tourne depuis 1h 1s

Reste plus qu'àvoir ce soir si fonctionnement ok!

Merci àtous pour vos réponses toujours promptes!

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Petit rappel :

 

Power et Sensor sont exactement identique, changer de l'un pour l'autre n'a malheureusement aucun impact.

 

Extrait de GEA

elseif (type(id) == "table" and (string.lower(id[1]) == "sensor" or string.lower(id[1]) == "power") and #id > 2) then

Pour sensor OU power, on fait exactement le même traitement.

 

Le mot "Power" est apparu juste pour être plus parlant et pour coller un peu plus au changement apporter par Fibaro sur la v.4.x

 

Donc @pepite ... je penche plus, comme toi, à  un soucis d'ID (à  vérifier les ID 246, 249 et 90).

Lien vers le commentaire
Partager sur d’autres sites

Si on prend l'exemple d'un wallplug ID 30.

 

Si tu veux être immédiatement informé de son changement d'état (allumé/éteint), tu mets 30 value dans l'entête. Par contre si tu veux être informé de chaque changement de consommation, tu mets 30 power (si tu es en 4.x) ou 30 valueSensor (si tu es en 3.x).

 

Etre immédiatement informé d'un changement de consommation est rarement utilisé. On utilise plus généralement : si la consommation est supérieure à  X pendant plus de X secondes. Dans ce cas si il ne faut rien mettre dans l'entête car ce n'est pas le changement de consommation qui déclenche mais la durée.

 

GEA.add({"Power+", 30, 200}, 60, "Cela consomme plus de 200W depuis plus de 60s")

 

Toutes les 30 secondes GEA relève la consommation et si cette dernière dépasse 200W pendant plus de 60s, il envoi le message.

 

 

Si tu veux être informé de chaque changement de consommation; tu rajoutes 30 power dans l'entête et tu mets

 

GEA.add({"Power+", 30, 0}, -1, "Cela consomme #value# depuis plus de #duration#")

Mais dans ce cas, prépare toi à  recevoir beaucoup de messages  ;)

 

Et voilà   :)

Lien vers le commentaire
Partager sur d’autres sites

@steven: merci pour ces précisions.

En fait, j'ai mis un wall plug derrière ma TV. Je prend en compte la consommation afin de savoir si la TV a été allumée (conso sup à1W) et s'il fait nuit, j'allume un ruban RGB.

L'objectif est que l'ordre ne soit donné qu'une seule fois, et pas toutes les 30s.

Lien vers le commentaire
Partager sur d’autres sites

je dirais alors que tu peux remettres l'ID 438 dans l'entête, mais tu dois modifier alors l'instruction GEA

GEA.add({{"power+", id["TV_NOUS"], 5}, {"Value-", id["LUX_ETAGE"], 10}}, -1, "", {{"RGB", id["LED_TVNOUS"], 31, 0, 36, 14}}) 
 
Lien vers le commentaire
Partager sur d’autres sites

@jojo:

j'ai déjàune instruction dans le même style, pour le même effet (sauf un bandeau LED blanc au lieu de RGB) :

GEA.add({{"power+", id["TV"], 10}, {"Global", "LUM", "0"}}, -1, "", {{"turnOn",id["LUM_TV"]}})  

mais du coup, cette instruction me donne cela dans le débug:

[DEBUG] 22:27:17: sendActions : traitement des actions (ID:21) [turnOn,418] [If..]
[DEBUG] 22:27:17: sendActions : !ACTION! : turnOn (ID:21) [turnOn,418] [If..]
[DEBUG] 22:27:26: Add Property : ajout de la tache pour lancement instantané (ID:21) [turnOn,418] [If..]
[DEBUG] 22:27:26: Add Property : ajout de la tache pour lancement instantané (ID:22) [turnOff,418]
[DEBUG] 22:27:26: Add Property : ajout de la tache pour lancement instantané (ID:23) [Time,21:00,6:00] [turnOff,420]
[DEBUG] 22:27:26: GEA Version 5.40 : en exécution...
[DEBUG] 22:27:26: sendActions : traitement des actions (ID:21) [turnOn,418] [If..]
[DEBUG] 22:27:26: sendActions : !ACTION! : turnOn (ID:21) [turnOn,418] [If..]
[DEBUG] 22:27:35: Add Property : ajout de la tache pour lancement instantané (ID:21) [turnOn,418] [If..]
[DEBUG] 22:27:35: Add Property : ajout de la tache pour lancement instantané (ID:22) [turnOff,418]
[DEBUG] 22:27:35: Add Property : ajout de la tache pour lancement instantané (ID:23) [Time,21:00,6:00] [turnOff,420]
[DEBUG] 22:27:35: GEA Version 5.40 : en exécution...
[DEBUG] 22:27:35: sendActions : traitement des actions (ID:21) [turnOn,418] [If..]
[DEBUG] 22:27:35: sendActions : !ACTION! : turnOn (ID:21) [turnOn,418] [If..]

Comme si l'instruction était relancée sans cesse.... L'objectif étant que cela ne soit envoyé qu'une seule fois!

Lien vers le commentaire
Partager sur d’autres sites

quand j'y réfléchis, c'est normal : si on met les 348 dans l'entête, il va le faire à  chaque motif, même infime, de la puissance consommée.

Donc tu dois retirer le 348 de l'entête,  et laisser le code avec un délais de 1, ce qui fait que tes LED s'allumeront  dans un délais de max 30 sec (où si tu utilise ton GEA 15s, dans un délais de max 15s) que ta TV est allumée.

maintenant avec des stopTask, ... il pourrai^t être possible de faire de l'instantané, mais cela devient complexe. A n faire que si 30 ou 15 s ne sont pas acceptables

Lien vers le commentaire
Partager sur d’autres sites

Steven,

est ce que l'instruction 

{“Batteriesâ€, <valeur max>}	Si l'état de la pile des 350 premiers ont une pile inférieure ou égale à  X

est toujours limitée aux 350 premier ID de la box ?

Je m'autorépond : il me semble en voyant le code que c'est pour les 1000 premiers ID. Juste ?

		elseif (type(id) == "table" and string.lower(id[1]) == "batteries" and #id > 1) then
			GEA.log("isActivate", entry, "type : batteries", false)
			local msg = ""
			for i = 1, 1000 do
				local batt = fibaro:getValue(i, 'batteryLevel')
				if (type(batt) ~= nil and (tonumber(batt) ~= nil) and (tonumber(batt) <= tonumber(id[2])) or (tonumber(batt) == 255)) then 
					GEA.log("isActivate", entry, "checking : batteries " .. fibaro:getName(i), false)
					if (not string.find(fibaro:getName(i), "Zwave_")) then
						msg = msg .. GEA.translate[GEA.language]["BATTERIE"].. " [" .. fibaro:getName(i) .. "] " ..batt.."%\n" 
						result = true	
					end
				end
			end


Merci de la confirmation. Je corrige alors le Wiki

Lien vers le commentaire
Partager sur d’autres sites

salut messieurs,

 

@jorderic, si tu utilises la conso en trigger, a chaque variation, comme te l'a dit @jojo tu auras la tentative d'allumage, d'ou le debug

 

@jojo, je dirais oui pour 1000 ;-)

 

@Did, et tu as donc toujours l'erreur alors que tes IDs sont OK. heuuuu ;-)

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...