我的任务是为SalesForce制作一个CTI适配器与我们自己的系统进行通信....但我们的系统完全是非标准的并且是内部构建的。我只花了一天这个项目!
首先,我们不是c ++开发人员,只有C#。 其次,我们只需要一组非常基本的功能。我们已经拥有一台功能齐全的SIP电话,其中包含客户需要的所有自定义功能。
以下是该方案:
客户启动他们的SIP电话(由我们提供)和电话日志 在等等。而不是必须按拨号盘按钮,他们想要 为了能够使用SalesForce界面“点击拨号”,挂起 起来,打电话,拨打,转移等。
我们可以修改手机以接受命令,可能是打开一个端口并接受HTTP命令,这没问题。
所以你可以看到它会是:
[SalesForce.com(浏览器窗口)]< - > [CTI适配器(待建)]< - > [SIP电话 (已经建成)]
显然,唯一需要的部分是CTI适配器,但他们提供的示例Toolkit使用的是C ++,并且看起来过于复杂,具有如此简单的功能。
我用过fiddler监视localhost上的一些通信:11000,似乎也是基本的和XML。
所以有些问题:
是否可以在没有适配器的情况下生成简单的CTI?
CTI如何在技术/低水平基础上运作?例如,到目前为止看到有一个调用“?getXML = true ....”。这是XML发送到浏览器的基本方式吗?
如果适配器上的某些内容发生了变化,例如该线路正在使用中,您如何将该消息发送回浏览器?是否有某种民意调查?我可以想象适配器可以调用浏览器文档中的方法。
任何其他帮助都会很棒。或者甚至只是推动正确的方向。
答案 0 :(得分:0)
1)从理论上讲,可以在没有适配器的情况下生成简单的CTI,但相信我这是一个庞大的项目。实际上[SalesForce.com(浏览器窗口)]< - > [CTI适配器(待建)]< - > [SIP电话(已建成)]并不完全准确。我想还有一个CTI服务器,以便与PBX进行通信。 CTI客户端与CTI服务器进行双向通信。 Cti服务器还与PBX进行双向通信。因此,客户端希望从CTI服务器登录并请求此信息。 CTI服务器将请求发送到PBX,并要求例如将号码为3016的电话登录到某个PBX组。
2)CTI如何在技术/低水平基础上工作? XML不是CTI技术的最低层。可能你的CTI使用CSTA协议。这是CTI服务器与PBX通信的低级别基础协议。 http://en.wikipedia.org/wiki/Computer-supported_telecommunications_applications。假设你学习CSTA并开始尝试你可以自己实现,但这也是一个巨大的过程!!
3)对于第三个问题,我认为提供的文档将解释它,但可能如果该线路正在使用中,那么CTI服务器将从PBX听到此信息并将向CTI客户端发送事件。因此,沟通还涉及您必须捕捉的事件。
根据我的经验,正确的方向是了解您的安装架构。这涉及SIP电话,CTI客户端,CTI服务器,PBX以及正在进行通信的方式。
最后我知道这似乎是一项非常复杂的任务(实际上是这样)但是一旦你研究了这个架构,你就会开始希望!有一些公司提供CTI实施,但架构几乎相同。