Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Pyknx - package python pour linknx
#1
Bonjour à tous,

J'ai développé un package python intitulé Pyknx disponible sur le package index https://pypi.python.org/pypi/pyknx/

J'ai eu besoin de cela pour utiliser mes détecteurs d'ouverture, mes caméras et mes DAAF pour réaliser un système d'alarme complet qui soit plus facile à maintenir et plus puissant que ce que les règles de Linknx m'auraient permis de faire. Je n'ai pas publié le code relatif au système d'alarme car il n'est pas réutilisable sans modification. Mais Pyknx est un composant permettant de faire tourner un démon python en parallèle de Linknx, lequel reçoit de évènements lorsque des objets de Linknx changent. Pour cela, il faut déclarer un attribut pyknxcallback=maFonction dans le XML de Linknx. L'utilitaire pyknxconf.py permet ensuite d'adapter la config XML pour que la communication avec le démon python ait lieu.

Côté implémentation, vous n'avez plus qu'à définir vos différentes fonctions dans un fichier python et à donner ce fichier en argument de pyknxcommunicator.py, l'utilitaire facilitant le démarrage de ce démon python. Lorsque les objets en question changeront, vos callbacks python seront appelés avec un unique argument "context" qui permet de récupérer les infos utiles comme context.object, context.object.id, context.object.value, etc.

Ce package permet d'autres choses puisqu'il fournit des modules simplifiant l'accès à Linknx depuis votre interpréteur python. Il remplace avantageusement le script lwknxclient.py que j'ai écrit il y a un petit moment maintenant.

Il y a plus d'infos sur la page de PyPI, je ne vais pas tout répéter ici. Si vous avez des questions ou si vous constatez des bugs, merci de m'en faire part.

A+
Cyrille
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet :