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); }
/// <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(); }