RTCIceTransport: statechange Ereignis
Baseline 2024Newly available
Since April 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Ein statechange
-Ereignis tritt auf, wenn sich der Zustand des RTCIceTransport
ändert. Der state
kann verwendet werden, um festzustellen, wie weit der Prozess des Prüfens, Verifizierens und Auswählens eines gültigen Kandidatenpaars fortgeschritten ist, bevor die beiden Peers erfolgreich für WebRTC-Kommunikation verbunden werden.
Dieses Ereignis kann nicht abgebrochen werden und löst keine Bubbling-Effekte aus.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
oder setzen Sie eine Event-Handler-Eigenschaft.
addEventListener("statechange", (event) => { })
onstatechange = (event) => { }
Ereignistyp
Ein generisches Event
.
Beispiele
Gegeben einer RTCPeerConnection
, pc
, erstellt der folgende Code einen Ereignishandler, der eine Funktion namens handleFailure()
aufruft, wenn der ICE-Transport in einen Fehlerzustand gerät.
let iceTransport = pc.getSenders()[0].transport.iceTransport;
iceTransport.addEventListener(
"statechange",
(ev) => {
if (iceTransport.state === "failed") {
handleFailure(pc);
}
},
false,
);
Der gleiche Code unter Verwendung der onstatechange
-Ereignishandler-Eigenschaft sieht folgendermaßen aus:
let iceTransport = pc.getSenders()[0].transport.iceTransport;
iceTransport.onstatechange = (ev) => {
if (iceTransport.state === "failed") {
handleFailure(pc);
}
};
Spezifikationen
Specification |
---|
WebRTC: Real-Time Communication in Browsers # event-icetransport-statechange |
WebRTC: Real-Time Communication in Browsers # dom-rtcicetransport-onstatechange |