RTCPeerConnection: close() Methode

Baseline Widely available

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

Die close() Methode des RTCPeerConnection Interface schließt die aktuelle Peer-Verbindung.

Das Aufrufen dieser Methode beendet den ICE-Agent von RTCPeerConnection, beendet jegliche laufende ICE-Verarbeitung und alle aktiven Streams. Dies gibt auch alle Ressourcen frei, die vom ICE-Agent genutzt werden, einschließlich TURN-Berechtigungen. Alle RTCRtpSender Objekte gelten als gestoppt, sobald dies zurückkehrt (sie können sich noch im Prozess des Stoppens befinden, aber sie gelten in jeder Hinsicht als gestoppt).

Sobald diese Methode zurückkehrt, ist der Signalisierungszustand, wie er von RTCPeerConnection.signalingState zurückgegeben wird, closed.

Stellen Sie sicher, dass Sie alle Referenzen zur vorherigen RTCPeerConnection löschen, bevor Sie versuchen, eine neue zu erstellen, die sich mit dem gleichen entfernten Peer verbindet, da dies Fehler verursachen könnte, die je nach Browser variieren.

Syntax

js
close()

Parameter

Keine.

Rückgabewert

Keiner (undefined).

Beispiel

js
const pc = new RTCPeerConnection();
const dc = pc.createDataChannel("my channel");

dc.onmessage = (event) => {
  console.log(`received: ${event.data}`);
  pc.close(); // We decided to close after the first received message
};

dc.onopen = () => {
  console.log("datachannel open");
};

dc.onclose = () => {
  console.log("datachannel close");
};

Spezifikationen

Specification
WebRTC: Real-Time Communication in Browsers
# dom-rtcpeerconnection-close

Browser-Kompatibilität

Siehe auch