RTCIceTransport: событие selectedcandidatepairchange
Событие selectedcandidatepairchange отправляется объекту RTCIceTransport, когда агент ICE выбирает новую пару кандидатов, описывающую конечные точки жизнеспособного соединения.
Пара кандидатов описывается объектом RTCIceCandidatePair, который содержит один объект RTCIceCandidate, представляющий локальный конец соединения, и другой — удалённый конец соединения.
Вместе кандидаты могут быть использованы для установления соединения, которое будет использоваться объектом RTCIceTransport, и, как следствие, объектом RTCPeerConnection.
Это событие не может быть отменено и не распространяется.
Синтаксис
Используйте имя события в методах, таких как addEventListener(), или установите свойство обработчика события.
addEventListener("selectedcandidatepairchange", (event) => {});
onselectedcandidatepairchange = (event) => {};
Тип события
Общее событие Event.
Примеры
В этом примере создаётся обработчик события selectedcandidatepairchange для обновления отображения, предоставляющего пользователю информацию о ходе переговоров ICE для объекта RTCPeerConnection с именем pc.
let iceTransport = pc.getSenders()[0].transport.iceTransport;
let localProtoElem = document.getElementById("local-protocol");
let remoteProtoElem = document.getElementById("remote-protocol");
iceTransport.addEventListener(
"selectedcandidatepairchange",
(ev) => {
let pair = iceTransport.getSelectedCandidatePair();
localProtoElem.innerText = pair.local.protocol.toUpperCase();
remoteProtoElem.innerText = pair.remote.protocol.toUpperCase();
},
false,
);
Это также можно сделать, установив свойство обработчика события onselectedcandidatepairchange напрямую.
let iceTransport = pc.getSenders()[0].transport.iceTransport;
let localProtoElem = document.getElementById("local-protocol");
let remoteProtoElem = document.getElementById("remote-protocol");
iceTransport.onselectedcandidatepairchange = (ev) => {
let pair = iceTransport.getSelectedCandidatePair();
localProtoElem.innerText = pair.local.protocol.toUpperCase();
remoteProtoElem.innerText = pair.remote.protocol.toUpperCase();
};
Спецификации
| Спецификация |
|---|
| WebRTC: Реальное время связи в браузерах # event-icetransport-selectedcandidatepairchange |
| WebRTC: Реальное время связи в браузерах # dom-rtcicetransport-onselectedcandidatepairchange |
Совместимость с браузерами
| Рабочие столы | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
selectedcandidatepairchange_event |
75 | 79 | Нет | 62 | 16.4 | 75 | Нет | 54 | 16.4 | 11.0 | 75 |
См. также
Связанные события RTCIceTransport
Связанные события RTCPeerConnection
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/RTCIceTransport/selectedcandidatepairchange_event