Конфигурация
При подключении модуля languageDetector
вы можете передать в него объект с настройками.
Все поля этого объекта необязательны.
В каких случаях определять язык
Поле | Тип | По умолчанию | Описание |
---|---|---|---|
detectorMode | string | default | Режим определения языка:
|
firstShortQueryCheck | boolean | false | Определять язык в первом запросе, даже если в нем меньше двух слов. |
detectorStates | array<string> | — | Список стейтов, при переходе в которые всегда нужно определять язык, вне зависимости от detectorMode . |
noDetectorStates | array<string> | — | Список стейтов, при переходе в которые не нужно определять язык, вне зависимости от detectorMode . |
Логика для выбора языка
Поле | Тип | По умолчанию | Описание |
---|---|---|---|
defaultLanguage | string | — | Язык по умолчанию. Укажите ISO-код. Если бот не смог определить язык, то бот использует язык по умолчанию. Вы можете не указывать |
previousLanguagePreference | boolean | false | Записать в $session.language язык предыдущего запроса, если бот не смог определить язык. Если указано значение false , то бот использует defaultLanguage . |
targetLanguages | array<string> | — | Список из ISO-кодов целевых языков:
|
sameGroupLanguageReplacement | boolean | true | Заменить полученный язык на родственный, если полученный язык относится к той же группе, что и один из языков в Группы языков указаны в файле |
Настройки методов определения
Поле | Тип | По умолчанию | Описание |
---|---|---|---|
confidenceThreshold | float | 1.5 | Пороговое значение при определении языка с помощью Detect Language API. Если значение Чтобы использовать API, добавьте в проект ключ. |
onlyCailaMethod | boolean | false | Для определения языка обращаться только к методу $caila.detectLanguage . |
Дополнительные стейты
Поле | Тип | Описание |
---|---|---|
stateWithLanguageQuestion | string | Стейт с вопросом, на каком языке говорить. Если бот не смог определить язык, он перейдет в этот стейт. В этом стейте вы должны записать в переменную Если бот перешел в этот стейт, он указывает в Вы можете посмотреть код для такого стейта в примере. |
stateForChangingLanguage | string | Стейт с интентом для смены языка. В этом стейте вы должны записать в переменную Если бот перешел в этот стейт, он указывает в Вы можете посмотреть код для такого стейта в примере. |