如何在VoiceXML中设置超时?

时间:2015-12-09 11:56:37

标签: timeout vxml voicexml

在VoiceXML中,如何在启动xml时设置超时?

这是我的VoiceXML文档:

<vxml version="2.1">
    <form>
        <block>
            <prompt>Hello from VXML</prompt>            
        </block>
        <transfer name="result" dest="tel:+12321312" bridge="true">
            <prompt>Please wait while we transfer you.</prompt>
            <grammar xml:lang="en-US" root = "TOPLEVEL" mode="voice">
                <rule id="TOPLEVEL" scope="public">
                    <one-of>
                        <item> disconnect </item>
                    </one-of>
                </rule>
            </grammar>
        </transfer>
    </form>
</vxml>

2 个答案:

答案 0 :(得分:0)

您可以使用两种转移属性:

connecttimeout 在返回noanswer条件之前尝试连接呼叫时等待的时间。该值是时间指定。仅在bridge为true时适用。默认值是特定于平台的。

maxtime 允许呼叫持续的时间,如果没有限制则为0。该值是时间指定。仅在bridge为true时适用。默认值为0。

答案 1 :(得分:0)

我不完全确定你的意思。如果要设置超时,以便在该时间内未提取您发布的vxml页面时抛出错误,则可以在第一个表单之前设置fetchtimeout属性。

如果你去W3C,它说:

VoiceXML解释器上下文需要获取VoiceXML文档以及其他资源,例如音频文件,语法,脚本和对象。每次获取与URI关联的内容都受以下属性控制:

  • fetchtimeout

在抛出error.badfetch事件之前等待返回内容的时间间隔。该值是时间指定(参见第6.5节)。如果未指定,则使用从最里面的fetchtimeout属性派生的值。

  • fetchhint

定义解释器上下文何时应从服务器检索内容。 prefetch表示可以在加载页面时下载文件,而safe表示只在实际需要时才下载的文件。如果未指定,则使用从最内部相关fetchhint属性派生的值。

  • 最大生存周期
  • maxscale