$dialer.setAsrConfig
Метод переопределяет настройки провайдера ASR телефонного канала, через который проходит текущий звонок.
Синтаксис
Метод принимает в качестве аргумента объект с новыми настройками ASR. Передавать каждый раз все настройки провайдера не нужно — достаточно указать те, которые вы хотите переопределить.
Метод возвращает объект с новыми настройками провайдера.
$dialer.getAsrConfig
, а также получить их в сценарии через этот метод.// Настройки для провайдера Google
$dialer.setAsrConfig({
lang: "tr-TR",
model: "command_and_search"
});
Использование в сценарии
Большинство провайдеров позволяют изменить язык и модель распознавания речи.
Если вы разрабатываете сценарий телефонного бота, который должен поддерживать диалог с пользователями на разных языках.
используйте метод $dialer.setAsrConfig
, чтобы динамически менять распознаваемый язык.
state: SpeakEnglish
q!: * говори* [по] английск* *
script:
var provider = $dialer.getAsrProvider(); # Получение имени текущего провайдера
if (provider === "google") {
$dialer.setAsrConfig({ lang: "en-US" });
} else {
# Для других провайдеров переопределяемые поля и знач ения могут быть другими
}
a: How can I help you?
Обратите внимание, что выше приведен пример, а не окончательная реализация смены языка. В настоящем сценарии бота с поддержкой нескольких языков также требуется:
- Изменять язык не только распознавания, но и синтеза речи.
Для этого используйте метод
$dialer.setTtsConfig
. - Изменять язык NLU, наполнение классификатора, тексты ответов бота. Подробнее о том, как учесть это при разработке, вы можете узнать в пошаговом сценарии многоязычного бота.