RTCIceTransport.ongatheringstatechange

The ongatheringstatechange event handler for the RTCIceTransport interface specifies an event handler that is to be called when the gatheringstatechange event occurs on the transport. This event is delivered whenever the transport's gatheringState property changes.

Syntax

RTCIceTransport.ongatheringstatechange = stateChangeHandler;

Value

A function to be called when the RTCIceTransport object's gathering state changes. To determine the new state, examine the value of gatheringState.

The gathering state indicates whether or not the ICE agent has begun gathering candidates, and if so, whether or not gathering has finished. Its possible values are:

"new"
The RTCIceTransport is newly created and has not yet started to gather ICE candidates.
"gathering"
The transport is in the process of gathering candidates.
"complete"
The transport has finished gathering ICE candidates and has sent the end-of-candidates indicator to the remote device. The transport won't gather any further candidates unless an ICE restart occurs, at which point the gathering process starts over from scratch.

Example

This snippet establishes a handler for the gatheringstatechange event that checks to see if the state has changed to "complete", indicating that all ICE candidates from both the local and remote peers have been received and processed.

var iceTransport = pc.getSenders()[0].transport.transport;

iceTransport.ongatheringstatechange = function(event) {
  if (iceTransport.gatheringState == "complete") {
    allCandidatesReceived(pc);
  }
}

Specifications

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

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
ongatheringstatechangeChrome No support NoEdge No support NoFirefox No support NoIE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android No support NoFirefox Android No support NoOpera Android No support NoSafari iOS No support NoSamsung Internet Android No support No

Legend

No support
No support

See also