Tokbox: позиция видео смещается, когда один из пользователей обновляет страницу

С моим кодом я смог настроить видеоконференцию между двумя пользователями. Проблема заключается в следующем: если один пользователь обновляет страницу, другой пользователь получает видео внизу страницы, а не в div, выделенном для подписанного видео. Причина этого в том, что когда один пользователь обновляет страницу, для второго пользователя вызывается только событие streamcreated, и в это время div становится нулевым. У меня есть следующий код при загрузке страницы:

       var session = OT.initSession(apiKey, sessionId)
            .connect(token, function(error) {

                var publisher = OT.initPublisher('divPublish');
                session.publish(publisher);
                console.log("Publishing to session1");
            });


                var session2 = OT.initSession(apiKey, sessionId2);
                session2.connect(token2, function(error) {
                    if (error) {
                        console.log("Error connecting: ", error.name, error.message);
                    } else {
                        console.log("Connected to the session2.");
                    }
                });

                session2.on("streamCreated", function(event) {
                    divSubscribe = document.getElementById('divSubscribe'); // This is coming null
                    session2.subscribe(event.stream, 'divSubscribe');
                    console.log("Subscribing to session2");
                });

1 ответ

По умолчанию подписчики и издатели заменяют указанный вами элемент. Я думаю, что вы хотите, чтобы вставить подписчиков в "divSubscribe" вместо того, чтобы заменить его. Вы можете сделать это, установив свойство insertMode в методе подписки 'append' следующим образом:

session2.subscribe(event.stream, 'divSubscribe', {insertMode: 'append'});
Другие вопросы по тегам