Page 1 sur 4
[Résolu] Script qui ne se lance pas
Publié : 25 juin 2020, 09:40
par Wolfen38
Salut,
J'ai ce script tout con
Code : Tout sélectionner
commandArray={}
if devicechanged['Inter Poule'] == 'On' then
print(tyty)
commandArray[#commandArray + 1] = {['Poule'] = 'On' }
commandArray[#commandArray + 1] = {['Poule'] = 'Off AFTER 20' }
commandArray[#commandArray + 1] = {['Inter Poule'] = 'Off' }
end
return commandArray
Mais quand je passe mon inter a on, rien ne se passe, le script ne se lance pas, j'ai le même pour mon autre vanne, et ca fonctionne.
Y a un nombre max de script autorisé dans DZ ?
Re: Script qui ne se lance pas
Publié : 25 juin 2020, 09:54
par Keros
Je ne pense pas qu'il y ait des limitations sur le nombre de scripts.
Ton script est bien de type device ?
Ajoute un print avant ta condition : tu pourra vérifier (1) que ton programme s'exécute et (2) la valeur de Inter Poule que tu souhaites vérifier.
D'autres idées dans mon lien Aide au débogage en signature.
Re: Script qui ne se lance pas
Publié : 25 juin 2020, 10:49
par boum
Autres pistes en plus de celles de @keros :
- Le nom du dispositif est-il correct ? Caractères spéciaux, espaces supplémentaires à la fin…
- print(tyty) n'affichera rien si tyty n'est pas une variable correctement initialisée.
Re: Script qui ne se lance pas
Publié : 25 juin 2020, 12:12
par Wolfen38
Oui, c'est bien un device.
J'ai rajouté un print('tyty') avant la condition, et toujours rien, voici le log quand je passe à ON l'inter
Code : Tout sélectionner
2020-06-25 12:11:33.999 Status: User: Wolfen38 initiated a switch command (416/Inter Poule/On)
2020-06-25 12:11:34.008 (Virtualsensor) Light/Switch (Inter Poule)
Comme si le script n'existait pas....
Re: Script qui ne se lance pas
Publié : 25 juin 2020, 13:30
par Keros
Le script est dans les évènements de DomoticZ ou c'est un fichier dans le dossier script ?
Si il est dans les évènements, est-ce qu'il est bien sur ON ?
Essaye de créer un nouveau script de type device et tu y colles ton script.
Re: Script qui ne se lance pas
Publié : 25 juin 2020, 13:32
par Wolfen38
Il est dans le répertoire script lua de dz avec tous les autres. Et c'est déjà un copier d'un autre qui fonctionne, j'ai juste change le nom de l'Inter et de la vanne
Envoyé de mon Mi 9T Pro en utilisant Tapatalk
Re: Script qui ne se lance pas
Publié : 25 juin 2020, 13:46
par Keros
Ce ne serait pas un problème de droit sur le fichier ?
Si tu mets pour tester ton script dans les évènements, il fonctionne ?
Re: Script qui ne se lance pas
Publié : 25 juin 2020, 14:33
par Wolfen38
Je viens de faire l'essai dans les évènements et ça fonctionne. Je pige pas le problème avec mon script
Envoyé de mon Mi 9T Pro en utilisant Tapatalk
Re: Script qui ne se lance pas
Publié : 25 juin 2020, 16:14
par Keros
Je vois un soucis d’exécution. Tu peux refaire un sudo chmod +x monscript.sh (en mettant le nom du fichier qui va bien).
Re: Script qui ne se lance pas
Publié : 25 juin 2020, 17:24
par lost
Keros a écrit : 25 juin 2020, 16:14
Je vois un soucis d’exécution. Tu peux refaire un
sudo chmod +x monscript.sh (en mettant le nom du fichier qui va bien).
Ce n'est pas un script shell interprété par le shell système (bash) ayant donc besoin des droits exécution du système, mais lua qui se fait mouliner par l'interpréteur lua intégré à domoticz.
Lui coller un +x ne changera rien, c'est pas le problème: S'il est bien nommé (script_device_XXX.lua, script_time_XXX.lua) il sera lancé en accord avec son nommage device/time et laissera toujours des traces dans les logs domoticz, y compris sur erreur.
Maintenant, pour des "poules", il faut peut-être payer avant qu'elles ne s’exécutent!!!!
Note par contre que si les droits read (chmod a+r script_device_machin.lua pour être sur) ne sont pas là, domoticz ne pourra lire le script avant de l'interpréter... Bizarre que pas d'erreur de lecture du fichier dans les logs par contre.