Blogs
    10 posts
Bot Framework v4 – Continuous Deployment: Part 2 – ARM template and Azure DevOps Release Pipeline
This post is the second part of a two-part blog post. In the first blog post we mainly focused on laying the groundwork for the release of the Bot. We made some adjustments to an existing Bot Project from the Bot Builder Samples repository and created a build pipeline in Azure DevOps. In this post we will focus on deploying the Bot to Azure. We will create an ARM template to declaratively describe the resources we need to provision on Azure and we will create the actual release pipeline in Azure DevOps. Creating the ARM template The build pipeline we created in the first part of this blog post produced an artifact which contains our build Bot project in the form of a zip file. We can use this artifact to deploy the Bot to Azure, but at the moment we don’t have anything to deploy to yet. Let’s do a quick inventory of the required resources. When we create a Web App Bot from the Azure portal, Azure will create a Bot Service and an App Service Web App. The App Service will host and run our Bot and it will provide an endpoint to be used by the Bot Service to connect to the Bot.......
Bot Framework v4 – Continuous Deployment: Part 1 – Bot Project and Azure DevOps Build Pipeline
If you read my previous blog post you know I have been working on a Bot with the Microsoft Bot Framework. After some time developing the Bot it became time to start thinking about how to release the Bot to Azure. I always like to automate the provisioning of Azure resources as part of a release and I’ve used Azure Resource Manager templates (ARM templates) for this in other projects. An ARM template is a JSON file in which Azure resources that we want to provision are declaratively described. An ARM template is idempotent, which means it can be executed many times, and the result will always be the same. Azure takes care of the execution and identifies the changes that need to be executed. This is ideal when doing Continuous Deployment (CD). I liked working with them and because friends don’t let friends right-click publish I decided to also use ARM templates in combination with Azure DevOps Pipelines to release this Bot project. Because this Bot is basically a Web App, and I’ve created ARM templates for Web Apps before, I thought it wouldn’t be a problem to set up Continuous Deployment for the Bot in Azure DevOps Pipelines.......
Bot Framework v4 – Adding Application Insights to a Bot
Recently I had the opportunity to work on a conversational agent (bot or chatbot) with the Microsoft Bot Framework and the Azure Bot Service. For this particular project we decided to use the new version of the Framework that went GA at Ignite 2018 and build our bot with the Bot Builder C# SDK (v4). Because this version is still relatively new, some of documentation and samples aren’t completely up-to-date. While I was working on the project I could find bits and pieces of information in the docs and samples but sometimes end-to-end guidance was missing. That’s why I decided to write some blog posts with my findings to hopefully help some of you to get up and running quickly with version 4 of the Framework and the Bot Builder SDK. One of the changes in this new version is the use of .bot files to store and manage secrets and configuration information for bots and any external service it uses. According to Microsoft all bot configuration should be stored in the .bot file, however when I was reading up on how to add Application Insights, I found appsettings.json still being used. In this blog post we will add the Application Insights configuration settings to the .......