RTCIceTransport: getSelectedCandidatePair() method
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
The getSelectedCandidatePair() method of the RTCIceTransport interface returns an RTCIceCandidatePair instance containing the current best-choice pair of ICE candidates describing the configuration of the endpoints of the transport.
Syntax
getSelectedCandidatePair()
Parameters
None.
Return value
An RTCIceCandidatePair instance describing the configurations of the currently-selected candidate pair's local and remote endpoints.
The return value is null if no pair of candidates has been selected yet.
Description
As the ICE agent performs negotiation of a RTCPeerConnection, it gathers and analyzes candidate configurations from each of the two peers.
As soon as it finds an acceptable matching pair of candidates, meeting the requirements for the connection, a selectedcandidatepairchange event is fired at the RTCIceTransport.
From that time forward, the best matching pair of candidates will always be available by calling getSelectedCandidatePair().
As ICE negotiation continues, any time a pair of candidates is discovered that is better than the currently-selected pair, the new pair is selected, replacing the previous pairing, and the selectedcandidatepairchange event is fired again.
Note: It's possible for one of the configurations in the selected candidate pair to remain unchanged when a new pairing is chosen.
Examples
See RTCIceTransport.onselectedcandidatepairchange for example code.
Specifications
| Specification |
|---|
| WebRTC: Real-Time Communication in Browsers> # dom-rtcicetransport-getselectedcandidatepair> |