Activités (Activities)
Plus récente (Latest)
False
Image de fond de la bannière
Activités Integration Service
Dernière mise à jour 23 avr. 2024

Déclencher une automatisation à l’aide du connecteur HTTP Webhook lorsqu’un message est publié sur Slack

À propos

Résumé: déclenchez une automatisation à l'aide du connecteur HTTP Webhook lorsqu'un message est publié sur le canal Slack.

Applications: Slack, HTTP Webhook

Description
Le connecteur HTTP Webhook permet aux développeurs RPA de déclencher des automatisations en fonction d'événements externes à l'aide de webhooks. Le connecteur HTTP Webhook génère une URL Webhook. Cela doit être configuré dans les paramètres privés de l’application Slack OAuth et le type d’événement correspondant doit être activé. Les événements sont ensuite reçus instantanément par Orchestrator via cette URL.
Use case

Gestion des demandes d’assistance des clients envoyées dans un canal d’aide Slack. La demande doit soit créer un ticket Jira ou Zendesk, soit envoyer une notification Slack à une équipe ou un groupe d'utilisateurs à l'aide d'un bouton Slack.

Ce guide de l'utilisateur vous guide à travers le premier workflow de ce cas d'utilisation : déclenchement des automatisations à l'aide du connecteur Webhook lorsqu'un message est publié sur le canal Slack. Pour le deuxième workflow, c'est-à-dire le déclenchement d'automatisations basées sur l'événement Cliqué sur le bouton Slack, consultez Utiliser les boutons Slack lorsqu'une opportunité est gagnée dans le système CRM.


This workflow uses the HTTP Webhook connector and its Webhook Event Happened trigger, Deserialize JSON, along with some Slack activities: Send Message to User and Get Channel Info. You can also use the Send Message to Channel or Send Reply activities.

Workflow

