每个 RTCPeerConnection 连接都关联一个基础的 SCTP 协议传输通道,即属性 sctp,它的类型是 RTCSctpTransport,定义如下面的代码清单所示。
//RTCSctpTransport的定义
interface RTCSctpTransport : EventTarget {
readonly attribute RTCDtlsTransport transport;
readonly attribute RTCSctpTransportState state;
readonly attribute unrestricted double maxMessageSize;
readonly attribute unsigned short? maxChannels;
attribute EventHandler onstatechange;
};
RTCSctpTransport 的属性说明 | ||
属性 | 类型 | 说明 |
transport | RTCDtlsTransport | 只读,DTLS层的传输通道 |
state | RTCSctpTransportState | 只读,SCTP 的传输状态 |
maxMessageSize | 双精度数值 | 只读,单次调用send()方法能够发送的最大字节数 |
maxChannels | 短整型数值 | 只读,能够同时打开的最大通道数 |
RTCSctpTransportState 是枚举类型,枚举值定义如下面的代码清单所示。
//RTCSctpTransportState的定义
enum RTCSctpTransportState {
"connecting",
"connected",
"closed"
};
RTCSctpTransportState 定义了 SCTP 的传输状态,各状态的含义说明如下。
当SCTP传输通道的状态发生变化时,触发事件statechange,该事件对应事件句柄onstatechange。