1

カムブロードキャスト用の Web アプリを構築しています。私は Django を Web アプリに使用し、coturn を (STUN/TURN) シグナリング サーバーとして使用しています。私の目標は、WebRTC でそれを行うことです。

他のピアが到達できるようにするために、ピアをシグナリング サーバーに接続する方法がわかりません。だから私が知る必要があるのは、「PeerConnection」を確立する方法です。Webアプリケーションでは、必要なものはすべて揃っています(私が思うに):user.id、共有シークレット、シグナリングサーバーのIPとポート、...しかし、HTML JSスクリプトでそれを混合してcoturnサーバーに接続する方法がわかりません。

coturn サーバーのドキュメントを読み、いくつかの例を検索しましたが、この部分の例が見つかりません。

誰かが私に例を見せてもらえますか?

4

2 に答える 2

3

少し混乱していると思いますが、これはシグナリング サーバーcoturnではなく、TURN/ STUN サーバーです。

シグナリングサーバーは、直接ピアツーピア接続を取得する前に、sdp、ice 候補、およびその他のデータをピア間で交換するものですが、それはcoturn行いません。

すべてのビットを説明することはできませんが、要点は、STUN はピアのパブリック IP を提供するために使用され、TURN は直接アクセスできない場合にピアからデータを送受信するためのプロキシ ポイントに使用され、ほとんどの場合、すべてのrequire は STUN サーバーです。それらが WebRTC アプリケーションに関与するのは、オブジェクトを作成するときだけです。構成PeerConnectionオブジェクトで STUN/TURN サーバーの詳細を渡します。例:

let pc = new RTCPeerConnection({
  "iceServers": [
    {"urls": "stun:example.com"},  // STUN Server address
    {"urls": "turn:example.com", "credential": "test", "username": "test"}  // TURN Server address
  ] 
}); 
于 2016-01-25T01:36:41.493 に答える
1

私が理解しているように、coturn を使用する必要はなく、SignalMaster などのシグナリング サーバーを 1 つだけ使用するだけです。私が間違っている?

ホスト間接続が不可能な場合でも、ピアツーピアまたはリレー接続を実現するために、coTurn またはその他の STUN/TURN サーバーが必要になる場合があります。STUN/TURN は、ICE が ICE を実行し、接続を保証するために、サーバー再帰および中継された候補を持つために必要です。

WebRTC はオファー/アンサー モデルとして機能するため、2 者間で SDP を交換するには、SIP/Jingle などの何らかのシグナリング方法や別のシグナリング メカニズムが必要です。上記の WebRTC 実装のサードパーティ ソリューションを使用することも、独自の単純なシグナリング スタックを作成することもできます。

于 2016-01-28T07:31:41.200 に答える