2017-09-14 17 views
0

私はビデオとチャットの統合の問題に直面していますWebRtc JavaScriptを使用しています。私はエラーが表示さwebRtcのデータチャネルjavascript

https://github.com/oney/react-native-webrtc-server/blob/master/index.html 

ビデオが正常に動作しますが、メッセージを送信している。この例ではどちらも失敗していない使用しています!!!!。

Line #115 to 142 of above link 
if (pc.textDataChannel) { 
    return; 
} 
var dataChannel = pc.createDataChannel("text"); 

dataChannel.onerror = function (error) { 
}; 

dataChannel.onmessage = function (event) { 
    console.log('open state2') 

    var content = document.getElementById('textRoomContent'); 
    content.innerHTML = content.innerHTML + '<p>' + socketId + ': ' + event.data + '</p>'; 
}; 

dataChannel.send = function (event) { 
    console.log('open state2') 
    exchange(event) 
}; 

dataChannel.onopen = function() { 
    console.log('open state') 
    var textRoom = document.getElementById('textRoom'); 
    textRoom.style.display = "block"; 
}; 

dataChannel.onclose = function() { 
}; 
pc.textDataChannel = dataChannel; 

メッセージその用途を送信中:

pc.textDataChannel.send(text);//Line #218 of above link 

を、私はそれが私がこの送信は、なぜメッセージで何もないと思います動作することを実装する必要があります正確にどのようなこれらの機能として、上記の例では、共有データチャネルとして 失敗し、ビデオが壊れる

答えて

0

createOfferの前にcreateDataChannelを呼び出す必要があります。

簡単な方法は、あなたがRTCPeerConnectionを作成するとすぐにデータチャネルを作成することです

var pc = new RTCPeerConnection(configuration); 
var dataChannel = pc.createDataChannel("text"); 
... 

その後createOfferは、あなたが何か表示されるはずですSDPにデータチャネルの記述が含まれます:

m=application 9 DTLS/SCTP 5000 
... 
a=sctpmap:5000 webrtc-datachannel 1024 
関連する問題