問題タブ [simplewebrtc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2398 参照

javascript - WebRTC 複数のピア接続

ほぼすべての場所を検索しましたが、何らかの理由でこのシナリオに関するリソースが見つからないようです。どんな助けでも大歓迎です。

問題はこれです:

4人のユーザーがいます。言いましょう:A、B、C、D。URLに従ってそれらを一致させたいです。たとえば、A と B が &room=1 に接続し、C と D が &room=2 に接続する場合、A と B のペアと C と D のペアの間で接続を確立したいと考えています。

現在、私のコードは A と B の間の接続のみを確立し、C または D ユーザーのいずれかが通話を開始すると、A と B の間の接続が切断され、C は D を見つけることができません。


この問題を解決するために、次のようなオブジェクトを作成しようとしました。

{ ルーム: 1、ピア: RTCPeerConnection }

それを配列に格納し、room id に従ってピア接続を取得し、roomId に従って格納されている RTCPeerConnection に基づいて接続を確立します。しかし、それはうまくいきませんでした。

この通信を処理するソケット サーバーを確立せずに、これを修正するにはどうすればよいでしょうか。


それが役立つ場合、私は現在この方法で接続を確立しています:


そして、これは私の失敗した解決策です:

もちろん、オブジェクトのプロトを localStorage (RTCPeerConnection) に保存できないため、これは失敗します。文字列化/解析すると、ピア属性が空のオブジェクトになります。localStorage の代わりにグローバル変数を試してみると、常に空になります。この問題に関するヒントをいただければ幸いです。