如何在TwiML中生成半秒暂停?

时间:2012-09-27 19:44:25

标签: twilio twiml

我试图使用Twilio的<Say>动词清楚地发出一系列数字。我发现很难在每个数字之间产生一个自然(半秒)的暂停。我该如何正确地做到这一点?

&lt;暂停&gt; xml命令只接受整数值秒,因此使用时间太长。

3 个答案:

答案 0 :(得分:8)

从这里开始:Link

  • 在说数字时,'12345'将被称为“一万二三” 一百四十五。“而'1 2 3 4 5'将被称为”一二 三四五。“

  • 逗号和句点等标点符号将被解释为自然 通过语音引擎暂停

  • 如果要插入长暂停,请尝试使用<Pause>动词。 <Pause>应放在<Say>标记之外,而不是嵌套在其中。

答案 1 :(得分:3)

不到一秒的停顿:

<Say language="en-US" voice="alice">
Your verification code is 1,,,,2,,,,3,,,,4,,,,5
</Say>

您可以根据自己的方便来增加和减少commas的数量。

答案 2 :(得分:1)

这与切向相关,但我认为寻找类似内容的人最终会回答这个问题(就像我一样)。

我希望Say动词以3-3-4自然的节奏阅读美国电话号码。这是一些C#就是这样做的。我相信你可以弄清楚如何将它翻译成其他语言:

private static string SayNaturalNumber(string digits)
{
    var newNumber = "";
    for (int i = 0; i < digits.Length; i++)
    {
        if (i == 0)
            newNumber += digits[i];
        else
            newNumber += " " + digits[i];

        if (i == 2) //after third digit
            newNumber += ",,,,";

        if (i == 5) //after sixth digit
            newNumber += ",,,,";
    }
    return newNumber;
}