RTCPeerConnection: signalingstatechange-Ereignis

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

Ein signalingstatechange-Ereignis wird an eine RTCPeerConnection gesendet, um mitzuteilen, dass sich ihr Signalisierungsstatus, wie durch die signalingState-Eigenschaft angegeben, geändert hat.

Dieses Ereignis ist nicht abbrechbar und wird nicht nach oben weitergeleitet.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignishandler-Eigenschaft.

js
addEventListener("signalingstatechange", (event) => {});

onsignalingstatechange = (event) => {};

Ereignistyp

Ein generisches Event.

Beispiele

Angenommen, wir haben eine RTCPeerConnection, pc, und eine Funktion updateStatus(), die dem Benutzer Statusinformationen präsentiert. Dieser Code richtet einen Ereignishandler ein, um den Benutzer zu informieren, wenn der ICE-Verhandlungsprozess abgeschlossen ist.

js
pc.addEventListener(
  "signalingstatechange",
  (ev) => {
    switch (pc.signalingState) {
      case "stable":
        updateStatus("ICE negotiation complete");
        break;
    }
  },
  false,
);

Mit onsignalingstatechange sieht es so aus:

js
pc.onsignalingstatechange = (ev) => {
  switch (pc.signalingState) {
    case "stable":
      updateStatus("ICE negotiation complete");
      break;
  }
};

Spezifikationen

Specification
WebRTC: Real-Time Communication in Browsers
# event-signalingstatechange

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch