Slack est un outil qui permet aux équipes de communiquer et de collaborer. L’une de ses principales fonctionnalités est l’utilisation de commandes slash. Ces commandes déclenchent des actions ou des intégrations spécifiques au sein de la plateforme.


Slack propose plusieurs commandes slash intégrées, mais vous pouvez créer des commandes personnalisées à l’aide de l’API de Slack. Vous pouvez ensuite configurer la commande personnalisée pour qu’elle exécute une certaine tâche lorsqu’un utilisateur la déclenche.

Pourquoi créer une commande Slash personnalisée dans Slack ?

Les commandes Slack intégrées peuvent ne pas répondre aux besoins spécifiques de votre équipe ou de votre organisation. En créant des commandes Slack personnalisées, vous pouvez créer une expérience plus personnalisée pour votre équipe. Cela permet d’accroître l’engagement de l’équipe.

Configurer une application Slack

Pour aller plus loin, vous devez être à l’aise avec l’utilisation de base de Slack. Connectez-vous à votre compte Slack dans le navigateur et créez un nouvel espace de travail. Vous utiliserez cet espace de travail pour tester vos applications avant de les utiliser dans l’espace de travail de votre équipe.

Lire  Boostez Votre Anonymat sur iPhone : Les Meilleurs VPN pour iOS en 2025

Ouvrez un autre onglet et naviguez jusqu’au site web de l’API Slack.

Page d'accueil de l'API Slack

Cliquez sur l’icône Créer une application . Sur la page suivante qui s’affiche, choisissez l’option de création d’une application. À partir de zéro.

Possibilité de créer une application sur le site de l'API Slack

Nommez l’application et sélectionnez l’espace de travail dans lequel l’application fonctionnera.

Page de dénomination de l'application Slack sur le site web de l'API Slack

Cliquez sur le bouton Créer une application . Vous serez redirigé vers une page contenant les informations de base sur votre application.

Informations de base sur l'application Slack sur le site web de l'API Slack

Dans la section des fonctionnalités, naviguez jusqu’à la page OAuth &amp ; Permissions puis faites défiler vers le bas jusqu’à Portée des jetons bot. Ajouter un chat:write pour votre application. Cette portée permettra à votre application d’envoyer des messages à l’espace de travail.

Champs d'application des jetons de bot sur le site web de l'API Slack

Faites défiler l’écran jusqu’à la page Tokens OAuth pour votre espace de travail et cliquez sur le bouton Installer dans l’espace de travail bouton.

La fonctionnalité OAuth &amp ; Permissions sur le site web de l'API Slack

Sur la page suivante qui s’affiche, cliquez sur le bouton Autoriser . Cela installera l’application dans votre espace de travail.

Créer une commande Slash personnalisée à l’aide de l’API Slack

Après avoir configuré l’application Slack, vous devez créer une commande personnalisée pour la tâche que vous souhaitez accomplir. Par exemple, une commande slash qui renvoie une blague à l’utilisateur. Naviguez jusqu’à la page Commandes Slash fonctionnalité. Cliquez sur le bouton Créer une nouvelle commande bouton.

Fonctionnalité de la commande Slash sur le site web de l'API Slack

Remplir le formulaire Commande, URL de la requêteet Courte description de la commande que vous souhaitez créer. L’URL de requête est le point d’accès auquel Slack envoie une requête POST lorsqu’un utilisateur déclenche la commande. Utilisez une URL locale (localhost) comme marqueur ; vous changerez cette URL plus tard.

Nommage de la commande Slash sur le site web de l'API Slack

Cliquez sur Enregistrer. Lorsque vous enregistrez, Slack ajoute automatiquement une portée de commandes pour votre application. Cette portée permet à votre application d’ajouter des raccourcis et des commandes slash que les personnes de votre espace de travail peuvent utiliser. Pour modifier les champs d’application, vous devrez réinstaller l’application. Cliquez sur l’icône réinstaller votre application bouton.

Slack API réinstaller une application

Sur la page qui s’affiche ensuite, cliquez sur autoriser la réinstallation de l’application sur votre espace de travail.

Configurer le comportement de la commande Slash

Lancer n’importe quel IDE Python. Créer un nouvel environnement virtuel. Créer un nouveau fichier Python et un nouveau fichier .env. Dans le terminal, exécuter la commande suivante pour installer les bibliothèques nécessaires.

 pip install python-dotenv requests Flask slack-bolt 

La commande python-dotenv vous permettra de charger les variables d’environnement dans le fichier .env. La bibliothèque demandes vous permet d’effectuer des requêtes HTTP et des Flask gère les requêtes HTTP entrantes et renvoie les réponses. Boulon à crémaillère gère les requêtes Slack entrantes.

