Aller au contenu

Relier Slack à votre espace de travail

À la fin de ce tutoriel, vous aurez :

  • Une application Slack créée pour votre espace de travail, avec les bonnes permissions et les bons événements déjà en place
  • Une connexion active entre Slack et Control Center
  • Votre propre compte Slack lié à votre utilisateur Control Center
  • Un agent qui vous répond dans un fil Slack et un ticket créé à partir d’une commande slash

Prérequis :

  • Votre premier espace de travail et Lancer votre premier agent terminés — un espace de travail sans agent peut recevoir un message Slack, mais personne n’est là pour y répondre
  • L’agent CEO de l’espace de travail a un adaptateur et un modèle définis à Paramètres → Espace de travail → Agents. La passerelle éveille le CEO, et non l’agent que vous avez configuré dans le tutoriel précédent, et un agent sans adaptateur s’exécute sur la boucle intégrée avec le modèle par défaut d’Anthropic.
  • Le rôle owner ou admin dans l’espace de travail Control Center (connecter une application de clavardage parle au nom de tout l’espace de travail)
  • La permission de créer et d’installer des applications dans votre espace de travail Slack

Rien ici n’exige d’adresse publique, de tunnel ni de port entrant. Control Center joint Slack vers l’extérieur au moyen de Socket Mode, ce qui fonctionne depuis un ordinateur portatif derrière un NAT.

Étape 1 : Obtenir un jeton de configuration d’application Slack

Section intitulée “Étape 1 : Obtenir un jeton de configuration d’application Slack”

C’est le seul secret que vous devez aller chercher à la main. Il permet à Control Center de créer l’application, puis de la modifier pour vous.

  1. Ouvrez api.slack.com/apps
  2. Faites défiler jusqu’à la section des jetons de configuration d’application, au bas de la page
  3. Générez une paire de jetons pour votre espace de travail Slack
  4. Copiez le jeton d’actualisation — il commence par xoxe-

Étape 2 : Laisser Control Center créer l’application

Section intitulée “Étape 2 : Laisser Control Center créer l’application”
  1. Dans Control Center, allez dans Paramètres → Espace de travail → Général et trouvez la carte Ponts de messagerie
  2. Dans le bloc Slack, cliquez sur Créer l’app pour moi
  3. Collez le jeton de configuration d’application
  4. Passez en revue l’allure du robot :
    • Nom de l’app : comment Slack présente l’application, p. ex. Control Center · Acme
    • Nom du bot : ce que les gens tapent après @, p. ex. control-center
    • Description courte et Ce que le bot dit savoir faire
    • Commande : cc par défaut, donc la commande est /cc
    • Messages directs : laissez activé pour que les membres puissent écrire au robot en message privé
  5. Cliquez sur Créer l’app

Control Center compose toute la définition de l’application — Socket Mode activé, les portées et les abonnements aux événements dont le robot a besoin, la commande slash, l’onglet Messages — puis la crée dans Slack.

Étape 3 : Terminer les deux étapes que seul Slack peut faire

Section intitulée “Étape 3 : Terminer les deux étapes que seul Slack peut faire”

Slack n’a aucune API pour générer un jeton d’application ni pour installer une application, donc la boîte de dialogue vous présente les deux sous forme de liens :

  1. Générer un jeton au niveau de l’app — ouvre Basic Information → App-Level Tokens. Créez un jeton avec la portée connections:write et copiez-le. Il commence par xapp-
  2. Installer l’app — ouvre Install App. Installez l’application dans votre espace de travail, puis copiez le Bot User OAuth Token. Il commence par xoxb-

Gardez les deux valeurs sous la main pour l’étape suivante.

  1. De retour dans la boîte de dialogue, cliquez sur Coller les identifiants
  2. Saisissez le Jeton du bot (xoxb-…) et le Jeton d’application (xapp-…)
  3. Laissez le Jeton de configuration d’app vide — celui de l’étape 1 a déjà été stocké (Slack l’a renouvelé et Control Center a enregistré la nouvelle valeur)
  4. Cliquez sur Connecter

