16

WebRTCについて最初に聞いたとき、その見通しに興奮しました。WebSocketのように聞こえましたが、サーバーはありませんでした。残念ながら、私が見つけたすべてのチュートリアルは、WebRTCのビデオとオーディオの側面を強調しています。ブラウザ間でのテキスト/データ/JSONの送信について何も見つかりません。WebbRTCを使用して、あるブラウザーから別のブラウザーにデータを送信するだけで、ある種の単純なhelloworldを作成するのを手伝っていただけませんか。

4

7 に答える 7

7

これは暗闇の中での刺し傷ですが、最新のWeb APIエディターのドラフトには、ピアツーピアデータAPIのDataChannel一部としてインターフェイスがあります。

ただし、現在のワーキングドラフトにはこのAPIがないため、非常に新しく、まだ実装されていない可能性があります。

于 2012-04-18T21:42:22.047 に答える
6

DataChannelはFirefox(18+)とChrome(25+)に実装されましたが、まだ初期の段階です。

詳細については、HTML5Rocksの記事「GettingStartedwithWebRTC」を参照してください。

于 2013-01-11T10:47:32.340 に答える
3

この機能は、出荷用のWebRTC実装にはまだ実装されていません。他の投稿者が示しているように、最新のWebRTCエディターのドラフトにはDataChannel APIが含まれていますが、このためのプロトコルはまだ開発中です。このAPIは、今年後半にChromeとFirefoxで公開される予定です。

于 2012-04-19T00:20:49.387 に答える
3

これは古い質問ですが、webRTCを学び始めたので、答えようと思います。

まず第一に、いくつかの誤解:

WebSocketのように聞こえましたが、サーバーはありません

一部の情報(メディアセッション管理、ノードのネットワーク構成/マルチメディア機能)が適切に交換およびネゴシエートされるまで、WebRTCピア間でデータを転送する方法はありません。これを行うには、サーバーとシグナリングが必要です(これは、webRTCの一部ではありません。必要に応じて実装できます)。

シグナリングが完了したら、次のようなRTCPeerConnectionを作成する必要があります。

if (navigator.webkitGetUserMedia) {
   RTCPeerConnection = webkitRTCPeerConnection;
} else if(navigator.mozGetUserMedia){
   RTCPeerConnection = mozRTCPeerConnection;
   RTCSessionDescription = mozRTCSessionDescription;
   RTCIceCandidate = mozRTCIceCandidate;
}

その後:

var connection = new RTCPeerConnection(servers);

この後、このPeerConnectionにデータチャネルを追加できます。

var dataChannel = connection.createDataChannel("channelName",{ reliable: true });

これが完了したら、電話sendChannel.send('Any data you want');をかけるだけで、必要なデータが送信されます。

どちらかといえば、この本は本当に役に立ちました。未回答の質問がたくさん残っていますが、最初は良いです。

于 2014-06-09T10:35:58.683 に答える
1

マットはすでに知っていると思いますが、グーグルのゲストの場合:はい、できます。データチャネルを使用します。

あなたの側で:

channel = somePeerConnection.createDataChannel("a Label");
channel.onopen = function() { channel.send("any thing") };

反対側:

somePeerConnection.ondatachannel = function (evt) {
   evt.channel.onmessage = function (evt) {
       alert( evt.data );
   };
};

この例を参照してください。

于 2013-01-10T23:55:39.823 に答える
1

http://peerjs.com/は進化しており、ブラウザインスタンス間のp2pデータ転送のための構文のようなWebSocketを提供します

于 2013-03-24T19:58:28.913 に答える
0

Justinが示したように、プロトコルとAPIはまだ確定されていません。最新のIETFで、JSAPIの下にあるマイナープロトコルのドラフトを提出しました。最終的なフォームは、編集者のドラフトの現在の提案に非常に近い可能性がありますが、受信側からも「未開封」になるのを待つ必要があります。

APIはWebSocketAPIでモデル化されており、WebSocket実装からDataChannelへのコードの移動を容易にしますが、WebSocket内のすべてのアイテム(urlなど)が引き継がれるわけではなく、明らかにDataChannelは、WebSocketにはない多くの機能を追加します。部分的に信頼できるデータ。

于 2012-04-19T21:34:13.000 に答える