Bot Service provides what you need to build, connect, test, deploy, monitor, and manage bots. Bot Service provides the core components for creating bots, including the Bot Builder SDK for developing bots and the Bot Framework for connecting bots to channels.
Bot Service provides an integrated environment purpose-built for bot development. You can write a bot, connect, test, deploy, and manage it from your web browser with no separate editor or source control required. For simple bots, you may not need to write code at all. It is powered by the Bot Framework and it provides two hosting plans:1
- With the App Service plan, a bot is a standard Azure web app you can set to allocate a predefined capacity with predictable costs and scaling.
- With a Consumption plan, a bot is a serverless bot that runs on Azure Functions and uses the pay-per-run Azure Functions pricing.
Bot Service accelerates bot development with Five bot templates you can choose from when you create a bot. You can further modify your bot directly in the browser using the Azure editor or in an Integrated Development Environment (IDE), such as Visual Studio and Visual Studio Code.
What is a bot?
Think of a bot as an app that users interact in a conversational way. Bots can communicate conversationally with text, cards, or speech. A bot may be as simple as basic pattern matching with a response, or it may be a sophisticated weaving of artificial intelligence techniques with complex conversational state tracking and integration to existing business services.
Bot Service enables you to build bots that support different types of interactions with users. You can design conversations in your bot to be freeform. Your bot can also have more guided interactions where it provides the user choices or actions. The conversation can use simple text strings or more complex rich cards that contain text, images, and action buttons. And you can add natural language interactions, which let your users interact with your bots in a natural and expressive way.
Why use Bot Service?
Here are some key features of Bot Service:
- Multiple language support. Bot Service leverages Bot Builder with support for .NET and Node.js.
- Bot templates. Bot Service templates allow you to quickly create a bot with the code and features you need. Choose from a Basic bot, a Forms bot for collecting user input, a Language understanding bot that leverages LUIS to understand user intent, a QnA bot to handle FAQs or a Proactive bot that alerts users of events.
- Bring your own dependencies. Bots support NuGet and NPM, so you can use your favorite packages in your bot.
- Flexible development. Code your bot right in the Azure portal or set up continuous integration and deploy your bot through GitHub, Visual Studio Team Services, and other supported development tools. You can also publish from Visual Studio.
- Connect to channels. Bot Service supports several popular channels for connecting your bots and the people that use them. Users can start conversations with your bot on any channel that you’ve configured your bot to work with, including Skype, Facebook, Teams, Slack, SMS, and several others.
- Tools and services. Test your bot with the Bot Framework Emulator and preview your bot on different channels with the Channel Inspector.
- Open source. The Bot Builder SDK is open-source and available on GitHub.
What is Bot Builder?
Bot Builder provides an SDK, libraries, samples, and tools to help you build and debug bots. When you build a bot with Bot Service, your bot is backed by the Bot Builder SDK. You can also use the Bot Builder SDK to create a bot from scratch using C# or Node.js. Bot Builder includes the Bot Framework Emulator for testing your bots and the Channel Inspector for previewing your bot’s user experience on different channels.
Now that you have an overview of Bot Service, the next step is to dive in and create a bot.