Page 2 sur 3

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 14:44
par domoticzmax
Capture.PNG
Capture.PNG (13.98 Kio) Consulté 3119 fois
ma variable tout est bon normalement
et les logs c'est a dire ?

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 18:10
par denis_brasseur
vil1driver a écrit : 25 mai 2020, 22:42

Code : Tout sélectionner

commandArray['variable:compteur'] = '25'
https://www.domoticz.com/wiki/User_variables
commandArray['Variable:compteur']='25'
Et met ta variable en Chaine.

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 18:14
par vil1driver
Ah oui :D merci

La variable peut rester en entier, c'est juste qu'elle ne pourra contenir qu'un entier sous forme de chaîne (pas tordu domoticz hein ;))

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 18:21
par denis_brasseur
Effectivement, complètement pas tordu :D
Prochaine étape : les Logs !

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 19:07
par domoticzmax
c'est a se tirer les cheveux :D
et j'ai fait avec le V mais pas de changement ma variable reste a 0
mon problème viendrai des logs ? (je ne vois pas du tout se que c'est)

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 19:14
par vil1driver
Là ou domoticz te parle de tout ce qu'il fait et de ses maleurs...

Image

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 19:24
par domoticzmax
a ça pardon je comprenais pas, je croyais il fallait faire une manipulation et lorsque que je passe l'interrupteur a 25 j'ai ça.
Capture1.PNG
Capture1.PNG (6.68 Kio) Consulté 3080 fois
et quand je passe sur off j'ai ça
Capture2.PNG
Capture2.PNG (4.91 Kio) Consulté 3080 fois
et ma variable est bien passer a 25 avec le code comme on peut le voir mais uniquement quand j'ai manuellement appuyer sur off ou que je change de nombre sinon il n'affiche rien sur le log

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 20:09
par vil1driver
Bon je pense qu'il y a mal donne
D'où l'importance de bien poser le problème

Tu as un interrupteur selecteur ?
Nommé rideau gauche
C'est lui qui prends les valeurs 25 50 etc..?

Et tu veux qu'en fonction de sa valeur, le rideau réel monte ou descende ?

Dans ce cas ça change un peu les choses
Il va falloir lire sa valeur (position voulue)
De mémoire c'est

Code : Tout sélectionner

if otherdevices_svalues['rideau gauche'] = '25'
La variable peu être conservée (position réelle) pour comparaison

le début du script (type DEVICE) pourrait ressembler à cela

Code : Tout sélectionner

commandArray = {}
 
if (devicechanged['rideau gauche']) then 
	local compteur = uservariables['compteur']
	local selecteur = otherdevices_svalues['rideau gauche']
	commandArray['Variable:compteur'] = selecteur
	print ("compteur: "..compteur)
	print("selecteur: "..selecteur)
	if (selecteur == '0') then  
		if (compteur == '0') then
			commandArray ['rideau gauche'] = 'Off' 
		elseif (compteur == '25') then
			commandArray[1]={['rideau gauche up']='On'}
			commandArray[2]={['rideau gauche up']='Off AFTER 5'} 
		elseif (compteur == '50') then
			commandArray[1]={['rideau gauche up']='On'}
			commandArray[2]={['rideau gauche up']='Off AFTER 50'}  
		elseif (compteur == '75') then
			commandArray[1]={['rideau gauche up']='On'}
			commandArray[2]={['rideau gauche up']='Off AFTER 75'}  
		elseif (compteur == '100') then
			commandArray[1]={['rideau gauche up']='On'}
			commandArray[2]={['rideau gauche up']='Off AFTER 100'}   
		end
	if (selecteur == '25') then
	....
	end
end
return commandArray
il y a un if de plus, un end supplémentaire est donc ajouté à la fin (avant return commandArray)

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 20:26
par domoticzmax
exactement j'ai un interrupteur off 0 25 50 75 100 rideau gauche
qui fait lui fonctionner gauche up ou gauche down 2 autre interrupteur

alors j'avais

Code : Tout sélectionner

(compteur == '0' )
et ça ne marchai pas mais en mettant

Code : Tout sélectionner

(compteur == 0 )
ça fonctionne après le dernier problème c'est que rideau gauche(le sélecteur) ne bascule pas sur off comme je le demande

Code : Tout sélectionner

if (devicechanged['rideau gauche'] == '0') then  
    if (compteur == 0 ) then
        commandArray ['rideau gauche'] = 'Off'
pourtant il fait plusieurs tour dans le code car dans les logs il me donne plusieurs fois le 0

Re: variable qui ne change pas lua

Publié : 26 mai 2020, 20:30
par vil1driver
tu as peut-être répondu avant que je finisse de copier mon bout de code..

pourquoi souhaites tu qu'il repasse à Off ? ça n'a pas vraiment d’intérêt