Почему язык в Bot framework меняется автоматически?

Я использую платформу Bot как прямую реализацию. Бот использует два языка: "en" и "nl". Я устанавливаю язык, как показано:

if(somecondition)
{
    locale = "nl";         
    session.preferredLocale(locale);  
    var text = session.localizer.gettext(locale,"pastErrorText");
    session.send(text);
} else {
    locale = "en";           
    session.preferredLocale(locale);  
    var text = session.localizer.gettext(locale,"pastErrorText");
    session.send(text);
}

Допустим, я использую бота на английском языке. Когда я использую бота, язык внезапно переключается на nl (голландский) между разговорами, хотя условия не выполняются. Бывает и наоборот.

В чем может быть проблема? Что-то с кешем, если несколько пользователей используют его одновременно? Есть ли обходной путь для того же?


person Community    schedule 17.08.2018    source источник
comment
Где находится этот код, которым вы поделились? ... В этом примере показано, как разрешить пользователям выбирать язык: github.com/Microsoft/BotBuilder/tree/master/Node/examples/   -  person Eric Dahlvang    schedule 17.08.2018
comment
Код, которым я поделился, находится в приложении nodejs. Я передаю язык NL или EN от клиента (браузер/веб-страница, на которую добавлен js-бот) через событие чат-боту.   -  person    schedule 24.08.2018
comment
Да, но ГДЕ в приложении node.js находится код, которым вы поделились? Здесь недостаточно кода, чтобы воспроизвести возникшую проблему или предложить решение. Пожалуйста, поделитесь дополнительным кодом, чтобы мы могли помочь.   -  person Eric Dahlvang    schedule 24.08.2018
comment
Да, в приложении узла ... однако я прошу код, связанный с тем, что вы разместили здесь. Этого недостаточно, чтобы определить, что происходит не так. Пожалуйста, поделитесь кодом вашего бота.   -  person Eric Dahlvang    schedule 27.08.2018


Ответы (1)


Вы можете использовать API TextTranslator.

person Eng Soon Cheah    schedule 21.01.2020