RTCIceCandidate.tcpType

The RTCIceCandidate interface's read-only tcpType property is included on TCP candidates to provide additional details about the candidate type.

The tcpType field's value is set when the RTCIceCandidate() constructor is used. You can't directly set its value; instead, its value is automatically extracted from the candidate a-line, if it's formatted properly.

Syntax

var tcpType = RTCIceCandidate.tcpType;

Value

A DOMString whose value is one of those defined by the RTCIceTcpCandidateType enumerated type.

"active"
The transport will try to open an outbound connection but won't receive inoming connection requests.
"passive"
The transport will receive incoming connection requests but won't try to open an outbound connection.
"so"
The transport will try to open a connection simultaneously with its peer.

tcpType is null for UDP candidates.

Example

In this example, the candidate's protocol and tcpType are used to adjust the user interface for simultaneous-open TCP candidates.

if (candidate.protocol == "tcp" && candidate.tcpType == "so") {
    adjustForSimultaneousOpen(candidate);
}

Specifications

Specification Status Comment
WebRTC 1.0: Real-time Communication Between Browsers
The definition of 'RTCIceCandidate.tcpType' in that specification.
Candidate Recommendation Initial definition.

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
tcpTypeChrome Full support 74Edge Full support ≤18Firefox No support NoIE No support NoOpera No support NoSafari ? WebView Android Full support 74Chrome Android Full support 74Firefox Android No support NoOpera Android No support NoSafari iOS ? Samsung Internet Android Full support 11.0

Legend

Full support
Full support
No support
No support
Compatibility unknown
Compatibility unknown

See also