Page 1 sur 1

Comportement Lua et if

Publié : 18 oct. 2018, 15:11
par cobalt78
dans mon script LUA :

Code : Tout sélectionner

for deviceName,deviceValue in pairs(devicechanged) do
    if (deviceName=='D1' or deviceName=='D2' or deviceName=='D3' or deviceName=='D4' or deviceName=='D5') then
        print ("Device based event fired on '"..deviceName.."', value '"..tostring(deviceValue).."'")
        if otherdevices['S1'] == 'Off' then 
            print ("Device S1 Off")
        end
       if otherdevices['S2'] == 'Off' then 
            print ("Device S2 Off")
        end
    end
end
Quand il y a un changement d'état, la condition
if otherdevices['S2'] == 'Off' then
est exécutée mais pas la condition
if otherdevices['S1'] == 'Off' then
.
Parcontre si je commente
if otherdevices['S2'] == 'Off' then
alors la condition
if otherdevices['S1'] == 'Off' then
est exécutée ....
:shock: :?:

Évidement les switches S1 et S2 sont Off

Re: Comportement Lua et if

Publié : 18 oct. 2018, 15:46
par vil1driver
Salut

Ton script est bien de type DEVICE ?
Et dans un fichier ça bug aussi ?

Sinon c'est un peu user le soleil que d'utiliser une boucle for pour parcourir une table ne contenant qu'une entrée

Re: Comportement Lua et if

Publié : 18 oct. 2018, 17:17
par cobalt78
c'est bien un script device.

J'ai 12 devices qui doivent déclencher S1 et/ou S2 si Off.

Je trouve plus facile d'utiliser une boucle pour chercher un des 12 ...

J'ai essayé d'utiliser un fichier mais il ne se déclenche jamais dans Domoticz

Re: Comportement Lua et if

Publié : 25 oct. 2018, 15:51
par david.2d
Affiche la valeur de tes otherdevices ['S1'] et ['S2'] avec un print
car dans ton script il ne sont pas reliés donc ton commentaire ne change rien.