Skip to main content

Découverte de l’infrastructure de développement Bolt

Objectifs de formation 

Une fois cette unité terminée, vous pourrez :

  • Présenter Bolt
  • Présenter les API les plus couramment utilisées par les applications Slack
  • Identifier les portées qui permettent aux applications Slack de lire et d’écrire des messages

Avant de commencer

Dans ce module, nous vous présentons les étapes permettant de créer une application Slack simple à l’aide de l’infrastructure de développement Bolt for JavaScript. La réalisation de ces étapes est facultative et aucun défi pratique n’y est associé. Si vous souhaitez toutefois suivre ces étapes et les mettre en pratique, vous aurez besoin des éléments suivants :

  • Un espace de travail Slack personnel. Vous pouvez configurer un espace de travail personnel Slack si vous ne l’avez pas déjà fait. Si vous souhaitez utiliser un espace de travail ou des ressources fournies par votre employeur, vérifiez que cela rentre dans le cadre des politiques de votre entreprise.
  • Glitch, ngrok ou un autre environnement d’hébergement permettant de développer et de tester des applications Slack. Ce module fait appel à Glitch. Si vous n’avez pas de compte Glitch, vous pouvez en créer un gratuitement.

Présentation de Bolt

Bolt est une infrastructure de développement qui facilite la création d’applications Slack disposant des fonctionnalités les plus récentes de la plate-forme. Il utilise une interface d’écouteur qui active des modèles communs lors du traitement de tout type requêtes provenant de Slack.

Bolt dispose également d’un certain nombre de paramètres par défaut intégrés tels que la prise en charge d’OAuth et la vérification des événements, ainsi que d’une interface simplifiée pour des fonctionnalités telles que les étapes de flux de travail issues d’applications. Ce module présente un aperçu des API de Slack, des modèles d’écouteur de Bolt et du processus de création d’une application Bolt for JavaScript.

Les API Slack en bref

Avant d’élaborer quoi que ce soit avec Bolt, il est utile d’avoir une compréhension générale de ce que sont les interfaces de programmation d’applications (API). Si vous ne connaissez pas bien les API, consultez le module Concepts de base des API.

Les applications Slack ont accès à un éventail d’API qui permettent de lire, d’écrire et de mettre à jour des données dans Slack. Les deux API les plus couramment utilisées pour les applications sont l’API Web et l’API d’événements. Elles fonctionnent comme une partie de tennis de table. Slack utilise l’API d’événements pour envoyer un événement à votre application. Votre application utilise quant à elle l’API Web pour renvoyer une interaction.

API d’événements

L’API d’événements utilise des abonnements aux événements pour envoyer des charges de travail JSON à votre application via le protocole HTTP. Lorsque votre application reçoit un événement, elle reconnaît la charge de travail et décide de l’action à entreprendre. Tout ce qui se produit au sein d’un espace de travail peut constituer un événement : la publication d’un message dans un canal, l’ouverture de l’onglet d’accueil de votre application par un utilisateur ou le fait qu’un nouvel utilisateur rejoigne l’espace de travail. La liste complète des événements, accompagnée d’exemples de charges de travail, est disponible sur le site de l’API Slack.

Bolt inclut des fonctions d’assistance intégrées permettant de recevoir les événements et de les acheminer vers les écouteurs de votre application, ainsi que de donner accès à des informations utiles, concernant par exemple l’espace de travail et des utilisateurs ou canaux pertinents. Nous traiterons des écouteurs ultérieurement dans ce module.

API Web

L’API Web est une collection de méthodes HTTP ayant des conventions d’appel similaires permettant d’interagir avec des objets dans Slack tels que les canaux, les conversations, les événements, etc. Ces interactions incluent l’envoi de messages enrichis et interactifs à un canal ou à une autre surface, ou la demande d’informations relatives à l’espace de travail, comme une liste d’utilisateurs. La liste complète des méthodes de l’API Web est disponible sur le site de l’API. Bolt comprend un client intégré avec des fonctionnalités telles que la gestion des limites de taux et la logique de nouvelle tentative permettant de simplifier les appels et la gestion des réponses aux requêtes de l’API Web. 

En outre, pour les cas d’utilisation spécifiques, comme l’administration d’un espace de travail ou la réalisation d’audits de sécurité, des API supplémentaires sont présentées dans la documentation.

Alors, êtes-vous prêt à employer Bolt au sein de votre application ? C’est parti !

Création d’une application Slack

