4.4.1.4 更新 ICE 收集状态
要更新RTCPeerConnection实例连接的ICE收集状态,用户代理必须把运行以下步骤的任务加入队列:
如果connection的[[IsClosed]]值为true,则中止这些步骤。
把 newState 的值设为新状态的值,这些值是 RTCIceGatheringState 中的枚举值。
如果连接的ICE收集状态的值等于newState的值,则中止这些步骤。
将连接的 ICE 采集状态值设置为newState的值。
触发名为icegatheringstatechange的事件。
如果 newState 的值为“completed”,则使用 RTCPeerConnectionIceEvent 接口触发名为 icecandidate 的事件,并在候选连接时将候选属性设置为null。
NOTE
会触发null候选事件以确保旧版兼容性。新代码应监视 RTCIceTransport 和/或 RTCPeerConnection 的收集状态。