aide pour réalisation script en lua

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: aide pour réalisation script en lua

Message par thier »

Quand tu passes à nuit, tu passe Store Terrasse à Off. Puisque Store Terrasse change d'état le script_device est lancé en agit en fonction et doit fermer le store puisque tu seras dans le cas ou elseif (devicechanged['Store Terrasse']=='Off' and uservariables["store exterieur"] == 'ouvert'
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: aide pour réalisation script en lua

Message par thier »

correction dans le script time. On ne s'occupe pas de la variable ni du print ni de la notification, c'est le script device qui s'en occupe.

Code : Tout sélectionner

commandArray={}
-- Fermeture du Store Terrasse
if (devicechanged['Nuit']=='On') then
commandArray['Store Terrasse']='Off'
end
return commandArray
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
vr6man
Messages : 627
Inscription : 18 juil. 2017, 12:15

Re: aide pour réalisation script en lua

Message par vr6man »

toujours pas

le device store reste allumé et le store ne se ferme pas quand je passe nuit a On
vr6man
Messages : 627
Inscription : 18 juil. 2017, 12:15

Re: aide pour réalisation script en lua

Message par vr6man »

mes scripts actuels:

time:

Code : Tout sélectionner

commandArray={}
-- Fermeture du Store Terrasse

if (devicechanged['Nuit']=='On') then
commandArray['Store Terrasse']='Off'
print('Fermeture Store Terrasse')
commandArray ['Variable:store exterieur']='ferme'
commandArray['SendNotification']='Store Terrasse#Fermeture Store Terrasse'
end
return commandArray
device:

Code : Tout sélectionner

commandArray={}

commandArray={}

--pour connaitre les valeurs on met des print. Tu les commentes avec -- quand tu n'en as plus besoin.
       -- print('otherdevices[\'UV\'] '..otherdevices['UV'])
        --print('otherdevices[\'Pluie\'] '..otherdevices['Pluie'])
       -- print('otherdevices[\'Nuit\'] '..otherdevices['Nuit'])
       -- print('otherdevices[\'Vent\'] '..otherdevices['Vent'])
       -- print('otherdevices[\'Absence\'] '..otherdevices['Absence'])
        print('otherdevices[\'Store Terrasse\'] '..otherdevices['Store Terrasse'])
        print('otherdevices[uservariables["store exterieur"]] '..uservariables["store exterieur"])

-- Ouverture Store Terrasse
if (devicechanged['Store Terrasse']=='On' and uservariables["store exterieur"] == 'ferme' and otherdevices['Absence']=='Off') then
        commandArray['Ouverture Store Terrasse']='On'
        print('Ouverture Store Terrasse')
        commandArray ['Variable:store exterieur']='ouvert'
        commandArray['SendNotification']='Store Terrasse#Ouverture Store Terrasse'

-- Fermeture du Store Terrasse
elseif (devicechanged['Store Terrasse']=='Off' and uservariables["store exterieur"] == 'ouvert' and otherdevices['Absence']=='Off') then
        commandArray['Fermeture Store Terrasse']='On'
        print('Fermeture Store Terrasse')
        commandArray ['Variable:store exterieur']='ferme'
        commandArray['SendNotification']='Store Terrasse#Fermeture Store Terrasse'
end

return commandArray
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: aide pour réalisation script en lua

Message par thier »

D'abord est ce que le script device ouvre et ferme le volet?
des log d'erreur?
poste le résultat des print
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: aide pour réalisation script en lua

Message par thier »

Dans ton script device tu as 2 fois CommandArray = {} en début de script. Enlèves en un.
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
vr6man
Messages : 627
Inscription : 18 juil. 2017, 12:15

Re: aide pour réalisation script en lua

Message par vr6man »

voila

j'ai une erreur

2020-05-10 20:29:02.352 Error: EventSystem: in /home/pi/domoticz/scripts/lua/script_time_store.lua: /home/pi/domoticz/scripts/lua/script_time_store.lua:4: attempt to index a nil value (global 'devicechanged')

et j'ai dans les logs

2020-05-10 20:29:55.838 Status: LUA: otherdevices[uservariables["store exterieur"]] ouvert
2020-05-10 20:29:55.924 Status: LUA: otherdevices['Store Terrasse'] On
2020-05-10 20:29:55.924 Status: LUA: otherdevices['Store Terrasse'] On
vr6man
Messages : 627
Inscription : 18 juil. 2017, 12:15

Re: aide pour réalisation script en lua

Message par vr6man »

thier a écrit : 10 mai 2020, 20:28 Dans ton script device tu as 2 fois CommandArray = {} en début de script. Enlèves en un.
c'est fait

j'ai toujours le message erreur

2020-05-10 20:34:01.803 Error: EventSystem: in /home/pi/domoticz/scripts/lua/script_time_store.lua: /home/pi/domoticz/scripts/lua/script_time_store.lua:4: attempt to index a nil value (global 'devicechanged')
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: aide pour réalisation script en lua

Message par thier »

problème à la ligne if (devicechanged['Nuit']=='On') then
il ne trouve pas le device 'Nuit' majuscule/minuscule, nom?

Le script device fonctionne correctement?
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: aide pour réalisation script en lua

Message par vil1driver »

devicechanged interdit dans un script de type time
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
Répondre