Pour commencer, vous devez créer une application Slack. Vous pouvez soit créer une application à partir de zéro, soit utiliser un modèle de manifeste. Dans ce module, vous utiliserez un manifeste déjà configuré avec les autorisations et les événements adéquats. Vous pourrez modifier l’application plus tard si vous le souhaitez. 

  1. Créez une application Slack à l’aide de notre modèle de manifeste. Le lien ouvre une liste déroulante permettant de sélectionner l’espace de travail de développement dans lequel vous allez créer et tester votre application.
  2. Sélectionnez votre espace de travail, puis cliquez sur Suivant. Dans cet exemple, l’espace de travail SeaMoss est sélectionné.Boîte de dialogue Pick a workspace to develop your app (Choisir un espace de travail pour développer votre application) avec l’espace de travail SeaMoss mis en évidence dans la liste déroulante
  3. Après avoir sélectionné votre espace de travail, vous verrez apparaître une autre fenêtre contextuelle, intitulée Review summary & create your app (Vérifier le résumé et créer votre application). Elle contient des informations sur les autorisations et les événements que votre application contiendra. Nous entrerons dans les détails un peu plus tard. Vous pouvez maintenant cliquer sur Create (Créer).
  4. Vous accédez automatiquement à la page Basic Information (Informations de base) de votre application, appelée Sample app. Cliquez sur Got It (J’ai compris) sur le message de bienvenue.

La page Basic Information (Informations de base) contient un aperçu de votre application en plus des informations d’identification importantes dont vous avez besoin pour utiliser l’API d’événements et l’API Web, comme le secret de signature sous l’en-tête App Credentials (Identifiants de l’application).

N’hésitez pas à observer les différents éléments et à ajouter une icône d’application ainsi qu’une description. Nous allons ensuite nous intéresser à d’autres options de configuration.

Demande de portées et installation de votre application

Les portées autorisent votre application à effectuer des appels à l’API Web dans l’espace de travail installé (pour publier un message, par exemple). Vous pouvez sélectionner les portées à ajouter à votre application en accédant à la page OAuth & Permissions (OAuth et autorisations) dans la barre latérale.

  1. Depuis la page de votre application, sélectionnez OAuth & Permissions (OAuth et autorisations) dans la barre latérale.Page OAuth & Permissions (OAuth et autorisations) avec la section OAuth & Permissions (OAuth et autorisations) de la barre latérale mise en évidence par une flèche rouge
  2. Faites défiler la page jusqu’à Scopes (Portées). Ici, vous voyez les portées de jeton de robot channels:history et chat:write, qui ont été incluses dans votre application lors de son processus de création à partir du manifeste. Ces portées accordent à votre application l’autorisation de lire et de publier des messages dans les canaux publics dont elle est membre. Pour écouter les messages dans les canaux privés et les messages directs dont votre application est membre, vous devez vous abonner à des portées *:history supplémentaires correspondant au type de canal concerné.
  3. Revenez en haut de la page OAuth & Permissions (OAuth et autorisations) et cliquez sur Install to Workspace (Installer dans l’espace de travail).
  4. Cliquez ensuite sur Allow (Autoriser).L’exemple d’application demande l’autorisation d’accéder à l’espace de travail Slack SeaMoss

Une fois l’installation terminée, vous reviendrez sur la page OAuth & Permissions (OAuth et autorisations) où vous verrez un nouveau jeton d’accès OAuth d’utilisateur de robot.

Les jetons d’accès renferment un grand pouvoir. Ils représentent les autorisations accordées à votre application par l’utilisateur qui l’installe (dans le cas présent, vous-même).

Veillez à garder votre jeton d’accès secret. Au minimum, vous devez éviter d’intégrer votre jeton d’accès au contrôle de version public, et y accéder via une variable d’environnement. La documentation de l’API contient également une liste des bonnes pratiques relatives à la sécurité des applications.

Ajout de votre application à un canal

Avant d’héberger, de développer et de tester votre application (des aspects que nous aborderons dans l’unité suivante), vous devez ajouter votre application à un canal public. Dans cet exemple, l’application Sample app de SeaMoss est ajoutée au canal #général.

  1. Ouvrez votre espace de travail Slack.
  2. Faites un clic droit sur le canal dans votre espace de travail personnel.
  3. Cliquez sur Open channel details (Ouvrir les détails du canal).Le canal #général est sélectionné et l’utilisateur survole la section Open channel details (Ouvrir les détails du canal)
  4. Cliquez ensuite sur l’onglet Integrations (Intégrations).
  5. Cliquez sur Add an App (Ajouter une application).Onglet Integrations (Intégrations) ouvert dans la boîte de dialogue #général avec le bouton Add an App (Ajouter une application) mis en évidence par un cadre rouge et une flèche
  6. Si vous ne voyez pas votre application tout de suite, recherchez-la à l’aide du champ de recherche. Cliquez ensuite sur Add (Ajouter) en regard de votre application. Ajout d’applications à #général avec le bouton Ajouter (Add) correspondant à Exemple d’application mis en évidence par un cadre rouge et une flèche

En revenant dans le canal #général, vous devriez voir que votre application a été ajoutée. Vous êtes maintenant prêt à héberger et développer votre application !

Message de canal indiquant que FS3 a rejoint #général en même temps que sample_app

Ressources

Formez-vous gratuitement !
Créez un compte pour continuer.
Qu’est-ce que vous y gagnez ?
  • Obtenez des recommandations personnalisées pour vos objectifs de carrière
  • Mettez en pratique vos compétences grâce à des défis pratiques et à des questionnaires
  • Suivez et partagez vos progrès avec des employeurs
  • Découvrez des opportunités de mentorat et de carrière