2016-07-06 67 views
0

这是怎么回事!有一段时间没有问过关于SO的问题,我感觉有点失去联系,哈哈。不管怎么说,我已经使用VOIPWebRTC最近发现的语音呼叫在网上的精彩世界集团VOIP电话Android

我正在做一些[R & d的一个想法,我有,我基本上会爱回答下列问题,由在这方面具有丰富知识和/或从事多年来使用此功能的应用程序的人员完成。我会尽量让它们简单

1)VOIP和WebRTC的主要区别是什么?

2)哪个更适合移动应用?

3)是否有可能实现一个群组或“会议”的会议,其中超过2人正在进行语音通话?

4)我还发现Android内置了SIPSession Initiation Protocols的API,但我已经阅读了有关它们的用处的博客冲突。也就是说,对许多现代编解码器缺乏支持等。我对此不太熟悉,所以对此的任何澄清或洞察也会有所帮助!

5)什么是一些最好或最流行的图书馆与这种工作?

再一次,这个东西是全新的,但是觉得它很刺激。任何有经验的人在这方面的帮助将不胜感激。谢谢!

回答

0
  1. VOIP正在通过互联网协议(IP)发送语音。 有很多不同的技术可以做到这一点,比如WebRTC等等(HTTP只是基于文本的,所以对于语音和视频我们必须寻找其他一些实时传输协议,对吧?另一部分是你想从Internet连接到PSTN (公共交换电话网络))。

  2. Android内置了用于SIP的API,但不支持许多编解码器。因此,解决方案是在您的应用中使用其他第三方API,即Jain SIP等,或者构建您自己的API。

以下是一些描述从SIP到PSTN的呼叫流程的文档。 ref doc link,你必须熟悉SIP服务器,即Asterisk等。

0

1)VOIP和WebRTC的主要区别是什么?

WebRTC是一种路由媒体VoIP的方式,通常用于现代浏览器,但也在应用程序。传统上,对于VoIP,我们使用H.323或SIP作为信令协议,并使用RTP作为媒体。 WebRTC不指定信令(通常SIP用于websocket,但也可以使用其他方法,例如HTTP AJAX请求)。 WebRTC全部是关于对等媒体路由。浏览器中的黑盒子提供了一个简单的JavaScript API,可以很容易地与SIP集成。我在这里讨论浏览器,因为WebRTC主要是为浏览器设计的,它有一个内置的方法来进行VoIP调用,而不需要任何插件,如Java或Flash。 WebRTC的传输协议是DTLS中的SRTP。

2)哪种更适合移动应用?

这取决于你的目标。如果您希望定期拨打电话(例如通过SIP拨打移动电话/固定电话),那么软电话会更好,因为它具有完全控制权。但是,如果您已经拥有WebRTC服务器并且大多数呼叫是点对点(同一服务器内的用户到用户),那么WebRTC可能会更好。在整体,SIP软电话是质量更好的应用程序现在,有几个高品质的免费网络电话应用程序,如MizuDroidCSipSimple

3)是否有可能实现一组或“会议”一样会比这里更2人正在进行语音通话?

这是可能的SIP和的WebRTC(如果你有一个软交换,那么会议也可以处理在服务器端,无需客户端应用程序的任何支持)

4)我还发现Android内置了用于SIP的API

忘掉它了。这是一个低质量的实现,存在许多问题,缺乏重要的编解码器,如G.729。我建议从一个开源的sip堆栈开始,或者从一家专门从事这方面工作的公司(如mizutech customized softhone)为您的需求购买一个品牌软电话。

5)什么是一些最好或最流行的图书馆工作 这种东西?

如果你希望自己做的话,我可以推荐CSipSimpleSIPDroid