Slack

L'intégration de Dialogflow à Slack vous permet de créer facilement des bots Slack avec une compréhension du langage naturel basée sur la technologie Dialogflow.

Limites

Seul la langue par défaut de l'agent est compatible avec cette intégration.

Configurer Slack

Pour configurer l'intégration Slack pour votre agent, vous devez disposer des éléments suivants :

Créer une application Slack

  1. Naviguez jusqu'à la console de développement Slack.
  2. Entrez un nom pour l'application.
  3. Choisissez l'équipe que vous souhaitez associer à l'application.
  4. Cliquez sur le bouton Create App (Créer une application).

Ajouter un utilisateur bot

  1. Cliquez sur OAuth & Permissions (OAuth et autorisations) dans le menu de gauche.
  2. Accédez à la section Scopes (Champs d'application) et assurez-vous que les champs d'application OAuth suivants se trouvent dans la section "Bot Token Scopes" (Champs d'application des jetons bot).
  3. Cliquez sur App Home (Accueil de l'application) dans le menu de gauche.
  4. Activez Always Show My Bot as Online (Toujours afficher mon bot comme étant en ligne) et modifiez le champ App Dislay Name (Nom de l'application à afficher) si nécessaire (le nom de votre bot que les utilisateurs verront).

Activer l'intégration dans Dialogflow

Dans la console de développement Slack, cliquez sur Basic Information (Informations de base) dans le menu de gauche et faites défiler la page jusqu'à la section App Credentials (Identifiants de l'application). Notez les valeurs des champs Client ID (ID client), Client Secret (Code secret du client) et Verification Token (Jeton de validation).

  1. Dans Dialogflow, accédez à Intégrations dans le menu de gauche.
  2. Cliquez sur la tuile Slack.
  3. Saisissez les valeurs associées dans les champs suivants :
    1. ID client
    2. Code secret du client
    3. Jeton de validation
  4. Cliquez sur Start (Démarrer).

Poursuivre la configuration de Slack

Maintenant que vous avez configuré Slack et Dialogflow, vous pouvez activer OAuth, les URL de requêtes d'événements (fournies par Dialogflow) et les abonnements aux événements.

Ajouter une URL OAuth

  1. Copiez l'URL OAuth à partir de la page des paramètres Slack de Dialogflow
  1. Dans la console de développement Slack, cliquez sur OAuth & Permissions (OAuth et autorisations), dans le menu de gauche.
  2. Cliquez sur le bouton Add a new redirect URL (Ajouter une URL de redirection) et collez l'URL OAuth.
  3. Cliquez sur Add (Ajouter).
  4. Cliquez sur le bouton Enregistrer les URL.

Ajouter une URL de requête d'événement et activer les abonnements aux événements

  1. Copiez l'URL de requête d'événement à partir de la page des paramètres Slack de Dialogflow
  2. Accédez à la console de développement Slack et cliquez sur Event Subscriptions (Abonnements aux événements) dans le menu de gauche.
  3. Cliquez sur le bouton bascule pour activer les événements et collez l'URL d'abonnement aux événements dans le champ Request URL (URL de la requête).

    Après quelques instants, la mention "Verified" (Vérifiée) apparaît en vert au-dessus du champ "Request URL" (URL de la requête).
  4. Sous Subscribe to Bot Events (S'abonner aux événements du bot), cliquez sur le bouton Add Bot User Event (Ajouter un événement d'utilisateur bot).

    Une zone de texte et une liste d'événements s'affichent. Vous pouvez saisir des termes dans ce champ pour rechercher les événements auxquels vous souhaitez que votre bot réponde. La liste ci-après répertorie des événements que nous vous recommandons d'ajouter :

    Nom de l'événement Description de l'événement
    message.im Un message a été publié dans un canal de message privé
    message.groups Un message a été publié sur un canal privé
    message.channels Un message a été publié sur un canal
    im_created Un message privé a été créé. Sous la section S'abonner à des événements pour le compte d'autres utilisateurs, cliquez sur l'icôneAjouter un événement d'espace de travail pour ajouter l'événement "im_created", puis appuyez sur Enregistrer les modifications.

  5. Une fois ces paramètres mis à jour, cliquez sur le bouton Enregistrer les modifications en bas de la page.

Ajouter le bot Slack dans une équipe

  1. Dans la console de développement Slack, cliquez sur Manage Distribution (Gérer la distribution) dans le menu de gauche.
  2. Dans la section Share Your App with Your Workplace (Partager l'application avec votre espace de travail), cliquez sur le bouton Add to Slack (Ajouter à Slack).
  3. Sur la page suivante, cliquez sur le bouton Authorize (Autoriser) pour ajouter l'agent.

Test

Vous pouvez tester votre agent sans créer de bot Slack public. Pour ce faire, accédez à la page Integrations (Intégrations) de votre agent et cliquez sur le bouton bascule de la tuile Slack. Dans la fenêtre pop-up, cliquez sur le bouton Tester dans Slack.

Vous serez invité à vous connecter à Slack. Une fois connecté, accédez à l'instance et localisez l'utilisateur bot appelé @dialogflow-bot. Vous pouvez envoyer directement un message à l'agent pour le tester, ou l'ajouter aux canaux de votre instance.

Événements

Les événements suivants sont appelés par cette intégration :

Événement Description
SLACK_WELCOME Déclenché lorsqu'un utilisateur entame une conversation avec le bot Slack.

Messages de réponses enrichies

Les messages de réponses enrichies suivants sont acceptés.

Réponses sous forme d'images

Formats et tailles acceptés :

  • gif
  • jpeg
  • png
  • bmp

Réponses sous forme de fiches

Il n'existe aucun champ obligatoire pour les fiches dans Slack. Vous pouvez utiliser n'importe quelle combinaison d'éléments.

Les boutons associés à une URL et à un postback de texte sont acceptés. Les boutons associés à une URL s'affichent sous forme de liens hypertexte.

Réponses rapides

Les réponses rapides sont compatibles avec les intégrations Slack en un clic et correspondent à une version au format texte des boutons interactifs Slack.

Réponses avec charge utile personnalisée

Texte mis en forme dans l'intégration de Slack en un clic

Les bots Slack peuvent envoyer du texte mis en forme, comme illustré dans l'exemple suivant :

{
  "slack": {
    "text": "This is an example of *bold*, _italic_, and `code`."
  }
}