我有一个C ++程序,它使用Microsoft TAPI接口从Cisco Call Manager PBX收集呼叫事件。为了获得思科活动,我从呼叫管理器下载了TSP,然后我的TAPI代码正常工作。
我可以使用Avaya AES服务器执行相同的操作吗?我看到Avaya使用TSAPI而不是TAPI,但我看不出会对我的程序产生什么影响。
答案 0 :(得分:19)
TAPI是由Microsoft开发的电话API,TSAPI是由该公司开发的电话API,最终成为Avaya(AT& T - > Lucent - > Avaya)。 TAPI的设计面向第一方呼叫控制(即电话),而TSAPI则面向第三方呼叫呼叫控制(即PBX和中心局交换机)。 TAPI确实对处理呼叫音频提供了一些有限的支持,TSAPI没有。如果您能为Avaya AES找到TAPI TSP,我会感到非常惊讶,如果您这样做,您将无法从Avaya获得它。
如果您感兴趣的只是呼叫事件,那么您可以使用两种API执行相同的操作,但代码将完全不同。大多数拥有必须与Avaya AES和Cisco Call Manager通信的产品的公司都为其产品创建了通用CTI接口,然后编写了将TSAPI和TAPI呼叫事件转换为其通用事件格式的代码模块(也称为驱动程序)。在您的情况下,根据您的操作系统,您可以将TAPI代码移动到单独的DLL /共享库中,然后创建一个单独的DLL /共享库,它实现相同的功能,但使用TSAPI而不是TAPI。
幸运的是,许多较小的PBX制造商使用基于TAPI或TSAPI的API作为其CTI接口,因此如果您必须连接到第三个PBX,那么您可以重用这两个模块中的一个。/ p>
答案 1 :(得分:5)
一个是“电话”,另一个是“电话服务”。差异类似于桌面电话(TAPI)和公司通信壁橱(TSAPI)中的PBX之间的差异,但由于它全部在软件中,您可以使用TAPI编写程序做了很多PBX的工作。但我认为使用TSAPI会更容易。