The read-only connectionState property of the RTCPeerConnection interface indicates the current state of the peer connection by returning one of the following string values: new, connecting, connected, disconnected, failed, or closed.
This state essentially represents the aggregate state of all ICE transports (which are of type RTCIceTransport or RTCDtlsTransport) being used by the connection.
When this property's value changes, a connectionstatechange event is sent to the RTCPeerConnection instance.
A string representing the current state of the connection. This can take on of the following values:
new -
At least one of the connection's ICE transports (RTCIceTransport or RTCDtlsTransport objects) is in the new 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 the closed state.
connecting -
One or more of the ICE transports are currently in the process of establishing a connection; that is, their iceConnectionState is either checking or connected, and no transports are in the failed state.
connected -
Every ICE transport used by the connection is either in use (state connected or completed) or is closed (state closed); in addition, at least one transport is either connected or completed.
disconnected -
At least one of the ICE transports for the connection is in the disconnected state and none of the other transports are in the states: failed, connecting, or checking.
failed -
One or more of the ICE transports on the connection is in the failed state.
closed -
The RTCPeerConnection is closed.
const peerConnection = new RTCPeerConnection(configuration);
const connectionState = peerConnection.connectionState;