繁体   English   中英

Java IVR开发

[英]IVR Development in java

我将使用Java(无PBX)开发一个在线IVR应用程序。 在软件需求中,我更喜欢在Java端实现一些数学计算和数据库通信。

如您所知,已经准备好与Java集成的各种技术,例如JTAPI,Zanzibar OpenIVR,Moho,VoiceXML,CCXML,Jive,Prophecy,Voicent,Voxeo等。

现在的问题是:什么是最佳解决方案? 哪一个最容易到达? 哪个效率最高? 您是否推荐开源框架? 是否有用于处理IVR系统的Windows API?

如果要使用Java 编写 VoiceXML,则应查看开源的VoiceXML对话引擎Rivr

Rivr使您可以自然地用Java语言编写呼叫流程。 因此,您可以重用所有可用的Java工具(例如调试器,单元测试框架,覆盖率测试工具)来开发调用流。 您还将从所有IDE功能(重构,源导航,版本控制等)中受益。

该API非常简单。 您可以使用单个方法编写完整的调用流程。 无需定义“状态”或操作模板或XML文件。

与服务器端逻辑的集成是微不足道的,因为您只为服务器端编码。

这里的信息太少,无法提供直接答案,但是我将尝试为您提供一些基础知识。

IVR应用程序开发的标准是用于对话(呼叫者交互)的VoiceXML和用于呼叫控制的CCXML。 后者不那么普遍。 也有许多专有解决方案。 选择开放标准还是专有解决方案应该更多地与供应商/解决方案锁定有关。即使采用开放标准,您也可能会使用自定义增强功能并具有一定数量的锁定,但是可移植性将更容易。 您可以直接在电话板上进行编码(如果您是电话新手,则可能会遇到挑战,并且通常记录不佳),也可以使用提供端到端功能的解决方案。 我发现移植IVR应用程序的人很少,因此在决定时我将重点关注应用程序的可支持性,功能和易用性。

平台的选择范围广。 您有前提(现场)和托管解决方案。 您通常拥有高端企业解决方案和低端解决方案。 中间解决方案很少。 功能(电话和集成功能)差异很大。

从电话的角度来看,什么都不是理所当然的。 特别是转移。 有很多转移呼叫的方法。 如何完成将受到您的连接的限制。 到CO(电话公司)的模拟线路可以有多种机制,通常会由您决定一种机制。 并非所有电话平台都可以满足您的需求。 挂断检测(至少在模拟线路上)也可以使新手赶上。 托管解决方案通常可以使您避免大多数此类问题。 VoIP解决方案由于设备之间的兼容性而变得更加复杂(是的,有很多标准,其中有很多,有很多可选部件,然后有自定义样式)。

特别是对于Windows,您可以使用Lync,但是它很复杂……尽管您将探索的许多解决方案都将很复杂。

简而言之,没有最佳解决方案。 您对技术,要求和预算的了解将推动决策。 我通常在内部和托管配置中使用企业IVR,这些配置通常位于大型呼叫中心的前面。 我接触了许多开源解决方案。 由于系统和电话配置的原因,前提条件可能很复杂。 托管解决方案通常可以为您完成大部分工作。

我知道这些是“法律上的标准”。 但是,您还应该将Asterisk(带有AGI / AMI)作为您项目的考虑因素。 如果您决定尝试使用Asterisk和Java,请查看astivetoolkit.org,这可能会很有帮助。

来自Twilio的Ricky。

对我来说,为特定问题选择最佳工具是开发人员最喜欢的任务之一。 解决这一问题的一种技术是推迟一天的时间,每个潜在的选择花费一两个小时。 我通常会探讨几个问题:

  • 哪个工具最容易上手?
  • 哪个工具具有最佳文档?
  • 我可以从哪个工具中学习有关社区的知识?

根据您要探索的方案,我确定还有很多其他问题(这是否符合我的预算?我可以将其与我已经知道并喜欢的技术一起使用吗?)。

如果您正在考虑构建IVR,我们有一个可以帮助您的API 我们刚刚删除了一些新教程,其中包括使用Java编写的,可用于生产的IVR应用程序

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM