Secret-R, un bot made in SFEIR pour le Hacking Health Camp 2019

Publié par Bruno Bellenoue le 22 mars 2019
Bruno Bellenoue
Suivez moi sur :

bot-slack-HHC-SFEIR

Cette année encore, SFEIR sponsorise le Hacking Health Camp et sera présent en force avec pas moins d’une quinzaine de Sfeirien(ne)s. Coachs, speakers, hackers, marketing, nous couvrirons l’évènement à tous les niveaux. Nouveauté 2019, pour contribuer au succès de cette édition #HHCamp2019, SFEIR a voulu faciliter la mise en relation des équipes avec les coachs par la création d’un BOT sur le Slack de l’évènement.

Genèse du projet

Forts de nos expériences passées au Hacking Health Camp, notre constat était que les coachs devaient courir dans toutes les salles de l'évènement pour aller à la rencontre des équipes et proposer leur aide aléatoirement... L’offre et la demande de compétences n’étaient pas forcément correctement alignées en temps voulus. En plus du Slack mis à disposition des participants cette année pour mieux communiquer, SFEIR propose dans l’outil un bot qui se chargera de faciliter la mise en relation entre coachs et groupes selon leurs besoins.

Pour mener à bien la partie technique du projet, 4 développeurs Sfeiriens, Bruno, Kevin, Thomas et Théo, ont formé une équipe. Et pour que les échanges avec le bot soient plus chaleureux, un brainstorming avec la team marketing et les développeurs de SFEIR a été lancé pour trouver un nom et donner une personnalité à notre bot.

Secret-R (Secret-Robot) était né ! Petit clin d’oeil au métier de secrétaire médicale, qui se prête bien à sa fonction et au thème de l’évènement. Secret-R a aussi la particularité de se prendre pour un agent secret, il vous réserve donc quelques surprises :) !

Solution Technique

Le choix s’est porté sur une application Slack qui offre toutes les fonctionnalités dont nous avons besoin : un bot, des “slash commands” et des interactive components. Nous reviendrons en détails sur ces notions plus tard.
Quant à la stack technique, nous avons opté pour NodeJS/Express en nous appuyant sur le framework SlackBots.js. Ce choix nous permet de réagir aux appels REST des “slash commands” de Slack et de répondre par l’intermédiaire du bot.

 

Les slash commands : 

Slash Commands - Bot HHC - SFEIR
 

Une slash command permet d’appeler un service REST sur notre serveur Express qui doit :

  • Toujours répondre par un Status Code 200
  • Analyser le contenu du body de la request envoyée pour traiter le message en fonction du user_id et du channel_id
  • Demander au bot de répondre en fonction de la demande, si l’appel est valable.

 

Les interactive components :

 
Capture d’écran 2019-03-22 à 00.49.06

 

Cette fonctionnalité permet d’ajouter facilement des composants de type action, bouton, dialogue, message menu …

Dans notre cas, nous avons créé un bouton qui permettra simplement à un coach de prendre en charge une demande d’aide.

Le bot :

Blot Slack - HHC - SFEIR

 

Le bot joue le rôle d’interface sur Slack entre les différents utilisateurs (les équipes, les coachs et les admins). En réponse à une slash command ou sur un intervalle de temps défini, il peut envoyer des messages de différents types:

  • postMessage() pour envoyer un message visible par tous à un user précis ou un channel
  • postEphemeral() pour envoyer un message à un user que lui seul pourra lire

Quelques commandes bonus restent à découvrir lors de l’évènement… :) Nous espérons que Secret-R vous aidera du mieux possible lors du Hackathon et attendons vos retours avec impatience !

 

Le code sera disponible sur Github après le HHCamp 2019.

 

SFEIR au Hacking Health Camp :

 

Geoffrey Garnotel animera un retour d’expérience aux côtés de notre cliente Bérangère Génin, Directrice de la Bioinformatique chez Integragen. “Le cloud au service de la médecine personnalisée”.

 

Elaine Dias Batista proposera quant à elle une présentation “Développez facilement des applications mobiles modernes et rapides avec Flutter”.

 

Catégorie : Evenements

Vous devriez également aimer...

Inscris-toi à la Newsletter !

Articles récents