#botframework #microsoft-translator
#botframework #microsoft-translator
Вопрос:
Я использую демонстрационный образец: образцы BotBuilder
5. многооборотное приглашение и 17.многоязычный бот объединяются в единый проект.
как я могу запретить переводчику языка автоматически переводить имя, вводимое пользователем, на другой язык?
например: если мое имя введено на тайском языке, то ответ бота не будет переведен на язык en / es.
Комментарии:
1. Какой SDK, C # или JS?
2. @JJ_Wailes узловые узлы
Ответ №1:
Я нашел два способа сделать это:
Если вы используете язык, использующий латинский алфавит (например, английский), вы можете выполнить поиск, чтобы узнать, включено ли имя пользователя в текст turnContext, и заменить его на <div class="notranslate">USERNAME_HERE</div>
, как показано ниже (простите за смешные названия переменных)
Вы должны не забыть удалить форматирование, которое может возникнуть вместе со следующим:
Если вы используете язык с выделенным алфавитом (например, корейский), вам нужно выполнить определение в turnContext.onSendActivities
имени пользователя, затем вырезать имя, перевести до и после, а затем собрать все это вместе:
Комментарии:
1. метод 2 аналогичен тому, что я делаю сейчас, который может поместить в обычное действие context.sendActivity, которое обнаруживает определенный шаблон в тексте и пропускает этот перевод, а в конце объединяет их все и возвращает пользователю. Большое спасибо @JJ_Wailes