Microsoft Bot framework allows us to focus on bot logic development rather on configurations, setting up channels, etc. The main advantage of Bot Framework is that you just write code once and it works with different channels, such as Telegram, Facebook Messenger, Microsoft Teams, Skype, Slack and some others. Bot Builder SDK is a powerful library for development of complicated bots and it is available for .NET as well as for NodeJs. In addition, we can use programming languages and libraries of our own choice for some special cases with Bot Framework Rest API. Bot Builder supports a lot of useful and advanced features, for instance, dialogs management, rich messages, convenient debugging.
Usually, when you develop bots you must ensure that it has the ability to answer some typical user questions in your domain, so-called FAQ questions. QnA Maker is a web-based service which trains NLP model on your knowledge base and responds to user questions in a natural way. The nice thing is, that it also supports “active learning” mode, thus a user can improve the accuracy of its answers.