1

所以我目前有一个用一些狡猾的旧代码编写的 IVR,这些代码令人困惑,并且在某些事情上太过分了。

我想用 VXML 重写我的基本 IVR 之一。

所以一点点研究是我可以调用 perl 脚本,我可以用它来运行数据库中的数据,这部分并不坏。

我的问题是如何或使用什么语法来“保持”或保存菜单的 dtmf 输入,然后将其传递给 perl 脚本。

问题二。

托管 VXML IVR。是否有设置测试服务的指南?我有一个 PABX,还有一些我可以玩的服务器。

4

2 回答 2

8

要使用 VoiceXML,我会推荐 Voxeo 的出色平台 Prophecy。您可以免费获得两个可以在服务器甚至工作站/笔记本电脑上运行的端口。他们提供了一个 SIP 软电话来测试您的应用程序,因此它不需要任何复杂的设置;只需简单的安装,您就可以开始使用了。他们还拥有可以免费测试的托管环境。如果您将其投入生产,您只需为服务付费。这是一篇描述如何在托管环境中设置和测试应用程序的帖子。如果您在 PC 上安装 Prophecy,这里有一篇关于如何设置和测试应用程序的文章。Voxeo 的 CTO 是 VoiceXML 标准委员会的成员,因此他们的平台非常符合标准

Voxeo 的开发人员站点关于 VoiceXML 的优秀文档,其中充满了示例。关于如何获取 dtmf 输入的问题,您可以转到文档中左窗格的底部,然后单击元素“字段”。field 元素用于从调用者那里收集信息。要使用 DTMF 输入轻松完成此操作,您可以使用内置语法。有关内置语法的更多信息,请查看有关“字段”元素的“类型”属性的文档。一旦您从“字段”中获得“填充”事件,您就可以使用“提交”元素调用您的 Perl 脚本。Voxeo 的文档有一个链接到这篇关于使用 Perl 创建 VoiceXML 应用程序的文章。Voxeo论坛也是关于 VoiceXML 和 Prophecy 的极好信息来源。如果您在论坛中找不到问题的答案,请提出问题,他们知识渊博的支持人员会提供帮助。

如果您还熟悉 .NET 技术,那么有一个名为 VoiceModel 的开源项目,它使使用 ASP.NET 开发 VoiceXML 应用程序变得容易。该项目中有很多示例。

这些资源应该可以让您很快开始使用 VoiceXML。

于 2012-09-13T13:14:17.983 回答
0

要专门回答您的 DTMF 问题,只需使用属性(这只是您需要发送的变量列表)<submit>将 DTMF 输入发送到 perl 脚本。namelist

此外,来自VXML 2.0 规范

“该<submit>元素用于向源 Web 服务器提交信息,然后转换到响应中发回的文档。与 不同的<goto>是,它允许您通过 HTTP GET 或 POST 请求向文档服务器提交变量列表。例如,将一组表单项提交到您可能拥有的服务器:

<submit next="log_request" method="post"
 namelist="name rank serial_number" 
 fetchtimeout="100s" fetchaudio="audio/brahms2.wav"/>

"

于 2016-12-23T11:12:24.843 回答