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

Sha*_*ler 3 twilio twilio-functions twilio-studio

我有一个说小部件

> "Hello ... Thanks"
Run Code Online (Sandbox Code Playgroud)

我试过像这样向那个元素添加一个像 twilML 这样的暂停字符串

> "Hello  <Pause length="10"/> ... Thanks"
Run Code Online (Sandbox Code Playgroud)

但它只是说出来的Pause length="10"部分

如何为说/播放小部件添加暂停?

Ale*_*ban 6

Twilio 真的有人应该PAUSE为 Studio创建一个小部件。

在那之前,如果你很高兴使用一个丑陋的黑客......这里是:

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


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

        const duration = event.duration || 1500; 

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

    };
Run Code Online (Sandbox Code Playgroud)

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

当你添加“暂停”小部件时,用参数配置它,添加一个duration值不超过 3000 到 4000 的参数(我不知道如何解释为什么,但如果函数需要,函数将“运行时超时”超过 5 秒才能执行)。

添加参数时,请确保它们确实已添加...,我遇到了一些麻烦,直到我发现您需要在填写“键”、“值”字段后单击“添加参数”链接,而不是我正在点击大的“保存”按钮。

由于您正在寻找 10 秒的暂停,您可能会尝试在“说”小部件之间级联 3 个“暂停”小部件,其持续时间参数为(3000、3000、4000)。

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

我希望它有帮助。


Leo*_*dro 6

根据关于小部件的 Twilio 文档,可以通过放置空格分隔的时间段来添加暂停,其中 15 个时间段相当于 1 秒延迟。

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

Hello, John!
 . . . . . . . . . . . . . . .
Today is a very nice day.
Run Code Online (Sandbox Code Playgroud)

编辑:这仅适用于非 [Polly] 声音(爱丽丝、男人、女人 - 小部件配置中“消息语音”字段中的选项)。

另一种替代方法是使用 Twilio Functions 并向 Flow 添加一个 Run Function 小部件。有关更多说明,请按照Twilio 的“添加延迟”说明(特别提到在 Studio Flow 中使用。

Hello, John!
 . . . . . . . . . . . . . . .
Today is a very nice day.
Run Code Online (Sandbox Code Playgroud)


Riy*_*yas 5

从 Twilio 支持那里得到这个

间隔时间仅适用于遗留声音(男人、女人、爱丽丝)。

如果您使用的是新的 Polly 语音,则需要在 Say 文本区域中嵌入 SSML,例如:

<speak>Hello. <break time="5s"/> Goodbye.</speak>
Run Code Online (Sandbox Code Playgroud)

对我来说效果很好。