Перейти к основному содержимому

$dialer.bargeInResponse

Метод включает режим перебивания бота для текущего запроса и задает его настройки.

Синтаксис

Метод принимает в качестве аргумента объект со следующими полями.

bargeIn

bargeIn — режим перебивания. Возможные значения:

  • disabled — перебивание отключено.
  • forced — при перебивании бот прерывается сразу, не договаривая текущую фразу до конца.
  • phrase — при перебивании бот договаривает текущую фразу до конца, а затем прерывается.

bargeInTrigger

bargeInTrigger — событие, по которому бот определяет, что абонент пытается его перебить. Возможные значения:

  • final — перебивание происходит только после получения окончательного результата распознавания речи от провайдера ASR.
  • interim — перебивание происходит при получении любых промежуточных результатов распознавания речи от провайдера ASR, даже если распознавание не завершено.
предупреждение
Единицы, которые считаются промежуточными результатами распознавания, могут отличаться в зависимости от используемого провайдера ASR. Например, для одного провайдера результатом может быть каждое слово, а для другого каждый слог, произнесенный абонентом.

noInterruptTime

noInterruptTime — время в миллисекундах от начала ответа бота, в течение которого его нельзя перебить, даже если сработает событие перебивания.

  • Если событие перебивания сработает во время интервала noInterruptTime, то перебивание произойдет сразу после его окончания.
  • При установке noInterruptTime в 0 перебивание будет срабатывать сразу после того, как бот начнет ответ.
$dialer.bargeInResponse({
bargeIn: "phrase",
bargeInTrigger: "final",
noInterruptTime: 0
});

Использование в сценарии

Метод $dialer.bargeInResponse включает перебивание только для стейта, в котором он вызван. Чтобы включить перебивание во всех стейтах сценария, вызовите его из обработчика, например postProcess:

bind("postProcess", function($context) {
$dialer.bargeInResponse({
bargeIn: "forced",
bargeInTrigger: "interim",
noInterruptTime: 2000
});
});