RTCPeerConnection: connectionstatechange-Ereignis
Baseline
2023
Newly available
Since May 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Das connectionstatechange-Ereignis wird an den onconnectionstatechange Ereignis-Handler eines RTCPeerConnection-Objekts gesendet, nachdem ein neuer Track zu einem RTCRtpReceiver, das Teil der Verbindung ist, hinzugefügt wurde.
Der neue Verbindungsstatus kann in connectionState gefunden werden und ist einer der folgenden String-Werte: new, connecting, connected, disconnected, failed oder closed.
Dieses Ereignis ist nicht abbruchfähig und wird nicht hochgebubbelt.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("connectionstatechange", (event) => { })
onconnectionstatechange = (event) => { }
Ereignistyp
Ein generisches Event.
Beispiele
Für eine RTCPeerConnection, die peerConnection genannt wird, verwendet dieses Beispiel addEventListener(), um Änderungen der Konnektivität der WebRTC-Sitzung zu handhaben.
Es ruft eine von der App definierte Funktion namens setOnlineStatus() auf, um eine Statusanzeige zu aktualisieren.
peerConnection.addEventListener("connectionstatechange", (event) => {
switch (peerConnection.connectionState) {
case "new":
case "connecting":
setOnlineStatus("Connecting…");
break;
case "connected":
setOnlineStatus("Online");
break;
case "disconnected":
setOnlineStatus("Disconnecting…");
break;
case "closed":
setOnlineStatus("Offline");
break;
case "failed":
setOnlineStatus("Error");
break;
default:
setOnlineStatus("Unknown");
break;
}
});
Sie können auch einen Handler für das connectionstatechange-Ereignis mit der Eigenschaft RTCPeerConnection.onconnectionstatechange erstellen:
peerConnection.onconnectionstatechange = (ev) => {
switch (peerConnection.connectionState) {
case "new":
case "connecting":
setOnlineStatus("Connecting…");
break;
// …
default:
setOnlineStatus("Unknown");
break;
}
};
Spezifikationen
| Specification |
|---|
| WebRTC: Real-Time Communication in Browsers> # dom-rtcpeerconnection-onconnectionstatechange> |
Browser-Kompatibilität
Loading…