[Résolu] Script qui ne se lance pas
Re: Script qui ne se lance pas
Y a aucun log d'erreur, en fait y a aucun log du tout.
C'est un petit script qui dit si peur ouverte alors allume lumière.
J'ai le log du détecteur de porte qui passe a ouvert, mais rien d'autres, pas de log de lancement du script, pas de log sur la lumière, rien.
Pour que ça re fonctionne, je copie le fichier d'un script qui fonctionne, je renomme ce fichier, je bosse le contenu et copie le contenu du script qui fonctionne plus. Et ça remarche
Envoyé de mon Mi 9T Pro en utilisant Tapatalk
C'est un petit script qui dit si peur ouverte alors allume lumière.
J'ai le log du détecteur de porte qui passe a ouvert, mais rien d'autres, pas de log de lancement du script, pas de log sur la lumière, rien.
Pour que ça re fonctionne, je copie le fichier d'un script qui fonctionne, je renomme ce fichier, je bosse le contenu et copie le contenu du script qui fonctionne plus. Et ça remarche
Envoyé de mon Mi 9T Pro en utilisant Tapatalk
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: Script qui ne se lance pas
Dans le log que tu mets, le switch est nommé 'Poule' et il passe à Off
Et dans ton script tu surveilles 'Inter Poule' à On
Normal que ça n'aille pas plus loin que le print 'poule avant'
Tu comprends le fonctionnement des scripts device ?
Ils se lancent tous à la moindre maj d'un device quel qu'il soit.
Sauf si...
Tu ne nous donnes pas le nom du script.
Ça a pourtant un vrai importance.
Le nom du script correspond au nom d'un device qui du coup ne va se lancer qu'à la maj de ce dernier.
Sinon si ton script n'utilise pas modules.lua pourquoi l'intègres tu ?
Attention à la façon de dire les choses.
Si porte ouverte n'est pas la même chose que
Si porte s'ouvre...
Dans le premier cas on pourrait être dans un script time qui check un état.
Dans l'autre un type device qui check un changement d'état.
Le code demande de la rigueur jusqu'à la façon d'en parler
Et dans ton script tu surveilles 'Inter Poule' à On
Normal que ça n'aille pas plus loin que le print 'poule avant'
Tu comprends le fonctionnement des scripts device ?
Ils se lancent tous à la moindre maj d'un device quel qu'il soit.
Sauf si...
Tu ne nous donnes pas le nom du script.
Ça a pourtant un vrai importance.
Le nom du script correspond au nom d'un device qui du coup ne va se lancer qu'à la maj de ce dernier.
Sinon si ton script n'utilise pas modules.lua pourquoi l'intègres tu ?
Attention à la façon de dire les choses.
Si porte ouverte n'est pas la même chose que
Si porte s'ouvre...
Dans le premier cas on pourrait être dans un script time qui check un état.
Dans l'autre un type device qui check un changement d'état.
Le code demande de la rigueur jusqu'à la façon d'en parler
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
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: Script qui ne se lance pas
Alors, le script des poules fonctionnent maintenant avec un copier/coller, enfin de la bidouille que je ne comprends pas l’intérêt, mais c'est bon.
Depuis 2 jours, j'ai un nouveau script qui merde, script tournant depuis plus d'un an, il s'appelle "script_device_jardin.lua" et voici le code
Pour le module, en effet, il ne sert à rien dans ce script, mais je le mets au début de chaque script, histoire que si je rajoute des lignes nécessitant ce module, je l'ai, je ne pense pas que ce soit génant de l'avoir en début de script, utilisé ou pas non ?
Sinon, quand j'ouvre la porte, j'ai un log du contacteur de porte disant qu'il passe open, mais ensuite, rien, j'ai pas de log d'exécution du script. Comme si le script n'était pas dans le répertoirie des scripts, pourtant il est bien là.
Depuis 2 jours, j'ai un nouveau script qui merde, script tournant depuis plus d'un an, il s'appelle "script_device_jardin.lua" et voici le code
Code : Tout sélectionner
-- chargement des modules
dofile('/home/pi/domoticz/scripts/lua/modules.lua')
commandArray = {}
if (devicechanged['Sensor porte cuisine'] == 'Open' and otherdevices['Inter Nuit'] == 'On') then
commandArray['Sonoff-jardin']='On'
commandArray['Virtuel jardin']='On'
elseif (devicechanged['Sensor porte cuisine'] == 'Closed') then
commandArray['Sonoff-jardin']='Off AFTER 120'
commandArray['Virtuel jardin']='Off AFTER 120'
end
return commandArraySinon, quand j'ouvre la porte, j'ai un log du contacteur de porte disant qu'il passe open, mais ensuite, rien, j'ai pas de log d'exécution du script. Comme si le script n'était pas dans le répertoirie des scripts, pourtant il est bien là.
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: Script qui ne se lance pas
Modules.lua fait 1000 lignes et charges également json.lua qui est bien gros également.
Ça peu alourdir sans réel besoin.
Pour tes scripts, j'en sais rien, juste que ça ne fonctionne pas et qu'on s'attendrait à avoir plus de lignes de print qu'autre chose.
Le debug passe aussi par connaître l'historique, maj et autres..
Par exemple pour les dernières maj certains on récupèré un binaire compilé par quelqu'un, est ce que c'est ton cas ? Est-ce que ce binaire est vraiment fiable...
Ce genre d' interrogations qui font avancer un dépannage, une vue d'ensemble
Ça peu alourdir sans réel besoin.
Pour tes scripts, j'en sais rien, juste que ça ne fonctionne pas et qu'on s'attendrait à avoir plus de lignes de print qu'autre chose.
Le debug passe aussi par connaître l'historique, maj et autres..
Par exemple pour les dernières maj certains on récupèré un binaire compilé par quelqu'un, est ce que c'est ton cas ? Est-ce que ce binaire est vraiment fiable...
Ce genre d' interrogations qui font avancer un dépannage, une vue d'ensemble
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
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: Script qui ne se lance pas
Je vais rajouter des print mais le script ne se lançant pas on ne les verra pas.
Pour module, j'ai pas mal de latence, donc je vais regarder pour garder que le nécessaire.
Pour le binaire, je ne sais même pas ce que c'est....
Je suis très loin d'avoir les connaissances et compétences de certains de ce forum dont toi.
J'essaie juste d'apprendre petit a petit au fur et a mesure de mes besoins.
Envoyé de mon Mi 9T Pro en utilisant Tapatalk
Pour module, j'ai pas mal de latence, donc je vais regarder pour garder que le nécessaire.
Pour le binaire, je ne sais même pas ce que c'est....
Je suis très loin d'avoir les connaissances et compétences de certains de ce forum dont toi.
J'essaie juste d'apprendre petit a petit au fur et a mesure de mes besoins.
Envoyé de mon Mi 9T Pro en utilisant Tapatalk
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: Script qui ne se lance pas
Tu ne sais pas vraiment si le script se lance ou non puisque pas de trace dans les log.
Les print vont justement te le dire
Pas juste des "ça se lance" mais des valeur comme print(devicechanged['Sensor porte cuisine'])
Par binaire je voulais parler du fichier exécutable domoticz chopé sur Google drive et mis à disposition pour ceux qui ne s'en sortaient pas sur les dernières maj
Les print vont justement te le dire
Pas juste des "ça se lance" mais des valeur comme print(devicechanged['Sensor porte cuisine'])
Par binaire je voulais parler du fichier exécutable domoticz chopé sur Google drive et mis à disposition pour ceux qui ne s'en sortaient pas sur les dernières maj
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
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: Script qui ne se lance pas
Ah non j'ai suivi un tuto du forum pour le passage a buster puis maj de dz, tout s'est bien passé
Envoyé de mon Mi 9T Pro en utilisant Tapatalk
Envoyé de mon Mi 9T Pro en utilisant Tapatalk
Re: Script qui ne se lance pas
J'ai rajouté 2 print, un avant le if et un apres comme ca :
ca tombe bien, mon inter nuit est passé à on et j'ai ouvert la porte, voila les log, aucune trace des print ni de script lua
Code : Tout sélectionner
commandArray = {}
print(devicechanged['Sensor porte cuisine'])
if (devicechanged['Sensor porte cuisine'] == 'Open' and otherdevices['Inter Nuit'] == 'On') then
print(devicechanged['Sensor porte cuisine'])
commandArray['Sonoff-jardin']='On'
commandArray['Virtuel jardin']='On'
elseif (devicechanged['Sensor porte cuisine'] == 'Closed') then
commandArray['Sonoff-jardin']='Off AFTER 120'
commandArray['Virtuel jardin']='Off AFTER 120'
end
return commandArrayCode : Tout sélectionner
2020-07-08 21:32:01.136 Status: Schedule item started! Name: Inter Nuit, Type: After Sunset, DevID: 233, Time: 2020-07-08 21:32:01
2020-07-08 21:34:16.832 (Zigate) UpdateDevice - (Sensor porte cuisine) 1:Open
2020-07-08 21:34:19.941 (Zigate) UpdateDevice - (Sensor porte cuisine) 0:Closed-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: Script qui ne se lance pas
Ah zigate.. UpdateDevice
Quand je parlais de vue d'ensemble..
Peut-être une piste à creuser de ce côté là.
On est bien d'accord que tu n'as pas de dispositif nommé jardin ?
Un autre truc qui peut embêter le lancement d'un script est l'appartenance du dispositif au groupe $hidenDevice.
Tu n'as jamais fais de modification dans la base de données manuellement (avec sqlite)?
Quand je parlais de vue d'ensemble..
Peut-être une piste à creuser de ce côté là.
On est bien d'accord que tu n'as pas de dispositif nommé jardin ?
Un autre truc qui peut embêter le lancement d'un script est l'appartenance du dispositif au groupe $hidenDevice.
Tu n'as jamais fais de modification dans la base de données manuellement (avec sqlite)?
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
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: Script qui ne se lance pas
Tiens une bonne piste, j'ai en effet une electrovanne nommé jardin. Et en effet ça fait pas longtemps que je l'ai rajouté.
Tu penses que ça peut gêner entre un device et un nom de script ?
Envoyé de mon Mi 9T Pro en utilisant Tapatalk
Tu penses que ça peut gêner entre un device et un nom de script ?
Envoyé de mon Mi 9T Pro en utilisant Tapatalk