Building great bots for Microsoft Teams with Azure Bot Framework Composer
Bots are hot! They provide a conversational user interface that works very well in Microsoft Teams and other chat-based applications.
So-called “QnA Maker” bots have been around for awhile; they require little to no code, but they’re limited to matching user questions with a list of pre-defined answers in the QnA Maker service. Until recently, building a bot that can do more, such as taking actions on behalf of a user in Microsoft Teams, meant doing a lot of coding, as well as training and integrating cognitive services for language recognition and knowledge management.
All of that has changed, opening a new set of options for building sophisticated Microsoft Teams bots. One of the options, Power Virtual Agents, is part of the Power Platform suite and is tightly integrated with Power Automate. This article, however, will consider another, lesser known, but perhaps even more powerful option, Bot Framework Composer.
Bot Framework Composer is designed for low-code and full-code developers alike. It provides an easy-to-use design surface for building a bot, integration with Azure cognitive services, and it works well for teams of developers building apps that can be deployed in multiple Microsoft 365 tenants. This makes it a great choice for ISVs and system integrators who want to deploy a centrally hosted bot for many customers, as well as for enterprise developers.
The Microsoft 365 Developer Advocacy team is pleased to announce a new video series that is all about Bot Framework Composer. It starts at the beginning, creating a bot from scratch, and leads the viewer through building more advanced features such as language recognition, Adaptive Card responses, user authentication, and calling the Microsoft Graph API which allows access to data throughout the Microsoft 365 suite. Developer advocates Ayca Bas and Bob German will be your guides on this journey from zero to Bot hero.
Here is a listing of the videos, along with the reference materials used in each. View the full playlist.
Bot composer can do, WHAT? 😮 – Build low-code Microsoft Teams bots using Bot Composer
This video starts with some basic concepts and a demonstration showing how to create a new bot from scratch and access it from Microsoft Teams.
- Install Bot Framework Composer
- Video on ngrok, a tool used to debug a bot in Teams while running it locally
- Bot registration portal for non-Azure user
Your bot tells you WHO YOU ARE! 💬 Get user profile information in the Microsoft Teams bot by using Microsoft Graph
This video builds on the first, extending the bot as a full Microsoft Teams application and integrating it with Azure Active Directory login and Microsoft Graph so it can display information from the user’s Microsoft 365 profile.
Where is everyone? 👀 Check with “Who’s online bot” to see if your colleagues are around and understand dialogs in Bot Composer
This video introduces a new “Who’s Online” bot that can answer questions about who in the user’s team is online. It begins with a demonstration of the finished bot and then explains bot dialogs and how they are used in the solution.
Resource: Source code for Who’s Online bot
“Who’s online bot” doesn’t need a brain, it needs Language Understanding Intelligence Service ⚡ – Integrate your bot with LUIS
Where the first bot used a simple regular expression to determine what the user wants it to do, the Who’s Online bot uses the Language Understanding Intelligence Service in Microsoft Azure. This allows the bot to understand more complex requests and to extract more details from a request. You’ll learn how to use LUIS from within Bot Framework Composer so the language training data is stored along with the logic that uses it and is easily managed in source control.
Text message or Adaptive Cards? “Who’s online bot” can send them both 💌 – Build Adaptive Cards for your bot responses
This video will explore Bot Composer’s Language Generation system that allows the bot to provide more varied and compelling responses, including Adaptive Cards with deep links that connect to other parts of Microsoft Teams.
Your bot can answer hundreds of questions with QnA Maker, CAN YOU? 😎 – Integrate your bot with QnA Maker
QnA Maker is an Azure service that manages “knowledge bases” containing questions and answers. You’ll learn how to add QnA Maker to your bot right inside of Bot Composer so the knowledge base can be stored along with the bot logic and is easily managed in source control. You’ll also learn some best practices for using QnA Maker to go beyond questions and answers and give your bot a bit of personality!
Only smart bots can handle interruptions just like humans, so can the “Who’s Online Bot” ⛔ – Create a cancel intent to handle interruptions in your bot
Sometimes users change their minds. They want to break out of a conversation and start over again or do something else entirely. In this video, you’ll learn how to handle user interruptions during a Bot Composer dialog.
Please join us for this entertaining and informative video series and follow along to build your own bot for Microsoft Teams!
Co-authored by Ayca Bas