DataChannel.

pull/25/head
Pontus Persson 2017-12-08 14:27:45 +01:00 committed by Pontus Alexander
parent ca81f496db
commit 2839c87aed
1 changed files with 28 additions and 0 deletions

View File

@ -4,6 +4,12 @@ var remoteVideo;
var peerConnection; var peerConnection;
var uuid; var uuid;
var serverConnection; var serverConnection;
var dataChannel;
var dataChannelOptions = {
ordered: false, // do not guarantee order
maxRetransmitTime: 500, // in milliseconds
};
var peerConnectionConfig = { var peerConnectionConfig = {
'iceServers': [ 'iceServers': [
@ -40,10 +46,32 @@ function getUserMediaSuccess(stream) {
function start(isCaller) { function start(isCaller) {
peerConnection = new RTCPeerConnection(peerConnectionConfig); peerConnection = new RTCPeerConnection(peerConnectionConfig);
peerConnection.onicecandidate = gotIceCandidate; peerConnection.onicecandidate = gotIceCandidate;
peerConnection.onaddstream = gotRemoteStream; peerConnection.onaddstream = gotRemoteStream;
peerConnection.addStream(localStream); peerConnection.addStream(localStream);
peerConnection.ondatachannel = function(dataChannel) {
dataChannel.channel.send('Hello there, I got your signal');
}
dataChannel = peerConnection.createDataChannel("myLabel", dataChannelOptions);
dataChannel.onerror = function (error) {
console.log("Data Channel Error:", error);
};
dataChannel.onmessage = function (event) {
console.log("Got Data Channel Message:", event.data);
};
dataChannel.onopen = function (event) {
console.log("Datachannel open", event);
};
dataChannel.onclose = function () {
console.log("The Data Channel is Closed");
};
if(isCaller) { if(isCaller) {
peerConnection.createOffer().then(createdDescription).catch(errorHandler); peerConnection.createOffer().then(createdDescription).catch(errorHandler);
} }