Сейчас август 2020 года, и я новичок в WebRT C. Я выполнил инструкции, найденные здесь , и успешно выполнил как видео, так и аудио вызовы с некоторыми дополнениями к коду.
У меня проблемы с изменением этого кода, чтобы сделать его одним- вызовы ко многим или даже вызовы многие ко многим - только видео и аудио.
То, с чего я начал, - это заменить [0] на [i]:
function handleTrackEvent(event) {
document.getElementById("received_video").srcObject = event.streams[0];
document.getElementById("hangup-button").disabled = false;
}
function handleTrackEvent(event, i) {
document.getElementById("received_video").srcObject = event.streams[i];
document.getElementById("hangup-button").disabled = false;
}
и запустите i по адресу:
function handleUserlistMsg(msg) {
var i = 0;
var listElem = document.querySelector(".userlistbox");
while (listElem.firstChild) {
listElem.removeChild(listElem.firstChild);
}
msg.users.forEach(function(username) {
var item = document.createElement("li");
item.appendChild(document.createTextNode(username));
item.addEventListener("click", invite(event, i), false);
listElem.appendChild(item);
i++;
});
}
Проблема, с которой я столкнулся в журнале консоли:
[10:00:17 AM] Error InvalidStateError: Failed to execute 'setRemoteDescription'
on 'RTCPeerConnection': Failed to set remote answer sdp: Called in wrong state: kStable
, что мне говорит, что у меня уже есть соединение с одноранговым узлом
Итак, как мне установить несколько соединений, когда один вызывающий абонент инициирует множество участников?