Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

CoreBot

Bot Framework v4 core bot sample.

This bot has been created using Bot Framework, it shows how to:

  • Use LUIS to implement core AI capabilities
  • Implement a multi-turn conversation using Dialogs
  • Handle user interruptions for such things as Help or Cancel
  • Prompt for and validate requests for information from the user

This sample is a Spring Boot app and uses the Azure CLI and azure-webapp Maven plugin to deploy to Azure.

Prerequisites

  • Java 1.8+
  • Install Maven
  • An account on Azure if you want to deploy to Azure.

Overview

This bot uses LUIS, an AI based cognitive service, to implement language understanding.

Create a LUIS Application to enable language understanding

The LUIS model for this example can be found under cognitiveModels/FlightBooking.json and the LUIS language model setup, training, and application configuration steps can be found here.

Once you created the LUIS model, update application.properties with your LuisAppId, LuisAPIKey and LuisAPIHostName.

  LuisAppId="Your LUIS App Id"
  LuisAPIKey="Your LUIS Subscription key here"
  LuisAPIHostName="Your LUIS App region here (i.e: westus.api.cognitive.microsoft.com)"

To try this sample

  • From the root of this project folder:
    • Build the sample using mvn package
    • Run it by using java -jar .\target\bot-core-sample.jar

Testing the bot using Bot Framework Emulator

Bot Framework Emulator is a desktop application that allows bot developers to test and debug their bots on localhost or running remotely through a tunnel.

  • Install the latest Bot Framework Emulator from here

Connect to the bot using Bot Framework Emulator

  • Launch Bot Framework Emulator
  • File -> Open Bot
  • Enter a Bot URL of http://localhost:3978/api/messages

Deploy the bot to Azure

To learn more about deploying a bot to Azure, see Deploy your bot to Azure for a complete list of deployment instructions.

Further reading