RTCIceCandidate: type property
The RTCIceCandidate
interface's read-only type
specifies the type of candidate the object represents.
The type
field's value is set from the candidateInfo
options object passed to the RTCIceCandidate()
constructor. You can't specify the value of type
directly in the options object, but its value is automatically extracted from the object's candidate
a-line (the cand-type
field), if it's formatted properly.
Value
A string whose value is one of those defined below. These candidate types are listed in order of priority; the higher in the list they are, the more efficient they are.
host
-
The candidate is a host candidate, whose IP address as specified in the RTCIceCandidate.address
property is in fact the true address of the remote peer.
srflx
-
The candidate is a server reflexive candidate; the ip
and port are a binding allocated by a NAT for an agent when it sent a packet through the NAT to a server. They can be learned by the STUN server and TURN server to represent the candidate's peer anonymously.
prflx
-
The candidate is a peer reflexive candidate; the ip
and port are a binding allocated by a NAT when it sent a STUN request to represent the candidate's peer anonymously.
relay
-
The candidate is a relay candidate, obtained from a TURN server. The relay candidate's IP address is an address the TURN server uses to forward the media between the two peers.
If type
is null
, that information was missing from the candidate
's a-line, which will cause RTCPeerConnection.addIceCandidate()
to throw an OperationError
exception.
Examples
In this example, the candidate's type
is used to present a modified user interface for host candidates (those where the ip
refers directly to the remote peer, rather than an intermediary).
if (candidate.type === "host") {
showHostControls();
} else {
hideHostControls();
}
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
type |
74 |
79 |
No |
No |
62 |
14.1 |
74 |
74 |
No |
53 |
14.5 |
11.0 |
See also