Conexión de un bot a SlackConnect a bot to Slack

se aplica a: SDK V4APPLIES TO: SDK v4

En este artículo se muestra cómo agregar un canal de Slack a un bot.This article shows how to add a Slack channel to a bot. Seleccione una de las siguientes maneras de configurar la aplicación de Slack:Select one of the following ways to configure the Slack app:

  • Con el portal de Azure Bot Service para conectar el botUse Azure Bot Service portal to connect your bot
  • Con el adaptador de SlackUse the Slack adapter

Creación de una aplicación de Slack para el botCreate a Slack application for your bot

  1. En el explorador, inicie sesión en Slack.In your browser, sign in Slack.

  2. Vaya al panel Aplicaciones.Navigate to Your Apps panel.

    Configurar el bot

  3. Haga clic en Crear nueva aplicación.Click Create New App.

  4. En el cuadro Nombre de la aplicación, escriba el nombre de la aplicación de Slack.In the App Name box, enter the name of your Slack application.

  5. En el cuadro Equipo de Desarrollo de Slack, escriba el nombre del equipo de desarrollo.In the Development Slack Team box, enter the name of your development team. Si aún no es miembro de un equipo de desarrollo de Slack, cree uno o únase a uno.If you are not already a member of a Development Slack Team, create or join one.

    Creación de una aplicación

  6. Haga clic en Create app (Crear aplicación).Click Create App.

Agregar una nueva dirección URL de redireccionamientoAdd a new redirect URL

  1. En el panel izquierdo, seleccione el elemento de menú Permisos & OAuth.In the left panel, select the OAuth & Permissions menu item.

  2. En el panel derecho, haga clic en Agregar una nueva dirección URL de redireccionamiento.In the right panel, click Add a new Redirect URL.

  3. En el cuadro, escriba https://slack.botframework.com/ .In the box, enter https://slack.botframework.com/.

  4. Haga clic en Agregar.Click Add.

  5. Haga clic en Save URLs (Guardar direcciones URL).Click Save URLs.

    Agregar dirección URL de redireccionamiento

Suscribirse a eventos de botSubscribe to Bot Events

Siga estos pasos para suscribirse a seis eventos determinados de bot.Follow these steps to subscribe to six particular bot events. Si se suscribe a eventos de bot, se notificará a la aplicación acerca de las actividades de los usuarios en la dirección URL que especifique.By subscribing to bot events, your app will be notified of user activities at the URL you specify.

Sugerencia

El identificador de bot es el nombre del bot.Your bot handle is the name of your bot. Para buscar el identificador de un bot, visite , elija un bot y registre https://dev.botframework.com/bots el nombre del bot.To find a bot's handle, visit https://dev.botframework.com/bots, choose a bot, and record the name of the bot.

  1. En el panel izquierdo, seleccione el elemento Suscripciones a eventos.In the left panel, select the Event Subscriptions item.

  2. En el panel derecho, establezca Habilitar eventos en En.In the right panel, set Enable Events to On.

  3. En URL de solicitud, escriba https://slack.botframework.com/api/Events/{YourBotHandle}, donde {YourBotHandle} es el identificador del bot, sin las llaves.In Request URL, enter https://slack.botframework.com/api/Events/{YourBotHandle}, where {YourBotHandle} is your bot handle, without the braces.

    eventos de suscripción

  4. En Subscribe to Bot Events (suscribirse a eventos de Bot), haga clic en Add Bot User Event (Agregar evento de usuario de bot).In Subscribe to Bot Events, click Add Bot User Event.

  5. En la lista de eventos, seleccione estos seis tipos de evento:In the list of events, select these six event types:

    • member_joined_channel
    • member_left_channel
    • message.channels
    • message.groups
    • message.im
    • message.mpim

    lista de eventos suscritos

  6. En la parte inferior de la pantalla, haga clic en Guardar cambios.At the bottom of the screen, click Save Changes.

A medida que agrega eventos en Slack, se enumeran los ámbitos que necesita solicitar.As you add events in Slack, it lists the scopes you need to request. Los ámbitos que necesite dependerán de los eventos a los que se suscriba y de cómo piensa responder a ellos.The scopes you need will depend on the events you subscribe to and how you intend to respond to them. Para ver los ámbitos compatibles con Slack, consulte Ámbitos y permisos.For Slack supported scopes, refer to Scopes and permissions. Consulte también Descripción de los ámbitos de OAuth para bots.See also Understanding OAuth scopes for Bots.

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 una manera más granular.As of June 2020 Slack channel supports Slack V2 permission scopes which allow the bot to specify its capabilities and permissions in a more granular way. Todos los canales de Slack recién configurados usarán los ámbitos V2.All newly configured Slack channels will use the V2 scopes. Para cambiar el bot a los ámbitos V2, elimine y vuelva a crear la configuración del canal de Slack en la Azure Portal canales.To switch your bot to the V2 scopes, delete and recreate the Slack channel configuration in the Azure portal Channels blade.

Adición y configuración de mensajes interactivos (opcional)Add and Configure Interactive Messages (optional)

Si el bot usará funcionalidades específicas de Slack, como botones, siga estos pasos:If your bot will use Slack-specific functionality such as buttons, follow these steps:

  1. Seleccione la pestaña Interactivity & Shortcuts (Interactividad y accesos directos) y habilite Interactivity (Interactividad).Select the Interactivity & Shortcuts tab and enable Interactivity.

  2. Escriba https://slack.botframework.com/api/Actions como Dirección URL de la solicitud.Enter https://slack.botframework.com/api/Actions as the Request URL.

  3. Haga clic en el botón Save changes (Guardar cambios).Click the Save changes button.

    Habilitar mensajes

