Page 2 sur 7

Publié : 19 déc. 2014, 16:03
par patrice
L interet de Lua est qu il est intégré å Domoticz et donc apporte des facilités (sendnotification,devicechanged...)
Apres c'est une histoire de gouts et couleurs.
En ce qui me concerne je pratique bash plus facilementet donc zipper un fichier, envoyer une requete https avec identification sont plus faciles pour moi avec shell (ou python que je tente d'apprendre en ce moment)
L'immense avantage de Domoticz est qu 'il expose bcp de choses via Json et donc accesibles par n'impotte quel langage

Bash vs. Lua

Publié : 19 déc. 2014, 22:04
par hobbe
patrice a écrit :L interet de Lua est qu il est intégré å Domoticz et donc apporte des facilités (sendnotification,devicechanged...)
Apres c'est une histoire de gouts et couleurs.
En ce qui me concerne je pratique bash plus facilementet donc zipper un fichier, envoyer une requete https avec identification sont plus faciles pour moi avec shell (ou python que je tente d'apprendre en ce moment)
L'immense avantage de Domoticz est qu 'il expose bcp de choses via Json et donc accesibles par n'impotte quel langage
OK, c'est ce que je me disais.
Merci !

Re: Vigilance météo

Publié : 19 déc. 2014, 23:41
par ben33880
Pour info et la je suis pas sur de dire vrai :
les scripts lua sont systématiquement appelés dès qu'un évènement se passe ?

si oui, ne vaudrait il pas mieux, essayer de décharger ce qui est possible par des scripts bash et faire en lua ce qu'il ne peut pas être fait autrement.

oula y a pas mal de négation dans cette phrase mais bon il est tard .....

Re: Vigilance météo

Publié : 20 déc. 2014, 17:42
par hobbe
ben33880 a écrit :Pour info et la je suis pas sur de dire vrai :
les scripts lua sont systématiquement appelés dès qu'un évènement se passe ?
A ce que j'ai compris, les scripts se déclenchent en fonction de leur type, ainsi :
  • script_time_blahblah.lua :
    Se déclenche toutes les minutes

    Il vaut mieux vérifier la date/heure avant de faire quelque chose, par exemple :

    Code : Tout sélectionner

    time = os.date("*t")
    -- Every 5 minutes
    if ((time.min % 5) == 0) then
      -- Do the job here...
    end
  • script_device_Temperature_Salon.lua :
    Se déclenche à chaque fois ([s]que le périphérique "Temperature Salon"[/s]) qu'un périphérique change de valeur (n'importe lequel).
    [Edit suite au commentaire de ben33880]
  • script_variable_Message.lua :
    Se déclenche à chaque changement de la variable "Message".

    Mais, d'après mes essais, il ne se déclenche pas si la variable est modifiée dans un autre script, avec par exemple :

    Code : Tout sélectionner

    commandArray['Variable:Message'] = "Blah blah"

Re: Vigilance météo

Publié : 22 déc. 2014, 13:35
par ben33880
script_device_Temperature_Salon.lua : se déclenche à chaque fois que le périphérique "Temperature Salon" change de valeur
Ce script se déclenchera dès qu'un périphérique change d'état, c'est pour cela qu'il faut obligatoirement tester dans le script le device.
J'ai lu dans le forum "officiel" Domoticz que les lua ont 10 secondes pour s'exécuter, un gars parlait de regrouper tous les scripts dans un seul fichier afin d'améliorer les performances (éviter les accès en lecture - écriture).

Mais bon, il doit falloir un bon paquet de script pour arriver à bourrer la bécane.

Re: Vigilance météo

Publié : 22 déc. 2014, 13:58
par hobbe
ben33880 a écrit :
script_device_Temperature_Salon.lua : se déclenche à chaque fois que le périphérique "Temperature Salon" change de valeur
Ce script se déclenchera dès qu'un périphérique change d'état, c'est pour cela qu'il faut obligatoirement tester dans le script le device.
J'ai lu dans le forum "officiel" Domoticz que les lua ont 10 secondes pour s'exécuter, un gars parlait de regrouper tous les scripts dans un seul fichier afin d'améliorer les performances (éviter les accès en lecture - écriture).

Mais bon, il doit falloir un bon paquet de script pour arriver à bourrer la bécane.
D'accord, je comprends mieux maintenant. Merci d'avoir précisé.

Le nom du script n'a pas d'impact.
Tous les scripts script_device_*.lua seront déclenchés à chaque changement d'état d'un périphérique.

Il faut donc que le script soit optimisé pour en faire le moins possible, le plus rapidement possible.
En particulier, il faut commencer par vérifier que le script gère le(s) périphérique(s) souhaité(s) uniquement :

Code : Tout sélectionner

commandArray = {}
if (devicechanged['Sonnette Entree'] == 'On') then ...
Merci !

Re: Vigilance météo

Publié : 18 mars 2015, 09:10
par stefacom1
Merci pour le script en lua, pour un idx 333 et un dep 54, ca donnerai quoi ?

je suis novice, et je ne comprend pas tous les ".." dans votre script.

Merci

Re: Vigilance météo

Publié : 18 mars 2015, 13:22
par hobbe
stefacom1 a écrit :Merci pour le script en lua, pour un idx 333 et un dep 54, ca donnerai quoi ?

je suis novice, et je ne comprend pas tous les ".." dans votre script.

Merci
Si tu utilises mon script, c'est facile : 2 lignes à changer :

Code : Tout sélectionner

  -- Device ID (Type Alert on virtual hardware)
  local idx = '333'
  -- Department (France)
  local dept = '54'
Bon courage !

Re: Vigilance météo

Publié : 27 sept. 2015, 12:16
par LSBdu68
Bonjour à tous,

Il semble que le site DOMOGEEK ne soit toujours pas actif bien que j'utilise le nouveau lien. Auriez vous une explication ?

Merci

Re: Vigilance météo

Publié : 27 sept. 2015, 13:09
par vil1driver
pourtant ici ça fonctionne plutôt bien

dans les url tu remplaces simplement le nom de domaine

Code : Tout sélectionner

api.domogeek.fr
par

Code : Tout sélectionner

domogeek.entropialux.com