Videoconferência WebRTC (muitos para muitos)

Estou prestes a construir um sistema de videoconferência usando o webRTC + socket.io + node.js, por isso li este livro como ponto de partida "Comunicação em tempo real com o webRTC" por Simon Pietro Romano, já terminei de ler, vou rodar esse sistema em uma rede local de 100 Mbps, então vou usar a topologia de rede em malha, já que a largura de banda não é um problema aqui, não quero me concentrar nisso, apenas tenho uma pergunta simples sobre como trabalhar com muitos usuários, especificamente sobre como usar estas funções:

var pc // PeerConnection Object

pc.onaddstream = ...//for receiving stream from remote party
pc.setRemoteDescription()...//for setting .sdp file from remote party

Eu sei que tenho que fazer uma conexão ponto a ponto em cada ponto, mas vamos supor que eu tenha 3 usuários: A, B e C.

A será o iniciador da sala, então B entra na sala, aqui A envia uma oferta para B e recebe uma resposta de B, A setRemoteDescription (answerB) e B setRemoteDescription (offerA), mas quando C entra na sala, A e B serão seus iniciadores, portanto, os dois enviarão ofertas para C e C enviará respostas para eles, eis a minha confusão:

Quando C recebe a oferta de A pela primeira vez, este é C setRemoteDescription (offerA), mas ao receber a oferta de B, é C setRemoteDescription (offerB), estou configurando um novo valor aqui e perdendo a oferta anterior de A, esse procedimento é apenas temporário ?, C não precisará mais da oferta A ?, eu sei que esse arquivo sdp contém apenas informações de mídia do navegador da web. Eu tenho a mesma dúvida com onaddstream, este procedimento captura automaticamente o fluxo de um ponto e depois de outro?? Um primeiro captura o fluxo de B e o segundo de C quando este último entrou na sala ?, A perde o fluxo de B ao capturar C? ?

Por outro lado, addIceCandidate apenas adiciona candidatos remotos a cada par, para que um par local tenha as rotas de pares remotos, nunca perde as rotas de pares remotos, penso: estou certo?

Encontrei o código-fonte sobre a videoconferência webRTC e vi que onaddstream e setRemoteDescription são como funções temporárias, uma vez que a conexão entre pares é definida, eles não são mais necessários, não sei, talvez eu esteja errado.

Desde já, obrigado.

questionAnswers(1)

yourAnswerToTheQuestion