icegatheringstatechange
event is sent to the
onicegatheringstatechange
event handler on an
RTCPeerConnection
when the state of the
ICE
candidate gathering process changes.
This signifies that the value of the connection's
iceGatheringState
property has changed.
When ICE firststarts to gather connection candidates, the value changes from
new
to
gathering
to indicate that the process of collecting candidate configurations for the connection has begun. When the value changes to
complete
, all of the transports that make up the
RTCPeerConnection
have finished gathering ICE candidates.
| 冒泡 | No |
|---|---|
| 可取消 | No |
| 接口 |
事件
|
| Event handler |
onicegatheringstatechange
|
注意:
While you can determine that ICE candidate gathering is complete by watching for
icegatheringstatechange
events and checking for the value of
iceGatheringState
to become
complete
, you can also simply have your handler for the
icecandidate
event look to see if its
candidate
特性为
null
. This also indicates that collection of candidates is finished.
This example creates a handler for
icegatheringstatechange
事件。
pc.onicegatheringstatechange = ev => {
let connection = ev.target;
switch(connection.iceGatheringState) {
case "gathering":
/* collection of candidates has begun */
break;
case "complete":
/* collection of candidates is finished */
break;
}
}
Likewise, you can use
addEventListener()
to add a listener for
icegatheringstatechange
事件:
pc.addEventListener("icegatheringstatechange", ev => {
let connection = ev.target;
switch(connection.iceGatheringState) {
case "gathering":
/* collection of candidates has begun */
break;
case "complete":
/* collection of candidates is finished */
break;
}
}, false);
| 规范 | 状态 | 注释 |
|---|---|---|
|
WebRTC 1.0: Real-time Communication Between Browsers
The definition of 'icecandidatestatechange' in that specification. |
候选推荐 | 最初的规范。 |
No compatibility data found. Please contribute data for "api.RTCPeerConnection.icegatheringstatechange_event" (depth: 1) to the MDN 兼容性数据存储库 .
RTCPeerConnection
canTrickleIceCandidates
connectionState
currentLocalDescription
currentRemoteDescription
getDefaultIceServers()
iceConnectionState
iceGatheringState
localDescription
onaddstream
onconnectionstatechange
ondatachannel
onicecandidate
oniceconnectionstatechange
onicegatheringstatechange
onidentityresult
onidpassertionerror
onidpvalidationerror
onnegotiationneeded
onpeeridentity
onremovestream
onsignalingstatechange
ontrack
peerIdentity
pendingLocalDescription
pendingRemoteDescription
remoteDescription
sctp
signalingState
addIceCandidate()
addStream()
addTrack()
close()
createAnswer()
createDataChannel()
createOffer()
generateCertificate()
getConfiguration()
getIdentityAssertion()
getReceivers()
getSenders()
getStats()
getStreamById()
getTransceivers()
removeStream()
removeTrack()
restartIce()
setConfiguration()
setIdentityProvider()
setLocalDescription()
setRemoteDescription()
MediaDevices.getUserMedia()
Navigator.mediaDevices
RTCCertificate
RTCDTMFSender
RTCDTMFToneChangeEvent
RTCDataChannel
RTCDataChannelEvent
RTCDtlsTransport
RTCErrorEvent
RTCIceCandidate
RTCIceTransport
RTCPeerConnectionIceErrorEvent
RTCPeerConnectionIceEvent
RTCRtpReceiver
RTCRtpSender
RTCRtpTransceiver
RTCSctpTransport
RTCSessionDescription
RTCStatsEvent
RTCStatsReport
RTCTrackEvent