RTCPeerConnection: currentRemoteDescription property

The currentRemoteDescription read-only property of the RTCPeerConnection interface returns an RTCSessionDescription object describing the remote end of the connection as it was most recently successfully negotiated since the last time the RTCPeerConnection finished negotiating and connecting to a remote peer. Also included is a list of any ICE candidates that may already have been generated by the ICE agent since the offer or answer represented by the description was first instantiated.

To change the currentRemoteDescription, call RTCPeerConnection.setRemoteDescription(), which triggers a series of events which leads to this value being set. For details on what exactly happens and why the change isn't necessarily instantaneous, see Pending and current descriptions in the WebRTC Connectivity page.

Note: Unlike RTCPeerConnection.remoteDescription, this value represents the actual current state of the local end of the connection; remoteDescription may specify a description which the connection is currently in the process of switching over to.


The current description of the remote end of the connection, if one has been set. If none has been successfully set, this value is null.


This example looks at the currentRemoteDescription and displays an alert containing the RTCSessionDescription object's type and sdp fields.

const pc = new RTCPeerConnection();
// ...
const sd = pc.currentRemoteDescription;
if (sd) {
  alert(`Local session: type='${sd.type}'; sdp description='${sd.sdp}'`);
} else {
  alert("No local session yet.");


WebRTC: Real-Time Communication in Browsers
# dom-peerconnection-currentremotedesc

Browser compatibility

BCD tables only load in the browser

See also