What is Microsoft Bot Framework
Microsoft Bot Framework is extensively used for creating chat bots for various industries such as health care, insurance, banking, business and many more.
Microsoft Bot Framework supports customizations in C# language and it has its own framework by using which we can create a chat bot.
What are bot Templates
If you are a .Net guy, then you must be knowing what are the templates in visual studio. It allows to create a project with pre-defined set of things that will be required to create any solution. Microsoft has provided various pre-defined bot templates for different bot scenarios. The examples are Echo Bot, Basic bot and Enterprise Bot Template.
What is Echo Bot Template
Echo bot is a basic template that will create a blank chatbot template. In this template you can freely customize and add components that you want to use in the project. By creating a new project by using this template then it will create a chatbot that will return the text that has been entered. It is the most basic working demo of a chatbot.
What is Core bot template
Core boat template is the standard bot template that is having key components that will be used to create a full fledged chatbot. The core bot is having components like dialogs, cognitive models, various controllers and an error handler adapter.
We can use this template as a baseline of any project that is having small to medium amount of users and which is not require an extensive amount of of dynamic chatbot flow, error handling, testing, dialog chaining and many more.
We can certainly use Luis, QnA Maker service, deployment templates, proactive boats and all kind of chatbot scenarios. The main purpose of using this template is to start with a basic level of bot and then extend it.
What is enterprise bot template
Enterprise board template, the name itself says that it was used in the most advanced scenarios of chatbot. There are various benefits of using this chatbot template in the beginning of the bot development. If you want to make a chat bot that will impact many users and it is having more scalability and option then you should go with this template.
The main benefits of using this chatbot template is it provides some of the enterprise level mostly used chatbot dialogs such as authentication dialog, cancellation dialog, escalation dialog, shared dialogs, telemetry middleware, error handling dialogues and many more. This template will help us to scale the chat bot any time and the way we want very easily. It is also having built in LUIS and QnA setup so that we don’t have to setup it initially during the project creation. This template is using dispatch mechanism to run across the dialogs. It is having a router middleware that handles all the request and routes to specific dialog.
Difference between core bot and Enterprise bot template
|Key||Core Bot||Enterprise Bot|
|Dispatch Mechanism||No||Provided dispatchers for all dialogs|
|Predefined dialogs||Main Dialog, booking dialog are provided to start with||Main Dialog, Authentication dialog, cancellation dialog, Escalation dialog and many more|
|NLP Support||Yes||Yes. QnA is also setup and it also provides recognizers to use LUIS intents and entities directly.|
cancellation and interruption
|Yes||Yes, Built in dialogs for this scenarios|
|Type of Use Cases that fit in||Normal Question and answer chat bot, FAQ based chat bot, Human agent transfer, A chat bot having less dialog handling||A complex level project in which there will multiple use cases that a chat bot can provide. Extensive level of dialog handling, error handling, Azure AD authentication etc.|
To start with creating a chat bot you can refer the articles posted from MSDN here:
You can also download the enterprise bot template from visual studio marketplace.
To learn how to use the Power Virtual Agents to quickly start chat bot without any development , refer this article: