問題タブ [turn]
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.
javascript - webrtc ice_server が氷の候補として登録されない
ターンアンドスタンサーバーを使用しているwebrtcクライアントを構築しています。ファイアウォールをオフにしている場合、これは機能しています。オン アイス候補関数をブレークポイントすると、自分のアイス サーバーが ICE 候補として追加されていないことがわかります。
これはコードです:
しかし、onicecandidate 機能にブレークポイントを設定すると、デフォルトの候補のみが追加され、構成内の ice サーバーは追加されません。最新バージョンの firefox を使用しています。
誰か提案がありますか?
javascript - EasyRTC / WebRtc - 3G でのビデオ通話が機能しない
フレームワークとして EasyRTC を使用して、実用的なビデオ チャット アプリを実装しました。
Wi-Fi インターネット接続を介してビデオ通話を行う場合、すべてが機能しています。3G インターネット接続を介してビデオ通話を行うと、接続しているユーザーのリストが表示されますが、リストされているユーザーに対してビデオ通話を開始すると、ビデオが表示されず、音声が聞こえません (ただし、メッセージ交換は機能しています)。
モバイル データ ネットワーク キャリアがビデオ通話の p2p トラフィックを制限している可能性はありますか?
webrtc - iceServers 配列内の全体の順序は重要ですか?
をインスタンス化する場合RTCPeerConnection
、設定パラメータの 1 つは ICE サーバーの配列です。率直な質問: アレイ内のサーバーの順序は重要ですか? 順序は何らかの形で好みを示していますか? 最初に使用したいサーバーを配置する必要がありますか?それとも、ICE 検出プロセスはそれらすべてを均等に試行しますか?
stun - TURN ユーザー (Coturn) をデータベースに手動で挿入する
Coturn を使用してプロジェクト用に TURN サーバーをセットアップしようとしていますが、ドキュメンテーションはせいぜい大ざっぱです...
これを行うツールがあることはturnadmin
承知していますが、データベースに対して直接クエリを実行することを強く望んでいます。これは潜在的に多くのユーザーを持つアプリであり、その共有キー (hmackey
内turnusers_lt
) は変更される可能性があります (アプリとパスワードを共有しないために、アプリは特定の揮発性のユーザー パラメーターのハッシュである「偽の」パスワードを使用します。とても秘密です)。
わずかなドキュメントから、hmackey
レルム、ユーザー名、およびパスワードを使用して計算されることを収集できます。
私のコードがこれら 3 つのパラメーターを認識しているとすると、hmac ハッシュを作成するにはどうすればよいでしょうか? たとえば、私が持っているPHPでは
$algo
ここでは SHA1 にする必要がありますが、$data
(ユーザー/パスの連結など) および$key
(レルムなど) にはどのような値が入りますか?
turn_secret
レルムの「値」をリストした表もあります。これ$key
は上記の例のように使用する必要があると推測していましたが、キーを追加および変更しても、turnadmin を呼び出したときに同じ結果が得られます。
基本的に、私がやりたいことは(疑似コード)です:
...そして、クライアントで、$name
と$coturn_pw
を資格情報として使用して TURN サーバーに接続できるようになりますmy.realm.com
。
それとも、私はこれを考えすぎていて、アプリに汎用ユーザーを使用し、パスワードをハードコーディングして、誰が誰と話しているかを Coturn に認識させるべきですか?
webrtc - マルチユーザー WebRTC セッションのピア間でネットワーク トラバーサル サービス トークンを共有できますか
私はこれについて twilio サポート エンジニアと行ったり来たりしていますが、彼らが私の質問を完全に理解しているかどうかはわかりません。実稼働 WebRTC アプリケーションでネットワーク トラバーサル サービスを使用したエバンジェリスト/誰かが助けてくれることを願っています。
twilio-node クライアント ライブラリを使用して、twilio ネットワーク トラバーサル トークン (twilio リソース: トークン) を要求するラムダ マイクロサービスがあります。私は野生のトークンの数を最小限に抑えたいと考えており、webrtc セッションの開始時にイニシエータを用意し、ラムダ サービスを介してトークンを要求し、帯域外でトークンを他のクライアントに送信することを計画しています。 webrtc セッションに参加しています。
次の呼び出しで、イニシエーターはトークンがまだアクティブであるかどうかを確認し、アクティブである場合は同じトークンを使用し、そうでない場合は新しいトークンを要求します。
これは私にできることですか?それとも、同じ webrtc セッションに参加しているすべてのクライアントに、独自のトークンのセットが必要ですか?
webrtc - VPN の背後で WebRTC が機能しない
ビデオ チャットはほとんどのユーザーと機能しますが、私の Web サイトのユーザーの 1 人とビデオ チャットを機能させることができませんでした。彼女は私を見ることができなかった、そして私は彼女を見ることができなかった.
SDP ネゴシエーションで失敗した場合や、TURN サーバー (coturn) への接続に失敗した場合など、詳細はわかりませんが、誰かが VPN ユーザーに対してそれを機能させ、この問題に対する答えを持っていることを願っています。 .