将VOIP构建到应用程序中(特别是C ++)

时间:2009-12-15 00:53:08

标签: c++ voip

现有的库和框架是否允许将VOIP内置到定制应用程序中而无需重新发明轮子?客户对C ++桌面应用程序的可能性感兴趣,虽然它不是非常有用(它们可以只使用Skype),但它非常很酷

我相信像DirectX这样的技术可能会内置一些用于游戏内聊天的功能,是吗?还有哪些免费/付费第三方图书馆?

5 个答案:

答案 0 :(得分:6)

好吧,既然Asterisk是开源的,那么这是一个很好的起点。

查看Astxx

“Astxx的目标是提供功能齐全且易于使用的C ++    Asterisk的包装器使开发人员能够编写Asterisk相关软件    使用C ++提供的全部功能。这包括AGI脚本    并访问Manager API。“

另外IAXClient

“使用IAX协议的轻量级跨平台IP电话客户端,设计用于星号开源PBX。”

Asterisk Sockets

“Asterisk Manage API和FAGI C ++ Framework。使用高效的OS独立套接字包装器(ACE)实现。为Asterisk Manager API和FAGI提供C ++ API包装。”

还有.NET library

“Asterisk .NET库包含一组C#类,可让您轻松构建与Asterisk PBX Server(1.0 / 1.2 / 1.4版本)交互的应用程序。支持FastAGI和Manager API..NET / Mono兼容“。

答案 1 :(得分:4)

您可能需要考虑某种形式的SIP客户端,它可以用作软电话应用程序的基础。查看免费的pjsip库。

答案 2 :(得分:2)

对于SIP库,您还应该查看Sofia-SIP和GNU oSIP库。

由于SIP仅用于会话启动,因此您还需要一个用于音频流的库(RTP库)。我已经使用并推荐librtp

答案 3 :(得分:0)

如果要开发使用SIP和RTP的Windows C ++,vb.NET或C#.Net VOIP应用程序,请查看LanScape VOIP媒体引擎SDK。它不仅仅是一个SIP库或RTP媒体库 - 它处理所有VOIP呼叫要求。这个voip sdk不是免费的或开源的。你从LS许可它。

我们在开发Windows VOIP客户端(软电话)时使用了LS sdk,并在我们的windows voip服务器上使用它进行pstn trunk终止。 v5 sdk他们遇到了一些错误,但“Release 6”媒体引擎对我们来说非常有用。

以下是their siteLS voip SDK的链接。

我们使用sdk已经有3到3年了。 LS提供的免费和付费支持非常好。我也有很好的权威,他们将在Linux和Mac OS X雪豹上提供相同的sdk。

答案 4 :(得分:0)

您可能需要查看VDK:http://www.voipdevkit.com它不是免费的,但它是多平台的,可以在其他应用程序中轻松集成VoIP。它提供高级API,因此您无需自己处理SIP或RTP。