开发学院,分享开发教程和最新动态

RTCDataChannel API接口

RTCDataChannel API



WebRTC不仅可以传输音频和视频流,还可以传输任意数据,这就是RTCDataChannel对象发挥作用的地方。


RTCDataChannel API



属性列表


RTCDataChannel.label (只读) − 返回包含数据通道名称的字符串


RTCDataChannel.ordered (只读) −如果消息的传递顺序被保证,取值范围:true和false. 


RTCDataChannel.protocol (只读) − 返回此频道包含子协议名称的字符串。


RTCDataChannel.id (只读) − 返回在创建RTCDataChannel对象时设置的通道的唯一id。.


RTCDataChannel.readyState (只读) − 返回表示连接状态的RTCDataChannelState枚举。

可能的值:


connecting −  初始状态,代表连接尚未处于活动状态。


open − 代表连接已经处于打开状态.


closing − 代表连接正在关闭中,缓存的消息可能正在发送或接收中,但不接受新的消息。


closed − 连接已关闭


RTCDataChannel.bufferedAmount (只读) −返回已排队等待发送的字节数。这是还未通过RTCDataChannel.send()发送的数据。


RTCDataChannel.bufferedAmountLowThreshold − 返回RTCDataChannel.bufferedamount被评为low的字节数。当RTCDataChannel.bufferedamount低于此阈值时,将触发BufferedAmountLow事件。


RTCDataChannel.binaryType − 返回连接传输的二进制数据的类型。取值范围:blob或arraybuffer.


RTCDataChannel.maxPacketLifeType (只读) −返回一个无符号短消息,表示消息在不可靠模式下的窗口中的长度(以毫秒为单位)。


RTCDataChannel.maxRetransmits (只读) − 返回无符号的短消息,表示如果未交付,信道将传输数据的最大次数。


RTCDataChannel.negotiated (只读) −返回一个布尔值,指示是否由用户代理或应用程序协商频道。


RTCDataChannel.reliable (只读) −返回指示连接可以在不可靠模式下发送消息的布尔值。


RTCDataChannel.stream (只读) − 跟RTCDataChannel.id的意义一样


事件处理列表


RTCDataChannel.onopen −当打开事件时,将调用此事件处理程序。在建立数据连接时发送此事件。


RTCDataChannel.onmessage − 在触发消息事件时调用此事件处理程序。当数据通道上有消息时,将发送事件。


RTCDataChannel.onbufferedamountlow − 当触发bufferedamoutlow事件时,将调用此事件处理程序。


RTCDataChannel.onclose − 在触发close事件时调用此事件处理程序。当数据连接关闭时,将发送此事件。


RTCDataChannel.onerror − 当触发错误事件时,将调用此事件处理程序。当遇到错误时,将发送此事件。



方法列表


RTCDataChannel.close() − 关闭数据通道.


RTCDataChannel.send() − 发送数据,基于数据通道. 取值范围:blob,字符串,ArrayBuffer或ArrayBufferView.