Actividades
Más reciente
False
Imagen de fondo del banner
Actividades de Integration Service
Última actualización 23 de abr. de 2024

Activar una automatización utilizando el conector HTTP Webhook cuando se publique un mensaje en Slack

Acerca de

Resumen: desencadena una automatización utilizando el conector HTTP Webhook cuando se publica un mensaje en el canal de Slack.

Aplicaciones: Slack, HTTP Webhook

Descripción
El conector HTTP Webhook permite a los desarrolladores de RPA desencadenar automatizaciones basadas en eventos externos mediante webhooks. El conector HTTP Webhook genera una URL de Webhook. Esto debe configurarse en la configuración privada de la aplicación OAuth de Slack y el tipo de evento correspondiente debe estar habilitado. Los eventos son recibidos instantáneamente por Orchestrator a través de esta URL.
Use case

Gestionar las solicitudes de atención al cliente planteadas en un canal de ayuda de Slack. La solicitud debe crear un ticket de Jira o Zendesk o enviar una notificación de Slack a un equipo o grupo de usuarios mediante un botón de Slack.

Esta guía de usuario te guía a través del primer flujo de trabajo de este caso de uso: desencadenar automatizaciones utilizando el conector de Webhook cuando se publica un mensaje en el canal de Slack. Para el segundo flujo de trabajo, es decir, desencadenar automatizaciones basadas en el evento Botón de Slack pulsado, consulta Usar botones de Slack cuando se gana una oportunidad en el sistema 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.

Flujo de trabajo

Nota: Si quieres ahorrar tiempo, utiliza la plantilla Desencadenar una automatización mediante el conector Webhook cuando se publique un mensaje en la plantilla de canal de Slack en Studio Web para crear este flujo de trabajo.
  1. Abre Studio Web y crea un nuevo proyecto.
  2. Selecciona Más opciones docs image en el menú Desencadenador manual y selecciona Cambiar desencadenador.
  3. En el catálogo de desencadenadores, selecciona HTTP Webhook: evento de Webhook ocurrido. En esta actividad de desencadenador:
    1. Añade tu conexión de Slack. El conector HTTP Webhook genera una URL de Webhook, que necesitarás en el paso 4.


    2. Añade cualquier filtro adicional, si es necesario. Te recomendamos que utilices un filtro para el ID de canal, como mínimo. De lo contrario, cualquier mensaje en cualquier canal de tu espacio de trabajo desencadenará el evento.
      • Para añadir un filtro en el ID del canal, selecciona el campo Filtros de datos para acceder al Creador de filtros. En la primera columna, escribe body.event.channel, selecciona el operador Igual y añade el ID del canal en la tercera columna.
        docs image
    3. También puedes cambiar el nombre de la actividad del desencadenador a algo más representativo de tu caso de uso.
  4. Copia la URL del webhook generada en el paso 1.
    1. En una pestaña diferente del navegador, ve a https://api.slack.com/apps y abre tu aplicación OAuth privada de Slack.
    2. Ve a la página de configuración Suscripciones a eventos .
      1. Establece la alternancia Habilitar eventos en Activado.

      2. En el campo URL de solicitud , pega la URL del webhook.


    3. A continuación, desplázate hacia abajo hasta Suscribirse a eventos en nombre de los usuarios y selecciona Añadir evento de espacio de trabajo. Añade el evento message.channels . Esto recupera eventos cuando un usuario publica un mensaje en el canal. Puedes añadir cualquier otro evento de tu elección.


    4. Selecciona Guardar cambios. Los webhooks ya están configurados para tu aplicación.
    Nota: La salida del conector de Webhook (después de configurar la URL de Webhook para Slack) está en un formato de cadena JSON específico (se proporciona un ejemplo en la sección siguiente). Debe convertirse en objeto JSON para utilizar los campos de carga útil del evento, como ID de canal, ID de usuario, texto de mensaje, etc. en actividades posteriores (con la ayuda de la notación de puntos JSON/expresión VB). La carga útil del evento de Slack también se puede recuperar desde https://api.slack.com/types/event. Para evitar cualquier error, recupere/registre la cadena de carga útil del evento utilizando Registrar mensaje antes de utilizar la notación de puntos JSON/expresión VB.
  5. Añade una actividad Deserializar JSON a tu flujo de trabajo. Este paso convierte la salida de la cadena JSON del conector de Webhook en un objeto JSON.
    1. Selecciona el parámetro de entrada de la cadena JSON para añadir una variable.
    2. En Evento de Webhook ocurrido, ve a Cuerpo > Contenido.
      docs image
  6. Añade la actividad Obtener información del canal de Slack a tu flujo de trabajo. En este paso, debes pasar los campos de salida de la actividad Deserializar JSON utilizando la notación de puntos JSON/expresión VB para recuperar el nombre del canal. En la actividad:
    1. Para el campo Canal , selecciona Ver más docs image para cambiar el tipo de entrada y selecciona Abrir editor de expresiones. Utiliza la siguiente entrada para pasar el ID de canal recuperado en el evento de Webhook.
      jSONObject("event")("channel").ToStringjSONObject("event")("channel").ToString
  7. Añade la actividad Enviar mensaje al usuario de Slack a tu flujo de trabajo. Ahora quieres enviar un mensaje a un usuario (tú mismo) cuando se publica un mensaje en un canal concreto (un canal de ayuda) e introducir el mensaje publicado y el nombre del canal utilizando variables. En esta actividad:
    1. En el campo Entrada de usuario , selecciona el usuario de la lista desplegable o escribe manualmente la dirección de correo electrónico del usuario.
    2. En el campo Mensaje , escribe un mensaje introduciendo el nombre del canal (donde se publicó el mensaje) y el contenido del texto del mensaje, utilizando variables. Por ejemplo: "Hay una solicitud de atención al cliente en el canal <name>: jSONObject("event")("text")"
    3. En los campos Acciones de botones , introduce dos acciones de botón para Aprobar ticket y Notificar al equipo. Añade el ID de la acción (obligatorio), el nombre de la acción (obligatorio), el estilo (principal/peligro), el título de confirmación, el texto de confirmación, el título de confirmar ok, el título de confirmar denegar, en un formato separado por comas:
      aks1,Approve Ticket,primary;
      aks2,Notify Team;aks1,Approve Ticket,primary;
      aks2,Notify Team;
  8. Ya está listo para publicar o ejecutar el proyecto. Selecciona el botón Publicar en la parte superior del flujo de trabajo e introduce detalles como el nombre de la automatización, la descripción y el espacio de trabajo. La versión se actualiza automáticamente.
    docs image

Ejemplo de cadena 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"
}
  • Acerca de
  • Flujo de trabajo
  • Ejemplo de cadena JSON

Was this page helpful?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Logotipo blanco de UiPath
Confianza y seguridad
© 2005-2024 UiPath. All rights reserved.