как закрыть канал данных webrtc?

Я не могу использовать следующие методы.

Потому что я использую только канал данных (не использую getUserMedia)

<script>
    peerConnection.removeStream(remoteStream)
    remoteVideo.onerror = null;
    remoteVideo.pause();
    remoteVideo.src = undefined;
    remoteStream.stop();
    remoteStream.onended = null;
    remoteStream = null;

    peerConnection.removeStream(localStream)

    localVideo.onerror = null;
    localVideo.pause();
    localVideo.src = undefined;
    localStream.stop();
    localStream.onended = null;
    localStream = null;
</script>

Есть ли способ закрыть канал данных?


person kyunghwanjung    schedule 20.07.2015    source источник
comment
Можете ли вы уточнить, что именно не так? Если вы не используете медиа, а только каналы данных, почему вы пытаетесь удалить потоки и приостановить видеоэлементы?   -  person xdumaine    schedule 20.07.2015


Ответы (1)


Чтобы закрыть RTCDataChannel, вы вызываете close() — это можно назвать также на RTCPeerConnection, что закроет все каналы данных, созданные на одноранговом соединении.

var pc = new RTCPeerConnection();
var dc = pc.createDataChannel("my channel");
var dc2 = pc.createDataChannel("my other channel");

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

dc2.onclose = function () {
  console.log("dc2 close");
};

dc.close();
pc.close();
person xdumaine    schedule 20.07.2015