Ouvrez le fichier .env et créez deux variables d’environnement. Nommez-les BOT_TOKEN et SIGNING_SECRET respectivement. Rendez-vous sur le site web de l’API Slack. Sous l’onglet Informations de base Copiez le secret de signature et utilisez-le pour initialiser la variable BOT_TOKEN. Naviguez vers la fonctionnalité OAuth &amp ; Permissions et copiez le jeton OAuth de l’utilisateur du bot. Utilisez-le pour initialiser la variable SIGNING_SECRET.

Un fichier .env contenant des variables d'environnement

Le bot token est un identifiant unique qui authentifie votre application auprès de l’API de Slack lors des appels d’API. Le secret de signature vérifie que les requêtes entrantes vers votre application proviennent bien de Slack.

Le code source complet est disponible dans un dépôt GitHub.

Importer les bibliothèques et modules nécessaires.

 import os
from pathlib import Path
from dotenv import load_dotenv
import requests
from flask import Flask, request, jsonify
from slack_bolt import App
from slack_bolt.adapter.flask import SlackRequestHandler

Créer une nouvelle instance d’une application Flask.

 app = Flask(__name__) 

Charger les variables d’environnement à partir du fichier .env à l’aide de la commande load_dotenv() fonction.

 env_path = Path('.') / '.env'
load_dotenv(dotenv_path=env_path)

Créer une nouvelle instance d’une application Slack à l’aide de la fonction App classe de la bibliothèque slack_bolt.

 slack_app = App(
    token=os.environ['BOT_TOKEN'],
    signing_secret=os.environ['SIGNING_SECRET']
)

Créer une fonction de gestion des routes qui gère les requêtes entrantes vers la classe /slack/commande endpoint. Lorsque le point d’accès reçoit une POST il analyse les données du corps de la requête. Il vérifie ensuite si la commande est /joke. Si c’est le cas, il appelle la fonction get_joke() et renvoie une réponse JSON à Slack avec le résultat de la commande.

 @app.route("/slack/command", methods=["POST"])
def command():
    # Parse request body data
    data = request.form

    # Call the appropriate function based on the slash command
    if data["command"] == "/joke":
        message = get_joke()
    else:
        message = f"Invalid command: {data['command']}"

    # Return response to Slack
    return jsonify({"text": message})

Créer une fonction qui envoie une requête GET à l’adresse icanhazdadjoke API pour récupérer une blague aléatoire au format JSON. Elle renvoie ensuite la blague sous forme de chaîne de caractères.

 def get_joke():
    url = "https://icanhazdadjoke.com/"
    headers = {"Accept": "application/json"}
    response = requests.get(url, headers=headers, timeout=5)
    joke = response.json()["joke"]
    return joke

Créer une nouvelle instance d’un SlackRequestHandler objet qui traitera les demandes entrantes de Slack.

 handler = SlackRequestHandler(slack_app) 

Vérifier si le script est exécuté directement et, si c’est le cas, démarrer l’application Flask sur le port 5000.

 if __name__ == "__main__":
    # Start the Flask app on port 5000
    app.run(port=5000, debug=True)

Exécuter le programme pour démarrer le serveur fonctionnant sur localhost.

Pour que le programme puisse communiquer avec Slack, vous avez besoin d’une URL à laquelle il peut accéder via Internet. Téléchargez et exécutez ngrok. Le logiciel ngrok vous permet de créer une URL publique sécurisée qui achemine le trafic vers un serveur web fonctionnant sur votre ordinateur.

Exécutez la commande suivante pour obtenir l’URL publique :

 ngrok http 5000 

L’image ci-dessous montre l’URL publique sur ngrok, surlignée en blanc.

ngrok en cours d'exécution

Copiez l’URL et naviguez jusqu’au site web de l’API Slack. Cliquez sur l’icône Commandes Slash fonctionnalité. Modifiez la commande /joke et remplacez l’URL de demande par votre URL publique. Ajoutez /slack/events à la fin de l’URL pour pointer vers votre point de terminaison.

Édition d'une commande slack slash

Allez dans votre espace de travail, puis tapez et envoyez la commande /joke. Vous devriez voir une blague en réponse :

Sortie d'une commande Slack slash

Se familiariser avec les autres fonctionnalités de Slack

Slack propose de nombreuses fonctionnalités au-delà des commandes Slash. Se familiariser avec ces fonctionnalités vous permettra de comprendre leur fonctionnement.

Vous pourrez ensuite chercher à les personnaliser en fonction des besoins de votre espace de travail. Vous augmenterez ainsi la productivité de votre équipe.