[Tuto] gBridge ou comment interfacer simplement Google Assistant

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
Deufo
Messages : 280
Inscription : 26 févr. 2019, 16:25

[Tuto] gBridge ou comment interfacer simplement Google Assistant

Message par Deufo »

N'ayant pas encore vu de sujet à propos de gBridge, je vous propose ce petit tuto pour mettre en place cette solution que je trouve super simple à utiliser.
Tout d'abord, un aperçu du sujet : https://about.gbridge.io/
La solution est open source, il est donc possible de l'utiliser localement comme à distance.
Une compatibilité d'alexa est à l'étude.

Il est possible de piloter et demander l'état de :
- ampoules (on/off, intensité, couleur)
- prises
- thermostats/sondes de température
- volets/occultants

Il y a 3 configurations possibles que je vais détailler progressivement ci dessous en fonction de l'hébergement ou non de l'interface et d'un serveur MQTT.
  1. Solution tout en ligne
Avantage :
- C'est la plus simple, on utilise directement les serveurs officiels (interface + MQTT).
Inconvénients :
- Limité à 4 dispositifs ou payant (à partir de 1$/mois pour l'hébergement).
- Mise à jour de l'état des dispositif uniquement sur requête de commande de l'assistant (le plugin n'est pas notifié des mises à jour des dispositifs).

Comment faire :
- s'inscrire sur https://gbridge.kappelt.net/register
- installer le plugin gBridge pour domoticz : https://github.com/giejay/domoticz-gbridge-plugin

Code : Tout sélectionner

git clone https://github.com/giejay/domoticz-gbridge-plugin.git
Il suffit ensuite de renseigner les options du plugin comme indiqué dans le readme du plugin avec les informations disponibles sur l'interface gBridge :
Image

Puis d'ajouter gBridge en description du dispositif. A l'activation du plugin ou à la demande de synchronisation google, les dispositifs sont vérifiés et ajoutés.

Enfin, côté google assistant, tout le détail ici : https://doc.gbridge.io/firstSteps/getti ... -assistant
Il faut ajouter un nouvel appareil et sélectionner :
Image

Ensuite, entrer login/mot de passe du site.
Les différents dispositifs vont apparaitre progressivement. Il est maintenant possible de les commander.


  • Solution partiellement en ligne (MQTT local)
Pré-requis : serveur MQTT local (https://www.domoticz.com/wiki/MQTT)

Avantage:
- le plugin va pouvoir s'inscrire au topic de domoticz et récupérer les mises à jour des dispositifs de manière instantanée
Inconvénient :
- Payant ou limité à 4 dispositifs.

Il faut faire les différentes étapes précédentes et indiquer le MQTT local au lieu de celui du serveur gBridge.
Pour avoir les informations de domoticz, il faut ajouter le matériel "MQTT Client Gateway with LAN interface" comme décrit dans la page du wiki et sélectionner "out" pour le topic. Le plugin va pouvoir s'y inscrire pour y récupérer les informations.
Il manque maintenant le lien vers le serveur MQTT de l'interface gBridge, il faut donc configurer son serveur MQTT pour y accéder (https://doc.gbridge.io/firstSteps/mqttS ... s-a-bridge):

Editer son fichier de config de mosquitto (généralement /etc/mosquitto/mosquitto.conf)
Ajouter à la fin en renseignant les champs utiles :

Code : Tout sélectionner

connection kappelt-gbridge
address mqtt.gbridge.io:8883
bridge_attempt_unsubscribe true
bridge_protocol_version mqttv311
cleansession true
remote_username {gbridge-mqtt-username}
remote_password {gbridge-mqtt-password}
remote_clientid gbridge-u{userid}-{randomstring}

topic gBridge/u{gbridge-userid}/+/+ both 0 "" ""
topic gBridge/u{gbridge-userid}/+/+/set both 0 "" ""
#you might need to change the path of the CA files
#This one is valid for most Debian based systems
bridge_capath /etc/ssl/certs/
bridge_tls_version tlsv1.2
randomstring est une chaine alpha/numérique que vous devez créer, peut-importe son contenu tant qu'elle est unique.
Relancez mosquitto et vérifiez les logs, la connexion au serveur gbridge doit être bonne.


  • Solution locale
Pré-requis :
- serveur MQTT local (https://www.domoticz.com/wiki/MQTT)
- nom de domaine, ouvrir le port 443 et certificat SSL
- gestion docker

Avantage:
- tout chez soi (sauf les requêtes google)
- pas de limite de dispositifs
Inconvénient :
- suivre les mises à jour

https://doc.gbridge.io/selfHosted/hostItYourself.html

Plus de détails à venir, l'installation sur rpi est plus complexe que la documentation du site mais fonctionne.
Même s'il faut ouvrir le https sur sa machine, seul l'accès à l'api google via le lien https://YOUR-WEBSERVER'S-ADDRESS/gapi/auth est fonctionnel, par ailleurs, l'Oauth est utilisé.

Merci de vos retours.
Dernière modification par Deufo le 24 avr. 2019, 14:40, modifié 1 fois.
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: gBridge ou comment interfacer simplement Google Assistant

Message par Neutrino »

Super tuto !!!
Je vais regarder ça de plus prêt, merci ;)
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
Répondre