This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Deprecated
This feature has been removed from the Web standards. Though some browsers may still support it, it is in the process of being dropped. Avoid using it and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.
The RTCSessionDescription()
constructor creates a new RTCSessionDescription
with its properties initialized as described in the specified object.
This constructor has been deprecated because RTCPeerConnection.setLocalDescription()
and other methods which take SDP as input now directly accept an object conforming to the RTCSessionDescriptionInit
dictionary, so you don't have to instantiate an RTCSessionDescription
yourself.
sessionDescription = new RTCSessionDescription(rtcSessionDescriptionInit);
rtcSessionDescriptionInit
Optional
RTCSessionDescriptionInit
dictionary. That dictionary has the following properties: type
RTCSdpType
enum; it must have one of the following values: This enum defines strings that describe the current state of the session description, as used in the type
property. The session description's type will be specified using one of these values.
Value | Description |
---|---|
answer | The SDP contained in the sdp property is the definitive choice in the exchange. In other words, this session description describes the agreed-upon configuration, and is being sent to finalize negotiation. |
offer | The session description object describes the initial proposal in an offer/answer exchange. The session negotiation process begins with an offer being sent from the caller to the callee. |
pranswer | The session description object describes a provisional answer; that is, it's a response to a previous offer or provisional answer. |
rollback | This special type with an empty session description is used to roll back to the previous stable state. |
sdp
""
) by default and may not be null
.This example uses the constructor to convert an SDP offer into an RTCSessionDescription
object.
This is no longer necessary, however; RTCPeerConnection.setLocalDescription()
and other methods which take SDP as input now directly accept an object conforming to the RTCSessionDescriptionInit
dictionary, so you don't have to instantiate an RTCSessionDescription
yourself.
navigator.getUserMedia({video: true}, function(stream) { pc.onaddstream({stream: stream}); // Adding a local stream won't trigger the onaddstream callback pc.addStream(stream); pc.createOffer(function(offer) { pc.setLocalDescription(new RTCSessionDescription(offer), function() { // send the offer to a server to be forwarded to the friend you're calling. }, error); }, error); }
Specification | Status | Comment |
---|---|---|
WebRTC 1.0: Real-time Communication Between Browsers The definition of 'RTCSessionDescription()' in that specification. | Candidate Recommendation | Initial specification. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | Yes | Yes | Yes
|
No | ? | ? |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | Yes | Yes | Yes | ? | ? | ? | Yes |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/RTCSessionDescription/RTCSessionDescription