WebRTC видеоконференции (многие ко многим)

Я собираюсь построить систему видеоконференцсвязи с использованием webRTC + socket.io + node.js, поэтому я прочитал эту книгу как отправную точку «Связь в реальном времени с webRTC» от ​​Саймона Пьетро Романо, я уже закончил ее читать, я собираюсь запустить эта система через локальную сеть 100 Мбит / с, поэтому я собираюсь использовать топологию ячеистой сети, поскольку пропускная способность здесь не является проблемой, я не хочу на этом фокусироваться, у меня просто простой вопрос о работе со многими пользователями, особенно об использовании эти функции:

var pc // PeerConnection Object

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

Я знаю, что должен установить одноранговое соединение на каждом одноранговом узле, но давайте предположим, что у меня есть 3 пользователя: A, B и C.

A будет инициатором комнаты, затем B присоединится к комнате, здесь A отправляет предложение B и получает ответ от B, A setRemoteDescription (answerB) и B setRemoteDescription (offerA), но когда C присоединяется к комнате, A и B будут его инициаторами, поэтому они оба будут отправлять предложения C, а C отправит им ответы, вот мое замешательство:

Когда C впервые получает предложение от A, это C setRemoteDescription (offerA), но при получении предложения от B это C setRemoteDescription (offerB), я устанавливаю новое значение здесь и теряю предыдущее предложение от A, является ли эта процедура просто временно ?, C больше не понадобится предложение A? Я знаю, что этот файл sdp просто содержит информацию о браузере. У меня такое же сомнение в onaddstream: эта процедура автоматически перехватывает поток от одного узла, а затем от другого узла ?, Первый перехватывает поток B и второй от C, когда этот последний присоединился к комнате ?, Потеряет ли A поток B при перехвате C ?.

С другой стороны, addIceCandidate просто добавляет удаленных кандидатов к каждому узлу, поэтому у локального узла есть маршруты удаленных узлов, он никогда не теряет маршруты удаленных узлов, я думаю, я прав?

Я нашел исходный код о видеоконференцсвязи webRTC и увидел, что onaddstream и setRemoteDescription похожи на временные функции, после того, как установлено соединение между узлами, они больше не нужны, я не знаю, возможно, я ошибаюсь.

Заранее спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос