Como enviar e receber o fluxo de captura de desktop gerado por getUsermedia ()

Estou criando um aplicativo de compartilhamento de tela com o WebRTC + Socket.io e preso em um local. Conectado com dois navegadores usando WebRTC + Socket.io epode enviar texto

Estou recebendo apoio de codelab mas não é para stream (se a solução for baseada nesse link, será altamente útil)

Como posso enviar o fluxo getUserMedia ():

dataChannel.send(stream);

E receba o mesmo stream em channel.onmessage (): estou recebendo event.data porque '[object MediaStream]' não stream.

channel.onmessage = function(event){
  // unable to get correct stream
  // event.data is "[object MediaStream]"  in string
}

function createPeerConnection(isInitiator, config) {
    console.log('Creating Peer connection as initiator?', isInitiator, 'config:', config);
    peerConn = new RTCPeerConnection(config);

    // send any ice candidates to the other peer
    peerConn.onicecandidate = function (event) {
        console.log('onIceCandidate event:', event);
        if (event.candidate) {
            sendMessage({
                type: 'candidate',
                label: event.candidate.sdpMLineIndex,
                id: event.candidate.sdpMid,
                candidate: event.candidate.candidate
            });
        } else {
            console.log('End of candidates.');
        }
    };

    if (isInitiator) {
        console.log('Creating Data Channel');
        dataChannel = peerConn.createDataChannel("screen");
        onDataChannelCreated(dataChannel);

        console.log('Creating an offer');
        peerConn.createOffer(onLocalSessionCreated, logError);
    } else {
        peerConn.ondatachannel = function (event) {
            console.log('ondatachannel:', event.channel);
            dataChannel = event.channel;
            onDataChannelCreated(dataChannel);
        };
    }
}

Está funcionando bem para string ou json, ou seja, dataChannel.send ('Hello');

Criei uma página wiki para o mesmo: wiki

Por favor ajude

questionAnswers(1)

yourAnswerToTheQuestion