RTCIceTransport: statechange Ereignis
Baseline
2024
Neu verfügbar
Seit April 2024 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.
Ein statechange Ereignis tritt auf, wenn der RTCIceTransport den Zustand ändert. Der state kann verwendet werden, um festzustellen, wie weit der Prozess des Untersuchens, Überprüfens und Auswählens eines gültigen Kandidatenpaares fortgeschritten ist, bevor die beiden Peers für WebRTC-Kommunikation erfolgreich verbunden werden.
Dieses Ereignis kann nicht abgebrochen werden und wird nicht propagiert.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("statechange", (event) => { })
onstatechange = (event) => { }
Ereignistyp
Ein generisches Event.
Beispiele
Angenommen, Sie haben eine RTCPeerConnection, pc, erstellt, beinhaltet der folgende Code einen Ereignishandler, der eine Funktion namens handleFailure() aufruft, falls der ICE-Transport in einen Fehlerzustand übergeht.
let iceTransport = pc.getSenders()[0].transport.iceTransport;
iceTransport.addEventListener("statechange", (ev) => {
if (iceTransport.state === "failed") {
handleFailure(pc);
}
});
Der gleiche Code, unter Verwendung der onstatechange Ereignis-Handler-Eigenschaft, sieht folgendermaßen aus:
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> |