script du débutant

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 <\>.
jeannot
Messages : 40
Inscription : 07 avr. 2019, 20:27

script du débutant

Message par jeannot »

J'ai un interrupteur inversé. J'ai créé un switch virtuel qui doit m'inverser le ON/OFF.
je l'ai fait depuis évents de Domoticz. Je l'ai nommé en respectant script_device_name.lua.
mon script :

Code : Tout sélectionner

commandArray = {}
if (devicechanged['inter_chalet_Virtuel'] == 'On' )
   then 
       commandArray['Eclairage Chalet']='Off' 
       print("chalet sur Off")
    else
       commandArray['Eclairage Chalet']='On' 
        print("chalet sur ON")
    end
return commandArray
Le log correspondant :
2019-04-07 20:48:38.589 Status: LUA: chalet sur ON
2019-04-07 20:48:43.746 (Chalet eclairage) Light/Switch (inter_chalet_Virtuel)
2019-04-07 20:48:43.714 Status: User: Admin initiated a switch command (29/inter_chalet_Virtuel/On)
2019-04-07 20:48:43.746 Status: LUA: chalet sur Off
2019-04-07 20:48:47.574 (Chalet eclairage) Light/Switch (inter_chalet_Virtuel)
2019-04-07 20:48:47.543 Status: User: Admin initiated a switch command (29/inter_chalet_Virtuel/Off)
2019-04-07 20:48:47.574 Status: LUA: chalet sur ON

Je ne trouve pas ce qui ne va pas . merci pour votre aide . pas besoin de preciser que je suis débutant
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: script du débutant

Message par vil1driver »

Salut,

Si virtuel ne passe pas à On cela ne signifie pas qu'il est passé à Off

Bonne réflexion ;)
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
jeannot
Messages : 40
Inscription : 07 avr. 2019, 20:27

Re: script du débutant

Message par jeannot »

Le virtuel change d'état visiblement , mais pas le device concerné
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: script du débutant

Message par vil1driver »

Autant pour moi, je n'avais pas prêté attention aux logs..
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
lmet
Messages : 252
Inscription : 30 juin 2017, 18:16
Localisation : Val d'Oise
Contact :

Re: script du débutant

Message par lmet »

Salut,
jeannot a écrit : 07 avr. 2019, 21:00 je l'ai fait depuis évents de Domoticz. Je l'ai nommé en respectant script_device_name.lua.
Si tu utilises les "Évènements" tu peux le nommer sans l'extension lua et sans device. Le fichier tu peux le nommer "Eclairage Chalet" par exemple. Il faut juste cocher "Device" lors de la création.

Sinon pour le script au lieu de "else" seul je mettrai plutôt :

Code : Tout sélectionner

elseif (devicechanged['inter_chalet_Virtuel'] == 'Off' ) then
	commandArray['Eclairage Chalet']='On' 
        print("chalet sur ON")
end
Domoticz : V4.10717
Zigate : V4.11230 plugin:4.5.4 firmware:031a
Mon petit blog domotique
jeannot
Messages : 40
Inscription : 07 avr. 2019, 20:27

Re: script du débutant

Message par jeannot »

merci pour les infos , ça fonctionne . J'étais pas loin mais ça ne suffisait pas.
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: script du débutant

Message par denis_brasseur »

Code : Tout sélectionner

if (devicechanged['inter_chalet_Virtuel'] == 'On' ) then 
       --dans cette boucle si changement du device ET passage à la valeur On
else
       --s’exécutera en permanence, même si pas de changement du device, 
       --d'ou la répétition du  Status: LUA: chalet sur Off toute les 10 s
 end
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Répondre