2016-07-06 84 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