Skip to content

Latest commit

 

History

History

EntityFramework Storage Sample

EntityFramework Storage and TranscriptStore Sample

Built using Bot Framework v4 echo bot sample.

This bot was created using Bot Framework, it shows how to create a simple bot that accepts input from the user and echoes it back.

This example demonstrates how to use EntityFrameworkTranscriptStore with TranscriptLoggerMiddleware.

  1. Run CreateTableScript.sql in your Azure SQL Database.

  2. Add TranscriptStoreConnectionString to appsettings.json

  3. Add the following to your bot project's Startup.cs:

var loggerConnectionString = Configuration["TranscriptStoreConnectionString"];
var logger = new EntityFrameworkTranscriptStore(loggerConnectionString);
var transcriptMiddleware = new TranscriptLoggerMiddleware(logger);
services.AddSingleton<ITranscriptStore>(logger);
  1. Add ITranscriptStore as a parameters to AdapterWithErrorHandler, and .Use TranscriptLoggerMiddleware:
public AdapterWithErrorHandler(ITranscriptStore transcriptLogger, IConfiguration configuration, ILogger<BotFrameworkHttpAdapter> logger, ConversationState conversationState = null)
    : base(configuration, logger)
{
    Use(new TranscriptLoggerMiddleware(transcriptLogger));

Use(new TranscriptLoggerMiddleware(transcriptLogger));

Prerequisites

  • .NET Core SDK version 2.1

    # determine dotnet version
    dotnet --version

To try this sample

  • In a terminal, navigate to EntityFrameworkTranscriptStoreExample

    # change into project folder
    cd # EntityFrameworkTranscriptStoreExample
  • Ensure connection string to database with TranscriptEntity table exists in appsettings.json

  • Run the bot from a terminal or from Visual Studio, choose option A or B.

    A) From a terminal

    # run the bot
    dotnet run

    B) Or from Visual Studio

    • Launch Visual Studio
    • File -> Open -> Project/Solution
    • Navigate to EntityFrameworkTranscriptStoreExample folder
    • Select EntityFrameworkTranscriptStoreExample.csproj file
    • Press F5 to run the project

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 Bot Framework Emulator version 4.5.0 or greater 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