Remarque : si vous voulez gagner du temps, utilisez le connecteur Déclencher une automatisation à l'aide du connecteur Webhook lorsqu'un message est publié sur le modèle de canal Slack dans Studio Web pour créer ce workflow.
  1. Ouvrez Studio Web et créez un nouveau projet.
  2. Sélectionnez les options Plus docs image dans le déclencheur manuel ( Manual trigger ) et sélectionnez Modifier le déclencheur (Change trigger).
  3. Dans le catalogue de déclencheurs, sélectionnez Webhook HTTP : Événement de webhook arrivé (HTTP Webhook: Webhook Event Happed). Dans cette activité de déclencheur :
    1. Ajoutez votre connexion Slack. Le connecteur HTTP Webhook génère ensuite une URL Webhook, dont vous aurez besoin à l'étape 4.


    2. Ajoutez des filtres supplémentaires, si nécessaire. Nous vous recommandons d'utiliser au moins un filtre pour l' ID de canal. Sinon, tout message dans n'importe quel canal de votre espace de travail déclenchera l'événement.
      • Pour ajouter un filtre à l'ID de canal, sélectionnez le champ Filtres de données (Data filters ) pour accéder au générateur de filtres. Dans la première colonne, saisissez body.event.channel, sélectionnez l'opérateur Égal à (Equals) et ajoutez l'ID du canal dans la troisième colonne.
        docs image
    3. Vous pouvez également renommer l'activité de déclencheur afin qu'elle soit plus représentative de votre cas d'utilisation.
  4. Copiez l'URL du Webhook générée à l'étape 1.
    1. Dans un autre onglet de navigateur, accédez à https://api.slack.com/apps et ouvrez votre application OAuth privée Slack.
    2. Accédez à la page des paramètres des abonnements aux événements .
      1. Activez le bouton Activer les événements ( Enable Events ).

      2. Dans le champ URL de la demande ( Request URL ), collez l'URL du Webhook.


    3. Ensuite, faites défiler jusqu'à S'abonner aux événements au nom des utilisateurs (Subscribe to events the name of users ) et sélectionnez Ajouter un événement d'espace de travail ( Add workspace event). Ajoutez l'événement message.channels . Cela récupère les événements lorsqu'un message est publié par un utilisateur sur le canal. Vous pouvez ajouter tous les autres événements de votre choix.


    4. Sélectionnez Enregistrer les modifications. Les webhooks sont maintenant configurés pour votre application.
    Remarque : la sortie du connecteur Webhook (une fois l'URL Webhook configurée pour Slack) est dans un format de chaîne JSON spécifique (un exemple est fourni dans la section ci-dessous). Il doit être converti en objet JSON pour utiliser les champs de charge utile de l'événement, tels que l'ID du canal, l'ID de l'utilisateur, le texte du message, etc. dans les activités suivantes (à l'aide de la notation pointée JSON/expression VB). La charge utile de l'événement Slack peut également être récupérée à partir de https://api.slack.com/types/event. Pour éviter toute erreur, récupérez/enregistrez la chaîne de charge utile de l'événement à l'aide du Message du journal (Log message) avant d'utiliser la notation pointée JSON/l'expression VB.
  5. Ajoutez une activité Désérialiser JSON à votre workflow. Cette étape convertit la sortie de chaîne JSON du connecteur Webhook en objet JSON.
    1. Sélectionnez le paramètre d'entrée de chaîne JSON pour ajouter une variable.
    2. Sous Événement de Webhook, accédez à Corps (Body) > Contenu (Content).
      docs image
  6. Ajoutez l'activité Slack - Obtenir les informations du canal (Get Channel Info ) à votre workflow. À cette étape, vous devez transmettre les champs de sortie de l'activité Désérialiser JSON (Deserialize JSON) à l'aide de la notation pointée JSON/expression VB pour récupérer le nom du canal. Dans l’activité :
    1. Dans le champ Canal (Canal), sélectionnez Voir plus (See more)docs image pour modifier le type d'entrée et sélectionnez Ouvrir l'éditeur d'expressions ( Open expression editor). Utilisez l'entrée ci-dessous pour transmettre l'ID du canal récupéré dans l'événement Webhook.
      jSONObject("event")("channel").ToStringjSONObject("event")("channel").ToString
  7. Ajoutez l’activité Slack Envoyer un message à l'utilisateur (Send Message to User ) à votre workflow. Vous voulez maintenant envoyer un message à un utilisateur (vous-même) lorsqu'un message est publié dans un canal particulier (un canal d'aide) et saisir le message publié et le nom du canal à l'aide de variables. Dans cette activité :
    1. Dans le champ Saisie de l' utilisateur (User input), sélectionnez l'utilisateur dans la liste déroulante ou saisissez manuellement l'adresse e-mail de l'utilisateur.
    2. Dans le champ Message , saisissez un message en saisissant le nom du canal (où le message a été publié) et le contenu du texte du message, à l'aide de variables. Par exemple : « Il y a une demande d'assistance client dans le canal <name>: jSONObject("event")("text")».
    3. Dans les champs Actions des boutons ( Buttons actions ), saisissez deux actions de bouton pour Approuver le ticket (Approve ticket) et Notifier l'équipe (Notify Team). Ajoutez l'ID d'action (obligatoire), le nom de l'action (obligatoire), le style (principal/danger), le titre de confirmation, le texte de confirmation, l'option de confirmation du titre, la confirmation du titre refusé, dans un format séparé par des virgules :
      aks1,Approve Ticket,primary;
      aks2,Notify Team;aks1,Approve Ticket,primary;
      aks2,Notify Team;
  8. Vous êtes maintenant prêt à publier ou exécuter le projet. Sélectionnez le bouton Publier (Publish) en haut du workflow et saisissez les détails tels que le Nom de l'automatisation (Automation name), la Description et l' Espace de travail (Workspace). La Version est mise à jour automatiquement.
    docs image

Exemple de chaîne JSON

{
 "token": "SUAVTSGdUyb2qBaclIC14wKq",
 "team_id": "T02KZCJHY1W",
 "enterprise_id": "E02K962QC91",
 "context_team_id": "T02KZCJHY1W",
 "context_enterprise_id": "E02K962QC91",
 "api_app_id": "A04JJM6SUFM",
 "event": {
   "client_msg_id": "4abfc195-c381-4c8e-b952-00aa705ce507",
   "type": "message",
   "text": "YoYo",
   "user": "U02K95UU71Q",
   "ts": "1705418063.837779",
   "blocks": [
     {
       "type": "rich_text",
       "block_id": "moF7O",
       "elements": [
         {
           "type": "rich_text_section",
           "elements": [
             {
               "type": "text",
               "text": "YoYo"
             }
           ]
         }
       ]
     }
   ],
   "team": "T02KZCJHY1W",
   "channel": "C05LTLGRHEJ",
   "event_ts": "1705418063.837779",
   "channel_type": "channel"
 },
 "type": "event_callback",
 "event_id": "Ev06E0PJ7M45",
 "event_time": 1705418063,
 "authorizations": [
   {
     "enterprise_id": "E02K962QC91",
     "team_id": "T02KZCJHY1W",
     "user_id": "U02K95UU71Q",
     "is_bot": false,
     "is_enterprise_install": false
   }
 ],
 "is_ext_shared_channel": false,
 "event_context": "4-eyJldCI6Im1lc3NhZ2UiLCJ0aWQiOiJUMDJLWkNKSFkxVyIsImFpZCI6IkEwNEpKTTZTVUZNIiwiY2lkIjoiQzA1TFRMR1JIRUoifQ"
}{
 "token": "SUAVTSGdUyb2qBaclIC14wKq",
 "team_id": "T02KZCJHY1W",
 "enterprise_id": "E02K962QC91",
 "context_team_id": "T02KZCJHY1W",
 "context_enterprise_id": "E02K962QC91",
 "api_app_id": "A04JJM6SUFM",
 "event": {
   "client_msg_id": "4abfc195-c381-4c8e-b952-00aa705ce507",
   "type": "message",
   "text": "YoYo",
   "user": "U02K95UU71Q",
   "ts": "1705418063.837779",
   "blocks": [
     {
       "type": "rich_text",
       "block_id": "moF7O",
       "elements": [
         {
           "type": "rich_text_section",
           "elements": [
             {
               "type": "text",
               "text": "YoYo"
             }
           ]
         }
       ]
     }
   ],
   "team": "T02KZCJHY1W",
   "channel": "C05LTLGRHEJ",
   "event_ts": "1705418063.837779",
   "channel_type": "channel"
 },
 "type": "event_callback",
 "event_id": "Ev06E0PJ7M45",
 "event_time": 1705418063,
 "authorizations": [
   {
     "enterprise_id": "E02K962QC91",
     "team_id": "T02KZCJHY1W",
     "user_id": "U02K95UU71Q",
     "is_bot": false,
     "is_enterprise_install": false
   }
 ],
 "is_ext_shared_channel": false,
 "event_context": "4-eyJldCI6Im1lc3NhZ2UiLCJ0aWQiOiJUMDJLWkNKSFkxVyIsImFpZCI6IkEwNEpKTTZTVUZNIiwiY2lkIjoiQzA1TFRMR1JIRUoifQ"
}
  • À propos
  • Workflow
  • Exemple de chaîne JSON

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.