我如何向Twilio studio说/播放小部件添加暂停

时间:2018-06-21 21:34:03

标签: twilio twilio-functions twilio-studio

我有一个发言小部件

> "Hello ... Thanks"

我尝试像这样在元素中添加一个像twilML这样的暂停字符串

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

但是它只是说明了Pause length="10"部分

如何为“说/玩”小部件添加暂停?

4 个答案:

答案 0 :(得分:3)

根据Twilio documentation on widgets,可以通过放置间隔时间来添加暂停,其中15个间隔等于1秒延迟。

因此,以下 要说的文字 在句子之间会延迟1秒:

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

答案 1 :(得分:2)

确实,Twilio的某个人应该为Studio创建一个PAUSE小部件。

直到您满意使用丑陋的骇客...这里是:

由于您可以在流中添加函数小部件,因此请创建Twilio“运行时函数”(我称其为“暂停”)


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

    let duration = event.duration || 1500; 

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

};

然后,将一个“说”部件替换为“说”部件+“暂停”功能部件+“说”部件。

添加“暂停”小部件时,请为其配置参数,并添加一个duration参数,其值不得超过3000到4000(我不知道如何解释原因,但函数会如果函数执行时间超过5秒钟,则为“运行时超时”。

添加参数时,请确保实际上已添加参数...,直到发现在填写“键”,“值”字段后需要单击“添加参数”链接之前,我还是遇到了一些麻烦,而是点击了“保存”大按钮。

由于您要暂停10秒,因此您可以尝试在“说”小部件之间级联3个具有持续时间参数(3000、3000、4000)的“暂停”小部件。

  

我已经对此进行了测试,通过插入一个3000个暂停和一个4000个暂停功能,我能够在7秒的2个“说”小部件之间暂停。

希望对您有帮助。

答案 2 :(得分:0)

得到Twilio支持的支持

间隔时间仅适用于传统声音(男人,女人,爱丽丝)。

如果您使用的是新的Polly语音,则需要将SSML嵌入“说”文本区域,例如:

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

对我来说很好。

答案 3 :(得分:0)

作为 Alexanswer 的后续行动,对于现在正在查看此内容的任何人,Twilio(截至 2019 年 9 月)的超时已从 5 秒增加到 10 秒:< /p>

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