The RTCIceTransport
interface's onselectedcandidatepairchange
event handler specifies a function to be called to handle the selectedcandidatepairchange
event, which is fired when the ICE agent selects a new candidate pair to be used for the connection.
Syntax
RTCIceTransport.onselectedcandidatepairchange = candidatePairHandler;
Value
This propoerty should be set to reference an event handler function to be called by the ICE agent when it discovers a new candidate pair that the RTCIceTransport
will be using for communication with the remote peer. This event will occur at least once, and may occur more than once if the ICE agent continues to identify candidate pairs that will work better, more closely match the requested parameters, and so forth.
The event handler can determine the current state by calling the transport's getSelectedCandidatePair()
method, which returns a RTCIceCandidatePair
whose RTCIceCandidatePair.local
and RTCIceCandidatePair.global
properties specify RTCIceCandidate
objects describing the local and remote candidates that are currently being used.
Example
In this example, an event handler for selectedcandidatepairchange
is set up to update an on-screen display showing the protocol used by the currently selected candidate pair.
var iceTransport = pc.getSenders()[0].transport.iceTransport; var localProto = document.getElementById("local-protocol"); var remoteProto = document.getElementById("remote-protocol"); iceTransport.onselectedcandidatepairchange = function(event) { var pair = iceTransport.getSelectedCandidatePair(); localProtocol.innerText = pair.local.protocol.toUpperCase(); remoteProtocol.innerText = pair.remote.protocol.toUpperCase(); }
Specifications
Specification | Status | Comment |
---|---|---|
WebRTC 1.0: Real-time Communication Between Browsers The definition of 'RTCIceTransport.onselectedcandidatepairchange' in that specification. |
Candidate Recommendation | Initial specification. |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
onselectedcandidatepairchange | 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
- The
selectedcandidatepair
event and its type,Event
. - The other event handlers for
RTCIceTransport
:onstatechange
andongatheringstatechange