Piloter et contrôler Jeedom avec Google Home/Amazon Alexa au travers du cloud

Quand j’ai débuté dans le monde des objets connectés, je pensais sincèrement que Google Home serait le coeur de mon installation. Je me suis vite rendu compte de mon erreur : Google Home est très très limité, le support de Google est nullisme et finalement Google Home ne fonctionne bien que pour ce qui est basique. Je suis donc passé à Jeedom pour piloter mes appareils et cela fonctionne à merveille. Mais  on ne peut tirer son plein potentiel qu’en y connectant les assistants vocaux (Google Home ou Amazon Alexa) afin d’interagir avec son Jeedom par la voix. 

Installation des plugins : Google Smarthome et Alexa

La première étape consiste à installer le plugin Google Smarthome sur Jeedom, un plugin payant (4 euros) disponible sur le market officiel. Ce plugin permet de configurer les équipements que l’on pourra utilisé ensuite avec Google Home. 

Google Smarthome

Si vous voulez contrôler vos équipements à partir d’Amazon Alexa, c’est alors un autre plugin qu’il faut installer : Alexa. Celui-ci est gratuit.

Plugin Alexa

Le plugin Google Smarthome et le plugin Alexa imposent tout deux une pré-condition : il faut absolument que Jeedom soit accessible en HTTPS car le plugin ne fonctionne pas en HTTP. Si vous ne savez pas comment procéder, un service DNS est possible chez Jeedom. Personnellement, j’ai opté pour l’achat d’un domaine chez OVH (1,99 euro par an) et pour l’installation de certificats SSL gratuits. Attention que si le HTTPS n’est pas installé correctement, ce qui était le cas au début chez moi, vous pourrez aller jusqu’au bout de la procédure et voir dans Google Home les objets mais leur statut restera toujours “hors connexion”. 

Le plugin Google Smarthome pour Google Home

Une fois le plugin Google Smarthome installé, deux modes sont possibles sur la page de configuration.

Jeedom Smarthome Cloud ou Standalone

Le mode “Standalone” est plus compliqué à mettre en oeuvre et implique des contraintes notamment celles évoquées par le concepteur du plugin:

Le mode standalone est une “arnaque” car cela vous fait créer une application chez Google en mode développement qui ne permet la synchronisation que pendant 3 jours après activation du mode test. Il faut donc lors de l’ajout ou modification des équipements réactiver le mode test tous les 3 jours pour pouvoir faire une synchronisation. Attention on parle bien d’une modification de la configuration si vous n’ajoutez pas ou ne modifiez pas d’équipements il n’y a rien a faire l’application marchera sans limite de temps

Etant donné que l’application est une application de dev coté Google ils peuvent à tout moment la couper, la supprimer ou changer les régles. Dans ce cas Jeedom ne pourra aucunement être tenu responsable en cas de mauvais fonctionnement.

L’autre mode, “Cloud”, est payant : 12 euros par an. Jeedom a été pensé pour fonctionner hors Cloud mais les assistants vocaux nécessitent, eux, de passer par un cloud. Il faut donc que Jeedom stocke ses informations dans un cloud, ce qui a un coût. Trois mois sont offerts avec l’achat du plugin Google Smarthome. Ensuite, il faudra prolonger son service via le Jeedom Market et via ce lien : https://www.jeedom.com/market/index.php?v=d&p=profils#services

Piloter et contrôler Jeedom à la voix - Abonnement Cloud

C’est le mode Cloud que j’ai choisi de configurer.

1. Google Smarthome – Envoi de la configuration

La première étape consiste à cliquer sur le bouton “Envoyer” dans la page de configuration du plugin Google Smarthome afin d’envoyer la configuration (c’est à dire envoyer ses informations de connexion à l’API du plugin) au cloud Jeedom Market. Afin de vérifier que tout s’est bien passé, on peut retourner sur l’écran ci-dessus (l’écran des services du Jeedom Market) et on peut cliquer sur le bouton bleu “D’actualité” pour voir ce qui est activé. Le bouton “v Google Smarthome”, une fois cliqué, ouvre une fenêtre avec l’URL de votre Jeedom et le statut “Commande OK”. Vérifiez bien que cette étape fonctionne avant de continuer.

Services Jeedom

2. Google Smarthome – remonter les équipements Jeedom

La seconde étape consiste à choisir ce que l’on va remonter dans le cloud afin que les assistants vocaux puisse les utiliser.

  • Aller dans Plugins / Communication / Google Smarthome

Communication / Google Smarthome

  • Les équipements connus de Jeedom sont alors affichés. En choisir un, comme ici un capteur de présence (et de température) Philips Hue . Cocher “Transmettre” (afin de pouvoir utiliser l’appareil dans Google Home) et “Remonter l’état” (afin de faire remonter l’information de température). Choisir aussi le type d’appareil, ici un Thermostat. Cela permettra à Google d’interpréter les commandes vocales. J’espère vivement que Google va enfin implémenter les objets capteurs et qu’on ne doive plus passer par un “faux” thermostat pour remonter une information de température. Une option permet de configurer un code pin qui serait demandé par l’assistant vocal avant d’exécuter la commande. C’est une couche de sécurité supplémentaire peu utile pour un capteur de température (mais qui peut-être utile, par exemple, pour désactiver une alarme).

