Page 2 sur 3

Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 07 déc. 2021, 21:08
par fredclo
je comprends bien, effectivement c ce qu'il faut faire, mais comment mettre un trigger sur un device spécifiquement ? car quand dans l'interface je mets device, c à chaque chgt de n'importe quel device.
J'imagine qu'il faut utiliser une condition avec devicechanged. J'ai essayé mais je n'y arrive pas
désolé et encore merci !

Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 07 déc. 2021, 21:20
par Keros
Regarde le script par défaut proposé pour un trigger Device en LUA.

Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 08 déc. 2021, 11:27
par fredclo
j'ai essayé ci dessous sans succès. Aucune MAJ. La plupart des exemples sont un changement de trigger à ON ou OFF, et jamais sur une valeur.

Code : Tout sélectionner

commandArray = {}

local heure = os.date("%H:%M")
local cm180 = 'OWL' --nom du capteur CM180

if devicechanged['cm180'] then
    p1, p2 = string.match(otherdevices_svalues[cm180], "(%d+.%d*);(%d+.%d*)")
    commandArray['UpdateDevice'] = "717|0|" .. tostring(p1-30)
end

return commandArray
Quand j'enlève la condition ca met bien à jour, mais 8 log toutes les 5s environ ! ;-)

Merci de t'intéresser à mon cas !

Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 08 déc. 2021, 12:36
par Keros
Essaye aussi la boucle à la fin de l'exemple qui vérifie le nom du dispositif.

Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 08 déc. 2021, 13:57
par fredclo
J'ai l'impression qu'il y a un problème et que tu vas peut etre le comprendre. Qqsoit la boucle, mon OWL n'apparait pas.

for i, v in pairs(otherdevices) do print(i, v) end
for i, v in pairs(otherdevices_svalues) do print(i, v) end

Aucune ne fait apparaitre le OWL. Je vois toute la liste de mes capteurs sauf celui ci.

Ca t'aiguille sur un type de problème ?
merci

Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 08 déc. 2021, 18:43
par Keros
Cela ne fonctionne pas ?

Code : Tout sélectionner

for deviceName,deviceValue in pairs(devicechanged) do
   if (deviceName=='cm180') then
       print ("Device based event fired on '"..deviceName.."', value '"..tostring(deviceValue).."'");
    end
end

Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 09 déc. 2021, 11:25
par fredclo
effectivement, cela n'affiche rien.
Je fais volontairement changer la valeur du OWL en mettant le chauffage et en l'éteignant, les log montrent bien RFXCOM:energy(OWL), mais rien ne s'affiche avec ta boucle. Elle n'est pas basée sur un changement d'état ON/OFF ?

Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 09 déc. 2021, 18:23
par Keros
Oui, excuse-moi, j'ai ce type de passage de donnée entre un compteur et un autre et le script tourne toutes les minutes et pas sur le changement de valeur.

Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 09 déc. 2021, 18:54
par fredclo
Et donc sur changement de valeur il n'y a pas de solution ?

Envoyé de mon SM-G920F en utilisant Tapatalk


Re: Besoin aide très simple sur script LUA : soustraction et MAJ device pour OWL

Publié : 09 déc. 2021, 20:20
par Keros
Je viens d'essayer en DzVents et c'est possible.