Created
June 17, 2015 14:48
-
-
Save jefBinomed/f0f9697b022627b73579 to your computer and use it in GitHub Desktop.
Programmez-07/08_2015-PortalWebrtc-03
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
if (isInitiator) { | |
try{ | |
//Reliable DataChannelsnotyet supportedinChrome | |
sendChannel = pc.createDataChannel("sendDataChannel", | |
{reliable: false}); | |
sendChannel.onmessage = handleMessage; | |
trace('Createdsenddatachannel'); | |
} catch (e) { | |
alert('Failedtocreatedatachannel. ' + | |
'You needChrome M25or later with RtpDataChannelenabled'); | |
trace('createDataChannel() failed with exception: ' + e.message); | |
} | |
sendChannel.onopen = handleSendChannelStateChange; | |
sendChannel.onclose = handleSendChannelStateChange; | |
} else { | |
pc.ondatachannel = gotReceiveChannel; | |
} | |
} | |
function sendData() { | |
vardata = sendTextarea.value; | |
sendChannel.send(data); | |
trace('Sentdata: ' + data); | |
} | |
function gotReceiveChannel(event) { | |
trace('ReceiveChannelCallback'); | |
sendChannel = event.channel; | |
sendChannel.onmessage = handleMessage; | |
sendChannel.onopen = handleReceiveChannelStateChange; | |
sendChannel.onclose = handleReceiveChannelStateChange; | |
} | |
function handleMessage(event) { | |
trace('Received message: ' + event.data); | |
receiveTextarea.value = event.data; | |
} | |
function handleSendChannelStateChange() { | |
var readyState = sendChannel.readyState; | |
trace('Sendchannel stateis: ' + readyState); | |
enableMessageInterface(readyState == "open"); | |
} | |
function handleReceiveChannelStateChange() { | |
var readyState = sendChannel.readyState; | |
trace('Receivechannel stateis: ' + readyState); | |
enableMessageInterface(readyState == "open"); | |
} | |
function enableMessageInterface(shouldEnable) { | |
if (shouldEnable) { | |
dataChannelSend.disabled = false; | |
dataChannelSend.focus(); | |
dataChannelSend.placeholder = ""; | |
sendButton.disabled = false; | |
} else { | |
dataChannelSend.disabled = true; | |
sendButton.disabled = true; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment