RTCMultiConnection, не удается настроить и подключиться к комнатам.
Я пытаюсь проверить соединение данных в режиме реального времени между узлами, используя RTCMultiConnection.
Настройка сеанса / комнаты, кажется, работает, но после того, как это было сделано, одноранговые пользователи не могут присоединиться. Если я снова запускаю эту функцию из другого браузера, когда сеанс открыт, он по-прежнему говорит, что комната не существует, и открывает новую, а не присоединяется.
Идентификаторы канала и сеанса идентичны, так почему же узел не находит сеанс?
function makeOrJoinRoom(id){
channelid = 'channel'+id;
roomid = 'room'+id;
sessionMedia = {audio: false, video: false, data: true};
var connection = new RTCMultiConnection(channelid);
connection.socketURL = 'https://rtcmulticonnection.herokuapp.com:443/';
connection.checkPresence( roomid, function(roomExists, roomid) {
alert('checking presence...');
alert('Room exists='+roomExists);
if(roomExists) {
alert('I am a participant');
connection.join({
sessionid: roomid,
session: sessionMedia
});
} else {
alert('I am the moderator');
connection.session = sessionMedia;
connection.open({
sessionid: roomid
});
}
});
}
1 ответ
Решение
Пожалуйста, замените вашу функцию следующим:
function makeOrJoinRoom(roomid) {
var connection = new RTCMultiConnection();
connection.session = {
data: true
};
connection.socketURL = 'https://rtcmulticonnection.herokuapp.com:443/';
alert('checking presence...');
connection.checkPresence(roomid, function(roomExist, roomid) {
alert('Room exists=' + roomExist);
if (roomExist === true) {
alert('I am a participant');
connection.join(roomid);
} else {
alert('I am the moderator');
connection.open(roomid);
}
});
connection.onopen = function(event) {
alert('WebRTC chat opened!');
};
}
// call above function like this
makeOrJoinRoom('your-unique-room-id');