RTCPeerConnection: свойство iceConnectionState
Базовая Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с января 2020 года.
Чтение-только свойство iceConnectionState интерфейса RTCPeerConnection возвращает строку, которая отображает состояние агента ICE, связанного с RTCPeerConnection: new, checking, connected, completed, failed, disconnected, и closed.
Она описывает текущее состояние агента ICE и его подключение к серверу ICE; то есть, к серверу STUN или TURN.
Вы можете определить, когда это значение изменилось, отслеживая событие iceconnectionstatechange.
Значение
Текущее состояние агента ICE и его подключения. Значение — одна из следующих строк:
new-
Агент ICE собирает адреса или ожидает получения удалённых кандидатов через вызовы
RTCPeerConnection.addIceCandidate()(или оба). checking-
Агенту ICE были предоставлены один или несколько удалённых кандидатов, и он проверяет пары локальных и удалённых кандидатов друг с другом, чтобы найти совместимую пару, но ещё не нашёл такую пару, которая позволила бы установить соединение между peer. Возможно, сбор кандидатов также ещё продолжается.
connected-
Была найдена используемая пара локальных и удалённых кандидатов для всех компонентов соединения, и соединение было установлено. Возможно, сбор кандидатов ещё продолжается, и агент ICE всё ещё проверяет кандидатов друг с другом, чтобы найти более лучшее подключение.
completed-
Агент ICE завершил сбор кандидатов, проверил все пары друг с другом и нашёл подключение для всех компонентов.
failed-
Агент ICE проверил все пары кандидатов друг с другом и не смог найти совместимые пары для всех компонентов соединения. Однако возможно, что агент ICE нашёл совместимые соединения для некоторых компонентов.
disconnected-
Проверка для обеспечения того, что компоненты по-прежнему подключены, не удалась для хотя бы одного компонента
RTCPeerConnection. Этот тест менее жёсткий, чемfailed, и может периодически срабатывать и разрешаться так же спонтанно в менее надёжных сетях или во время временных отключений. Когда проблема решится, соединение может вернуться в состояниеconnected. closed-
Агент ICE для этого
RTCPeerConnectionзакрыт и больше не обрабатывает запросы.
Примеры
const pc = new RTCPeerConnection(); const state = pc.iceConnectionState;
Спецификации
Совместимость браузеров
| Рабочие столы | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
iceConnectionState |
26 | 15 | 24 | 15 | 11 | 26 | 24 | 14 | 11 | 1.5 | 4.4 |
См. также
© 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/RTCPeerConnection/iceConnectionState