RTCIceCandidate
Базовая Широко поддерживается *
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с января 2020 года.
* Некоторые части этой функции могут иметь различный уровень поддержки.
Интерфейс RTCIceCandidate — часть API WebRTC — представляет собой конфигурацию кандидата для установления связи (ICE) для установления RTCPeerConnection.
Кандидат ICE описывает протоколы и маршрутизацию, необходимые для WebRTC для связи с удалённым устройством. При запуске соединения WebRTC, обычно каждая сторона предлагает несколько кандидатов, пока не согласятся на одного, который, по их мнению, будет наилучшим. Затем WebRTC использует данные этого кандидата для инициализации соединения.
Подробную информацию о работе процесса ICE см. в статье Жизненный цикл сессии WebRTC. Дополнительные полезные сведения содержатся в статье Подключение WebRTC.
Конструктор
RTCIceCandidate()-
Создаёт объект
RTCIceCandidateдля представления одного кандидата ICE, при необходимости с конфигурацией, заданной в объекте.Примечание: Для обратной совместимости конструктор также принимает строку со значением свойства
candidate, вместо объекта конфигурации.
Свойства экземпляра
-
addressТолько для чтения -
Строка, содержащая IP-адрес кандидата.
-
candidateТолько для чтения -
Строка, представляющая адрес транспорта для кандидата, который может быть использован для проверок подключения. Формат этого адреса —
candidate-attribute, как определено в RFC 5245. Эта строка пуста ("") еслиRTCIceCandidate— индикатор «конец кандидатов». -
componentТолько для чтения -
Строка, указывающая, является ли кандидат кандидатом RTP или RTCP; её значение равно
rtpилиrtcp, и получено из поля"component-id"в строке a-linecandidate. -
foundationТолько для чтения -
Возвращает строку, содержащую уникальный идентификатор, который одинаков для всех кандидатов одного типа, разделяющих ту же базу (адрес, с которого агент ICE отправил кандидата) и происходящих от того же сервера STUN. Это используется для повышения производительности ICE путём приоритизации и корреляции кандидатов, появляющихся на нескольких объектах
RTCIceTransport. -
portТолько для чтения -
Целочисленное значение, указывающее номер порта кандидата.
-
priorityТолько для чтения -
Длинное целое число, указывающее приоритет кандидата.
-
protocolТолько для чтения -
Строка, указывающая, является ли протокол кандидата
"tcp"или"udp". -
Если кандидат получен из другого кандидата, то
relatedAddress— строка, содержащая IP-адрес кандидата-хоста. Для кандидатов-хостов это значение равноnull. -
Для кандидата, полученного из другого, такого как релейный или рефлексивный кандидат,
relatedPort— число, указывающее номер порта кандидата, из которого получен этот кандидат. Для кандидатов-хостов свойствоrelatedPortравноnull. -
sdpMidТолько для чтения -
Строка, указывающая идентификатор потока медиа кандидата, который однозначно идентифицирует поток медиа внутри компонента, с которым связан кандидат, или
nullесли такой связи нет. -
sdpMLineIndexТолько для чтения -
Если не
null,sdpMLineIndexуказывает нулевой индекс описания медиа (как определено в RFC 4566) в SDP с которым связан кандидат. -
tcpTypeТолько для чтения -
Если
protocolравно"tcp",tcpTypeпредставляет тип TCP-кандидата. В противном случаеtcpTypeравноnull. -
typeТолько для чтения -
Строка, указывающая тип кандидата, как один из перечисленных в
RTCIceCandidate.type. -
usernameFragmentТолько для чтения -
Строка, содержащая случайный фрагмент имени пользователя ("ice-ufrag"), который ICE использует для целостности сообщений вместе со случайным паролем ("ice-pwd"). Вы можете использовать эту строку для проверки генерации ICE; каждая генерация одного и того же процесса ICE будет использовать тот же
usernameFragment, даже при перезапуске ICE.
Методы экземпляра
toJSON()-
Возвращает представление в формате JSON текущей конфигурации
RTCIceCandidate. Формат представления совпадает с объектомcandidateInfo, который можно передать в конструкторRTCIceCandidate()для конфигурации кандидата.
Примеры
Примеры см. в статье Сигнальная связь и видеозвонки, которая демонстрирует весь процесс.
Спецификации
Совместимость с браузерами
| Настольные | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
RTCIceCandidate |
23 | 15 |
44До Firefox 68, параметрcandidateInfo конструктора обязателен, и объект candidateInfo должен иметь свойство candidate. 22До Firefox 68, параметрcandidateInfo конструктора обязателен, и объект candidateInfo должен иметь свойство candidate. |
15 | 11 | 25 |
44До Firefox 68, параметрcandidateInfo конструктора обязателен, и объект candidateInfo должен иметь свойство candidate. 24До Firefox 68, параметрcandidateInfo конструктора обязателен, и объект candidateInfo должен иметь свойство candidate. |
14 | 11 | 1.5 | 4.4 |
RTCIceCandidate |
23 | 15 | 4422 | 15 | 11 | 25 | 4424 | 14 | 11 | 1.5 | 4.4 |
address |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
candidate |
23 | 15 | 22До Firefox 126, свойство не было доступно только для чтения. |
15 | 11 | 25 | 24До Firefox 126, свойство не было доступно только для чтения. |
14 | 11 | 1.5 | 4.4 |
component |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
foundation |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
port |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
priority |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
protocol |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
relatedAddress |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
relatedPort |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
relayProtocol |
124 | 124 | НетСм. ошибку 1886013. |
110 | Нет | 124 | НетСм. ошибку 1886013. |
82 | Нет | 27.0 | 124 |
sdpMLineIndex |
23 | 15 | 22До Firefox 126, свойство не было доступно только для чтения. |
15 | 11 | 25 | 24До Firefox 126, свойство не было доступно только для чтения. |
14 | 11 | 1.5 | 4.4 |
sdpMid |
23 | 15 | 22До Firefox 126, свойство не было доступно только для чтения. |
15 | 11 | 25 | 24До Firefox 126, свойство не было доступно только для чтения. |
14 | 11 | 1.5 | 4.4 |
tcpType |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
toJSON |
43 | 15 | 27 | 30 | 11 | 43 | 27 | 30 | 11 | 4.0 | 43 |
type |
74 | 79 | 126 | 62 | 14.1 | 74 | 126 | 53 | 14.5 | 11.0 | 74 |
url |
124 | 124 | НетСм. ошибку 1886013. |
110 | Нет | 124 | НетСм. ошибку 1886013. |
82 | Нет | 27.0 | 124 |
usernameFragment |
74 | 79 | 67До Firefox 126, свойство не было доступно только для чтения. |
62 | 14.1 | 74 | 67До Firefox для Android 126, свойство не было доступно только для чтения. |
53 | 14.5 | 11.0 | 74 |
© 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/RTCIceCandidate