Remonter un équipement Philips Hue

  • Cliquer sur sauvegarder. 
  • Rafraîchir la page et vérifier, pour chaque appareil que l’on choisi de remonter, que le statut est bien “OK”. Car, pas de chance avec les capteurs de présence Hue, ils passent en NOK à ce stade.

Capteur Hue NOK

3 Google Smarthome – gérer le cas des capteur de présence/température Philips Hue

Certains appareils, comme les capteurs de présence Philips Hue, ne remontent pas nativement dans le cloud. L’erreur est “Voici les générique type qui sont utilisation avec votre type d’équipement”. Visiblement, il n’y en a pas, par défaut, pour les capteurs Hue.

Erreur capteur Hue

Mais ce n’est pas grave : on peut contourner le problème avec un virtuel (créé via le plugin virtuel à installer dans Jeedom depuis le market):

  • Créer un équipement virtuel dans la catégorie “Chauffage”. Cocher “Activer” et “Visible”

Equipement virtuel

  • Cliquer sur le tab “Commandes”. Cliquer sur “+ Ajouter une info virtuelle”. Lui donner le nom de “Consigne” et choisir le Sous-Type “Numérique”. Dans Valeur, cliquer sur le bouton “Rechercher équipement” pour aller sélectionner la température du capteur Hue (ce qui remplira, chez moi, la valeur suivante :#[Hall][Hue motion sensor Hall bas][Température]#). Cliquer sur “Sauvegarder”

Virtuel Commande

  • Cliquer sur “Configuration avancée”. Au niveau des commandes (en fond d’écran), cliquer sur le bouton avec les engrenages pour la commande Consigne (la première dans l’écran ci-dessous).

Configuration avancée

  • Cliquer sur le tab “Configuration”. Au niveau de “Type générique”, choisir “Thermostat consigne”. Cliquer sur “v Enregistrer”

Thermostat consigne

  • Refaire la même étape : ajouter une seconde information virtuelle appellée “Température ambiante”, avec la même valeur (#[Hall][Hue motion sensor Hall bas][Température]#) mais cette fois en choisissant le Type générique “Thermostat Température ambiante” 

Thermostat température ambiante

  • Vous devriez voir maintenant votre virtuel en statut “OK” quand vous le remontez dans le plugin Google Smarthome (voir point précédent).

4. Google Smarthome – Configurer Google Home

Il reste maintenant à lier Google Home avec Jeedom au travers du Cloud comme pour n’importe quels objets:

  • Ecran 1: Cliquer sur “+” en haut à gauche
  • Ecran 2: Cliquer sur “+ Configurer un appareil”
  • Ecran 3: Cliquer sur “Vous avez déjà configuré des appareils”
  • Ecran 4: Cliquer sur la loupe et inscrire Jeedom
Configuration dans Google Home - 1
  • Ecran 5: Cliquer sur “Jeedom Smarthome”. Introduire ensuite son nom d’utilisateur et mot de passe du Jeedom Market.
  • Ecran 6: Les objets dans le Cloud Jeedom, qu’on avait choisi de remonter à l’étape 2, sont visibles dans les pièces correspondantes. Par exemple, ici, le plugin virtuel pour la température d’un capteur Philips Hue, est bien représenté comme un thermostat et dans la pièce Hall.
  • Ecran 7: quand on ouvre le “thermostat” “virtuel”, la température de la pièce est affichée.
Configuration dans Google Home - 2

Le plugin Alexa

Pour Alexa, l’ordre est assez important.

La première étape consiste à cliquer sur le bouton “Envoyer” dans la page de configuration du plugin Alexa afin d’envoyer la configuration (c’est à dire les informations de connexion à l’API du plugin) au cloud du Jeedom Market.

Envoyer sur Alexa

Une fois fait, il faut attendre 24h comme indiqué par le message informatif. J’ai essayé de ne pas attendre et j’ai eu des erreurs ensuite. Vous pouvez donc essayer comme moi d’avancer dans la procédure mais ne perdez pas trop de temps sur des erreurs et attendez plutôt le lendemain pour voir si elles sont toujours là ou pas.

Un jour plus tard, sur la page des services Jeedom (https://www.jeedom.com/market/index.php?v=d&p=profils#services), on peut cliquer sur le bouton bleu “D’actualité” pour vérifier que l’activation s’est bien passée. Le bouton “v Alexa”, une fois cliqué, ouvre une fenêtre avec l’URL de votre Jeedom. C’est utile pour vérifier que la connexion est opérationnelle.

Services Jeedom

La seconde étape consiste à ajouter la skill Jeedom Smarthome sur l’application Alexa et puis à se connecter au travers de son compte Jeedom Market. 

  • Ecran 1: Choisir Skills et jeux
  • Ecran 2: Appuyer sur la loupe
  • Ecran 3: Inscrire Jeedom et choisir “Jeedom Smarthome”
  • Ecran 4: Appuyer sur “Activer pour utilisation”

Jeedom Plugin Amazon Alexa 1

  • Ecran 5: Introduire son nom d’utilisateur et mot de passe pour le Jeedom Market.
  • Ecran 6: Si l’association s’est bien passée, la confirmation est affichée
  • Ecran 7: Appuyer sur “Détecter des appareils” pour la lancer la détection
  • Ecran 8: Alexa recherche les appareils.

Jeedom Plugin Amazon Alexa 2

A ce stade aucun appareil ne sera détecté mais c’est normal car il faut passer à la troisième étape.

La troisième étape consiste à configurer le plugin.

  • Aller dans Plugins / Communication / Alexa
  • Les équipements Jeedom sont visibles. Il faut cocher “Transmettre” (afin de pouvoir utiliser l’appareil dans Amazon Alexa).

Transmettre plugin Alexa

  • Choisir aussi le type d’appareil, ici un Thermostat. Cela permet à Alexa d’interpréter les commandes vocales. 
  • Cliquer sur sauvegarder. 
  • Rafraîchir la page et vérifier, pour chaque appareil que l’on demandé de “Transmettre”, que le statut est bien “OK”. Si vous n’avez pas attendu 24h à la première étape, vous aurez certainement un NOK à ce stade.
  • Maintenant, dans Alexa, la recherche d’appareils devrait être fonctionnelle pour tous les appareils avec le statut “OK”

Les scénarios de Jeedom

Les plugins Google Smarthome et Alexa permettent de définir des scènes pour lancer une série d’action. On peut configurer des actions d’entrée et des actions de sortie.

Scene

On peut aussi, au niveau de la scène, définir le lancement d’un scénario existant dans Jeedom en choisissant une “Action d’entrée”, la commande Scénario et le scénario à lancer.

Scenario

Pour lancer une scène via les assistants vocaux, il suffit de dire “Active #nom du scénario#” ou “Désactive #nom du scénario#.

Limitation des plugins

Google Smarthome et Alexa sont des plugins bien fait qui permettent de faire remonter des équipements de Jeedom vers Google Home et Amazon Alexa. Mais, et c’est cohérent, on est limité à ce que Google / Alexa sont capables de faire et aux types d’équipement qu’ils gèrent. Par exemple, pour Google, cela se limite à cette liste

  • Lumière : supporte l’allumage/l’arret, le changement de couleur, le dimming….
  • Thermostat : support le changement de consigne et les modes (de maniere limité seul certain nom de mode sont autorisé par Google, attention a bien faire la configuration avancée)
  • Prise : marche/arret
  • Caméra : en beta, peut afficher le flux sur une télé Android sur le réseaux local
  • Store : permet d’ouvrir/fermer un store (vous pouvez inverser le sens dans la configuration avancée)
  • Volet : permet d’ouvrir/fermer un volet (vous pouvez inverser le sens dans la configuration avancée)
  • Fenêtre [beta] : supporte normalement le status ouvert/fermé d’une fenetre (pour information il n’y a que si je pose la question en anglais que ca marche)
  • Porte [beta] : supporte normalement le status ouvert/fermé d’une porte (pour information il n’y a que si je pose la question en anglais que ca marche)
  • Alarme [beta] : permet d’armer/désarmer l’alarme (attention il faut employer le terme arme/désarme pour que Google fasse l’action)
  • Verrou [beta] : permet de fermer/ouvrir un équipement
  • TV [beta] : permet de changer le volume et les chaines
  • Enceinte [beta] : permet de changer le volume et de faire stop,pause,suivant,precedent,reprendre

Impossible, par exemple, de faire remonter un capteur d’humidité ou un capteur de pluie.

Une autre limitation des plugins est qu’ils ne supportent pas les équipements avec une double fonction (2 sortie comme certain module zwave Fibaro). Mais on peut, là aussi, passer par deux virtuels pour les décomposer et contourner le problème.

Conclusion

Google Home et Amazon Alexa intègrent nativement, au travers de leur Cloud, un grand nombre d’appareil. On a donc, pour la plupart, déjà les appareils disponibles dans Google Home sans être passé ni par ce plugin ni par Jeedom. Mais ce plugin peut-être utilisé pour remonter des appareils non gérés nativement par Google comme mes capteur de présence Hue. Et ce plugin peut-être enfin utilisé pour remonter des équipements contrôlés par Jeedom au travers d’une clé Zigbee (et ne passant donc pas par leur éventuel cloud constructeur).

Selon donc votre configuration, ce plugin vous sera plus ou moins utile. En ce qui me concerne, je l’apprécie beaucoup car il me permet de me passer de certains ponts.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.