RTCDataChannel.id

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.

The read-only RTCDataChannel property id returns an ID number (between 0 and 65,534) which uniquely identifies the RTCDataChannel. This ID is set at the time the data channel is created, either by the user agent (if RTCDataChannel.negotiated is false) or by the site or app script (if negotiated is true).

Each RTCPeerConnection can therefore have up to a theoretical maximum of 65,534 data channels on it, although the actual maximum may vary from browser to browser.

In early versions of the WebRTC specification, this property's name was stream. Code that uses that property needs to be updated.

Syntax

JavaScript
var id = aDataChannel.id;

Value

An unsigned short value (that is, an integer between 0 and 65,535) which uniquely identifies the data channel.

While the label property doesn't have to be unique, this ID number is guaranteed to be unique among all data channels. Additionally, known implementations of WebRTC use the same ID on both peers. A unique ID makes it easier for your code to do its own out-of-band data channel-related signaling.

This can be also useful for logging and debugging purposes.

Example

JavaScript
var pc = new RTCPeerConnection();
var dc = pc.createDataChannel("my channel");
<code>
console.log("Channel id: " + dc.id);</code>

Specifications

Specification Status Comment
WebRTC 1.0: Real-time Communication Between Browser
The definition of 'RTCDataChannel.id' in that specification.
Working Draft Initial specification.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) 24 (24) [1] [2] No support (Yes) ?
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? ? 24 (24) [1] No support ? ?

[1] The interface is called DataChannel and not RTCDataChannel in Firefox, although a binding was added in Firefox 24 which allows either name to be used.

[2] Available in Firefox 22 as RTCDataChannel.stream, however.

See also

License

© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/api/rtcdatachannel/id

Experimental id Property Read-only Reference RTCDataChannel WebRTC