RTCDtlsTransport object

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

Exposes information relating to Datagram Transport Layer Security (DTLS) transport.


Microsoft Edge does not support the getRemoteCertificates() method, or a state value of "failed". Since Microsoft Edge requires support for RTP/RTCP mux with DTLS, an RTCDtlsTransport object can only be constructed from an RTP RTCSctpTransport object.


A RTCDtlsTransport instance is constructed using an RTCIceTransport object.

A newly constructed RTCDtlsTransport must listen and respond to incoming DTLS packets before start() is called. However, to complete the negotiation it is necessary to verify the remote fingerprint, which is dependent on remoteParameters, passed to start(). After the DTLS handshake exchange completes (but before the remote fingerprint is verified) incoming media packets may be received. A modest buffer must be provided to avoid loss of media prior to remote fingerprint validation (which can begin after start() is called).

If an attempt is made to construct a RTCDtlsTransport instance from an RTCIceTransport in the "closed" state, an InvalidStateError exception is thrown. Since the Datagram Transport Layer Security (DTLS) negotiation occurs between transport endpoints determined via ICE, implementations of this specification must support multiplexing of STUN, TURN, DTLS and RTP and/or RTCP. This multiplexing, originally described in [RFC5764] Section 5.1.2, is being revised in [MUX-FIXES].


[Constructor(RTCIceTransport transport)]
interface RTCDtlsTransport : RTCStatsProvider {
    readonly    attribute RTCIceTransport       transport;
    readonly    attribute RTCDtlsTransportState state;
    RTCDtlsParameters  getLocalParameters ();
    RTCDtlsParameters? getRemoteParameters ();
    void               start (RTCDtlsParameters remoteParameters);
    void               stop ();
                attribute EventHandler?         ondtlsstatechange;
                attribute EventHandler?         onerror;


The RTCDtlsTransport object has these types of members:

  • Events
  • Methods
  • Properties


The RTCDtlsTransport object has these events.

Event Description

This event fires any time the RTCDtlsTransportState changes.


This event fires on reception of a DTLS alert.


This event fires when the RTCDtlsTransport changes state.



The RTCDtlsTransport object has these methods.

Method Description

Obtain the DTLS parameters of the local RTCDtlsTransport.


Obtain the DTLS parameters of the remote RTCDtlsTransport.



The RTCDtlsTransport object has these properties.

Property Description


The current state of the DTLS transport.


Standards information