Exemple #1
0
        public async Task OnTurnAsync(ITurnContext context, NextDelegate next, CancellationToken cancellationToken = default(CancellationToken))
        {
            ////method 1 - Locale
            //var cultureInfo = !string.IsNullOrWhiteSpace(context.Activity.Locale) ? new CultureInfo(context.Activity.Locale) : new CultureInfo(defaultLocale);
            //CultureInfo.CurrentUICulture = CultureInfo.CurrentCulture = cultureInfo;

            ////end

            //start of 2 & 3
            CultureInfo cultureInfo = currentLang;

            //method 2 - Language Detection of text analytics
            if (!string.IsNullOrWhiteSpace(context.Activity.Text))
            {
                var language = await LanguageDetectionService.DetectAsync(context.Activity.Text);

                cultureInfo = new CultureInfo(language);
            }

            //////method 3 - switching by keyword
            //if (!string.IsNullOrWhiteSpace(context.Activity.Text) && (
            //    context.Activity.Text == "en" || context.Activity.Text == "zh" || context.Activity.Text == "de" || context.Activity.Text == "es"
            //     || context.Activity.Text == "it" || context.Activity.Text == "fr"))
            //{
            //    switch (context.Activity.Text.ToLower())
            //    {
            //        case "en":
            //            cultureInfo = new CultureInfo("en-US");
            //            break;
            //        case "zh":
            //            cultureInfo = new CultureInfo("zh");
            //            break;
            //        case "de":
            //            cultureInfo = new CultureInfo("de-de");
            //            break;
            //        case "es":
            //            cultureInfo = new CultureInfo("es-es");
            //            break;
            //        case "it":
            //            cultureInfo = new CultureInfo("it-it");
            //            break;
            //        case "fr":
            //            cultureInfo = new CultureInfo("it-it");
            //            break;
            //        default:
            //            cultureInfo = new CultureInfo("en-US");
            //            break;
            //    }
            //}
            ////end of method 3

            context.Activity.Locale      = cultureInfo.Name;
            CultureInfo.CurrentUICulture = CultureInfo.CurrentCulture = currentLang = cultureInfo;
            //end of 2 & 3
            await next(cancellationToken).ConfigureAwait(false);
        }
Exemple #2
0
 /// <summary>
 ///     Initializes the services (it's based on the Dependency Injection pattern)
 /// </summary>
 private static void Init()
 {
     if (_container == null)
     {
         ServiceUtils.Init();
         _container = Container.GetInstance();
         _entityExtractionService   = _container.Resolve <EntityExtractionService>();
         _languageDetectionService  = _container.Resolve <LanguageDetectionService>();
         _sentimentAnalysisService  = _container.Resolve <SentimentAnalysisService>();
         _textClassificationService = _container.Resolve <TextClassificationService>();
         _textSimilarityService     = _container.Resolve <TextSimilarityService>();
         _wikisearchService         = _container.Resolve <WikisearchService>();
         _customSpotService         = _container.Resolve <CustomSpotService>();
         _customModelService        = _container.Resolve <CustomModelService>();
     }
 }
 public LanguageDetectorWindow()
 {
     _languageDetector = new LanguageDetectionService(new LanguageDetectionOptions());
     InitializeComponent();
 }