如何使用C#构建软电话(使用SIP协议)
我有使用c#或.net技术构建SIP软电话的挑战。
请指导我建立这样的技术,要求和规格。
可能的要求:
支持的编解码器:
G.722.1,G.723.1,G.726,G.728,G.711,G.729,G.723.1,iLBC,:G.711(A和m-law),G.729A / B / D / E,AMR,GSM 6.10 / EFR,iLBC,Speex
-
语音:
实时质量监控(MOS)3条独立电话线
自动应答/请勿打扰呼叫
转发全双工音频
录制压缩音频数据。 -
完全SIP兼容的软电话/拨号器用于PC2Phone和Mobile2Phone(iPhone,诺基亚N95)应用程序与symbian s60,应提供完整的源代码。
-
兼容Windows 2000 / XP / 2003 / Vista / Mac
-
NAT /防火墙遍历function
-
适用于任何第三方SIP服务器
-
支持SIP出站代理
-
显示呼叫者帐户余额
-
显示通话信用时间
-
自动回声消除
-
自动抖动缓冲调整
-
最后号码重拨
-
上次拨打的10个号码的历史记录
-
快速拨号用户列表
-
快速为客户提供,只需要用户名和密码
http://www.konnetic.com是一个相对较新的补充。 完全管理。 使用SIP和SDP所需的一切。 他们没有像许多其他人一样选择标准中的低调水果。 同样好但与Microsoft绑定的是Microsoft Lync服务器。
Konnetic为.NET开发提供完全托管的SIP组件。
他们的SIP .NET SDK在这里可用,可能是最全面的。 他们还提供了一个MSRP库。
否则,Microsoft的Lync服务器附带了一个非常好的托管SIP库,可从以下url获得:www.microsoft.com/en-us/lync/default.aspx
这里有几点建议
- 有关在C#中实现SIP堆栈的Code Project,请参阅此文章
- 使用LAME查看此post的音频压缩
Microsoft实时通信:协议和技术http://technet.microsoft.com/en-us/library/bb457036.aspx