Explore bots for Microsoft Teams

Completed

Conversational bots allow users to interact with a web service through text, interactive cards, and task modules from the Microsoft Teams client. In this unit, you'll learn about bot user scenarios so you can decide when to build them.

Bot scenarios

Conversational bots can be used to automate tasks, provide information, and enhance the overall user experience.

Bots in Microsoft Teams can be used in various scenarios:

  1. Automating Tasks: Bots can automate repetitive tasks, such as scheduling meetings, managing tasks, or pulling in data from external sources. This can save users time and reduce the risk of errors.

  2. Providing Information: Bots can act as a first line of support, providing answers to common questions or providing users with relevant information. This can be particularly useful for things like IT support or HR inquiries.

  3. Enhancing User Experience: Bots can provide a more interactive and engaging user experience. For example, a bot could provide interactive tutorials, run polls or quizzes, or provide personalized recommendations based on user input.

  4. Scaling Interactions: Bots can interact with multiple users simultaneously, making them a great solution for scenarios where you need to scale up interactions. For example, in a large team channel, a bot can handle multiple queries or tasks at the same time.

  5. Integrating with External Services: Bots can act as a bridge between Microsoft Teams and external services, pulling in data or triggering actions. For example, a bot could post updates from a project management tool into a Teams channel, or create a ticket in an external system based on a conversation in Teams.

Remember, the key to a successful bot is to clearly define its purpose and ensure it adds value to the user. It's also important to design the bot's interactions to be as natural and intuitive as possible.

Bot user experience

Bots in Microsoft Teams can be part of a one-to-one conversation, a group chat, or a channel in a team. Each scope provides unique opportunities, and challenges for your conversational bot.

Bots in channels

Channels contain threaded conversations between multiple people. This potentially gives your bot massive reach, but individual interactions need to be concise. Traditional multi-turn interactions probably won't work well. Instead, look to use interactive cards or task modules, or potentially move the conversation to a one-to-one conversation if you need to collect lots of information.

Your bot only has access to messages where it's @mentioned directly. You can retrieve additional messages from the conversation using Microsoft Graph.

Some scenarios where bots excel in a channel include:

  • Notifications - particularly if you provide an interactive card for users to take additional information.
  • Feedback scenarios like polls and surveys.
  • Interactions that can be resolved in a single request/response cycle, where the results are useful for multiple members of the conversation.

Bots in group chats

Group chats are non-threaded conversations between three or more people. They tend to have fewer members than a channel and are more transient. Similar to a channel, your bot will only have access to messages where it's @mentioned directly.

Scenarios that work well in a channel will usually work as well in a group chat.

Bots in one-to-one chats

This is the traditional way for a conversational bot to interact with a user. They can enable diverse workloads. Q&A bots, bots that start workflows in other systems, bots that tell jokes, and bots that take notes are just a few examples.

Remember to consider whether a conversation-based interface is the best way to present your functionality.

Bot capabilities

Workflow bots

Workflow bots allow users to interact with an Adaptive Card. These bots can be used in scenarios like incident management, ticketing, approval workflow, and project management. They can be installed in a team, group chat, or as a personal app. The default logic returns an Adaptive Card, but this can be customized to meet your business requirements.

Consider building a workflow bot when you want to automate a workflow or process within Teams, such as managing tickets or approvals.

Notification bots

Notification bots send proactive messages to users. They can be used to send updates or alerts based on events in external systems.

Consider building a notification bot when you want to keep users informed about updates or events, such as new tickets in a support system or updates to a project.

Command bots

Unlike standard conversational bots, command bots respond to specific commands rather than engaging in free-form conversation. They can be used to perform actions or retrieve information in response to these commands.

Consider building a command bot when you want to provide users with a quick and easy way to perform actions or retrieve information, such as retrieving a report or starting a build. For these bots, you can provide a command menu listing supported commands.

AI-powered bots

Using Teams AI Library, you can build AI-driven conversational experiences for your Teams apps that use OpenAI large language models (LLMs). The Teams AI Library is a Teams-centric interface to GPT-based common language models and user intent engines. It simplifies the process of writing and maintaining conversational bot logic.