--- title: RTCDataChannel slug: Web/API/RTCDataChannel tags: - Compatibilidade - Navegadores - Referencia translation_of: Web/API/RTCDataChannel ---
{{APIRef("WebRTC")}}{{SeeCompatTable}}
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 {{domxref("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 {{domxref("RTCPeerConnection")}}'s {{domxref("RTCPeerConnection.createDataChannel", "createDataChannel()")}}. O interlocutor que está sendo convidado a trocar dados recebe um evento {{event("datachannel")}} (que possui o tipo {{domxref("RTCDataChannelEvent")}}) para informá-lo de que o canal de dados foi adicionado à conexão.
{{InterfaceOverview("WebRTC")}}
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ção | Status | Comentário |
---|---|---|
{{ SpecName('WebRTC 1.0', '#idl-def-RTCDataChannel', 'RTCDataChannel') }} | {{ Spec2('WebRTC 1.0') }} | Especificação inicial |
{{ CompatibilityTable }}
Característica | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Suporte básico | {{ CompatVersionUnknown }} | {{ CompatGeckoDesktop(22) }} [1] | {{ CompatNo }} | {{ CompatVersionUnknown }} | {{ CompatUnknown }} |
onbufferedamountlow |
{{CompatChrome(56)}} | {{ CompatNo }} | {{ CompatNo }} | {{CompatOpera(43)}} | {{ CompatNo }} |
Característica | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | {{CompatChrome(29)}} | {{CompatChrome(29)}} | {{ CompatGeckoMobile(22) }} [1] | {{ CompatNo }} | {{ CompatVersionUnknown }} | {{ CompatNo }} |
onbufferedamountlow |
{{CompatChrome(56)}} | {{CompatChrome(56)}} | {{ CompatNo }} | {{CompatUnknown}} | {{CompatOperaMobile(43)}} | {{CompatUnknown}} |
[1] A interface é chamada DataChannel e não RTCDataChannel no Firefox. No entanto, uma ligação foi implementada desde o Firefox 24 para que qualquer um dos nomes funcione.