Videoconferencia WebRTC (muchos a muchos)

Estoy a punto de construir un sistema de videoconferencia usando webRTC + socket.io + node.js, así que he leído este libro como punto de partida "Comunicaciones en tiempo real con webRTC" por Simon Pietro Romano, ya terminé de leerlo, voy a ejecutar este sistema a través de una red local de 100 Mbps, por lo que voy a usar la topología de la red de malla ya que el ancho de banda no es un problema aquí, no quiero centrarme en esto, solo tengo una pregunta simple sobre cómo trabajar con muchos usuarios, específicamente sobre el uso estas funciones:

var pc // PeerConnection Object

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

Sé que tengo que establecer una conexión punto a punto en cada punto, pero supongamos que tengo 3 usuarios: A, B y C.

A va a ser el iniciador de la sala, luego B se une a la sala, aquí A envía una oferta a B y recibe una respuesta de B, A setRemoteDescription (respuestaB) y B setRemoteDescription (ofertaA), pero cuando C se une a la sala, A y B serán sus iniciadores, por lo que ambos enviarán ofertas a C y C les enviará respuestas, aquí está mi confusión:

Cuando C recibe por primera vez la oferta de A, este es C setRemoteDescription (offerA), pero cuando recibo una oferta de B, este es C setRemoteDescription (offerB), estoy estableciendo un nuevo valor aquí y perdiendo la oferta anterior de A, este procedimiento es solo temporal ?, ¿C no va a necesitar más la oferta A ?, sé que este archivo sdp solo contiene información de medios del navegador web. Tengo la misma duda con onaddstream: ¿este procedimiento capta automáticamente la secuencia de un par y luego de otro par ?, ¿una primera captura de la secuencia de B y la segunda de C cuando esta última se unió a la sala? ¿A pierde la secuencia de B al atrapar a C ?.

Por otro lado, addIceCandidate solo agrega candidatos remotos a cada par, por lo que un par local tiene rutas remotas de pares, nunca pierde las rutas remotas de pares, creo, ¿estoy en lo cierto?

Encontré el código fuente sobre videoconferencia webRTC y vi que onaddstream y setRemoteDescription son como funciones temporales, una vez que se establece la conexión entre pares, ya no son necesarias, no lo sé, tal vez me equivoque.

Gracias por adelantado.

Respuestas a la pregunta(1)

Su respuesta a la pregunta