예제 #1
0
        // Dependency injection uses this constructor to instantiate MainDialog
        public MainDialog(FlightBookingRecognizer luisRecognizer,
                          WooliesXChatbotRecognizer luisWooliesXChatbotRecognizer,
                          BookingDialog bookingDialog,
                          FindPromotionsDialog findPromotionsDialog,
                          GetShoppingListDialog getShoppingListDialog,
                          ILogger <MainDialog> logger)
            : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            _luisWooliesXChatbotRecognizer = luisWooliesXChatbotRecognizer;
            Logger = logger;

            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(bookingDialog);
            AddDialog(findPromotionsDialog);
            AddDialog(getShoppingListDialog);
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                IntroStepAsync,
                ActStepAsync,
                FinalStepAsync,
            }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #2
0
        //static string AdaptivePromptId = "adaptive";
        // Dependency injection uses this constructor to instantiate MainDialog
        public MainDialog(FlightBookingRecognizer luisRecognizer, CreateIncidentDialog createIncidentDialog, IncidentStatusDialog incidentStatusDialog, LastFiveINCDialog lastFiveINCDialog, ArtEnrollmentDialog artEnrollment, ArtRegisterOTPDialog artRegisterOTP, UserProfileDialog userProfileDialog, ARTEnrollFinalDialog aRTEnrollFinalDialog, ArtAccountUnlockWithLogin artAccountUnlockWithLogin, ArtAccountUnlockWithoutLogin artAccountUnlockWithoutLogin, ArtOTPDialog artOTPDialog, ILogger <MainDialog> logger, IConfiguration iconfiguration, UserState userState)
            : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            _iconfiguration = iconfiguration;
            Logger          = logger;
            UserState1      = userState;
            //AddDialog(new AdaptiveCardPrompt(AdaptivePromptId));
            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(createIncidentDialog);
            AddDialog(incidentStatusDialog);
            AddDialog(lastFiveINCDialog);
            AddDialog(artEnrollment);
            AddDialog(artRegisterOTP);
            AddDialog(userProfileDialog);
            AddDialog(aRTEnrollFinalDialog);
            AddDialog(artAccountUnlockWithLogin);
            AddDialog(artAccountUnlockWithoutLogin);
            AddDialog(artOTPDialog);

            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                //InitiateStepAsync,
                MenuStepAsync,
                IntroStepAsync,
                ActStepAsync,
                FinalStepAsync,
            }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #3
0
        // Dependency injection uses this constructor to instantiate MainDialog
        public MainDialog(FlightBookingRecognizer luisRecognizer, BookingDialog bookingDialog, ILogger <MainDialog> logger)
            : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            Logger          = logger;

            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(bookingDialog);
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                IntroStepAsync,
                ActStepAsync,
            }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
        // Dependency injection uses this constructor to instantiate MainDialog
        public MainDialog(FlightBookingRecognizer luisRecognizer, RegistrationDialog registerDialog, ILogger <MainDialog> logger)
            : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            Logger          = logger;

            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(registerDialog);
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                CheckRegistrationStepAsync,
                ShowImageStepAsync,
                SendResultToServerAsync
            }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #5
0
        // Dependency injection uses this constructor to instantiate MainDialog
        public MainDialog(FlightBookingRecognizer luisRecognizer, BookingDialog bookingDialog, IBotTelemetryClient telemetryClient, ILogger <MainDialog> logger)
            : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            Logger          = logger;

            // Set the telemetry client for this and all child dialogs
            this.TelemetryClient = telemetryClient;

            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(bookingDialog);
            AddDialog(new WaterfallDialog(
                          nameof(WaterfallDialog),
                          new WaterfallStep[] { IntroStepAsync, ActStepAsync, FinalStepAsync, }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #6
0
        public MainDialog(BotServices luisRecognizer, BookingDialog bookingDialog, ILogger <MainDialog> logger, IBotServices botServices, FlightBookingRecognizer luisRecognizers)
            : base(nameof(MainDialog))
        {
            _luisRecognizer  = luisRecognizer;
            _logger          = logger;
            _botServices     = botServices;
            _luisRecognizers = luisRecognizers;

            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(bookingDialog);
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                IntroStepAsync,
                ActStepAsync,
                FinalStepAsync,
            }));

            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #7
0
        // Dependency injection uses this constructor to instantiate MainDialog
        public MainDialog(FlightBookingRecognizer luisRecognizer, RedditDialog redditDialog, ILogger <MainDialog> logger)
            : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            Logger          = logger;

            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(redditDialog);
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                IntroStepAsync,
                SendAuthTokenAsync,
                VerifyAuthTokenAsync,
                ActStepAsync,
                FinalStepAsync,
            }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #8
