2016-11-29 72 views
1

我有libstreamingRTSP服務器在Android設備上(打開某個端口並等待客戶端p2p connection)。
我可以通過本地網絡連接到服務器。對於外部p2p connection我必須使用STUN/TURN
我讀了很多關於Twilio。他們寫了關於TURN服務器:NETWORK TRAVERSAL,但實際上並未提供如何使用它的明確示例。他們有一些我不需要的現成解決方案。
是否有可能直接使用Twilio作爲TURN服務器進行視頻流傳輸,沒有任何附加功能?
如果不是,我有什麼替代方案?如何直接使用Android的Twilio TURN服務器(服務器,客戶端)

回答

1

Twilio開發者傳道士在這裏。

爲了使用TURN服務器,您需要generate an access token,其中包含網絡遍歷服務服務器的所有詳細信息以及用於訪問它們的憑證。

您將需要一個服務器來生成此令牌,以便您不公開您的Twilio帳戶憑據。服務器需要向Twilio發出請求以生成令牌。在嫋嫋,這應該是這樣的:

$ curl -XPOST https://api.twilio.com/2010-04-01/Accounts/YOUR_ACCOUNT_SID/Tokens.json \ 
    -u "YOUR_ACCOUNT_SID:YOUR_AUTH_TOKEN 

的反應則是這樣的:

{ 
    "account_sid": "YOUR_ACCOUNT_SID", 
    "date_created": "Mon, 17 Nov 2014 23:55:19 +0000", 
    "date_updated": "Mon, 17 Nov 2014 23:55:19 +0000", 
    "ice_servers": [ 
     { 
      "url": "stun:global.stun.twilio.com:3478?transport=udp" 
     }, 
     { 
      "credential": "M87Dd74GbNfyrAydvEKiDR43go52fo6ldoJBHB6gim0=", 
      "url": "turn:global.turn.twilio.com:3478?transport=udp", 
      "username": "b759d275ddc641cd379f329882abe3c0618c8afdfc5e24be1b4d59482244240f" 
     } 
    ], 
    "password": "M87Dd74GbNfyrAydvEKiDR43go52fo6ldoJBHB6gim0=", 
    "registrars": null, 
    "ttl": "86400", 
    "username": "b759d275ddc641cd379f329882abe3c0618c8afdfc5e24be1b4d59482244240f" 
} 

然後,您可以使用TURN服務器URL和憑據訪問TURN服務。 Check out the documentation for this here

+0

謝謝你的回答。現在我使用twilio可編程視頻(生成令牌,連接到房間,獲取參與者媒體)。理想情況下,我想使用我的RTSP流([libstreaming](https://github.com/fyhertz/libstreaming))和twilio TURN服務器,所以我會嘗試您的建議。但是,如果可編程視頻是免費的或便宜的,我保留它。 –