public MainDialog(ILogger <MainDialog> logger, IRecognizer luisRecognizer, BookingDialog bookingDialog) : base(nameof(MainDialog)) { _logger = logger; _luisRecognizer = luisRecognizer; AddDialog(new TextPrompt(nameof(TextPrompt))); // Add bookingDialog intents AddDialog(bookingDialog); // Create and add waterfall for main conversation loop // NOTE: we use a different task step if LUIS is not configured. WaterfallStep[] steps; if (luisRecognizer == null) { steps = new WaterfallStep[] { PromptForTaskActionAsync, InvokeTaskActionAsyncNoLuis, ResumeMainLoopActionAsync, }; } else { // LUIS is configured steps = new WaterfallStep[] { PromptForTaskActionAsync, InvokeTaskActionAsync, ResumeMainLoopActionAsync, }; } AddDialog(new WaterfallDialog(nameof(WaterfallDialog), steps)); // The initial child Dialog to run. InitialDialogId = nameof(WaterfallDialog); }
public MainDialog(ILogger <MainDialog> logger, BookingDialog bookingDialog) : this(logger, null, bookingDialog) { }