Compartir a través de


Depuración de un bot desde cualquier canal mediante un túnel

SE APLICA A: SDK v4

Mientras el bot está en desarrollo, puedes usar un IDE y Bot Framework Emulator para chatear con el bot localmente e inspeccionar los mensajes que envía y recibe el bot. Si el bot está en producción, puede depurar el bot desde cualquier canal mediante un túnel. La conexión sin problemas del bot a varios canales es una característica clave disponible en Bot Framework.

En este artículo se describe cómo depurar el bot localmente mediante un túnel y un EchoBot de C# en un canal conectado al bot. En este artículo se usa Microsoft Teams como canal de ejemplo.

Requisitos previos

  • Una suscripción a Microsoft Azure.
  • Instale un software de tunelización como túneles de desarrollo.
  • Un bot eco de C#, configurado como una aplicación multiinquilino y conectado a cualquier canal.

Configuración de un túnel

Dev Tunnels es una aplicación multiplataforma que puede crear una dirección URL de tunelización o reenvío para que las solicitudes de Internet lleguen a la máquina local. Use devtunnel para reenviar mensajes desde canales externos en la web directamente a la máquina local para permitir la depuración, en lugar del punto de conexión de mensajería estándar configurado en Azure Portal.

  1. Abra un terminal con acceso a la devtunnel CLI.

  2. Ejecute devtunnel con el comando siguiente para crear un túnel.

    devtunnel host -a -p 3978
    

    Nota:

    El puerto especificado es el puerto en el que se ejecuta el bot. Puedes usar cualquier puerto localhost que desees.

  3. Cuando se inicie devtunnel, copie y guarde la dirección URL de reenvío pública para más adelante.

    dirección URL de reenvío de devtunnel

Configuración en Azure Portal

Mientras se ejecuta devtunnel, inicie sesión en Azure Portal y vea la configuración del bot para realizar alguna configuración.

  1. Selecciona el recurso del bot conectado al bot local.

  2. Busque Configuración o configuración. Copie y pegue la dirección URL de reenvío devtunnel en el campo Punto de conexión de mensajería. Asegúrate de mantener "/api/messages" al final de la dirección URL.

    Messaging endpoint (Punto de conexión de mensajería)

  3. Seleccione Aplicar.

Prueba

En este momento, los mensajes entrantes desde el bot desde canales externos ahora se enviarán al bot local. El bot de ejemplo que usaremos para demostrar que ya está configurado en directo para Microsoft Teams. Lea Conectar un bot a Microsoft Teams sobre cómo conectar un bot local con el canal de Microsoft Teams.

Localmente, puede establecer puntos de interrupción en Visual Studio. Al expandir la propiedad de texto desde el objeto de actividad entrante, verás que el mensaje que enviaste al bot de los equipos se intercepta localmente para que se depure.

Establecimiento de puntos de interrupción

Desde aquí, puedes depurar normalmente y ejecutar el código paso a paso. Úsalo para depurar el bot desde cualquier canal.

Información adicional