Adición del canal de Slack al botAdd the Slack channel to the bot

  1. En el panel izquierdo, seleccione el elemento Información básica.In the left panel, select the Basic Information item.

  2. En el panel derecho, desplácese hasta la sección Credenciales de la aplicación.In the right panel, scroll to the App Credentials section. Se muestran el identificador de cliente, el secreto de cliente y el secreto de firma necesarios para configurar el canal del bot de Slack.The Client ID, Client Secret, and Signing Secret required for configuring your Slack bot channel are displayed. Copie y almacene estas credenciales en un lugar seguro.Copy and store these credentials in safe place.

    Obtener las credenciales

  3. Abra el bot en la Azure Portal.Open your bot in the Azure portal.

  4. En el panel izquierdo, seleccione Canales,In the left panel, select Channels,

  5. En el panel derecho, seleccione el icono de Slack.In the right panel, select the Slack icon.

  6. Pegue las credenciales de aplicación de Slack que guardó en los pasos anteriores en los campos adecuados.Paste the Slack app credentials you saved in the previous steps into the appropriate fields.

  7. La Landing Page URL (Dirección URL de la página de aterrizaje) es opcional.The Landing Page URL is optional. Puede omitirla o cambiarla.You may omit or change it.

    Enviar las credenciales

  8. Haga clic en Save(Guardar).Click Save. Siga las instrucciones para autorizar el acceso de la aplicación Slack a su equipo de desarrollo de Slack.Follow the instructions to authorize your Slack app's access to your Development Slack Team.

  9. En la página Configurar Slack, confirme que el control deslizante del botón Guardar está establecido en Habilitado.On the Configure Slack page, confirm that the slider by the Save button is set to Enabled. El bot ahora está configurado para comunicarse con los usuarios de Slack.Your bot is now configured to communicate with the users in Slack.

Creación de un botón Agregar a SlackCreate an Add to Slack button

Slack proporciona el código HTML que se puede usar para ayudar a los usuarios de Slack a encontrar su bot en la sección Add the Slack button (Agregar el botón de Slack) de esta página.Slack provides HTML you can use to help Slack users find your bot in the Add the Slack button section of this page. Para usar este código HTML con el bot, reemplace el valor de href (comienza con https://) por la dirección URL que se encuentra en configuración del canal de Slack del bot.To use this HTML with your bot, replace the href value (begins with https://) with the URL found in your bot's Slack channel settings. Siga estos pasos para obtener la dirección URL de reemplazo.Follow these steps to get the replacement URL.

  1. En https://dev.botframework.com/bots , haga clic en el bot.On https://dev.botframework.com/bots, click your bot.
  2. Haga clic en Channels (Canales), haga clic con el botón derecho en la entrada denominada Slack y haga clic en Copy link (Copiar vínculo).Click Channels, right-click the entry named Slack, and click Copy link. Esta dirección URL ahora está en el Portapapeles.This URL is now in your clipboard.
  3. Pegue esta dirección URL desde el Portapapeles en el código HTML proporcionado para el botón de Slack.Paste this URL from your clipboard into the HTML provided for the Slack button. Esta dirección URL reemplaza el valor de href proporcionado por Slack para este bot.This URL replaces the href value provided by Slack for this bot.

Los usuarios autorizados pueden hacer clic en el botón Agregar a Slack proporcionado por este código HTML modificado para comunicarse con el bot en Slack.Authorized users can click the Add to Slack button provided by this modified HTML to reach your bot on Slack.

Nota

El vínculo que ha pegar en el valor href del código HTML contiene ámbitos que se pueden refinar según sea necesario.The link you pasted into the href value of the HTML contains scopes that can be refined as needed. Consulte Ámbitos y permisos para obtener la lista completa de ámbitos disponibles.See Scopes and permissions for the full list of available scopes.

Prueba de la aplicación en SlackTest your application in Slack

  1. Inicie sesión en el espacio de trabajo de Slack donde instaló la aplicación ( http://<your work space>-group.slack.com/ ).Log in the Slack work space where you installed your app (http://<your work space>-group.slack.com/). Verá que aparece en la sección Aplicaciones del panel izquierdo.You will see it listed under the Apps section in the left panel.

  2. En el panel izquierdo, seleccione la aplicación.In the left panel, select your app.

  3. En el panel derecho, escriba un mensaje y envíelo a la aplicación.In the right panel, write e message and send it to the application. Si ha usado un bot de eco, la aplicación vuelve a enviar el mensaje como se muestra en la ilustración siguiente.If you used an echo bot, the application echoes back the message as shown in the figure below.

    pruebas de aplicaciones

También puede probar esta característica con el bot de ejemplo para el adaptador de Slack; para ello, rellene el archivo appSettings.json con los mismos valores descritos en los pasos anteriores.You can also test this feature using the sample bot for the Slack adapter by populating the appSettings.json file with the same values described in the steps above. Este ejemplo incluye pasos adicionales que se describen en el archivo Léame para mostrar ejemplos de uso compartido de vínculos, recepción de datos adjuntos y envío de mensajes interactivos.This sample has additional steps described in the README file to show examples of link sharing, receiving attachments, and sending interactive messages.