Page 1 sur 1

Mise à jour Dummy compteur

Publié : 17 oct. 2017, 19:00
par stephdes
Salut à tous,

J'ai besoin de votre aide, je bloque sur un détail et je n'arrive pas à le résoudre. Je souhaite comptabiliser le nombre d'allumage de mon poêle à pellet.
J'arrive à mettre à jour facilement ma variable utilisateurs. En revanche, je souhaite afficher le contenu de cette variable dans un Dummy compteur. C'est là que ça se corse. J'arrive à faire la mise à jour mais elle se fait en retard : mon script TIME se lance, ma variable se met à jour mais mon compteur ne se met à jour que lorsque mon script se lance la fois d'après.

Je suis quasi sûr d'avoir déjà lu une problématique de ce style mais je ne la retrouve plus... Merci d'avance pour votre aide !

Code : Tout sélectionner

local localvar1 = 374


commandArray = {}

--------------------------------------------
---------------- Fonction -----------------
--------------------------------------------

if devicechanged['Poele Granulés'] == 'On' then
commandArray['Variable:Nb allumage poele']= tostring(uservariables["Nb allumage poele"] +1)

commandArray['UpdateDevice'] = localvar1 .. '|0|' .. tostring(uservariables["Nb allumage poele"])


--print ("compteur poele OK !!!!!!!!!")

end
return commandArray

Re: Mise à jour Dummy compteur

Publié : 17 oct. 2017, 19:15
par fredandrick65
Si j ai bien tout compris ( a confirmer par des plus expérimentés) la variable ne sera actualisée qu'après l'exécution du script.

selon moi il faudrait plutôt :

Code : Tout sélectionner

commandArray['Variable:Nb allumage poele']= tostring(uservariables["Nb allumage poele"] +1)

commandArray['UpdateDevice'] = localvar1 .. '|0|' .. tostring(uservariables["Nb allumage poele"]+1)

Re: Mise à jour Dummy compteur

Publié : 17 oct. 2017, 20:34
par Neutrino
Bonjour
devicechanged ne fonctionne qu'avec les scripts de type device.
Passe en device et ça devrait mieux fonctionner.

Re: Mise à jour Dummy compteur

Publié : 19 oct. 2017, 18:20
par stephdes
En fait j'ai écrit n'importe quoi... Il s'agit bien d'un script DEVICE et non pas TIME.

Ensuite, j'ai fait la modif proposée par FredandRick65 et ça fonctionne nickel.

Je pensais que la valeur que le script allait allé chercher aurait été celle qu'il venait de mettre à jour mais...

En tout cas, merci FredandRick !!!