RTCIceCandidatePairStats: selected 属性

非标准:此功能是非标准的,并且不在标准轨道上。请勿在面向 Web 的生产站点上使用它:它不会对每个用户都起作用。实现之间也可能存在很大的不兼容性,并且行为在未来可能会发生变化。

非标准的、Firefox 特定的 RTCIceCandidatePairStats 属性selected指示对象描述的候选对是否为当前用于与远程对等体通信的候选对。

语法

js
icpStats.selected

一个 Firefox 特定的布尔值,如果此对象描述的候选对是当前正在使用的,则为true

在任何其他浏览器中,您可以通过查找类型为transport的统计信息对象来确定选定的候选对,该对象是 RTCTransportStats 对象。该对象的 selectedCandidatePairId 属性指示指定的传输是否为正在使用的传输。

示例

此示例中显示的函数通过首先迭代每个报告,查找transport报告;找到一个后,该传输的 selectedCandidatePairId 用于获取描述连接的 RTCIceCandidatePair,从而识别当前选定的候选对。

如果失败,则第二部分迭代报告,查找 Firefox 特定的selected属性为truecandidate-pair记录。然后将此候选对作为当前选定的候选对返回。

js
function getCurrentCandidatePair(statsResults) {
  statsResults.forEach((report) => {
    if (report.type === "transport") {
      currentPair = statsResults.get(report.selectedCandidatePairId);
    }
  });

  if (!currentPair) {
    statsResults.forEach((report) => {
      if (report.type === "candidate-pair" && report.selected) {
        currentPair = report;
      }
    });
  }

  return currentPair;
}

规范

不属于任何规范的一部分。此属性是 Firefox 独有的。

浏览器兼容性

BCD 表仅在浏览器中加载