UiPath Documentation
activities
latest
false
Atividades do Integration Service
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

Dispare uma automação usando o conector HTTP Webhook quando uma mensagem é postada no Slack

Dispare uma automação usando o HTTP Webhook usando o Conector do gatilho.

Sobre​

Resumo: dispare uma automação usando o conector HTTP Webhook quando uma mensagem é postada no canal do Slack.

Aplicativos: Slack, HTTP Webhook

Description​

O conector HTTP Webhook permite que os desenvolvedores de RPA disparem automações com base em eventos externos usando webhooks. O conector do Webhook HTTP gera uma URL do Webhook. Isso deve ser definido nas configurações do aplicativo Slack OAuth privado e o respectivo tipo de evento deve estar habilitado. Os eventos são então recebidos instantaneamente pelo Orchestrator por meio dessa URL.

Use case​

Gerenciar solicitações de suporte do cliente criadas em um canal de ajuda do Slack. A solicitação deve criar um ticket do Jira ou Zendesk ou enviar uma notificação do Slack para uma equipe ou grupo de usuários usando um botão do Slack.

Este guia do usuário orienta você pelo primeiro fluxo de trabalho deste caso de uso: disparar automações usando o conector do Webhook quando uma mensagem é postada no canal do Slack. Para o segundo fluxo de trabalho, ou seja, disparar automações com base no evento Botão do Slack clicado , consulte Usar botões do Slack quando uma oportunidade for obtida no sistema CRM.

Esse fluxo de trabalho usa o conector HTTP Webhook e seu gatilho, Deserialize JSON, junto com algumas atividades do Slack: Send Message to User e Get Channel Info. Você também pode usar as atividades Send Message to Channel ou Send Reply .

Fluxo de Trabalho​

Observação:

Se você quiser economizar tempo, use o Disparar uma automação usando o conector do Webhook quando uma mensagem for postada no modelo de canal do Slackno Studio Web para criar esse fluxo de trabalho.

  1. Abra o Studio Web e crie um novo projeto.

  2. Selecione Mais opções Imagem dos documentos menu no Gatilho manual e selecione Alterar gatilho.

  3. No catálogo de gatilhos, selecione HTTP Webhook: Webhook Event Eventd. Nesta atividade Trigger:

    1. Adicione sua conexão do Slack. Então, o conector HTTP do Webhook gera um URL do Webhook, do qual você precisará na etapa 4.

    2. Adicione quaisquer filtros adicionais, se necessário. Recomendamos que você use um filtro para o ID do canal, pelo menos. Caso contrário, qualquer mensagem em qualquer canal do seu espaço de trabalho acionará o evento.

      • Para adicionar um filtro no ID do canal, selecione o campo Filtros de dados para acessar o Construtor de filtros. Na primeira coluna, digite body.event.channel, selecione o operador Igual e adicione o ID do canal na terceira coluna.

    3. Você também pode renomear o gatilho de atividade para algo mais representativo do seu caso de uso.

  4. Copie o URL do webhook gerado na etapa 1.

    1. Em uma guia diferente do navegador, acesse https://api.slack.com/apps e abra seu aplicativo OAuth privado do Slack.

    2. Navegue até a página de configurações Inscrições de eventos .

      1. Defina o botão de alternância Habilitar eventos como Ativado.

      2. No campo URL da solicitação , cole o URL do webhook.

    3. Em seguida, role para baixo até Inscrever-se em eventos em nome de usuários e selecione Adicionar evento de espaço de trabalho. Adicione o evento message.channels . Isso recupera eventos quando uma mensagem é publicada por um usuário no canal. Você pode adicionar quaisquer outros eventos de sua escolha.

    4. Selecione Salvar alterações. Os webhooks agora estão configurados para seu aplicativo.

      Observação:

      A saída do conector do Webhook (após a URL do Webhook ser configurada para o Slack) está em um formato específico de string JSON (um exemplo é fornecido na seção abaixo). Ele deve ser convertido em objeto JSON para usar os campos de carga de evento, como ID do canal, ID do usuário, texto de mensagem etc. em atividades subsequentes (com a ajuda da notação de ponto JSON/expressão VB). A carga de evento do Slack também pode ser recuperada de https://api.slack.com/types/event. Para evitar erros, recupere/registre a string de conteúdo do evento usando Mensagem de registro antes de usar a notação de ponto JSON/expressão VB.

  5. Adicione uma atividade Deserialize JSON ao seu fluxo de trabalho. Essa etapa converte a saída da string JSON do conector Webhook em objeto JSON.

    1. Selecione o parâmetro de entrada de string JSON para adicionar uma variável.

    2. Em Evento do Webhook ocorrido, navegue até Corpo > Conteúdo.

  6. Adicione a atividade Get Channel Info do Slack ao seu fluxo de trabalho. Nesta etapa, você precisa passar os campos de saída da atividade Deserialize JSON usando a notação de ponto JSON/expressão VB para recuperar o nome do canal. Na atividade:

    1. Para o campo Canal , selecione Ver mais Imagem dos documentos ícone para alterar o tipo de entrada e selecione Abrir editor de expressão. Use a entrada abaixo para passar o ID do canal recuperado no evento do Webhook.

      jSONObject("event")("channel").ToString
      jSONObject("event")("channel").ToString
      
  7. Adicione a atividade Send Message to User do Slack ao seu fluxo de trabalho. Agora você deseja enviar uma mensagem para um usuário (você mesmo) quando uma mensagem for publicada em um canal específico (um canal de ajuda) e inserir a mensagem publicada e o nome do canal usando variáveis. Nesta atividade:

    1. No campo Entrada do usuário , selecione o usuário na lista suspensa ou insira manualmente o endereço de e-mail do usuário.

    2. No campo Mensagem , insira uma mensagem inserindo o nome do canal (onde a mensagem foi publicada) e o conteúdo do texto da mensagem, usando variáveis. Por exemplo: "Há uma solicitação de suporte ao cliente no canal <name>: jSONObject("event")("text")"

    3. Nos campos Ações de botões , insira duas ações de botão para Aprovar tíquete e Notificar equipe. Adicione o ID da ação (obrigatório), nome da ação (obrigatório), estilo (primário/perigo), título da confirmação, texto da confirmação, confirmar título "OK", confirmar título "Negar" em um formato separado por vírgula:

      aks1,Approve Ticket,primary;
      aks2,Notify Team;
      aks1,Approve Ticket,primary;
      aks2,Notify Team;
      
  8. Agora, você está pronto para publicar ou executar o projeto. Selecione o botão Publicar na parte superior do fluxo de trabalho e insira os detalhes como Nome da automação, Descrição e Espaço de trabalho. A Versão é atualizada automaticamente.

Exemplo de string 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"
}
  • Sobre​
  • Description​
  • Use case​
  • Fluxo de Trabalho​
  • Exemplo de string JSON​

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades