The RTCIceTransport
interface provides access to information about the ICE transport layer over which the data is being sent and received. This is particularly useful if you need to access state information about the connection.
The RTCIceTransport
interface inherits properties from its parent, EventTarget
. It also offers the following properties:
component
Read only
RTCIceTransport
enumerated type: "RTP"
or "RTSP"
.gatheringState
Read only
DOMString
indicating which gathering state the ICE agent is currently in. The value is one of those included in the RTCIceGathererState
enumerated type: "new"
, "gathering"
, or "complete"
.role
Read only
DOMString
whose value is one of the members of the RTCIceRole
enumerated type: "controlling"
or "controlled"
; this indicates whether the ICE agent is the one that makes the final decision as to the candidate pair to use or not.state
Read only
DOMString
indicating what the current state of the ICE agent is. The value of state
can be used to determine whether the ICE agent has made an initial connection using a viable candidate pair ("connected"
), made its final selection of candidate pairs ("completed"
), or in an error state ("failed"
), among other states. See the RTCIceTransportState
enumerated type for a complete list of states.In addition to the event handlers defined by the parent interface, EventTarget
, RTCIceTransport
includes the following:
onstatechange
statechange
event is delivered to the RTCIceTransport
, indicating that the value of the state
property has changed.ongatheringstatechange
gatheringstatechange
event is fired to indicate that the value of the gatheringState
property has changed.onselectedcandidatepairchange
selectedcandidatepairchange
event, which is called any time the ICE agent selects a new, better, candidate pair. The current candidate pair can be obtained using getSelectedCandidatePair()
.Also includes methods from EventTarget
, the parent interface.
getLocalCandidates()
RTCIceCandidate
objects, each describing one of the ICE candidates that have been gathered so far for the local device. These are the same candidates which have already been sent to the remote peer by sending an icecandidate
event to the RTCPeerConnection
for transmission.getLocalParameters()
RTCIceParameters
object describing the ICE parameters established by a call to the RTCPeerConnection.setLocalDescription()
method. Returns null
if parameters have not yet been received.getRemoteCandidates()
RTCIceCandidate
objects, one for each of the remote device's ICE candidates that have been received by the local end of the RTCPeerConnection
and delivered to ICE by calling addIceCandidate()
.getRemoteParameters()
RTCIceParameters
object containing the ICE parameters for the remote device, as set by a call to RTCPeerConnection.setRemoteDescription()
. If setRemoteDescription()
hasn't been called yet, the return value is null
.getSelectedCandidatePair()
RTCIceCandidatePair
object that identifies the two candidates—one for each end of the connection—that have been selected so far. It's possible that a better pair will be found and selected later; if you need to keep up with this, watch for the selectedcandidatepairchange
event. If no candidate pair has been selected yet, the return value is null
.Specification | Status | Comment |
---|---|---|
WebRTC 1.0: Real-time Communication Between Browsers The definition of 'RTCIceTransport' in that specification. | Candidate Recommendation | Initial definition. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | No | 15 | No | No | No | 11 |
component |
No | 12 | No | No | No | No |
gatheringState |
No | No | No | No | No | 11 |
ongatheringstatechange |
No | No | No | No | No | No |
onselectedcandidatepairchange |
No | No | No | No | No | No |
onstatechange |
No | No | No | No | No | No |
role |
No | 12 | No | No | No | No |
state |
No | 12 | No | No | No | 11 |
getLocalCandidates |
No | No | No | No | No | No |
getLocalParameters |
No | No | No | No | No | No |
getRemoteCandidates |
No | 12 | No | No | No | No |
getRemoteParameters |
No | 12 | No | No | No | No |
getSelectedCandidatePair |
No | 13
|
No | No | No | No |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | No | No | ? | No | No | 11 | No |
component |
No | No | ? | No | No | No | No |
gatheringState |
No | No | ? | No | No | 11 | No |
ongatheringstatechange |
No | No | ? | No | No | No | No |
onselectedcandidatepairchange |
No | No | ? | No | No | No | No |
onstatechange |
No | No | ? | No | No | No | No |
role |
No | No | ? | No | No | No | No |
state |
No | No | ? | No | No | 11 | No |
getLocalCandidates |
No | No | ? | No | No | No | No |
getLocalParameters |
No | No | ? | No | No | No | No |
getRemoteCandidates |
No | No | ? | No | No | No | No |
getRemoteParameters |
No | No | ? | No | No | No | No |
getSelectedCandidatePair |
No | No | ? | No | No | No | No |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/RTCIceTransport