The close
event is sent to the onclose
event handler on an RTCDataChannel
instance when the data transport for the data channel has closed. Before any further data can be transferred using RTCDataChannel
, a new 'RTCDataChannel' instance must be created.
This event is not cancelable and does not bubble.
Use the event name in methods like addEventListener()
, or set an event handler property.
addEventListener("close", (event) => {});
onclose = (event) => {};
This example sets up a handler for the close
event for the RTCDataChannel
named dc
; its responsibility in this example is to update user interface elements to reflect that there is no longer an ongoing call, and to allow a new call to be started.
dc.addEventListener(
"close",
(ev) => {
messageInputBox.disabled = true;
sendButton.disabled = true;
connectButton.disabled = false;
disconnectButton.disabled = true;
},
false,
);
All this code does in response to receiving the close
event is to disable an input box and its "Send" button, and to enable the button used to start a call (while disabling the one that ends a call).
You can also use the onclose
event handler property to set a handler for close
events:
dc.onclose = (ev) => {
messageInputBox.disabled = true;
sendButton.disabled = true;
connectButton.disabled = false;
disconnectButton.disabled = true;
};