RTCPeerConnection.canTrickleIceCandidates
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2022ë 3ì.
ì½ê¸° ìì±ì¸ RTCPeerConnection ìì±ì canTrickleIceCandidates ë ì격ì ì ê° trickled ICE candidates를 ì¹ì¸ í ì ìëì§ì ì¬ë¶ë¥¼ ìë ¤ì£¼ë Booleanì ë°íí©ëë¤.
ICE trickling ì ì´ê¸° offer í¹ì answer를 ë¤ë¥¸ ì ì ìê² ì´ë¯¸ ì ë¬ì íììë ê³ìí´ì candidate를 ë³´ë´ë ê³¼ì ì ë»í©ëë¤.
ì´ ìì±ì RTCPeerConnection.setRemoteDescription()ê° í¸ì¶ë íìë§ ì¤ì ë©ëë¤. Signaling íë¡í ì½ì´ trickling ì§ìì ê°ì§íë ë°©ë²ì ì ê³µí´ì ì´ ìì±ì ìì¡´ í íìê° ìì´ íë ê²ì´ ê°ì¥ ì¢ì ë°©ë²ì
ëë¤. WebRTC ë¸ë¼ì°ì ë íì trickle ICE를 ì§ìíê² ëì´ììµëë¤. íì§ë§ ëªëª ê²½ì°ì tricklingì´ ì§ìì´ ëì§ ìê±°ë ì ì´ì ì§ìíëì§ë¥¼ ì ì ìë¤ë©´, ì´ ìì±ì ê°ì´ ì´ìíì§ íì¸íê³ , ëí ì´ê¸° offer를 ìì±íê³ ì ë¬í기 ì´ì ì iceGatheringStateì ê°ì´ "completed"ë¡ ë°ë기ì ê¹ì§ 기ë¤ë¦´ ì ììµëë¤. ì´ë¬í ë°©ìì¼ë¡ offerì 모ë candidateë¤ì´ í¬í¨ëëë¡ ë§ë¤ ì ììµëë¤.
Syntax
var canTrickle = RTCPeerConnection.canTrickleIceCandidates;
ê°
Booleanë ì격 ì ì ê° trickled ICE candidate를 ìì© í ì ìì¼ë©´ true ê°ì´ê³ , ê·¸ë ì§ ìì¼ë©´ false ê° ì
ëë¤. ì´ë¯¸ ì격 ì ì ê° ìì±ëìì¼ë©´, ì´ ê°ì null ì
ëë¤.
ì°¸ê³ :
참조: ì´ ìì±ì ê°ì ë¡ì»¬ í¼ì´ê° RTCPeerConnection.setRemoteDescription()를 í¸ì¶íê² ëë©´ ê²°ì ë©ëë¤.
ì¬ê¸°ìì ì ê³µë ì 보를 ì¬ì©í´ì ICE agentê° ì격 ì ì ê° trickled ICE candidate를 ì§ìíëì§ì ëí ì¬ë¶ë¥¼ ê²°ì í´ì¤ëë¤.
ìì
var pc = new RTCPeerConnection();
// The following code might be used to handle an offer from a peer when
// it isn't known whether it supports trickle ICE.
pc.setRemoteDescription(remoteOffer)
.then(_ => pc.createAnswer())
.then(answer => pc.setLocalDescription(answer))
.then(_ =>
if (pc.canTrickleIceCandidates) {
return pc.localDescription;
}
return new Promise(r => {
pc.addEventListener('icegatheringstatechange', e => {
if (e.target.iceGatheringState === 'complete') {
r(pc.localDescription);
}
});
});
})
.then(answer => sendAnswerToPeer(answer)) // signaling message
.catch(e => handleError(e));
pc.addEventListener('icecandidate', e => {
if (pc.canTrickleIceCandidates) {
sendCandidateToPeer(e.candidate); // signaling message
}
});
ëª ì¸
| Specification |
|---|
| WebRTC: Real-Time Communication in Browsers > # dom-rtcpeerconnection-cantrickleicecandidates > |