Interactions domotiques avec Telegram et eedomus (1/3)

La maison connectée pensée de manière absolue devrait s’auto-gérer toute seule : chauffage, volets, sécurité, lumières, etc. Mais quand même, il y aura forcément des moments où la communication avec les habitants sera nécessaire : Pour informer, pour alerter, pour agir à la demande. Il faut doser ces échanges intelligemment, il ne faut pas être en permanence dérangé et prendre toutes les décisions unitairement. Ce serait contre-productif et cela va à l’encontre de la théorie domotique. Et si interaction il doit y avoir, alors il faut un processus clair, net, efficace, guidé, sans se perdre dans l’objectif de cette interaction. Cela parait idiot et secondaire, c’est pourtant au cœur de la vie des propriétaires de maisons connectées, et donc à prendre au sérieux.

Qui dit « interaction » dit deux sens de communication. Pour la suite de cette article, nous allons donc clarifier trois termes utilisés qui représentent trois modes d’interactions.

  • Quand la résidence parle simplement aux usagers, elle notifie quelque chose, on va donc appeler cela une « notification ». Sens habitat -> habitant. C’est le cas le plus simple, le plus classique.
  • Quand l’usager parle à la maison, il lui demande quelque chose, on va donc appeler cela une « requête ». Sens habitant -> habitat.
  • Et quand la maison demande quelque chose qui peut amener une réponse du propriétaire, cela se traduit par une question/réponse, à qui j’ai donné le terme de « callback ». Un « callback » se traduirait strictement en français par un « rappel ». Sens habitat -> habitant -> habitat

Un scénario d’interaction, c’est une suite prédéfinie de ces trois modes. Si on applique cela à un cas pratique, voici comment se traduirait l’exemple d’interaction suivant :

  • Le portail de la maison s’ouvre alors que je ne suis pas présent : la maison me notifie l’information
  • Je demande la possibilité de voir les différentes caméras : je fais la requête
  • La maison me demande quelle caméra consulter, et me propose un choix multiple auquel je dois répondre : c’est un Callback
  • La maison m’envoie une capture de la caméra sélectionnée : nouvelle notification

Il y a plusieurs moyens et ressources pour réaliser ce scénario d’interaction. Avec la box domotique eedomus, on pourrait être notifié par email, sms , tweet, ou le push de l’application eedomus lui-même. Dans l’autre sens, pour faire une requête, c’est aussi possible par sms. Mais à part cela, une fois la première notification reçue, autant ouvrir directement l’application smartphone eedomus, ou l’application de la caméra souhaitée elle-même, et consulter ce qu’on veut consulter. Pas très rapide, pas très efficace. Plutôt fastidieux comme expérience utilisateur.

Si l’objectif est d’obtenir une interaction simple, rapide, et « guidée », alors la messagerie Telegram est parfaite pour cela. Telegram est une application de messagerie cryptée, telle que Whatsapp. Avec deux principales différences : Telegram n’appartient pas à Facebook, Telegram permet d’interagir de manière intelligente avec des outils et « applications » intégrées. Et c’est l’outil « bot » (pour robot), qui va nous permettre de discuter avec la maison comme si elle était un de vos contacts de messagerie.

Le bot Telegram « eedomus Notifications »

Quand on est à l’aise avec la programmation, créer son propre bot Télégram est largement accessible et donc faisable, avec beaucoup d’huile de coudes, et de balades sur Internet. Idem côté eedomus : se créer son propre script d’échange entre la box domotique et Telegram est réalisable. Mais quand tout cela existe déjà, réutilisable aisément, tout en couvrant déjà la plupart des usages, pourquoi s’en passer ?

