This site is obsolete and should be used for reference only. The information in this documentation is not guaranteed to work for Bot Framework SDK versions past 4.9.1.

Enterprise Assistant

Many organizations are looking to provide a centralized conversational experience across many canvases for employees. This concept allows for a consolidation of many disparate bots across the organization to a more centralized solution where a master bot handles finding the right bot to handle the conversation, thus avoiding bot explosion through parent bot/skills approach. This, in turn, gets the user productive quicker and allows for a true Enterprise Virtual Assistant Experience.

The Enterprise Assistant sample is an example of a Virtual Assistant that helps conceptualize and demonstrate how an assistant could be used in common enterprise scenarios. It also provides a starting point for those interested in creating an assistant customized for this scenario.

Enterprise Assistant Overview Drawing

This sample works off the basis that the assistant would be provided through common employee channels such as Microsoft Teams, a mobile application, and Web Chat to help improve employee productivity, but also assist them in getting work tasks completed such as opening an IT Service Management (ITSM) ticket. It also provides additional capabilities that might be useful for employees, like getting the weather forecast or showing current news articles.

The Enterprise Assistant Sample is based on the Virtual Assistant Template, with the addition of a QnA Maker knowledge base for answering common enterprise FAQs (such as Benefits and HR Information) and customized Adaptive Cards. It also connects 7 different Skills; which are Calendar, Email, and To Do along with the experimental skills of Weather, News, Phone and ITSM.

In many cases, you can leverage Azure Active Directory (AAD) for single sign-on (SSO), though this may be limited by the channel itself and your specific requirements.

Proactive notifications

The Enterprise Assistant sample includes proactive notifications, enabling scenarios such as:

  • Send notifications to your users that the Enterprise Assistant would like to start a conversation, thus allowing the user to indicate when they are ready to have this discussion
    • e.g., a user receives a notification “your training is due”, allowing them to initiate the conversation about what training is required)
  • Initiate a proactive dialog with your users through an open channel such as Microsoft Teams
    • e.g., “Benefits enrollment just opened; would you like to know more about benefits?”

Supported scenarios

The majority of the skills connected to this sample are experimental skills, which means they are early prototypes of Skills and are likely to have rudimentary language models, limited language support and limited testing. These skills demonstrate a variety of skill concepts and provide great examples to get you started. This sample demonstrates the following scenarios:


  • I need life insurance
  • How do I sign up for benefits?
  • What is HSA?

Calendar Skill

Connect to a meeting
  • Connect me to conference call
  • Connect me with my 2 o’clock meeting
Create a meeting
  • Create a meeting tomorrow at 9 AM with Lucy Chen
  • Put anniversary on my calendar
Delete a meeting
  • Cancel my meeting at 3 PM today
  • Drop my appointment for Monday
Find a meeting
  • Do I have any appointments today?
  • Get to my next event


Send an email
  • Send an email to John Smith
  • What are my latest messages?

To Do Skill

Add a task
  • Add some items to the shopping notes
  • Put milk on my grocery list
  • Create task to meet Leon after 5:00 PM

Weather Skill

Get the forecast
  • What’s the weather today?

News Skill

Find news articles
  • What’s the latest news on technology?
  • What news is currently trending?

Phone Skill

Make an outgoing call
  • Call Sanjay Narthwani
  • Call 867 5309
  • Make a call

IT Service Management (ITSM) Skill

Create a ticket
  • Create a ticket for my broken laptop
Show a ticket
  • What’s the status of my incident?
Update a ticket
  • Change ticket’s urgency to high
Close a ticket
  • Close my ticket


An automated deployment (including proactive notifications) will be available soon.

Download transcripts

Sample transcripts for the Enterprise Assistant will be available soon.