Beispiel #1
0
        private async Task <DialogTurnResult> IntroHospitalFindingStep(WaterfallStepContext stepContext, CancellationToken cancellationToken)
        {
            DonneesExcel donneesExcel = new DonneesExcel();

            if (stepContext.Options != null)
            {
                localisation = "";
                var localisationDetected = (String[])stepContext.Options;
                for (int i = 0; i < localisationDetected.Length; i++)
                {
                    localisation += localisationDetected[i];
                }
            }

            if (String.IsNullOrEmpty(localisation))
            {
                // Asking Localisation.
                var promptOptions = new PromptOptions
                {
                    Prompt      = MessageFactory.Text("Veuillez entrer une province, préfecture ou ville."),
                    RetryPrompt = MessageFactory.Text("Je suis désolé, mais la localisation entrée n'est pas enregistrée dans notre base de donnée. Veuillez s'il vous plaît entrer une localisation valide."),
                };
                return(await stepContext.PromptAsync(DialogIds.localisationPrompt, promptOptions, cancellationToken));
            }
            else if (!donneesExcel.ExistLocalisationHopital(localisation))
            {
                // Asking Localisation.
                var promptOptions = new PromptOptions
                {
                    Prompt      = MessageFactory.Text($"La localisation {localisation} n'existe pas dans notre base de donnée. Veuillez entrer une localisation valide"),
                    RetryPrompt = MessageFactory.Text("Je suis désolé, mais la localisation entrée n'est pas enregistrée dans notre base de donnée. Veuillez s'il vous plaît entrer une localisation valide."),
                };
                return(await stepContext.PromptAsync(DialogIds.localisationPrompt, promptOptions, cancellationToken));
            }

            return(await stepContext.NextAsync(localisation, cancellationToken));
        }
Beispiel #2
0
        private static Task <bool> VerificationLocalisation(PromptValidatorContext <string> promptContext, CancellationToken cancellationToken)
        {
            var donneesExcel = new DonneesExcel();

            return(Task.FromResult(promptContext.Recognized.Succeeded && donneesExcel.ExistLocalisationHopital(promptContext.Recognized.Value)));
        }