Spec-Zone.ru › Web APIs

RTCPeerConnection: событие icegatheringstatechange

Базовая Широко поддерживается

Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с января 2020 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Событие icegatheringstatechange отправляется обработчику событий onicegatheringstatechange на объекте RTCPeerConnection, когда изменяется состояние процесса сбора кандидатов ICE. Это означает, что изменилось значение свойства соединения iceGatheringState.

Когда ICE начинает сбор кандидатов соединения, значение меняется с new на gathering, чтобы указать, что начался процесс сбора конфигураций кандидатов для соединения. Когда значение меняется на complete, все транспортные средства, составляющие RTCPeerConnection, завершили сбор кандидатов ICE.

Примечание: Хотя вы можете определить, что сбор кандидатов ICE завершён, наблюдая за событиями icegatheringstatechange и проверяя, стало ли значение iceGatheringState complete, вы также можете в обработчике события icecandidate проверить, является ли свойство candidate null. Это также указывает на завершение сбора кандидатов.

Это событие не отменяется и не распространяется.

Синтаксис

Используйте имя события в методах, таких как addEventListener(), или установите свойство обработчика событий.

addEventListener("icegatheringstatechange", (event) => {});

onicegatheringstatechange = (event) => {};

Тип события

Общее Event.

Примеры

В этом примере создаётся обработчик событий icegatheringstatechange.

pc.onicegatheringstatechange = (ev) => {
  let connection = ev.target;

  switch (connection.iceGatheringState) {
    case "gathering":
      /* collection of candidates has begun */
      break;
    case "complete":
      /* collection of candidates is finished */
      break;
  }
};

Аналогично, можно использовать addEventListener() для добавления обработчика событий icegatheringstatechange:

pc.addEventListener(
  "icegatheringstatechange",
  (ev) => {
    let connection = ev.target;

    switch (connection.iceGatheringState) {
      case "gathering":
        // collection of candidates has begun
        break;
      case "complete":
        // collection of candidates is finished
        break;
    }
  },
  false,
);

Спецификации

Спецификация
WebRTC: Решение для реального времени в браузерах
# dom-rtcpeerconnection-onicegatheringstatechange

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
icegatheringstatechange_event 59 15 22 46 11 59 24 43 11 7.0 59

См. также

  • API WebRTC
  • Сигнальные сообщения и видеозвонки
  • Подключение WebRTC
  • Срок действия сеанса WebRTC

© 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/icegatheringstatechange_event

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API