Domoticz se pythonise

Une petite news vite fait  :

La mise à jour Beta 2363 apporte le support du langage python au même titre que Lua.

MAJ du 06/04: Cette fonction est uniquement disponible si on compile Domoticz à partir des sources. Pas de support natif

applaudissement 💡

Il y a maintenant un dossier script/python dans lequel nous pouvons déployer des scripts écrits en python.

Le « nommage »  de ces script doit correspondre à celui bien connu en Lua : script_device_XXXXXX.py pour déclencher un script sur le changement d’état d’un device.

A aujourd’hui l’équivalent de script_time de Lua n’est pas implémenté.

Chaque script python reçoit plusieurs variables :

+ * changed_device: the current device that changed (object of Device)
+ * changed_device_name: name of current device (same as changed_device.name)
+ * is_daytime: boolean, true when it is is daytime
+ * is_nighttime: same for the night
+ * sunrise_in_minutes: integer
+ * sunset_in_minutes: integer
+ * user_variables: dictionary from string to value

ce qui une fois traduit donne à peu prés

+ * changed_device: le  périphérique qui vient de changer d’état
+ * changed_device_name: le nom du périphérique qui vient de changer d’état(pareil que changed_device.name)
+ * is_daytime: true est renvoyé si c’est journée (daytime)
+ * is_nighttime: true  si c’est la nuit (night)
+ * sunrise_in_minutes:  un entier qui donne le lever du soleil
+ * sunset_in_minutes: entier pour le coucher du soleil
+ * user_variables: L ‘accès aux variables ( string to value)

Chaque script doit débuter par un

import domoticz

Voici quelques commandes glanées dans le code python

  • device.on() et device.on (after=XXX)
  • device.off(), idem ci-dessus
  • device.ison
  • domoticz.devices ; liste des périphériques
  • domoticz.log (le message a affiche dans le log)
  • domoticz.user_variables.get (« nom de la variable »,valeur (??)

Les quelques essais que j’ai mené hier soir après abus de pina colada n’ont pas été concluants (rien dans les logs Domoticz) même avec un test tout simple. 😕

En effet et pour cause : la compilation est obligatoire à partir des sources et non pas via le téléchargement d’une Béta.

Partie remise à plus tard en attente de vos commentaires éclairés.

Un exemple se trouve donc dans le dossier /scripts/python

Bon Week End de Pâques et bonne chasse aux Oeufs.

lapins_nabaztag_geek

Pour toute question technique concernant cet article, veuillez utiliser les forum situés à https://easydomoticz.com/forum/
Posted in domoticz.

2 Comments

  1. Bonjour,
    Je viens d’avoir une réponse de Gizmocuz sur le forum officiel, cette fonctionnalité n’est disponible que si tu compiles depuis les sources.

Comments are closed.