Create your first bot with Composer

In this quickstart you will learn how to create a basic bot in Composer and test it in Web Chat.

Prerequisites

Create a bot

Create a bot from a template

  1. Open Composer.
  2. Select Create New (+) on the homepage.
  3. A list of templates are then shown which provide a starting point for your new bot. For the purposes of this quick-start, select the Empty bot template under the C# section. This template creates a bot containing a root dialog, initial greeting dialog, and an unknown intent handler. Then select Next.
  4. Fill in the Name for the bot as Menu_bot. Then select Azure Web App from the Runtime type, and a location for your bot on your machine.
  5. Select OK. It will take a few moments for Composer to create your bot from the template.

Add bot functionality

The bot created from the Empty bot template contains an unknown intent trigger. This acts as a fallback whenever your bot doesn't know how to respond. When your bot doesn't recognize the intent of user input, it will send a response letting the user know. To add an unknown intent trigger, do the following:

This section describes how to add basic bot functionality to your empty bot template. You will add:

  • A dialog called Menu that displays a text message with menu items.
  • A trigger for the Menu dialog. This makes it possible for your bot to recognize the intent, and connects the menu dialog above.

Add a dialog

Now you can add functionality for intents that you want your bot to recognize.

Dialogs are a convenient way to organize conversational logic. This section shows you how to add a dialog. In the next section, you add a trigger to the bot's main dialog to call the new dialog.

  1. Click the three dots next to your bot project, Menu_bot, and select + Add a dialog.

  2. In the Name field, enter Menu, and in the Description field, enter A dialog that shows the menu.. Then select OK.

  3. Select BeginDialog underneath the Menu dialog.

  4. In the authoring canvas, select the + button under BeginDialog. Then select Send a response.

  5. Enter the following menu text in the response editor on the right:

    Today's menu
     - Pizza
     - Burger and fries
     - Chicken sandwich
    

Your authoring canvas should look like the following:

Menu text response

Create a trigger to recognize the menu intent

Now that your dialog is ready to send a response of menu options, you need to create a trigger so that your bot recognizes when users want the menu item displayed.

  1. Select your bot project, Menu_bot.

  2. On the right, select the Regular expression recognizer for the Recognizer type. This recognizer provides a simple example without adding natural language understanding. For a real-world bot, explore language understanding.

  3. Now, add a trigger to the Menu_bot dialog.

    1. The default trigger type is Intent recognized.
    2. Enter Menu in the What is the name of this trigger (RegEx) field.
    3. Enter menu in the Please input regEx pattern field.
    4. Select Submit. This creates a trigger, named Menu, which will fire when the user sends a menu message to the bot.
  4. Now you need to start the Menu dialog you created previously from the trigger. Select the + under the Menu trigger on the authoring canvas. Go to Dialog management and select Begin a new dialog.

  5. Go to the right and select the box underneath Dialog name. You should see the Menu dialog you created previously; select it. Your authoring screen should look like the following:

    Begin a new dialog - menu

Your menu bot is now ready to test!

Test

  1. Select the Start bot button from the top right of Composer. The Local runtime manager will appear once the bot has finished building, seen below:

    Local bot runtime manager

  2. Select Open in Web Chat. The Web Chat panel will appear on the right.

  3. Try testing different phrases. Notice that your bot will respond with the message in the Menu dialog if your response includes the word menu. Otherwise, the bot will display one of the responses from the Unknown intent trigger.

    Test bot in Web Chat

Congratulations! You've successfully created an echo bot!

Next Steps