Afficher le thermostat Jeedom dans Homebrige
Prérequis
-
Avoir un thermostat opérationnel sous jeedom
Le thermostat Jeedom susnommé est créé à partir du plugin thermostat de Jeedom https://doc.jeedom.com/fr_FR/plugins/wellness/thermostat/?theme=dark -
Avoir un serveur homebridge opérationnel
Si les prérequis sont établis, vous pouvez passer directement à la partie configuration d’HomeBridge
Installation de docker-compose
Le plus simple pour installer homebridge est d’utiliser docker compose. Si vous l’avez déjà sur une de vos machines, rien de plus simple, passez directement à la partie installation d’HomeBridge.
Autrement, suivez le guide Overview of installing Docker Compose | Docker Docs ou mon mini tuto.
Pour ma part, docker compose est installé sur une VM Linux (debian). Les commandes suivantes ont été utilisées, mais tout est décrit avec de plus amples détails sur le lien du guide plus haut.
Installation de docker
sudo apt-get update
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/debian \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo docker run hello-world
Cette dernière commande valide l’installation de docker
Installation de docker-compose
sudo apt update
sudo apt install python-pip
sudo pip install docker-compose
Installation d’HomeBridge
Vous pouvez suivre la documentation officielle directement sur le site https://homebridge.io/.
Pour suivre le tuto basé sur ma propre installation :
Créez ou éditez votre fichier docker-compose.yml
nano docker-compose.yml
Ajoutez les lignes suivantes
version: '3'
services:
homebridge:
image: oznu/homebridge:latest
container_name: homebridge
restart: always
network_mode: host
environment:
- TZ=Europe/Paris
- PGID=1000
- PUID=1000
- HOMEBRIDGE_CONFIG_UI=1
- HOMEBRIDGE_CONFIG_UI_PORT=8080
volumes:
- ./homebridge:/homebridge
Enregistrez (CTRL+X puis O)
Notons que le mode « host » pour le réseau est très importante pour le fonctionnement de homeBridge
Compose va se charger de télécharger le container, créer et lancer votre image.
docker-compose up -d homebridge
Et voilà, homeBridge est installé et déjà opérationnel !
Configuration d’HomeBridge
Connectez vous sur l’interface web de homeBridge http://#votre_IP#:8080
Le login/ mot de passe par défaut est admin/ admin. Je vous invite à le modifier dès maintenant.
Aller dans les plugins, recherchez et installez homebridge-http-jeedom. Ce plugin permet déjà de créer des objets de type interrupteurs et température. Je me suis basé dessus pour ajouter la partie thermostat. Je vais prochainement demander à l’auteur l’intégration de mon code. Autrement je ferai un fork, mais ça serait dommage, ça va perdre les utilisateurs… En attendant ça complexifie la chose mais dans le futur tout sera intégré sans « bidouille ».
Tapez « Jeedom » dans le champ de recherche puis « Installer » sous le plugin Homebridge Http Jeedom
Vous pouvez en profiter pour ajouter les plugins Alexa et Google Smart Home si vous en avez besoin.
C’est l’étape la plus délicate, il faut remplacer le fichier index.js du plugin homebridge-http-jeedom
par ce fichier homebridge-http-jeedom/index.js at develop · SupraDolph/homebridge-http-jeedom · GitHub
Personnellement je fais ça avec un partage samba mais vous pouvez le faire directement dans nano :
nano homebridge/node_modules/homebridge-http-jeedom/index.js
Retournez dans votre navigateur et redémarrer homebridge en utilisant le bouton présent dans la barre d’outil.
Une fois le serveur redémarré, retournez dans la section plugin et cliquez sur réglages du plugin homebridge http jeedom.
La documentation du plugin est présente sur le repository de l’auteur : GitHub - jude16/homebridge-http-jeedom: Jeedom HTTP Plugin for Homebridge
Cliquez sur « Add Accessory » et ajouter le code JSON suivant :
{
"accessory": "HttpJeedom",
"jeedom_url": "http://192.168.x.x",
"jeedom_api": "azertyuiopqsdfvgbbhjklwxcvbn",
"service": "ThermostatService",
"name": "Thermostat rez de chaussée",
"thermostatID": "97"
}
- accessory : Ne pas y toucher il est en lien avec le plugin
- jeedom_url : Votre url permettant d’accéder à Jeedom (idéalement interne)
- jeedom_api : Clé API de votre Jeedom (Réglages > Système > Configuration > API > Clé API)
- service : Doit être ThermostatService pour un thermostat (sinon se référer à la page GitHub)
- name : Nom du thermostat (Pour Alexa, Maison, Home…)
- thermostatID : Identifiant du thermostat Jeedom (récupérable dans Jeedom sous Analyse > Résumé Domotique)
Et c’est tout, l’intégralité des commandes du thermostat seront récupérées automatiquement par le plugin.
Redémarrer homebridge en utilisant le bouton présent dans la barre d’outil.
Votre thermostat Jeedom (ici avec la surcouche du plugin thermoAlternateView)
Est devenu un thermostat Accessible sur tous vos devices…