Pour commencer, il suffit d’installer l’application Telegram et se créer un compte. Il est basé sur le numéro de téléphone. Dans les paramètres de Telegram, vous pouvez configurer votre thème d’affichage, et votre langue. C’est pour le moment tout à fait comparable à Whatsapp. Vous retrouverez peut-être même certains de vos contacts avec déjà un compte Telegram. Les groupes publics sont aussi une particularité de Telegram. Vous pourrez par exemple rechercher et vous connecter aux groupes d’entraide eedomus. Le groupe français « domotique-eedomus-helpdesk » et le groupe espagnol « Eedomus – Grupo de Ayuda… », beaucoup plus fourni en membres. On remarque qu’il y a plusieurs autres réponses de recherche concernant des robots. Les « bot » ont un code login Telegram se terminant par Bot. Celui qui va nous intéresser est le bot nommé « eedomus Notifications », ayant pour login @InflumanBot, reprenant le logo eedomus avec BOT écrit au centre.

Dans l’ordre donc, il faut :

  • Entrer sur le bot « eedomus Notifications »
  • Le « démarrer ». Ce qui revient à lancer la commande /start. Vous n’aurez à le faire qu’une seule fois.
  • Vous ne serez pas autorisé à utiliser le Bot sans être inscrit au préalable, écrire alors /subscribe
  • Garder l’InflubotID qui vous sera attribué. Il vous sera nécessaire côté eedomus

La suite des opérations se passe donc du côté eedomus. Rendez-vous sur le « store eedomus », dans la partie Configuration / Ajouter un nouveau périphérique depuis votre interface eedomus. Dans la rubrique « Utilitaire Web » du store, sélectionnez le plugin « Notifications Telegram / Telegram @InflumanBot », puis cliquer sur le bouton « Créer ». Comme l’intégralité de la cent cinquantaine de plugins de la communauté du store eedomus, il est gratuit.

A l’installation de ce plugin, saisissez donc l’InflubotId obtenu dans Telegram, ainsi que vos codes API eedomus User et Secret. Si vous utilisez déjà les plugins ChatBot et Ask, vous pouvez sélectionner dès l’installation les périphériques correspondants. Pensez à affecter une pièce car ce sera plus pratique pour tester vos notifications depuis l’interface eedomus.

Vos codes API eedomus sont nécessaires pour que vous puissiez, depuis Telegram, répondre à votre Box. C’est donc un prérequis pour les interactions de type « Requête » et « Callback ». En revanche, pour de simples Notifications (sens eedomus vers Telegram), ils ne sont pas utilisés. Si vous souhaitez limiter l’utilisation du Bot Telegram aux notifications (ce qui serait quand même dommage), alors vous pouvez saisir des valeurs fictives dans les champs d’installation du plugin du store eedomus.

Ces codes API ne sont pas accessibles « en clair » côté Télégram, et sont cryptés au niveau du cerveau du Bot. Si vous les fournissez, vérifiez bien qu’ils sont corrects et bien copiés sans espace ni caractères spéciaux erronés.

Une fois l’installation réalisée, vous devez associer votre Box eedomus au Bot Telegram. Pour ce faire, depuis l’interface eedomus, lancez la valeur [INFLUBOT_INIT] du périphérique « Notification Telegram ». Instantanément, le Bot vous confirmera la bonne association avec votre eedomus. C’est un peu votre première notification.

Profitez-en pour toucher depuis Telegram le lien « /help » proposé, vous aurez alors accès aux commandes disponibles depuis ce Bot Telegram. Depuis le menu affiché, touchez « /info » pour consulter vos informations remontées depuis votre eedomus. Notez que le bot s’adapte automatiquement au langage de votre Telegram. Il est disponible en français, anglais, et espagnol.

Bravo, vous avez connecté votre eedomus à Telegram en 30 secondes, et tout est opérationnel, gratuitement, sans avoir eu à toucher à la technique. Le Bot eedomus Telegram, c’est votre maison qui vous parle.

C’est le moment de tester vos premières notifications.

1 réflexion au sujet de « Interactions domotiques avec Telegram et eedomus (1/3) »

Laisser un commentaire