Как добавить паузу в виджет Say/Play студии Twilio

У меня есть виджет

> "Hello ... Thanks"

Я попытался добавить строку паузы, как twilML к этому элементу, так

> "Hello  <Pause length="10"/> ... Thanks"

но это просто говорит Pause length="10" раздел

Как я могу добавить паузу в виджет Say/Play?

4 ответа

Решение

На самом деле кто-то в Twilio должен создать PAUSE виджет для студии.

До тех пор, если вы счастливы, используя уродливый хак... вот оно:

Поскольку вы можете добавить виджет функции в поток, создайте Twilio "Runtime Function" (я назвал ее "Pause")


exports.handler = function(context, event, callback) {

    let duration = event.duration || 1500; 

    setTimeout(
        function() {
            // console.log(duration);
            callback();          
        } , duration);

};

затем замените один виджет "Скажи" на виджет "Скажи" + виджет "Пауза" + виджет "Скажи".

При добавлении виджета "Пауза" настройте его с параметрами, добавьте duration параметр со значением, которое не превышает 3000-4000 (я не знаю точно, как объяснить, почему, но функции будут 'timeout timeout', если функция выполняется более 5 секунд).

Когда вы добавляете параметры, убедитесь, что они действительно добавлены... У меня были некоторые проблемы, пока я не понял, что вам нужно нажать на ссылку "Добавить параметр" после того, как вы заполните поля "Ключ", "Значение", вместо этого я нажимал на большую кнопку "Сохранить".

Так как вы ищете 10-секундную паузу, вы можете попробовать каскадировать 3 виджета "Пауза" с параметром длительности (3000, 3000, 4000) между вашими виджетами "Скажи".

Я проверил это и смог сделать паузу между двумя виджетами "Скажи" на 7 секунд, вставив одну функцию "3000 пауз" и одну 4000 "пауз".

Я надеюсь, что это помогает.

Получил это от поддержки Twilio

Выделенные периоды работают только на унаследованные голоса (мужчина, женщина, Алиса).

Если вы используете новые голоса Полли, вам нужно встроить SSML в текстовую область Say, например:

<speak>Hello. <break time="5s"/> Goodbye.</speak>

Работал нормально для меня.

Согласно документации Twilio для виджетов, паузы могут быть добавлены путем размещения разделенных пробелами периодов, где 15 из них эквивалентны 1 секунде задержки.

Таким образом, следующий текст должен иметь задержку в 1 секунду между предложениями:

Hello, John!
 . . . . . . . . . . . . . . .
Today is a very nice day.

В последующем до Alex Baban «s ответа и для тех , кто смотрит на это сейчас, тайм - аут был увеличен в Twilio (по состоянию на сентябрь 2019 года) от 5 сек до 10 сек:

https://www.twilio.com/changelog/twilio-functions-increased-timeout

Другие вопросы по тегам