Учебники

WebRTC — API-интерфейсы RTCDataChannel

WebRTC хорош не только для передачи аудио и видео потоков, но и для любых произвольных данных, которые у нас могут быть. Это где объект RTCDataChannel вступает в игру.

RTCDataChannel.label (только для чтения) — возвращает строку, содержащую имя канала данных.

RTCDataChannel.ordered (только для чтения) — возвращает true, если порядок доставки сообщений гарантирован, или false, если он не гарантирован.

RTCDataChannel.protocol (только для чтения) — возвращает строку, содержащую имя подпротокола, используемого для этого канала.

RTCDataChannel.id (только для чтения) — возвращает уникальный идентификатор для канала, который устанавливается при создании объекта RTCDataChannel.

RTCDataChannel.readyState (только для чтения) — возвращает перечисление RTCDataChannelState, представляющее состояние соединения. Возможные значения —

подключение — указывает, что соединение еще не активно. Это начальное состояние.

open — указывает, что соединение установлено.

закрытие — указывает на то, что соединение находится в процессе отключения. Кэшированные сообщения находятся в процессе отправки или получения, но ни одна вновь созданная задача не принимает.

закрыт — указывает на то, что соединение не может быть установлено или было отключено.

RTCDataChannel.bufferedAmount (только для чтения) — возвращает количество байтов, которые были поставлены в очередь для отправки. Это объем данных, которые еще не были отправлены через RTCDataChannel.send ().

RTCDataChannel.bufferedAmountLowThreshold — возвращает количество байтов, при котором RTCDataChannel.bufferedAmount считается низким. Когда значение RTCDataChannel.bufferedAmount уменьшается ниже этого порога, вызывается событие bufferedamountlow.

RTCDataChannel.binaryType — возвращает тип двоичных данных, передаваемых соединением. Может быть «blob» или «arraybuffer».

RTCDataChannel.maxPacketLifeType (только для чтения) — возвращает беззнаковое короткое замыкание, указывающее длину в миллисекундах окна, когда обмен сообщениями происходит в ненадежном режиме.

RTCDataChannel.maxRetransmits (только для чтения) — возвращает короткое число без знака, указывающее максимальное количество раз, когда канал будет повторно передавать данные, если они не доставлены.

RTCDataChannel.negotiated (только для чтения) — возвращает логическое значение, указывающее, был ли канал согласован агентом пользователя или приложением.

RTCDataChannel.reliable (только для чтения) — возвращает логическое значение, указывающее, что соединение может отправлять сообщения в ненадежном режиме.

RTCDataChannel.stream (только для чтения) — синоним RTCDataChannel.id

RTCDataChannel.onopen — этот обработчик события вызывается при запуске события open. Это событие отправляется, когда соединение для передачи данных установлено.

RTCDataChannel.onmessage — этот обработчик события вызывается при возникновении события сообщения. Событие отправляется, когда сообщение доступно на канале данных.

RTCDataChannel.onbufferedamountlow — этот обработчик события вызывается при возникновении события bufferedamoutlow. Это событие отправляется, когда RTCDataChannel.bufferedAmount уменьшается ниже свойства RTCDataChannel.bufferedAmountLowThreshold.

RTCDataChannel.onclose — этот обработчик события вызывается при запуске события close. Это событие отправляется, когда соединение для передачи данных было закрыто.

RTCDataChannel.onerror — этот обработчик события вызывается при возникновении события ошибки. Это событие отправляется при обнаружении ошибки.

RTCDataChannel.close () — Закрывает канал данных.

RTCDataChannel.send () — отправляет данные в параметре по каналу. Данные могут быть BLOB-объектами, строками, ArrayBuffer или ArrayBufferView.