Control Center vérifie le jeton du bot auprès de Slack avant de stocker quoi que ce soit, puis ouvre le socket. La ligne affiche maintenant le nom du robot et le nom de votre espace de travail Slack, avec une étiquette En ligne.

La connexion rend le robot joignable ; la liaison vous rend vous reconnaissable. Tant que votre identité Slack n’est pas liée, le robot n’agira pas sur vos messages — il n’attribue jamais un message à la personne qui a installé l’application.

La liaison est personnelle, donc elle vit sur une autre page que la connexion à l’échelle de l’espace de travail.

  1. Allez dans Paramètres → Espace de travail → Profil et identité et trouvez la carte Comptes de messagerie liés
  2. Cliquez sur Lier mon compte Slack
  3. Copiez la commande qu’il affiche, par exemple /cc link K7M2QP
  4. Dans Slack, envoyez cette commande au robot dans un message privé
  5. Le robot répond « Lié à … »

Le code est à usage unique et expire après 15 minutes. Si votre courriel Slack correspond à un utilisateur Control Center qui est déjà membre de cet espace de travail, la passerelle vous lie automatiquement la première fois que vous lui parlez, et vous pouvez sauter cette étape.

Si vous mentionnez le robot avant d’avoir terminé cette étape, il refuse et en donne la raison. Les trois refus sont distincts, alors lisez bien celui que vous avez reçu :

  • Expéditeur non lié : le robot vous indique comment établir la liaison. Revenez à cette étape.
  • Lié, mais pas membre de cet espace de travail : demandez à un administrateur de vous inviter.
  • Membre avec un rôle en lecture seule (viewer ou guest) : le robot ne lancera pas de travail en votre nom.
  1. Dans Slack, invitez le robot dans un canal : /invite @control-center

  2. Mentionnez-le avec une vraie demande :

    @control-center résume les demandes de tirage ouvertes dans le dépôt api

La passerelle :

  1. Crée un espace Control Center pour ce fil Slack, nommé d’après le canal Slack et votre demande
  2. Éveille l’agent d’accueil de l’espace de travail (l’agent CEO s’il existe, sinon le premier agent)
  3. Diffuse en continu la réponse de l’agent dans le fil Slack à mesure qu’elle s’écrit

Répondez dans le même fil Slack pour continuer — aucune autre mention n’est nécessaire, puisque le fil Slack est maintenant relié. Vous pouvez aussi écrire au robot en message privé plutôt que d’utiliser un canal ; chaque conversation en message privé pilote son propre espace Control Center, avec un titre et une ligne d’état « is thinking… » pendant que l’agent travaille.

Le streaming exige l’API de streaming de Slack, que tous les forfaits n’ont pas. Si elle est refusée à votre application, la passerelle cesse d’essayer pour toute la durée de la connexion et publie plutôt chaque réponse en un seul message ; la carte Ponts de messagerie affiche alors « Le streaming en direct est désactivé pour cette app Slack — les réponses arrivent en un seul message. » Tout le reste fonctionne de la même façon.

/cc ticket Fix the flaky login test | It fails on CI about once a day.

Le robot répond avec la clé du ticket qu’il a créé. Le ticket est un ticket Control Center local ordinaire, déclaré par vous, prêt à être affecté à un agent. /cc help énumère tout ce que la commande peut faire.

Vous avez créé une application Slack depuis Control Center, l’avez connectée par un socket sortant, avez lié votre identité Slack à votre utilisateur Control Center et avez piloté un agent depuis un fil Slack. Tout ce qui s’est passé dans Slack existe aussi dans Control Center : le fil Slack est un espace, la réponse est une transcription, le ticket est un ticket.

Suivant : Configurer l’intégration Slack couvre la voie manuelle, la rotation des jetons et le dépannage. Pour le modèle sous-jacent, lisez Passerelles de clavardage.