Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

RTCIceTransport: statechange-Ereignis

Baseline
Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit April 2024 browserübergreifend verfügbar.

Ein statechange-Ereignis tritt auf, wenn sich der Zustand eines RTCIceTransport ändert. Anhand von state lässt sich feststellen, wie weit das Prüfen, Verifizieren und Auswählen eines gültigen Kandidatenpaars fortgeschritten ist, bevor die beiden Peers für die WebRTC-Kommunikation erfolgreich verbunden werden.

Dieses Ereignis kann nicht abgebrochen werden und wird nicht durch die DOM-Hierarchie weitergereicht.

Syntax

Verwenden Sie den Ereignisnamen in addEventListener():

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

Alternativ können Sie ihn der Event-Handler-Eigenschaft der Schnittstelle zuweisen:

js
onstatechange = (event) => { }

Ereignistyp

Ein generisches Event.

Beispiele

Für eine RTCPeerConnection namens pc erstellt der folgende Code einen Event-Handler, der die Funktion handleFailure() aufruft, wenn der ICE-Transport in einen Fehlerzustand übergeht.

js
let iceTransport = pc.getSenders()[0].transport.iceTransport;

iceTransport.addEventListener("statechange", (ev) => {
  if (iceTransport.state === "failed") {
    handleFailure(pc);
  }
});

Derselbe Code sieht mit der Event-Handler-Eigenschaft onstatechange wie folgt aus (beachten Sie jedoch, dass dadurch gegebenenfalls andere über onstatechange hinzugefügte Event-Listener ersetzt werden):

js
let iceTransport = pc.getSenders()[0].transport.iceTransport;

iceTransport.onstatechange = (ev) => {
  if (iceTransport.state === "failed") {
    handleFailure(pc);
  }
};

Spezifikationen

Spezifikation
WebRTC: Real-Time Communication in Browsers
# event-icetransport-statechange
WebRTC: Real-Time Communication in Browsers
# dom-rtcicetransport-onstatechange

Browser-Kompatibilität

Siehe auch

Verwandte RTCIceTransport-Ereignisse

Verwandte RTCPeerConnection-Ereignisse