0
        // Dependency injection uses this constructor to instantiate MainDialog
        public MainDialog(FlightBookingRecognizer luisRecognizer, BookingDialog bookingDialog, ILogger <MainDialog> logger)
            : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            Logger          = logger;
            _askCounter     = 0;

            ReadDataBase.ReadData();
            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(bookingDialog);
            AddDialog(new BridgeTypologyDialog());
            AddDialog(new CreatePostDialog());
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                IntroStepAsync,
                ActStepAsync,
                FinalStepAsync,
            }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #9
0
        /// <summary>
        /// Initializes a new instance of the <see cref="MainDialog" /> class.
        /// </summary>
        /// <param name="luisRecognizer">The luis recognizer.</param>
        /// <param name="bookingDialog">The booking dialog.</param>
        /// <param name="findStockDialog">The find stock dialog.</param>
        /// <param name="accountDialog">The account dialog.</param>
        /// <param name="stockRepository">The stock repository.</param>
        /// <param name="logger">The logger.</param>
        public MainDialog(FlightBookingRecognizer luisRecognizer, BookingDialog bookingDialog, FindStockDialog findStockDialog, HRDialog hrDialog, AccountDialog accountDialog, SkuLookupDialog skuLookupDialog, StockRepository stockRepository, ILogger <MainDialog> logger) : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            Logger          = logger;
            _stockRepo      = stockRepository;

            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(bookingDialog);
            AddDialog(findStockDialog);
            AddDialog(accountDialog);
            AddDialog(hrDialog);
            AddDialog(skuLookupDialog);
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                IntroStepAsync,
                ActStepAsync,
                FinalStepAsync,
            }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #10
0
        // Dependency injection uses this constructor to instantiate MainDialog
        public MainDialog(FlightBookingRecognizer luisRecognizer, BookingDialog bookingDialog, ILogger <MainDialog> logger, IConfiguration configuration, MSVacationService mSVacationService)
            : base(nameof(MainDialog))
        {
            _mSVacationService = mSVacationService;
            _luisRecognizer    = luisRecognizer;
            Logger             = logger;

            AddDialog(new TextPrompt(nameof(TextPrompt)));
            //AddDialog(bookingDialog);
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                IntroStepAsync,
                //ActStepAsync,
                //FinalStepAsync,

                //PromptStepAsync,
                //LoginStepAsync,
                //AfterLogin,
                //AfterLoginCheck,
                LuisEchoStepAsync,
                FinalStepAsync,
            }));

            connectionName = configuration["ConnectionName"];

            AddDialog(new OAuthPrompt(
                          nameof(OAuthPrompt),
                          new OAuthPromptSettings
            {
                ConnectionName = connectionName,
                Text           = "Please Sign In",
                Title          = "Sign In",
                Timeout        = 300000, // User has 5 minutes to login (1000 * 60 * 5)
            }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #11
0
        // Dependency injection uses this constructor to instantiate MainDialog
        public MainDialog(UserState userState, FlightBookingRecognizer luisRecognizer, BookingDialog bookingDialog, ILogger <MainDialog> logger)
            : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            Logger          = logger;
            _userState      = userState;

            AddDialog(new TopLevelDialog());
            AddDialog(new ReviewSelectionDialog());
            AddDialog(new ConfirmationDialog());
            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(bookingDialog);
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                IntroStepAsync,
                FirstStepAsync,
                ActStepAsync,
                FinalStepAsync,
            }));

            // The initial child Dialog to run.
            InitialDialogId = nameof(WaterfallDialog);
        }
예제 #12
0
        public MainDialog(FlightBookingRecognizer luisRecognizer, ILogger <MainDialog> logger)
            : base(nameof(MainDialog))
        {
            _luisRecognizer = luisRecognizer;
            Logger          = logger;

            AddDialog(new TextPrompt(nameof(TextPrompt)));
            AddDialog(new RegisterDialog());
            AddDialog(new FAQDialog());
            AddDialog(new ResetPasswordDialog());
            AddDialog(new AuthenticateDialog());
            AddDialog(new WaterfallDialog(nameof(WaterfallDialog), new WaterfallStep[]
            {
                IntroStepAsync,
                ActStepAsync,
                FinalStepAsync,
            }));

            RegisterDialogId      = nameof(RegisterDialog);
            FAQDialogId           = nameof(FAQDialog);
            ResetPasswordDialogId = nameof(ResetPasswordDialog);
            AuthenticateDialogId  = nameof(AuthenticateDialog);
            InitialDialogId       = nameof(WaterfallDialog);
        }