This sample demonstrates how to create your own prompts with an ASP.Net Core 2 bot. The bot maintains conversation state to track and direct the conversation and ask the user questions. The bot maintains user state to track the user's answers.
-
.NET Core SDK version 3.1
# determine dotnet version dotnet --version
-
Clone the repository
git clone https://github.com/Microsoft/botbuilder-samples.git
-
Run the bot from a terminal or from Visual Studio:
A) From a terminal, navigate to
samples/csharp_dotnetcore/44.prompt-users-for-input
# run the bot dotnet run
B) Or from Visual Studio
- Launch Visual Studio
- File -> Open -> Project/Solution
- Navigate to
samples/csharp_dotnetcore/44.prompt-users-for-input
folder - Select
PromptUsersForInput.csproj
file - Press
F5
to run the project
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
- Launch Bot Framework Emulator
- File -> Open Bot
- Enter a Bot URL of
http://localhost:3978/api/messages
A bot is inherently stateless. Once your bot is deployed, it may not run in the same process or on the same machine from one turn to the next. However, your bot may need to track the context of a conversation, so that it can manage its behavior and remember answers to previous questions.
In this example, the bot's state is used to a track number of messages.
- We use the bot's turn handler and user and conversation state properties to manage the flow of the conversation and the collection of input.
- We ask the user a series of questions; parse, validate, and normalize their answers; and then save their input.
This sample is intended to be run and tested locally and is not designed to be deployed to Azure.