RTCDtlsTransport: error event

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

An RTCDtlsTransport receives an error event when a transport-level error occurs on the RTCPeerConnection.

This event is not cancelable and does not bubble.

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

js
addEventListener("error", (event) => { })

onerror = (event) => { }

Event type

An RTCErrorEvent. Inherits from Event.

Event RTCErrorEvent

Event properties

In addition to the standard properties available on the Event interface, RTCErrorEvent also includes the following:

error Read only

An RTCError object specifying the error which occurred; this object includes the type of error that occurred, information about where the error occurred (such as which line number in the SDP or what SCTP cause code was at issue).

Description

Transport-level errors will have one of the following values for the specified error's RTCError property errorDetail:

dtls-failure

The negotiation of the DTLS connection failed, or the connection was terminated with a fatal error. The error's message contains details about the nature of the error. If a fatal error is received, the error object's receivedAlert property is set to the value of the DTLSL alert received. If, on the other hand, a fatal error was sent, the sentAlert is set to the alert's value.

fingerprint-failure

The remote certificate for the RTCDtlsTransport didn't match any of the fingerprints listed in the SDP. If the remote peer can't match the local certificate against the provided fingerprints, this error doesn't occur, though this situation may result instead in a dtls-failure error.

Examples

In this example, the onerror event handler property is used to set the handler for the error event.

js
transport.onerror = (ev) => {
  const err = ev.error;

  // …
};

Note: Since RTCError is not one of the legacy errors, the value of code is always 0.

Specifications

This feature does not appear to be defined in any specification.

Browser compatibility

desktop mobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
error event
Chrome – Full support
Chrome 72 (Release date: 2019-01-29)
footnote Full support
Edge – Full support
Edge 12 (Release date: 2015-07-29)
footnote Full support
Firefox – No support
Firefox
footnote No support
Opera – Full support
Opera 60 (Release date: 2019-04-09)
footnote Full support
Safari – Full support
Safari 15.4 (Release date: 2022-03-14)
footnote Full support
Chrome Android – Full support
Chrome Android 72 (Release date: 2019-01-29)
footnote Full support
Firefox for Android – No support
Firefox for Android
footnote No support
Opera Android – Full support
Opera Android 50 (Release date: 2019-02-18)
footnote Full support
Safari on iOS – Full support
Safari on iOS 15.4 (Release date: 2022-03-14)
footnote Full support
Samsung Internet – Full support
Samsung Internet 11 (Release date: 2019-12-05)
footnote Full support
WebView Android – Full support
WebView Android 72 (Release date: 2019-01-29)
footnote Full support
WebView on iOS – Full support
WebView on iOS 15.4 (Release date: 2022-03-14)
footnote Full support

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support

See also