Archives par mot-clé : Lua

LUA : Alarme augmentation température V2

Dans la version 1 de ce script il était possible de comparer la valeur de sondes de température ambiante à un seuil d’alarme unique.
Ceci afin d’etre prévenu en cas d’augmentation anormale d’une température ambiante assimilable à une pré-alarme incendie.
Les principaux inconvénients :
– limités aux seuls températures ambiantes
– un seul seuil de température
La version 2 permet :
– d’utiliser n’importe quelle sonde de température
– de définir un seuil personnalisé par sonde
– de définir des seuils par groupe (type) de sondes
– de définir un seuil par défaut pour les sondes sans groupe ni seuil personnalisé.
– de définir pour chacune des sondes un système de notification différent
– de modifier le délai d’exécution du script simplement
– d’activer/désactiver simplement l’exécution du script

Continuer la lecture de LUA : Alarme augmentation température V2

LUA : Récupération des informations du site ecopellets

le script pourrait être beaucoup plus simple, mais j’ai pris le parti de faire en sorte qu’il soit le plus facile à utiliser.
ce script ne fait que récupérer les données json du site https://www.ecopellets.fr/ et mets à jour les devices que l’on souhaite utiliser.
il s’exécute toutes les 30 minutes, modifiable via la variable delai
il créé automatiquement les devices listés dans le tableau les_devices si ils n’existent pas.

chaque device est déclaré via une ligne
les_devices[#les_devices+1] = {device= » », nom = » », sensortype = » »}

Continuer la lecture de LUA : Récupération des informations du site ecopellets

LUA : Créer un capteur virtuel

Dans les scripts LUA pour domoticz, nous utilisons la plupart du temps un ou plusieurs capteur(s) virtuel(s). Ce ou ces capteurs doivent être créés préalablement en indiquant à l’utilisateur final quel type de capteur il doit créer afin que le script qu’il tente d’utiliser soit fonctionnel du premier coup.
Je vous propose ici une fonction vous permettant de créer directement le ou les capteur(s) virtuel(s) nécessaire à l’exécution de votre script.
Il est possible de créer un capteur sans l’associer à un hardware, mais pour ma part, je préfère l’associer à un hardware existant de type dummy.
Cette fonction recherche donc si un hardware de type 15 existe et retourne l’ID de cet hardware.
Maintenant, pour créer un capteur virtuel il faut déterminer quel sera sont type.
Voici la liste des differents types de capteurs virtuels


Continuer la lecture de LUA : Créer un capteur virtuel

LUA : Script de détection fuite d’eau V2

Dans la version 1 du script je souhaitais mettre en place un script pour « surveiller » ma consommation d’eau afin d’etre prévenu en cas de consommation anormale (surconsommation). Idéal pour détecter une rupture de canalisation, chasse d’eau HS ou robinet resté ouvert.
La version 2 de ce script pour domoticz inclus maintenant une période (personnalisable) de surveillance pour permettre la détection des micro-fuites type goutte à goutte.
Le principe : au début d’une période d’inactivité journalière de votre logement (idéalement la nuit lorsque tout le monde dort), le script mémorise l’index du ou des compteurs déclarés.
Ensuite, après un laps de temps assez long, (2 ou 3 heures), le script compare le nouvel index avec celui en mémoire et vous notifie d’une présence ou absence de fuite.
2016-05-04 18_30_26-Domoticz
Continuer la lecture de LUA : Script de détection fuite d’eau V2

DZVents : Changement d’IP publique

Après avoir rédigé un script en LUA pour être informer de son changement d’ip, j’ai regardé plusieurs scripts sur le forum officiel et je suis tombé sur un plugin python qui devait faire la même chose.
Je l’ai essayé chez moi sans succès sur mon PI de test. Pourquoi parler python alors que le titre de cet article nous promet du DZVents?
dans ce post il y a à la septième page un script DZVents qui m’a donné envie de le tester. Pour ceux que cela intéresse, il est là
Après l’avoir testé avec succès donc, je me suis mis en tète de l’améliorer car je trouvais dommage d’utiliser un fichier temporaire pour récupérer l’adresse publique via le site http://whatismyip.akamai.com/ utilisé par Emme le créateur du script et Manjh celui qui l’a légèrement modifié et proposé sur le thread du plugin python.
Pour ceux qui ne connaissent pas DZVents, c’est un framework en LUA sensé simplifier le codage. pour en savoir plus, la documentation DzVents c’est la.
Du coup, dans mon élan pour améliorer encore un peu ce script, je me suis amusé à créer le device automatiquement au premier lancement pour simplifier encore plus l’utilisation.
J’ai aussi ajouté un test simple de validation de l’adresse IP résultant de la requête afin de limiter les faux positifs.


Continuer la lecture de DZVents : Changement d’IP publique

Etre notifié de son changement d’IP publique en LUA

Rien de plus embêtant que de ne plus pouvoir accéder à distance à son installation parce que votre fournisseur d’accès vient de changer votre adresse IP. Bien sur il existe plusieurs services de nom de domaine dynamique gratuit ou payant pour vous permettre l’accès en continu, mais pourquoi ne pas en profiter pour faire un petit script LUA au cas ou?
ce script utilise l’API du site myip.com et vous permet d’etre notifié de chaque changement

Continuer la lecture de Etre notifié de son changement d’IP publique en LUA

Un dépôt github pour toujours trouver les dernières versions des scripts

Bonne et heureuse année 2018
Pour bien commencer l’année j’ai ouvert un github regroupant l’ensemble des scripts présentés ici.
Ce dépôt vous permettra de toujours trouver la dernière version de ces scripts et vous pourrez éventuellement proposer des « issues » : corrections ou améliorations.

Continuer la lecture de Un dépôt github pour toujours trouver les dernières versions des scripts

Indication luminosité d’une pièce dans monitor

Comme dashboard pour ma domotique, j’utilise la Custom Page de vil1driver, aussi appelé monitor.
j’utilise donc monitor pour afficher chacune de mes pièces et leur contenu domotique.
pour ce faire j’ai personnalisé le fichier page5.html (affichage de 4 pieces) pour afficher mon rez de chaussée (rdc.html) et l’étage (etage.html)
et leur fichier css associé (rdc.css et etage.css modifiées depuis le fichier page5.css).
avec l’arrivée des capteurs de mouvement et de luminosité xiaomi aquara et un blocky simple ou via un script, il est très simple de savoir si la lumière électrique non domotisée est allumée ou éteinte.
je souhaite bien sur afficher cette information sur monitor.
pour chacune des pièces à traiter (#rdc_1, #rdc_2, #rdc_3, #rdc_4 ) il suffit d’ajouter dans le css

mais comment rendre ce css conditionnel à la valeur d’un device ou d’une variable?
exemple de ce que cela donne :

Continuer la lecture de Indication luminosité d’une pièce dans monitor