RTCPeerConnection: connectionState property
Baseline2023Newly available
Since May 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
TheconnectionState
read-only property of theRTCPeerConnection
interface indicates the current state of the peer connection by returning one of the following string values:new
,connecting
,connected
,disconnected
,failed
, orclosed
.
This state essentially represents the aggregate state of all ICE transports (which are of typeRTCIceTransport
orRTCDtlsTransport
) being used by the connection.
When this property's value changes, aconnectionstatechange
event is sent to theRTCPeerConnection
instance.
Value
A string representing the current state of the connection.This can take on of the following values:
new
At least one of the connection'sICE transports (
RTCIceTransport
orRTCDtlsTransport
objects) is in thenew
state, and none of them are in one of the following states:connecting
,checking
,failed
,disconnected
, or all of the connection's transports are in theclosed
state.connecting
One or more of theICE transports are currently in the process of establishing a connection;that is, their
iceConnectionState
is eitherchecking
orconnected
, and no transports are in thefailed
state.connected
EveryICE transport used by the connection is either in use (state
connected
orcompleted
) or is closed (stateclosed
);in addition, at least one transport is eitherconnected
orcompleted
.disconnected
At least one of theICE transports for the connection is in the
disconnected
state and none of the other transports are in the states:failed
,connecting
, orchecking
.failed
One or more of theICE transports on the connection is in the
failed
state.closed
The
RTCPeerConnection
is closed.
Example
const peerConnection = new RTCPeerConnection(configuration);// …const connectionState = peerConnection.connectionState;
Specifications
Specification |
---|
WebRTC: Real-Time Communication in Browsers # dom-peerconnection-connection-state |