RTCDataChannel

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.

Experimental: Esta é uma tecnologia experimental
Verifique a tabela de compatibilidade entre Navegadores cuidadosamente antes de usar essa funcionalidade em produção.

A interface RTCDataChannel representa um canal de rede que pode ser usado para transferências bidirecionais de dados arbitrários de ponto a ponto. Todo canal de dados está associado a RTCPeerConnection, e cada conexão de pares pode ter até um máximo teórico de 65,534 canais de dados (o limite real pode variar de navegador para navegador).

Para criar um canal de dados e pedir a um ponto remoto para se juntar a você, chame os metodos RTCPeerConnection's createDataChannel(). O interlocutor que está sendo convidado a trocar dados recebe um evento unsupported templ: event (que possui o tipo RTCDataChannelEvent) para informá-lo de que o canal de dados foi adicionado à conexão.

Exemplo

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

dc.onmessage = function (event) {
  console.log("received: " + event.data);
};

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

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

Especificações

Specification
WebRTC: Real-Time Communication in Browsers
# rtcdatachannel

Compatibilidade com navegadores

BCD tables only load in the browser

Veja também