Conexión de un bot a Slack

SE APLICA A: SDK v4

Puedes configurar el bot para que se comunique con personas mediante la 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 tienes acceso a un entorno de Slack, puedes 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. Ve al panel Aplicaciones e inicia sesión en tu cuenta de Slack.
  2. Selecciona 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 y elegir área de trabajo , en Nombre de la 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, selecciona un área de trabajo para la aplicación.
    4. Revisa y acepta los términos del servicio de la API de Slack.
    5. Seleccione Crear aplicación.

Adición de una nueva dirección URL de redireccionamiento

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

  1. Seleccione OAuth & Permissions.

  2. En el panel resultante, en Direcciones URL de redirección, selecciona Agregar una nueva dirección URL de redireccionamiento.

  3. En el cuadro de entrada, escribe una de las siguientes direcciones URL de redireccionamiento y selecciona Agregar.

    • Para un bot global, escribe https://slack.botframework.com.
    • Para un bot regional, escriba la siguiente dirección URL según la región seleccionada:
    Region URL de redireccionamiento
    Europa https://europe.slack.botframework.com
    India https://india.slack.botframework.com
  4. Selecciona Guardar las direcciones URL.

Suscribirse a eventos de bot

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

  1. Selecciona Suscripciones de eventos.

  2. En el panel resultante, activa Habilitar eventos en Activado.

  3. En URLde solicitud, escribe 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, escribe https://slack.botframework.com/api/Events/{bot-name}.
    • Para un bot regional, escriba la siguiente dirección URL según la región seleccionada:
    Region URL de solicitud
    Europa https://europe.slack.botframework.com/api/Events/{bot-name}
    India https://india.slack.botframework.com/api/Events/{bot-name}
  4. En Suscribirse a eventos de bot, selecciona Agregar evento de usuario de bot y, a continuación, suscríbete 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, habilita a los usuarios para que envíen mensajes al bot.

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

Agrega y configura los mensajes interactivos

Opcionalmente, habilita los mensajes interactivos.

  1. Seleccione Interactivity & Shortcuts (Interactividad y accesos directos).

  2. Para la dirección URL de solicitud:

    • Para un bot global, escribe https://slack.botframework.com/api/Actions.
    • Para un bot regional, escriba la siguiente dirección URL según la región seleccionada:
    Region URL de solicitud
    Europa https://europe.slack.botframework.com/Actions
    India https://india.slack.botframework.com/Actions
  3. Seleccione Guardar cambios.

Copia la información de la aplicación

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

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

Configura tu bot en Azure

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

  1. Abra Azure Portal.

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

  3. Abre Canales y selecciona Slack.

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

    1. Escribe las credenciales de Slack necesarias para la aplicación que creaste en Slack.
    2. Opcionalmente, proporciona 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 de dirección URL de redirección de OAuth & Permissions 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 te redirigirá a Slack para terminar de instalar la aplicación de Slack.

    • Si los permisos solicitados son correctos, selecciona Permitir.

El bot ya está configurado para comunicarse con los usuarios en 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. Inicia sesión en el área de trabajo de Slack donde instalaste la aplicación.
  2. En Aplicaciones, selecciona la aplicación.
  3. En el panel resultante, envía 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, elimina y vuelve 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, consulta 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#, consulta la sección Adaptadores del repositorio de la comunidad de .NET.
  • Para obtener información sobre el adaptador de JavaScript, consulta la sección Adaptadores del repositorio de la comunidad de JavaScript.