A statechange
event occurs when the RTCIceTransport
changes state. The state
can be used to determine how far through the process of examining, verifying, and selecting a valid candidate pair is prior to successfully connecting the two peers for WebRTC communications.
Bubbles | No |
---|---|
Cancelable | No |
Interface | Event |
Event handler property | RTCIceTransport.onstatechange |
Examples
Given an RTCPeerConnection
, pc
, the following code creates an event handler that calls a function named handleFailure()
if the ICE transport enters a failure state.
let iceTransport = pc.getSenders()[0].transport.iceTransport; iceTransport.addEventListener("statechange", ev => { if (iceTransport.state === "failed") { handleFailure(pc); } }, false);
The same code, using the onstatechange
event handler property, looks like this:
let iceTransport = pc.getSenders()[0].transport.iceTransport; iceTransport.onstatechange = ev => { if (iceTransport.state === "failed") { handleFailure(pc); } };
Specifications
Specification | Status | Comment |
---|---|---|
WebRTC 1.0: Real-time Communication Between Browsers The definition of 'statechange' in that specification. |
Candidate Recommendation |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
statechange event | Chrome No support No | Edge No support No | Firefox No support No | IE No support No | Opera No support No | Safari No support No | WebView Android No support No | Chrome Android No support No | Firefox Android No support No | Opera Android No support No | Safari iOS No support No | Samsung Internet Android No support No |
Legend
- No support
- No support
See also
- WebRTC API
- WebRTC connectivity
RTCIceTransport.onstatechange
event handler