Conexión de un bot a Slack

SE APLICA A: SDK v4

Puede configurar el bot para comunicarse con personas a través de una aplicación de Slack. En este artículo se describe cómo crear una aplicación de Slack con Slack, conectar el bot a la aplicación de Slack en Azure y probar el bot en Slack.

En este artículo se muestra cómo agregar un canal de Slack al bot en Azure Portal. Para obtener información sobre cómo usar un adaptador de canal personalizado, consulte Información adicional.

Requisitos previos

  • Suscripción a Azure. Si aún no tiene una, cree una cuenta gratuita antes de empezar.
  • Un bot publicado en Azure que quiere conectarse a Slack.
  • Acceso a un área de trabajo de Slack con permisos suficientes para iniciar sesión para crear y administrar aplicaciones en https://api.slack.com/apps. Si no tiene acceso a un entorno de Slack, puede crear un área de trabajo.

Creación de una aplicación en Slack

Primero se crea una aplicación en Slack, que genera la información que necesita para configurar el canal de Slack para el bot en Azure.

  1. Vaya al panel Aplicaciones e inicie sesión en su cuenta de Slack.
  2. Seleccione Crear nueva aplicación o Crear una aplicación si se trata de la primera aplicación.
    1. En la página Crear una aplicación , seleccione Desde cero.
    2. En la página Nombre de la aplicación & elija el área de trabajo , en Nombre de aplicación, escriba el nombre de la aplicación de Slack.
    3. Para Elegir un área de trabajo en la que desarrollar la aplicación, seleccione un área de trabajo para la aplicación.
    4. Revise y acepte los términos de servicio de la API de Slack.
    5. Seleccione Crear aplicación.

Agregar una nueva dirección URL de redireccionamiento

Una vez creada la aplicación, agregue una dirección URL de redireccionamiento a la aplicación.

  1. Seleccione Permisos de OAuth&.
  2. En el panel resultante, en Direcciones URL de redirección, seleccione Agregar una nueva dirección URL de redireccionamiento.
  3. En el cuadro de entrada, escriba una de las siguientes direcciones URL de redireccionamiento y seleccione Agregar.
    • Para un bot global, escriba https://slack.botframework.com.
    • Para un bot regional, escriba https://europe.slack.botframework.com.
  4. Seleccione Guardar direcciones URL.

Suscripción a eventos de bot

Después de agregar la dirección URL de redireccionamiento, suscríbase a la aplicación a eventos de bot para que Slack notifique al bot de actividades de usuario en la dirección URL que especifique. Suscríbase a eventos en función de las características que usará el bot en Slack.

  1. Seleccione Suscripciones de eventos.
  2. En el panel resultante, active Habilitar eventos en Activado.
  3. En Url de solicitud, escriba una de las siguientes direcciones URL de solicitud, donde {bot-name} es el nombre para mostrar del recurso de Azure Bot, sin las llaves.
    • Para un bot global, escriba https://slack.botframework.com/api/Events/{bot-name}.
    • Para un bot regional, escriba https://europe.slack.botframework.com/api/Events/{bot-name}.
  4. En Suscribirse a eventos de bot, seleccione Agregar evento de usuario de bot y, a continuación, suscríbase a eventos. Por ejemplo:
    • member_joined_channel
    • member_left_channel
    • message.channels
    • message.groups
    • message.im
    • message.mpim
  5. Seleccione Save changes (Guardar los cambios).

Habilitación del envío de mensajes al bot por parte de los usuarios

Después de suscribirse a eventos de bot, habilite a los usuarios para que envíen mensajes al bot.

  1. Seleccione Inicio de la aplicación.
  2. En el panel resultante, en la sección Mostrar pestañas de la pestaña Mensajes, habilite Permitir a los usuarios enviar comandos y mensajes de barra diagonal desde la pestaña mensajes.

Adición y configuración de mensajes interactivos

Opcionalmente, habilite los mensajes interactivos.

  1. Seleccione Accesos directos de interactividad&.
  2. Para la dirección URL de solicitud:
    • Para un bot global, escriba https://slack.botframework.com/api/Actions.
    • Para un bot regional, escriba https://europe.slack.botframework.com/Actions.
  3. Seleccione Save changes (Guardar los cambios).

Copia de la información de la aplicación

Necesitará la siguiente información para agregar el canal de Slack al bot. Copie y almacene siempre las credenciales de la aplicación en un lugar seguro.

  1. Seleccione Información básica.
  2. En el panel resultante, en Credenciales de aplicación, busque Id. de cliente, Secreto de cliente y Secreto de firma.
  3. Ahora, seleccione Permisos de OAuth&.
  4. En el panel resultante, busque la sección Ámbitos . Registre los ámbitos del token de bot para la aplicación.

Configuración del bot en Azure

Para completar este paso, necesitará las credenciales de aplicación de Slack del paso anterior.

  1. Abra Azure Portal.

  2. Abra la hoja de recursos de Azure Bot para el bot.

  3. Abra Canales y seleccione Slack.

  4. En Configuración del canal de Slack, escriba la información que copió en los pasos anteriores.

    1. Escriba las credenciales de Slack necesarias para la aplicación que creó en Slack.
    2. Opcionalmente, proporcione una dirección URL de página de aterrizaje a la que se redirigirán los usuarios de Slack después de agregar el bot.
    3. Los valores url de redirección de permisos de OAuth & y url de solicitud de suscripción de eventos deben coincidir con los valores especificados en Slack para agregar la dirección URL de redireccionamiento y suscribirse a eventos de bot.

    submit credentials

  5. Seleccione Aplicar.

  6. Se le redirigirá a Slack para terminar de instalar la aplicación de Slack.

    • Si los permisos solicitados son correctos, seleccione Permitir.

El bot ahora está configurado para comunicarse con los usuarios de Slack. Los usuarios del área de trabajo ahora pueden interactuar con el bot a través de la aplicación slack.

Prueba de la aplicación en Slack

  1. Inicie sesión en el área de trabajo de Slack donde instaló la aplicación.
  2. En Aplicaciones, seleccione la aplicación.
  3. En el panel resultante, envíe mensajes a la aplicación.

Información adicional

Nota:

A partir de junio de 2020, el canal de Slack admite ámbitos de permisos de Slack V2, que permiten al bot especificar sus funcionalidades y permisos de forma más granular. Todos los canales de Slack recién configurados usarán los ámbitos V2. Para cambiar el bot a los ámbitos V2, elimine y vuelva a crear la configuración del canal de Slack en la hoja Canales de Azure Portal.

Para más información sobre la compatibilidad de Slack con bots, consulte la documentación de la API de Slack:

Conexión de un bot a Slack mediante el adaptador de Slack

Además del canal disponible en Azure AI Bot Service para conectar el bot con Slack, los repositorios de la comunidad de Bot Builder definen un adaptador de canal personalizado para Slack.

  • Para obtener información sobre el adaptador de C#, consulte la sección Adaptadores del repositorio de la comunidad de .NET.
  • Para obtener información sobre el adaptador de JavaScript, consulte la sección Adaptadores del repositorio de la comunidad de JavaScript.