// Dependency injection uses this constructor to instantiate MainDialog public MainDialog( ComplexParsingDialog complexDialog, SimpleParsingDialog simpleDialog, ConversationState conversationState, QueryFactory queryFactory, IComplexQueryHandler complexQueryHandler, ISimpleQueryHandler simpleQueryHandler, ILogger <MainDialog> logger ) : base(nameof(MainDialog)) { this.queryFactory = queryFactory; this.complexQueryHandler = complexQueryHandler; this.simpleQueryHandler = simpleQueryHandler; this.logger = logger; conversationStateAccessors = conversationState.CreateProperty <ConversationData>(nameof(ConversationData)); var waterfallSteps = new WaterfallStep[] { QueryParsingStepAsync, ShowResultStepAsync, FinalStepAsync }; AddDialog(new WaterfallDialog(nameof(WaterfallDialog), waterfallSteps)); AddDialog(new ChoicePrompt(nameof(ChoicePrompt))); AddDialog(complexDialog); AddDialog(simpleDialog); // The initial child Dialog to run. InitialDialogId = nameof(WaterfallDialog); }
public ComplexParsingDialog( ComplexStatementRecognizer complexRecognizer, IComplexQueryHandler queryHandler, EditDialog editDialog, ConversationState conversationState, ILogger <ComplexParsingDialog> logger ) : base(nameof(ComplexParsingDialog), conversationState, logger) { this.complexRecognizer = complexRecognizer; this.queryHandler = queryHandler; var waterfallSteps = new WaterfallStep[] { PromptStepAsync, ActStepAsync, ProcessDonePromptAsync }; AddDialog(new WaterfallDialog(nameof(WaterfallDialog), waterfallSteps)); AddDialog(new ChoicePrompt(nameof(ChoicePrompt))); AddDialog(editDialog); // The initial child Dialog to run. InitialDialogId = nameof(WaterfallDialog); }
public EditDialog( ComplexStatementRecognizer complexRecognizer, IComplexQueryHandler queryHandler, ConversationState conversationState, ILogger <EditDialog> logger ) : base(nameof(EditDialog), conversationState, logger) { this.complexRecognizer = complexRecognizer; this.queryHandler = queryHandler; var waterfallSteps = new WaterfallStep[] { SelectStepAsync, NewStatementStepAsync, EditStepAsync, }; AddDialog(new WaterfallDialog(nameof(WaterfallDialog), waterfallSteps)); AddDialog(new ChoicePrompt(nameof(ChoicePrompt))); // The initial child Dialog to run. InitialDialogId = nameof(WaterfallDialog); }