Cette année pour Noël, ma chérie m’a offert une Apple watch serie 3. Cette montre connectée est juste géniale et permet tout plein de choses comme on peut le voir ici et là sur le web ou si vos amis ou vous en possédez une. Bien entendu, l’Apple Watch dispose également de plusieurs applications pour piloter les objets connectés de la maison. Cependant, en tant que blogueur domotique, j’ai rapidement cherché un moyen de piloter la domotique de la maison depuis la montre. Forcément, c’est un nouveau terrain de jeu pour moi…
Bizarrement, les deux solutions domotiques principales de la maison à savoir Eedomus et Jeedom ne disposent pas d’application dédiées à la montre connectée d’Apple. Qu’à cela ne tienne, il existe plusieurs solutions via des applications tierces, certaine payantes, d’autres gratuites, je vais alors me pencher sur une solution gratuite qui permet une grande liberté de paramétrage. Tout ce que j’aime donc!
Une solution paramétrable à souhait
Cette solution à un nom, elle se nomme iControl Web. Il s’agit d’une petite application iOS gratuite, entièrement customisable via un simple fichier json. Intéressant hein? Voyons alors comment configurer tout ça.
1 Pour commencer, il faut télécharger l’application sur l’Apple store
2 Une fois cela fait, connectez votre iPhone à itune pour accéder aux fichiers de l’application via le partage de fichier. Naviguez alors jusqu’à partage de fichiers et cliquez sur l’application iControl Web. Un fichier guiSample.json s’affiche dans la partie de droite, copier simplement ce fichier sur votre bureau.
3 Ouvrez le fichier avec un éditeur de code comme Sublime text ou Notepad ++. Ce fichier présente toutes les possibilités de l’application. A vous de l’adapter selon vos besoins, voici quelques exemples que j’ai mis en oeuvre chez moi un peu plus bas.
Le but n’est pas de disposer de toutes les fonctions de votre domotique sur votre montre mais plutôt d’avoir toujours à portée de main les actions principales ou clé de la maison. L’alarme, les lumières, le portail, la serrure… Toutes les actions du quotidien qui pourront se faire encore plus rapidement sans avoir à sortir son téléphone de la poche.
L’application iControl Web permet de piloter tout système qui dispose d’une API. Autant dire que les possibilités sont très nombreuses. Je vais vous expliquer dans les deux exemples qui suivent comment appliquer le pilotage du système domotique Eedomus ainsi que du système domotique Jeedom.
{ "label": "Alarme maison", "color": "none" }, { "button1": "on 🚓", "button2": "off ️🚙", "cmd1": "https://api.eedomus.com/set?action=periph.value&periph_id=11111&value=1&api_user=VOTREAPIUSER&api_secret=VOTREAPISECRET", "cmd2": "https://api.eedomus.com/set?action=periph.value&periph_id=11111&value=0&api_user=VOTREAPIUSER&api_secret=VOTREAPISECRET", "sizeType": "medium" }, { "button1": "Portail 🚘", "cmd1": "https://api.eedomus.com/set?action=periph.value&periph_id=11111&value=100&api_user=VOTREAPIUSER&api_secret=VOTREAPISECRET", "sizeType": "large", "color": "cyan" }, { "label": "Lumières 💡", "color": "yellow" }, { "button1": "on 💡", "button2": "off ️🌙", "cmd1": "https://api.eedomus.com/set?action=periph.value&periph_id=11111&value=1&api_user=VOTREAPIUSER&api_secret=VOTREAPISECRET", "cmd2": "https://api.eedomus.com/set?action=periph.value&periph_id=11111&value=0&api_user=VOTREAPIUSER&api_secret=VOTREAPISECRET", "sizeType": "medium" }, { "_commentW8": "A sub page is reached via table drilldown. It can consist of all buttons and labels and sub pages.", "subPageLabel": "Garage", "color": "purple", "controls": [ { "contextMenuLabel1": "Garage", "contextMenuIcon1": "More", "contextMenuCmd1": "http://cmd1MContextGarage" },
Vous pouvez voir que le fichier est assez clair pour s’y retrouver, si vous n’êtes pas à l’aise avec le code, utilisez mon modèle et remplacez simplement les titres et les URL de pilotage de la box Eedomus par l’API. Les émoticones sont également acceptés, vous pouvez alors facilement ajouter un émoticone correspondant à l’action ou l’appareil à piloter pour plus de lisibilité. (Touches Control + Command + Espace si vous êtes sous Mac!)
Une fois la partie code terminée, il suffit simplement d’enregistrer le fichier json en gui.json et le coller dans la section Icontrol sous le partage de fichier itune. C’est tout!
Du coté de l’iPhone, tuez l’application iControlWeb et relancez là. Un message de confirmation de mise à jour s’affiche. La nouvelle configuration est prise en compte.
Visuellement, le code ci-dessus affichera sur la montre le rendu suivant:
L’application dispose d’un retour haptique quand vous effectuez une pression, puis un petit son confirme la prise en compte de l’action au niveau de la montre, c’est vraiment bien fait!
Le Pilotage des actions Jeedom sur l’Apple Watch
Du coté du pilotage de Jeedom avec l’apple Watch, le principe est exactement le même. Il s’agit simplement de l’URL qui change, pour forcement agir sur la box via son API. Munissez-vous alors de votre clé API disponible dans le menu configuration de Jeedom.
{ "contextMenuLabel1": "Garage", "contextMenuIcon1": "More", "contextMenuCmd1": "http://cmd1MContextGarage" }, { "label": "plus d'actions" }, { "button1": "Porte garage", "cmd1": "https://majeedom.mondomaine.com/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=cmd&id=199", "sizeType": "large" }, { "subPageLabel": "Serrure", "color": "green", "controls": [ { "button1": "on", "button2": "off", "cmd1": "http://192.168.1.X/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=scenario&id=200&action=start", "cmd2": "http://192.168.1.X/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=scenario&id=201&action=start", "sizeType": "medium" }, { "button1": "Allume", "button2": "Eteint", "cmd1": "http://192.168.1.X/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=virtual&id=202&value=1", "cmd2": "http://192.168.1.X/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=virtual&id=203&value=0", "sizeType": "medium" }, ] } ] },
Le code ci-dessus permet d’ajouter une page dans une section. Ici, je me rends sur la page Garage ou un unique bouton actionne la porte basculante qui s’ouvre ou se ferme selon son état et un second bouton serrure qui conduit vers une nouvelle page qui permet plusieurs actions sur la serrure. Visuellement, sur l’écran de l’Apple Watch, cela se présente de la manière suivante:
Ce qui est top avec cette montre, c’est que même si les applications n’ont pas forcément de version apple watch, la montre reçoit tout de même les notifications des applications. Ainsi, pour le cas de ma serrure Somfy par exemple, quand je demande la fermeture via iControl sur la montre, je reçois la confirmation de la bonne exécution de la requête via la notification de l’application Somfy!
Comme vous pouvez le voir, les possibilités sont diverses et nombreuses. Le gros point fort selon moi est qu’il est possible de designer son application domotique sur sa montre et surtout pour l’utilisation que l’on veut en faire.
Conclusion
On décide de ce que l’on veut, on le modélise par le code, on pousse le tout dans la montre et on pilote les fonctions vitales de sa maison directement depuis son Apple Watch sans même avoir à sortir son smartphone de la poche!
A vous de jouer les amis, je vous laisse vous amuser avec cette petite appli et surtout n’hésitez pas à venir nous en dire plus dans les commentaires! Pour une documentation complète des options possibles, je vous invite à consulter la doc du projet sur son Github.
- Montre de sport ultime
Dernière mise à jour du tarif le 2024-12-04 at 15:52
Bonjour à toi Aurélien,
j’ai une question concernant les liens que tu utilises pour déclarer de nouvelle actions:
– exemple:
“cmd1”: “http://192.168.1.X/core/api/jeeApi.php?apikey=APIKEYJEEDOM&type=scenario&id=200&action=start”,
Où peut-on les trouver sous Jeedom?
Merci d’avance
Romaincrapule
Je crois avoir trouvé:
est-ce que c’est le champ “url direct” que l’on trouve dans les paramètres de chaque action/titre/…?
Merci d’avance
Roamincrapule
Bonjour Romain,
dans l’exemple, l’URL permet de piloter un scénario Jeedom, il faut simplement remplacer l’ID du scénario puis APIKEYJEEDOM par la clé API de ton jeedom disponible sous configuration/API dans les paramètres de jeedom. Sinon il est aussi possible de piloter un périphérique virtuel ou réel via l’API sans problème.
Salut, super tuto! Merci beaucoup c’est top!! Sais-tu si il y a la même chose sur Android? Merci
Bonjour,
Aucune idée, je n’ai plus d’Android à la maison !
Bonjour,
j’utilise déjà cette solution pour piloter ma box home center 2
Je suis très intéressé par le sous menu que tu as fais.
Est il possible d’avoir le fichier intégral pour l’adapter a mon utilisation.
Merci
Bonjour,
La partie sous menu se passe dans la partie script Jeedom. Mais si tu veux plus de detail je peux t’envoyer mon fichier oui 😉
Oui s’il te plais merci
Il te faut un mail ou tu peux le joindre dans la discussion
contact moi depuis le formulaire de contact 😉