RTCDataChannelStats
WebRTC API 的 RTCDataChannelStats 字典提供了与连接上的一个 RTCDataChannel 对象相关的统计信息。
可以通过迭代 RTCPeerConnection.getStats() 返回的 RTCStatsReport 来获取报告,直到找到一个 type 为 data-channel 的条目。
可以通过将 dataChannelIdentifier 属性与匹配的 RTCDataChannel.id 进行比较,来将数据通道统计信息与特定通道关联起来。
实例属性
bytesSent可选-
一个正整数值,表示在关联的
RTCDataChannel上发送的总有效载荷字节数。 bytesReceived可选-
一个正整数值,表示在关联的
RTCDataChannel上接收的总有效载荷字节数。 dataChannelIdentifier可选-
一个正整数值,包含关联
RTCDataChannel的id。 label可选-
一个字符串,包含关联
RTCDataChannel的label。 messagesReceived可选-
一个正整数值,表示在关联
RTCDataChannel上为收到的消息触发的message事件 的总数。 messagesSent可选-
一个正整数值,表示为在该通道上发送的消息触发的
message事件 的总数。 protocol可选-
一个字符串,包含关联
RTCDataChannel的protocol。 state-
关联
RTCDataChannel的readyState。
常见实例属性
以下属性是所有 WebRTC 统计信息对象共有的(有关更多信息,请参见 RTCStatsReport)。
id-
一个字符串,唯一标识正在监控以生成这组统计信息的对象。
时间戳-
一个
DOMHighResTimeStamp对象,表示此统计信息对象样本的采集时间。 type-
一个值为
"data-channel"的字符串,表示该对象包含的统计信息类型。
示例
给定一个变量 myPeerConnection,它是 RTCPeerConnection 的一个实例,下面的代码使用 await 等待统计信息报告,然后使用 RTCStatsReport.forEach() 进行迭代。然后,它仅筛选出类型为 data-channel 的字典报告,并打印结果。
const stats = await myPeerConnection.getStats();
stats.forEach((report) => {
if (report.type === "data-channel") {
// Log the channel information
console.log(report);
}
});
规范
| 规范 |
|---|
| WebRTC 统计 API 的标识符 # dom-rtcstatstype-data-channel |
浏览器兼容性
加载中…