有人联系我说有机会做 VoiceXML——我对此没有任何经验,但显然这可能没问题。但是,我对该技术进行了一些初步研究,它看起来很古老,从未获得过太多牵引力等,但我无法弄清楚是什么技术(y,ies)取代了它。VoiceXML 是现在就可以掌握的一项好技能,还是它正在消亡/从未真正流行这么多?如果它正在消亡,什么是替代它?为什么?
6 回答
对于开发交互式语音响应 (IVR) 系统,VoiceXML 远未结束。所有顶级 IVR 平台都支持 VoiceXML,因为它是 W3C 支持的开放标准,并且仍在由Voice Browser 工作组积极开发,以及许多其他相关标准。在这篇博客文章中,对 VoiceXML 和开发环境的发展进行了很好的讨论。
VoiceXML 的另一个优点是它使用基于 Web 的技术来开发语音应用程序,因此您可以利用您在该领域的任何技能进行开发。但是,如果您不熟悉 IVR 开发,则需要学习其他技能才能获得成功,例如语音用户界面 (VUI) 设计、如何为语音应用程序开发语法以及调整语音应用程序。无论语言或开发环境如何,您都需要学习这些技能。
另一种开发 IVR 应用程序的方法可以减少对 VoiceXML 的了解,这是一个类似于开源项目VoiceModel的框架。如果您已经具备 ASP.NET 方面的技能,VoiceModel 允许您开发在 VoiceXML 平台上运行的 IVR 应用程序,而无需了解 VoiceXML。它将它抽象到更高的层次,您只需将 .NET 对象拼凑在一起来定义您的语音应用程序。VoiceModel 的另一个好处是您可以开发您的 IVR 应用程序一次,它将在与 VoiceXML 兼容的 IVR 或基于云的 IVR(如Tropo )上运行。还计划包括对Twilio的支持。
也许这就是您听到的关于 VoiceXML 消亡的嗡嗡声。出现了一些基于云的 IVR/电话平台,例如 Tropo 和 Twilio,它们不使用 VoiceXML 并使用自己的专有 API。对我来说,这是向 IVR 开发的旧时代的倒退,每个 IVR 供应商都有自己的专有开发环境和语言。我坚信像 VoiceXML 这样的开放标准,但我不得不承认,这种新型 IVR 供应商肯定会在市场上产生一些吸引力。我认为现在确定他们是否会生存还为时过早。
所以主要问题是;是否有 VoiceXML 的替代品。答案是肯定的。两个替代方案是Tropo和Twilio基于云的平台的专有 API 。另一种选择是使用类似VoiceModel的东西,它可以抽象出对 VoiceXML 的了解,但允许您在 VoiceXML 兼容的平台上运行应用程序。甚至另一种选择是使用像VoiceObjects这样的开发环境,它也抽象出对 VoiceXML 的很多需要。
另一个问题是;VoiceXML 是一项很好的技能。如果您正在开发大量 IVR 应用程序,特别是如果您正在支持现有应用程序,我会说是的。有很多 VoiceXML 应用程序需要维护,目前企业中主要的 IVR 平台与 VoiceXML 兼容。如果您正在开发一次性应用程序,您可能想要研究 Tropo 或 Twilio 之类的东西。需要注意的是,如果这些初创公司倒闭,您可能会在 VoiceXML 中重新编写应用程序。这就是我喜欢开放标准的原因。或者两全其美,看看像 VoiceModel 这样的东西。
VoiceXML 远未消亡——大多数大型商业 IVR 部署都基于 VoiceXML 及其近亲 CCXML。有很大的吸引力,并且需要 VoiceXML 开发人员。VoiceXML 规范的下一个版本正在 W3C 开发中。
在学习 VoiceXML 时,您可以使用开源 jVoiceXML (LGPL) http://jvoicexml.sourceforge.net/或 VoiceGlue (GPL) http://www.voiceglue.org/或使用提供的免费开发人员托管来尝试您的技能通过 Voxeo 在http://evolution.voxeo.com/
这是查看 VoiceXML 的一种方式,但要复杂得多。与 Web 开发之类的东西相比,电话技术是一个利基市场。然而,在电话领域,VoiceXML 是 IVR 开发中最常见的技术,并且没有任何其他技术能够取代它。
新技术增长缓慢的部分原因与市场状况有关。从供应商的角度来看,这是一个正在收缩的艰难市场。在 80 年代和 90 年代,有很多新的创业公司。在风险资本家和其他投资者想要的水平上,市场可以支持的程度超出了市场。这导致了整合(公司被其他公司收购)。由于资金短缺,投资很少。这并不是说没有,但它速度很慢,并且与 VoiceXML 首次出现时有很大不同。
现有供应商通常以多种语言、VoiceXML 或两者提供专有 API 堆栈。应该注意的是,即使是许多支持 VoiceXML 的平台,也提供了隐藏较低级别 API 的开发工具。这些工具集通常是基于 GUI 的,是出于让非程序员编写和管理 IVR 的愿望。
技能视角属性有点难以回答,因为它的价值与您现有的技能组合、适销性和未来机会更相关。一般来说,我不会高度重视 VoiceXML 知识,因为工作数量少于其他主流技能。然而,典型的实现技术通常类似于基于 Web 的开发(ASP/JSP/Servlet 和 JavaScript 的使用),它们是可移植的。就像在任何技能和工作中一样,这就是你的成就。
我已经编写 IVR 系统大约 20 年了,而且我从来没有费心去学习 VoiceXML。这是我使用的工具。. .
- Visual Basic .NET
- Windows 服务器中的对话语音 PCI 卡
- Syntellect 的 CT ADE Visual Basic 库 http://www.syntellect.com/pages/products/ct_ade_eng.aspx
此设置允许我通过调用 Syntellect 提供的例程在 Visual Basic 中编写 IVR 系统。它消除了深入研究 VoiceXML 的需要,相比之下这是非常精细的。
使用 Syntellect 例程,您可以 . . .
- 打个电话
- 接听电话
- 向来电者播放语音文件
- 从呼叫者那里获取数字
- 录制语音文件
- 转接电话
使用这些基本功能,您可以创建几乎任何 IVR 系统。然后,我很容易在 SQL 数据库中捕获“提示”参数并查询整个脚本文件以播放给调用者。
此方法仅适用于手机。这就是您所需要的,这种方法可以更快地启动和运行。Syntellect 还具有 VoiceXML 接口和解决方案,可帮助实现 VoIP 连接。
Syntellect 提供了 Visual Basic 和 C# 的示例。我认为他们也有一些用于 C++ 的。希望这可以帮助。
Twilio 已经证明,更直观、更简单的 DSL 可以涵盖大量用例。学习 TwiML 不需要时间,而 VoiceXML 的学习曲线可能很重要。
还有 Restcomm,它是基于开源 (Mobicents) 的 Twilio API 实现。它可以用作托管 IVR 引擎或在公共云上:
http://www.telestax.com/restcomm/
ttps://aws.amazon.com/marketplace/pp/B00FFHJ6SU
I agree with DaveHolly. I used Syntellect CT-ADE for five years and implemented a successful IVR for medical dictation plus sending and receiving fax documents, and SQL Server database access. If you know how to program in C# or VB.NET, and want to use the fantastic Microsoft Visual Studio and .NET as your platform, then stay with CT-ADE or Glorsoft Velocity. In my opinion, by using XML as a programming language, something it was never designed for, you are giving up fifty years of computer science advances, such as structured programming, object-oriented programming, modern languages such as C#, debugging tools, etc..