Mon script lua se lance sans arret...

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 <\>.
Répondre
pchatill
Messages : 139
Inscription : 12 août 2015, 15:57

Mon script lua se lance sans arret...

Message par pchatill »

Bonjour.
Je decouvre petit a petit le monde de domoticz.
Aujourd'hui: les scripts !
J'ai fait un petit script tout simple qui ne fait qu'imprimer un texte.
Il s'agit d'un script device (script_device_test.lua) que j'ai mis dans /home/pi/domoticz/scripts/lua
Mais quand je vais dans les logs je vois que celui-ci se lance 5 fois de suite
Puis toutes les 30 secondes cela recommence.
Je pige pas pourquoi...
Ou est l'erreur?

Merci
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
DEBIAN_VERSION_FULL=13.4
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Mon script lua se lance sans arret...

Message par vil1driver »

Salut,

C'est le fonctionnement normal ;)
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
pchatill
Messages : 139
Inscription : 12 août 2015, 15:57

Re: Mon script lua se lance sans arret...

Message par pchatill »

Ah bon ...Je comprends pas...
Je croyais qu'on lançait le script sur un changement de valeur de composant.
je pensais que si device= ON ou OFF alors je lance mon script.
Ce qui a l'air vrai puisque quand j'actionne mon composant le script se lance aussi (une seule fois)
En fait le script se lance toutes les 30 secondes et c'est dans le script qu'on regarde si un composant a changé? C'est bien cela?
Mais pourquoi est-il lancé 5 fois de suite?

Decidemment, j'ai tout a decouvrir... et rien dans la doc a ce sujet!
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
DEBIAN_VERSION_FULL=13.4
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Mon script lua se lance sans arret...

Message par vil1driver »

Tous les script_device se lancent dès qu'un périphérique est mis à jour, quel qu'il soit.

Du coups dans le script on commence généralement par vérifier que c'est tel ou tel périphérique qui vient d'être mis à jour pour déclancher les actions...
Dernière modification par vil1driver le 18 sept. 2015, 19:07, modifié 1 fois.
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
pchatill
Messages : 139
Inscription : 12 août 2015, 15:57

Re: Mon script lua se lance sans arret...

Message par pchatill »

Je commence a comprendre le fonctionnement du script_device.
Je pensais au debut que le script_device_X ne se lancait que si device X avait changé et ne se lancait pas si device_Y avait changé.
Mais pourquoi mon script se lance tout seul 5 fois de suite ( et ce toutes les 30 secondes) alors qu'aucun device n'a changé?
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
DEBIAN_VERSION_FULL=13.4
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Mon script lua se lance sans arret...

Message par vil1driver »

T'en est certain ? pas de téléinfo ou sondes de températures ou détecteur de mouvement ou météo ou valeur cpu etc...
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
pchatill
Messages : 139
Inscription : 12 août 2015, 15:57

Re: Mon script lua se lance sans arret...

Message par pchatill »

Ben oui.
J'avais meme fait l'essai cet apres midi de supprimer toutes mes sondes et tout mon materiel.
Apres un reboot du raspi: toujours pareil...
Et quand je dis 5 fois de suite, c'est toujours 5 fois et en moins d'un dixieme de seconde
Et quand je dis 30 secondes, c'est exactement 30 secondes.
Je comprends pas...
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
DEBIAN_VERSION_FULL=13.4
pchatill
Messages : 139
Inscription : 12 août 2015, 15:57

Re: Mon script lua se lance sans arret...

Message par pchatill »

Je viens de tout resupprimer: toujours pareil.

Une petite precision: juste avant le lancement de la série des 5 scripts, j'ai le message:

2015-09-18 19:14:16.000 Hardware Monitor: Fetching data (System sensors)
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
DEBIAN_VERSION_FULL=13.4
pchatill
Messages : 139
Inscription : 12 août 2015, 15:57

Re: Mon script lua se lance sans arret...

Message par pchatill »

Je progresse !!
Quand je fais Reglages/Materiel et que je supprime les motherboard sensors: cela resoud mon probleme
Mais quand je reboot le raspi, ce materiel est de nouveau là!
Par contre si je desactive au lieu de supprimer, le probleme a l'air reglé
On verra dans les prochains jours: je surveille mes logs...

Merci et bonne soirée
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
DEBIAN_VERSION_FULL=13.4
heartblood
Messages : 189
Inscription : 13 août 2015, 09:50

Re: Mon script lua se lance sans arret...

Message par heartblood »

pchatill a écrit :Je progresse !!
Quand je fais Reglages/Materiel et que je supprime les motherboard sensors: cela resoud mon probleme
Mais quand je reboot le raspi, ce materiel est de nouveau là!
Par contre si je desactive au lieu de supprimer, le probleme a l'air reglé
On verra dans les prochains jours: je surveille mes logs...

Merci et bonne soirée
C'est normal qu'ils reviennent après un reboot.

Ce module t'indique les valeurs de ton cpu, RAM, temperature ... de ton raspberry pi. Comme expliqué plus haut, quand une valeur est envoyée au RPI, le script_device se lance. Pour que ton script ne se lance pas tout le temps, il faut mettre dans celui-ci : if (devicechanged['nom du module']) then
Répondre