Domoticz Scripts DzVents - vzwingma/domotique GitHub Wiki

Cette page présente les scripts DzVents définis pour Domoticz :

La plupart des scripts sont en LUA / DzVents

DzVents

La documentation se trouve ici

Scripts

Etat des interfaces connectées à la Freebox

Ce script vérifie l'état des composants connectés au Wifi et au LAN de la freebox. Il mets à jour les statuts dans Domoticz. Cela est utilisé pour déclencher des actions lorsqu'il n'y a personne à la maison comme couper les interrupteurs, ou rallumer la lumière en revenant le soir.

Il appelle périodiquement l'API exposée par la Freebox delta qui maintiens la liste des périphériques connectés puis il change l'état dans Domoticz, si celui ci a changé.

Cela est gérée par les scripts suivants :

Script LUA de connexion à la freebox

Le script LUA est déclenché périodiquement et il se connecte à la Freebox et ouvre une session. Le détail de cette procédure est décrite https://dev.freebox.fr

  • Il récupère les UserVariables suivantes :
        freebox_host : host de la freebox : mafreebox.freebox.fr/api/v9
        freebox_apptoken : Token applicatif créé au préalable
  • puis, il se loggue et ouvre une session sur la Freebox
  • ensuite, il envoie la notification freebox_session pour déclencher les deux autres scripts suivants
  • enfin, lorsqu'il reçoit la notification freebox_endsession, il se déloggue

Script LUA de supervision de la connexion à la freebox

Le script LUA est déclenché sur notification freebox_session

Le script relève l'état de connexion à la Freebox par le service Connection. L'API recueille l'état de la Freebox (active) et met à jour l'état dans Domoticz

Script LUA de supervision de connexion des périphériques

Le script LUA est déclenché sur notification freebox_session

Il récupère la UserVariables suivante :

 freebox_devices : la liste des équipements à superviser. Le séparateur est ","

Le script est découpé en plusieurs étapes :

- Liste les périphériques réseau connectés à la Freebox
- Met à jour le statut des équipements domotiques : le Raspberry et la box tydom
- Met à jour le statut des équipements Freebox: la livebox et la box TV
- Met à jour le statut des équipements NAS
- Met à jour le nombre des mobiles connectés

Liste des périphériques connectés à la Freebox

  • La liste des périphériques est reçue du service LAN. L'API recueille l'état du périphérique (active ) pour chacun des périphériques listés

Tydom Thermostat

Commande

Cette commande est associée au device Tydom Thermostat et appelle le bridge Tydom pour commander le thermostat de l'appartement.

La commande est réalisée dans un script DzVents

Il utilise la UserVariables suivante pour faire le lien avec la passerelle :

 `VAR_TYDOM_BRIDGE` : IP du bridge Tydom

et appelle l'API PUT : /device/{{deviceId}}/endpoints/{{endpointId}} avec le body

    {
        "name": "setpoint",
        "value": {{température}}
    }

Mise à jour du statut

Cette commande est associée au device MaJ Tydom Temperature et à une tâche périodique toutes les heures, pour synchroniser la valeur du thermostat, par rapport à des commandes réalisées directement sur la box Tydom

La commande est réalisée dans un script DzVents

Il utilise la UserVariables suivante pour faire le lien avec la passerelle :

 `VAR_TYDOM_BRIDGE` : IP du bridge Tydom

Tydom Volets

Commande

Cette commande est associée aux devices Volets et appelle le bridge Tydom pour commander la position des volets de l'appartement.

La commande est réalisée dans un script DzVents

Il utilise la UserVariables suivante pour faire le lien avec la passerelle :

 `VAR_TYDOM_BRIDGE` : IP du bridge Tydom

et appelle l'API PUT : /device/{{deviceId}}/endpoints/{{endpointId}} avec le body

    {
        "name": "position",
        "value": {{pourcentage d'ouverture}}
    }

Scènes

Commande

Ces commandes sont associées aux scènes Domoticz et implémentent les logiques de scénarios associées, en déclenchant des devices. Les actions sur les devices déclenchent les scripts Tydom décrits ci dessus

Pour chaque scène, la commande est réalisée dans un script DzVents Scene_0_nom_scene.lua

Le script applique des modifications aux devices Domoticz :

 domoticz.devices(domoticz.helpers.DEVICE_TYDOM_xxxx).action()

ou aux groupes Domoticz :

 domoticz.groups(domoticz.helpers.GROUPE_xxxx).action()

Groupes

Commande

Ces commandes sont associées aux groupes Domoticz et implémentent les logiques sur les devices associés. Les actions sur les devices déclenchent les scripts Tydom décrits ci dessus

Pour chaque groupe, la commande est réalisée dans un script DzVents Groupes_nom_groupe.lua

Le script applique des modifications aux groupes Domoticz :

 domoticz.groups(domoticz.helpers.GROUPE_xxxx).action()

IoT

TODO