💻 Prueba tu chatbot localmente … 💡[Solved]

Lennin Cenas
My Bots Latam
Published in
4 min readSep 5, 2018

En una anterior publicación se reviso como construir nuestro primer chatbot 🤖 para FAQ 💬 desde el portal de Microsoft Azure.

Para comenzar a agregar funcionalidades, es necesario que trabajemos de forma local y con la ayuda de Bot Framework Emulador (se revisará a detalle en otra publicación)

😎 Vamos por ello…

Paso 1

Para descargar la plantilla de bot framework QnA Maker, ingresamos a Bot Services y seleccionamos el bot creado denominado WebAppMyBots.

Portal Azure

Seleccionamos Compilación y luego hacemos clic en Bajar el archivo ZIP.

Portal Azure

⏳Esperamos a que se prepare el archivo… 😀

Portal Azure

Clic en el botón Bajar el archivo ZIP.

Portal Azure

Paso 2

📚Extraemos el archivo y abrimos el proyecto seleccionando haciendo clic en Microsoft.Bot.Sample.QnABot.sln

Una vez abierto el VS, ejecutamos nuestro bot.

Microsoft Visual Studio 2017

😱Error de servidor en la aplicación… ¿A que se debe el siguiente error?

Como indica el error, el problema aquí es que AzureWebJobsStorage no se encuentra en el archivo web.config.

Microsoft Edge

Para solucionar el error, vamos al portal Azure y hacemos clic en la Configuración de la aplicación. Allí encontrará la configuración de AzureWebJobsStorage.

Portal Azure

Copiamos el valor de la configuración y pegamos en el archivo web.config como se observa a continuación.

Microsoft Visual Studio 2017 (Web.config)

Al parecer el error ha sido solucionado.

Microsoft Edge

Abrimos el Bot Framework Emulator.

Clic en File -> New Bot e ingresamos el Bot Name y Endopint Url como se muestra a continuación.

Bot Framework Emulator

Probamos el chatbot haciendo la pregunta ¿Cómo estás?

Según lo observado nos falta configurar en el Web.config el QnAKnowledgebaseId, QnAAuthKey y QnAEndpointHostName.

Bot Framework Emulator

Vamos al portal de Azure y hacemos clic en la Configuración de la aplicación y copiar esos datos al Web.config como se observa a continuación.

Microsoft Visual Studio 2017 (Web.config)

Ademas debemos considerar que Utils.GetAppSetting(“ your_key”) es un método que se ejecuta en Azure. Si deseamos ejecutar el bot en local y acceder desde el Web.config.

Se debe reemplazar Utils.GetAppSetting(“ your_key”) por ConfigurationManager.AppSettings[“your_key”].

Entonces ingresamos a la clase BasicQnAMakerDialog.cs (se encuentra dentro de la carpeta Dialogs) para hacer las modificaciones correspondientes.

Microsoft Visual Studio 2017

Identificamos Utils.GetAppSetting(“ your_key”) para realizar el cambio por ConfigurationManager.AppSettings[“your_key”]

Microsoft Visual Studio 2017 (BasicQnAMakerDialog.cs)

Identificamos Utils.GetAppSetting(“ your_key”) para realizar el cambio por ConfigurationManager.AppSettings[“your_key”]

Microsoft Visual Studio 2017 (BasicQnAMakerDialog.cs)

Realizar los cambios y no olvidar escribir using System.Configuration; en la parte superior.

Microsoft Visual Studio 2017 (BasicQnAMakerDialog.cs)

Realizar los cambios y no olvidar escribir using System.Configuration; en la parte superior.

Microsoft Visual Studio 2017 (BasicQnAMakerDialog.cs)

Paso 3

Luego de haber realizado los cambios, podemos hacer las pruebas con normalidad.

Bot Framework Emulator

Ahora tenemos lista la solución para poder depurar y modificar el código del bot en C# de forma local desde Visual Studio 2017 haciendo uso del Bot Framework Emulator.

Microsoft Visual Studio 2017 | Bot Framework Emulator

Espero que esta publicación, haya sido de tu agrado, compártelo… 😃

😅 No olvides aplaudir la publicación 👏

¡Hasta pronto 😉!

Nota: Esta ayuda es válida para aquellos que comenzaron a desarrollar su Web App Bot desde una plantilla (Question and Answer C#) desde el portal de Azure, la cual descargaron y requieren hacer modificaciones ejecutándolo localmente usando Microsoft Bot Framework Emulator (V4 PREVIEW).

--

--

Lennin Cenas
My Bots Latam

MyBots LATAM | Ady Educa | Especialista Chatbots | Profesor | Inteligencia Artificial Generativa | Azure Open AI