TAPI 和 TSAPI 有什么区别
我有一个 C++ 程序,它使用 Microsoft TAPI 接口从 Cisco Call Manager PBX 收集呼叫事件。 为了获取 Cisco 事件,我从呼叫管理器下载了 TSP,然后我的 TAPI 代码就可以工作了。
我可以使用 Avaya AES 服务器执行同样的操作吗? 我看到 Avaya 使用 TSAPI 而不是 TAPI,但我看不出这会对我的程序产生什么影响。
I have a C++ program that uses the Microsoft TAPI interface to collect call events from a Cisco Call Manager PBX. To get the Cisco events I downloaded the TSP from the call manager and then my TAPI code just works.
Can I do the same thing with an Avaya AES server? I see that Avaya uses TSAPI rather than TAPI, but I couldn't see what difference that would make to my program.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
TAPI 是 Microsoft 开发的电话 API,TSAPI 是最终成为 Avaya(AT&T -> Lucent -> Avaya)的公司开发的电话 API。 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,您很可能可以重用这两个模块之一。
TAPI is a telephony API developed by Microsoft, TSAPI is a telephony API developed by the company that eventually became Avaya (AT&T -> Lucent -> Avaya). TAPI's design was oriented torward first party call control (i.e. phones), while TSAPI was oriented torward third party call call control (i.e. PBXes and central office switches). TAPI does have some limited support for dealing with the call audio, TSAPI has none. I'd be very surprised if you could find a TAPI TSP for Avaya AES, and you won't be getting it from Avaya if you do.
If all you're interested in is call events, then you can do the same things with both APIs, but the code will be totally different. Most companies that have products that have to talk to both Avaya AES and Cisco Call Manager have created an generic CTI interface for their product and then write code modules (aka drivers) that translate the TSAPI and TAPI call events to their generic event format. In your case, depending on your OS, you can move your TAPI code into a separate DLL/shared library, then create a separate DLL/shared library that implements the same functions but using TSAPI instead of TAPI.
Frotunately, a lot of the smaller PBX manufacturers use either TAPI or TSAPI based APIs for their CTI interfaces, so if you have to connect to a third PBX, chances are good that you can reuse one of the two modules.
一种是“电话”,另一种是“电话服务”。 其区别类似于您办公桌上的电话 (TAPI) 和公司通信室中的 PBX (TSAPI) 之间的区别,不同之处在于,由于所有这些都在软件中,因此您可以使用 TAPI 编写一个程序来完成 PBX 的大部分工作。 但我认为您会发现使用 TSAPI 会更容易。
One is just "telephony" and the other is "telephony services". The difference is similar to that between the phone on your desk (TAPI) and PBX in your company's comms closet (TSAPI), with the exception that since it's all in software you could write a program using TAPI to do much of what a PBX does. But I think you'll find it easier using TSAPI.