RTCPeerConnection.createAnswer()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2017ë 9ì.
RTCPeerConnection ì¸í°íì´ì¤ì createAnswer() ë©ìëë WebRTC ì°ê²° ì¤ ë°ìíë offer/answer ë¤ê³ ììì´ì
ìì ì격 ì ì ë¡ë¶í° ë°ì offerì ëí SDP answer를 ìì±í©ëë¤. ì´ answerë ì¸ì
ì´ ì´ë¯¸ ë¶ì°©ë 미ëì´, ë¸ë¼ì°ì ìì ì§ìíë ì½ë± ë° ìµì
, ê·¸ë¦¬ê³ ì´ë¯¸ ìì§ë ICE candidateì ëí ì 보를 ë´ê³ ììµëë¤. Answerë ë°í ë Promiseì ì ë¬ëê³ , ê·¸ ë¤ììë ë¤ê³ ììì´ì
ê³¼ì ì ê³ì ì§íí기 ìí´ì offerì ìì¤ìê² ì ë¬ëì¼í©ëë¤.
Syntax
aPromise = RTCPeerConnection.createAnswer([options]);
RTCPeerConnection.createAnswer(successCallback, failureCallback[, options]);
ë§¤ê° ë³ì
optionsOptional-
Answer를 커ì¤í°ë§ì´ì¦ í ì ìë ìµì ì ì¤ì íë ê°ì²´ì ëë¤. ì¤ì ê°ë¥í ìµì ì
RTCAnswerOptionsëì ë리ì 기ë°í©ëë¤.
ë ì´ì ì¬ì©ëì§ ìë ë§¤ê° ë³ì
ì´ì ë²ì ì 문ìììë ì´ í¨ì를 ì½ë°± 기ë°ì¼ë¡ ì¬ì©íëë¡ ëì´ììµëë¤. ì½ë°± ê¸°ë° í¨ìë ì´ì ë ì´ì ì¬ì©ëì§ ìì¼ë©°, ì¬ì©íì§ ìë ê²ì ê¶ì¥í©ëë¤. ì´ë¯¸ ì¬ì© ì¤ì´ë¼ë©´, Promise ë²ì ì¸ createAnswer()를 ì¬ì©íëë¡ ì½ë를 ì
ë°ì´í¸ íììì¤. ì´ì ë²ì ì ì½ë를 ì
ë°ì´í¸ íë ê²ì ì½ê² í기 ìí´ ê³ ìë createAnswer()ì í¹ì ë³ìì ëí´ ìëìì ì¤ëª
í©ëë¤.
successCallback-
ì ê· ìì±ë answer를 ì¤ëª íë ë¨ì¼
RTCSessionDescriptionê°ì²´ì ì ë¬ëëRTCSessionDescriptionCallbackì ëë¤. failureCallback-
ì answer를 ìì±íë ìì²ì´ ì¤í¨íëì§ë¥¼ ì¤ëª í´ì£¼ë ë¨ì¼
DOMExceptionê°ì²´ì ì ë¬ëëRTCPeerConnectionErrorCallbackì ëë¤. optionsOptional-
Answer를 ìí´ ìì²ë ìµì ì ì ê³µíë
RTCOfferOptionsê°ì²´ì ëë¤.
ìì¸ì²ë¦¬
NotReadableError-
ìì´ë´í°í° ì ê³µìê° ìì´ë´í°í° 주ì¥ì ì ê³µ í ì ììì ìë ¤ì¤ëë¤.
OperationError-
SDP ìì±ì´ ì´ë¤ ì´ì ë¡ ì¤í¨íìì ìë ¤ì¤ëë¤. ì´ë ì¼ë°ì ì¸ failure catch-all exception ì ëë¤.
ë°í ê°
ë¤ë¥¸ ì ì ìê² ì ë¬ëë SDP answer를 ê°ì§ RTCSessionDescriptionInit ëì
ë리ì ì¤ìíë ê°ì²´ì í¨ê» í¸ì¶ëë fulfillment í¸ë¤ë¬ì¸ Promise ì
ëë¤.
ìì
ìëë Signaling and video calling 문ììì ëì¤ë ì½ëì ì¼ë¶ì ëë¤. ì´ ì½ëë ìê·¸ëë§ ì±ëì íµí´ ë¤ë¥¸ ì ì ìê² offerë ì ë¬íë ë©ì¸ì§ë¥¼ ë¤ë£¨ë í¸ë¤ë¬ìì ëìµëë¤.
ì°¸ê³ :
주ì í ì ì ì´ê²ì´ ìê·¸ëë§ ê³¼ì ì ì¼ë¶ì´ë©°, ì ì¡ê³ì¸µ 구íì ëí ì¸ë¶ì¬íì ì ì ì¼ë¡ ê°ë°ììê² ë¬ë ¤ìë¤ë ê² ì
ëë¤. ì¬ê¸°ìë WebSocket ì°ê²°ì ì¬ì©í´ì ë¤ë¥¸ ì ì ìê² "video-answer" ê°ì´ ìë type íë ë° offer를 ë³´ë¸ ì¥ì¹ìê² ì ë¬ í answer를 ë´ì JSON ë©ì¸ì§ë¥¼ ë³´ë
ëë¤. íë¡ë¯¸ì¤ fulfillment í¸ë¤ë¬ì ë¤ë¥¸ 모ë í목ë¤ê³¼ í¨ê» sendToServer()í¨ìë¡ ì ë¬ëë ê°ì²´ì ë´ì©ì ì´ë»ê² í ì§ë ê°ë°ìì ëìì¸ì ë¬ë ¤ììµëë¤.
pc.createAnswer()
.then(function (answer) {
return pc.setLocalDescription(answer);
})
.then(function () {
// Send the answer to the remote peer through the signaling server.
})
.catch(handleGetUserMediaError);
ìì ìì ë RTCPeerConnectionê° ì ê· answer를 ë§ë¤ê³ ë°ííëë¡ ìì²í©ëë¤. íë¡ë¯¸ì¤ í¸ë¤ë¬ì ë°íë answerë setLocalDescription() í¸ì¶ì ìí´ ì°ê²°ì ë¡ì»¬ ìëì ëí descriptionì¼ë¡ ì¤ì ë©ëë¤.
ì´ ê³¼ì ì´ ì±ê³µíë©´, answerë ì ë¹í ì무 íë¡í ì½ì ì¬ì©í´ì ìê·¸ëë§ ìë²ì ì ë¬ë©ëë¤. ê·¸ë¦¬ê³ Promise.catch()ë ìë¬ë¥¼ ì¡ìë´ê³ ì²ë¦¬í기 ìí´ ì¬ì©ë©ëë¤.
Handling the invitation를 íì¸í´ì ì ì²´ ì½ë를 íì¸í´ë³´ììì¤. ì´ ë¬¸ì를 ë³´ë©´ ìê·¸ëë§ ê³¼ì ë° answerê° ì´ë»ê² ìëíëì§ë¥¼ ì´í´ í ì ììµëë¤.
ëª ì¸
| Specification |
|---|
| WebRTC: Real-Time Communication in Browsers > # dom-rtcpeerconnection-createanswer > |