O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Programming the Microsoft Bot Framework

Video Description

5+ Hours of Video Instruction

Learn how to build conversational user interfaces with the Microsoft Bot Framework


Reflecting the next radical revolution in human-computer interaction, this Programming the Microsoft Bot Framework video will help you leverage advanced artificial intelligence (AI) and natural language processing to empower new and existing applications with stunningly intuitive conversational interfaces.

Long-time Microsoft MVP Joe Mayo begins with high-level explanations of what Microsoft Bot Framework is, what you can do with it, and why it matters so much. Next, he presents the foundational knowledge you need to start creating real bots and conversational user interfaces (CUIs). Step by step, you'll learn how to build message dialogs, manage conversations, implement dialogs, incorporate powerful natural language processing with Microsoft's advanced Language Understanding Intelligent Service (LUIS), add GUI elements to a chatbot, and finally publish your chatbot. Mayo also offers detailed guidance on deploying your customized bots to key platforms such as Skype.

Throughout, Mayo's practical examples combine code with clear explanations of when and why you would perform each task. From start to finish, Programming the Microsoft Bot Framework is relentlessly practical, helping you translate the advanced "magic" of intelligent bots into real solutions right now.

About the Instructor

Joe Mayo is an author and independent software consultant, specializing in Microsoft technologies. Joe has written 7 books, many magazine articles, and taught numerous online and in-person courses. His experience spans multiple technologies for desktop, cloud, and device. He is also author of the LINQ to Twitter open source project. Joe is a long-time MVP with several years of awards. Joe lives in Las Vegas, NV, and tweets (as @JoeMayo) about chatbots on Twitter. He is currently writing a book "Programming the Microsoft Bot Framework” for Microsoft Press.

Skill Level


Learn How To

  • Get started with the Microsoft Bot Framework
  • Create a new project and test with the Bot Framework Emulator
  • Manage conversations
  • Build dialogs and customize FormFlow
  • Handle dynamic conversations
  • Use natural language processing
  • Create and improve LUIS models
  • Add speech; animation, audio, and video cards; and location controls to a chatbot
  • Publish chatbots to Skype, web pages, and more

Who Should Watch This Video

These video lessons are for programmers and Microsoft .NET developers who want to reach customers and users with a conversational user interface through messaging apps like Facebook Messenger and Skype.


Understand how to code with the C# programming language

Some knowledge of ASP.NET and Web API is useful, but not required

Some knowledge of Azure Web App Deployment is helpful, but not required

Table of Contents


Lesson 1: Getting started with the Microsoft Bot Framework

Lesson 2: Managing conversations

Lesson 3: Implementing dialogs and FormFlow

Lesson 4: Using natural language processing with LUIS

Lesson 5: Adding GUI elements to a chatbot

Lesson 6: Publishing bots


Table of Contents

  1. Introduction
    1. Programming the Microsoft Bot Framework: Introduction 00:02:59
  2. Lesson 1: Getting Started with the Microsoft Bot Framework
    1. Learning objectives 00:00:52
    2. 1.1 Learn what chatbots are 00:06:34
    3. 1.2 Understand Bot Framework architecture 00:09:12
    4. 1.3 Explore documentation and resources 00:07:49
    5. 1.4 Set up prerequisites 00:04:22
    6. 1.5 Create a new project 00:06:04
    7. 1.6 Test with the Bot Framework Emulator 00:08:27
  3. Lesson 2: Managing Conversations
    1. Learning objectives 00:00:58
    2. 2.1 Review the demo Meeting Scheduler chatbot 00:08:45
    3. 2.2 Examine the elements of a conversation 00:11:29
    4. 2.3 Save and retrieve state 00:08:26
    5. 2.4 Participate in conversations 00:12:19
    6. 2.5 Handle activities 00:09:19
    7. 2.6 Work with advanced activities 00:09:51
  4. Lesson 3: Implementing Dialogs and FormFlow
    1. Learning objectives 00:00:53
    2. 3.1 Understand dialog concepts 00:06:24
    3. 3.2 Build dialogs 00:20:39
    4. 3.3 Use FormFlow 00:08:28
    5. 3.4 Improve the FormFlow experience 00:09:05
    6. 3.5 Customize FormFlow 00:13:00
    7. 3.6 Handle dynamic conversations 00:21:36
  5. Lesson 4: Using Natural Language Processing (NLP) with LUIS
    1. Learning objectives 00:00:58
    2. 4.1 Understand NLP 00:04:08
    3. 4.2 Create a LUIS model 00:14:05
    4. 4.3 Code intent handlers 00:04:44
    5. 4.4 Use pre-built models 00:05:17
    6. 4.5 Improve LUIS models 00:06:43
    7. 4.6 Add speech to a chatbot 00:06:25
  6. Lesson 5: Adding GUI Elements to a Chatbot
    1. Learning objectives 00:01:01
    2. 5.1 Enhance text with markup 00:05:50
    3. 5.2 Handle attachments 00:07:57
    4. 5.3 Implement basic cards 00:04:55
    5. 5.4 Respond to card events 00:03:27
    6. 5.5 Add animation, audio, and video cards 00:04:34
    7. 5.6 Review additional cards 00:01:20
    8. 5.7 Use adaptive cards 00:04:43
    9. 5.8 Handle location and other controls 00:02:12
    10. 5.9 Accept payments 00:08:38
  7. Lesson 6: Publishing Chatbots
    1. Learning objectives 00:00:55
    2. 6.1 Register a chatbot 00:14:40
    3. 6.2 Understand channel configuration 00:04:27
    4. 6.3 Register your chatbot with Skype for business 00:03:08
    5. 6.4 Register your chatbot with Teams 00:01:21
    6. 6.5 Create a Cortana skill 00:06:24
    7. 6.6 Discover chatbots on Bing 00:03:21
    8. 6.7 Create email and SMS chatbots 00:02:30
    9. 6.8 Add chatbots to a Web page 00:09:44
  8. Summary
    1. Programming the Microsoft Bot Framework: Summary 00:02:59