Contrôler vocalement vos lampes Hue via votre mac
Les produits de la gamme Hue de Philips sont compatibles Homekit. Il est donc très facile de mettre en place un contrôle vocal via un iPhone ou un iPad mais ce n’est pas le cas avec les Macbook pro (et autres ordinateurs d’Apple).
Dans ce billet nous allons voir brièvement une solution qui va nous permettre de contourner cette limitation.
Préparation du bridge Hue
Dans un premier temps, veuillez vérifier que vos différents éléments soient correctement connectés à votre réseau.
Ensuite, il est nécessaire d’identifier l’adresse IP de votre bridge. Pour ce faire Philips nous fournit un petit outil bien pratique https://www.meethue.com/api/nupnp mais vous pouvez aussi utiliser l’interface d’administration de votre box.
Nous allons maintenant paramétrer un profil de développeur sur le bridge. Pour effectuer cette tâche, nous allons utiliser l’interface web disponible à l’adresse suivante
[text]http://<bridge ip address>/debug/clip.html[/text]
Entrez les informations dans les différents champs comme ci-dessous :
- URL
[text]/api[/text]
- Body
[js]{"devicetype":"my_hue_app#mac pseudo"}[/js]
Cliquez sur POST
Vous devriez obtenir une erreur du type « description » : « Link button not pressed »
Appuyer sur le bouton de votre bridge et cliquez sur POST.
Vous devriez obtenir un username, conservez le, nous en auront besoin par la suite.
Identification du matériel
Votre bridge est maintenant paramétré. Nous allons pouvoir commencer à entrer dans le vif du sujet.
Premièrement, sélectionnez le ou les éléments que vous voulez allumer par la voix.
Pour ce faire, vous pouvez faire une liste des lampes disponibles grâce à la commande
[text]GET :/api/votre_username/lights[/text]
de même pour les groupes disponibles:
[text]GET :/api/votre_username/groups[/text]
En guise d’exemple nous allons mettre en place une commande permettant d’éteindre et d’allumer le groupe 1. Mais vous pourrez très simplement ajouter d’autres fonctionnalités à vos scripts grâce à la documentation officielle (https://developers.meethue.com/documentation).
Création des scripts
Nous allons créer deux scripts très simple. Pour ce faire il vous suffit de créer deux fichiers.
Le premier permet d’allumer toutes les lumières du groupe (exemple: lightOn.app)
[shell]#!/bin/bash
curl \
–header "Content-type: application/json" \
–request PUT \
–data ‘{"on":true}’ \
http://ip_du_bridge/api/username/groups/1/action[/shell]
et le second de les éteindre. (exemple: lightOff.app)
[shell]#!/bin/bash
curl \
–header "Content-type: application/json" \
–request PUT \
–data ‘{"on":false}’ \
http://ip_du_bridge/api/username/groups/1/action[/shell]
Note: il est important que le suffixe du fichier soit .app
Une fois ces deux fichiers créés il est nécessaire de leurs attribuer les bons droits d’accès. Pour ce faire, ouvrez un terminal et rendez-vous sur votre Desktop (via la commande cd). Ensuite, entrez les commandes
[shell]chmod 755 ligthOn.app[/shell]
et
[shell]chmod 755 ligthOff.app[/shell]
Testez vos deux scripts en double cliquant dessus. Vous devriez voir vos lampes s’allumer et s’éteindre.
Paramétrage du MAC
Passons à la dernière étape. Afin de déclencher ces deux éléments nous allons nous servir des outils d’accessibilité. Rendez-vous dans le menu « Accessibilité » de votre Mac.
A droite cliquez sur dictée
Cochez toutes les cases comme ci-dessus et choisissez le mot de déclenchement que vous souhaitez. Ensuite, allez dans commandes dictée et cochée « activer les commandes avancées ».
Créez une nouvelle commande grâce au + en bas de la liste.
Ici choisissez la commande que vous souhaitez prononcer dans mon cas « Allume » et sélectionner votre script grâce au menu « Effectuer ».
Répéter cette étape pour tous les scripts que vous voudriez ajouter.
Dans mon cas je peux allumer ou éteindre toutes les lumières de mon groupe 1 grâce aux commandes vocal « siri allume » et « siri éteint ».
Conclusion
Voila, j’espère que ce tuto vous sera utile et qu’il vous permettra de découvrir les nombreuses possibilités supplémentaires que nous offre les API Hue!
Ressources
- https://developers.meethue.com/documentation : Documentation officielle Hue de Philips.
Cadre en informatique dans une multinationale je suis un touche-à-tout passionné de nouvelles technologies.