Экран совместного использования OpenTok между ведущим и подписчиком на 2 разных страницах - PullRequest
0 голосов
/ 07 мая 2020

Попытка создать PO C с помощью библиотеки OpenTok JS.

Я разрабатываю 2 веб-страницы, одна для докладчика, а другая для участника.

В настоящее время я использую iframe для видеочата через OpenTok / tokbox.com, поэтому нет проблем с видео / аудио. страница участника.

Все примеры, которые я могу найти на https://tokbox.com/developer, относятся к видеочату, а не к демонстрации экрана.

Я могу поделиться экраном на странице докладчика, используя приведенный ниже код, но я не уверен, как я могу заставить участника «присоединиться» или «просмотреть» общий экран. Обратите внимание, что докладчик может или не может предоставить общий доступ к экрану, поэтому страница участника должна каким-то образом реагировать на общий экран.

Ниже мой HTML на странице докладчика

<div id="videos">
    <div id="subscriber"></div>
    <div id="publisher"></div>
</div>

И это это мое приложение. js файл

var apiKey = API_KEY;
var sessionId = SESSION_ID;
var token = TOKEN;

function handleError(error) {
    if (error) {
        alert(error.message);
    }
}

initializeSession();

function initializeSession() {
    var session = OT.initSession(apiKey, sessionId);

    // Subscribe to a newly created stream.
    session.on('streamCreated', function (event) {
        session.subscribe(event.stream, 'subscriber', {
            insertMode: 'append',
            width: '100%',
            height: '100%'
        }, handleError);
    });

    // Create a publisher.
    var publishOptions = {};
    publishOptions.maxResolution = { width: 1920, height: 1080 };
    publishOptions.videoSource = 'screen';
    publishOptions.insertMode = 'append';
    publishOptions.width = '100%';
    publishOptions.height = '100%';
    var publisher = OT.initPublisher('publisher', publishOptions, handleError);

    // Connect to the session.
    session.connect(token, function (error) {
        // If the connection is successful, publish to the session.
        if (error) {
            handleError(error);
        } else {
            session.publish(publisher, handleError);
        }
    });
}

Я следил за этим руководством, которое предназначено для видеочата: https://tokbox.com/developer/tutorials/web/basic-video-chat/#authentication

Как запустить общий доступ к экрану на странице A, а страница B увидит это?

...