This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The RTCPeerConnection.ondatachannel
property is an EventHandler
which specifies a function which is called when the datachannel
event occurs on an RTCPeerConnection
. This event, of type RTCDataChannelEvent
, is sent when an RTCDataChannel
is added to the connection by the remote peer calling createDataChannel()
.
At the time this event is received, the RTCDataChannel
it indicates may not yet actually be open. Be sure to wait for the "open"
event to be fired on the new RTCDataChannel
before using it.
Syntax
RTCPeerConnection.ondatachannel = function;
Value
Set this property to be a function you provide which receives as input a single parameter: an RTCDataChannelEvent
which provides in its channel
property the RTCDataChannel
which has been created.
Example
pc.ondatachannel = function(ev) { console.log('Data channel is created!'); ev.channel.onopen = function() { console.log('Data channel is open and ready to be used.'); }; };
Specifications
Specification | Status | Comment |
---|---|---|
WebRTC 1.0: Real-time Communication Between Browsers The definition of 'RTCPeerConnection.ondatachannel' in that specification. |
Candidate Recommendation | Initial specification. |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
ondatachannel | Chrome Full support 25 | Edge Full support ≤18 | Firefox Full support 22 | IE No support No | Opera
Full support
43
| Safari Full support 11 | WebView Android Full support Yes | Chrome Android Full support 25 | Firefox Android Full support 44 | Opera Android
Full support
43
| Safari iOS Full support Yes | Samsung Internet Android Full support 6.0 |
Legend
- Full support
- Full support
- No support
- No support
- See implementation notes.
- See implementation notes.
See also
- The
datachannel
event and its type,RTCDataChannelEvent
. RTCPeerConnection.createDataChannel()
- A simple RTCDataChannel sample