Script Python pour Heatzy Pilote
Nous tenons à remercier Thomas pour la rédaction de ce contenu et le développement d’un script Python.
Ce contenu est également disponible ICI ;)
heatzy
Je dispose chez moi de devices Heatzy, qui me permettent de gérer simplement le mode de mon chauffage.
Utilisant Home Assistant à la maison, je souhaitais les intégrer simplement à ma domotique.
A partir de l'API disponible sur Google Drive, j'ai donc écrit ce package python (disponible également sur PyPi).
Ce package ne gère (pour l'instant en tout cas) ni la programmation ni les Heatzy Flam.
Usage
Installation
Vous pouvez l'installer depuis PyPi avec pip :
$ pip install
Vous pouvez également l'installer depuis la source :
$ git clone https://github.com/tmz42/python-heatzy.git $ cd python-heatzy $ python setup.py install
Python
Le package heatzy propose deux classes :
HeatzyHandler, qui gère la connexion à l'API et génère les devices
HeatzyDevice, qui correspond à un device heatzy installé et associé à votre compte.
Voici comment l'utiliser :
>>> import heatzy # Créez en premier lieu le Handler avec votre login/password utilisés dans l'application. # L'opération de login se fait automatiquement, et génère une exception en cas de crash >>> hh = heatzy.HeatzyHandler('bidon@bidon.fr', 'p@ssw0rd') # Cette ligne récupère tous les devices associés à votre compte sous forme de dictionnaire >>> deviceDict = hh.getHeatzyDevices() # Jouons avec le device nommé Chambre >>> device = deviceDict['Chambre'] # Quel est son état? >>> device.status() 'ECO' # Cela aurait pu être 'OFF', 'HGEL', 'ECO' ou 'CONFORT' # Passons-le en mode confort... >>> device.confort() # Et vérifions si cela a marché. >>> device.status() 'CONFORT' >>> device.off() # On le passe en mode délestage >>> device.horsgel() # On le passe en mode hors gel >>> device.eco() # On le passe en mode eco >>> device.setMode('ECO') # Une autre façon de changer le mode ('OFF', 'HGEL', 'ECO', 'CONFORT')
CLI
Ce package inclut également un utilitaire ligne de commande pour manipuler les Heatzy.
$ heatzy-cli usage: heatzy.py [-h] [-u USERNAME] [-p PASSWORD] [-d DEVICE] [-l] [-m SETMODE] Controls Heatzy devices throught the CLI optional arguments: -h, --help show this help message and exit -u USERNAME, --username USERNAME Username on the Heatzy (Gizwits) platform -p PASSWORD, --password PASSWORD Password of the user -d DEVICE, --device DEVICE Name of the Heatzy device you wish to control -l, --list List all devices -m SETMODE, --setmode SETMODE Sets the mode of the device $ heatzy-cli -u login@heatzy.com -p p@ssw0rd -l # Liste les Heatzy ChambreHeatzyDevice : name:Chambre,did:didbidonzzzzz,version:Pilote2,mode:OFF SalonHeatzyDevice : name:Salon,did:didbidonxxxxx,version:Heatzy,mode:ECO $ heatzy-cli -u login@heatzy.com -p p@ssw0rd -d Chambre # Affiche l'info d'un heatzy HeatzyDevice : name:Chambre,did:didbidonzzzzz,version:Pilote2,mode:OFF $ heatzy-cli -u login@heatzy.com -p p@ssw0rd -d Bedroom -m ECO # Change le mode du heatzy à Chambre
Intégration Home Assistant
Dans le sous-répertoire opt/homeassistant, un fichier heatzy.py fournit le composant vous permettant d'intégrer Heatzy à Home Assistant.
Placez le dans votre répertoire '/custom_components/climate' (créez-le le cas échéant), et éditez votre fichier configuration.yaml :
# Heatzy climate: - platform: heatzy username: 'bidon@bidon.com' password: 'p@ssw0rd'
Ce component intègre vos périphériques heatzy sous forme de device Climate, dont vous pouvez changer l'Operation Mode dans vos scripts et automatisations.