выдача пустого объекта ошибки в localTracksPromise.then ().

ользую программируемое видео Twilio JS SDK и имею некоторые проблемы. Я взял их пример кода и смог создать комнату и подключиться к ней, которая запускает мою камеру / микрофон, но ни одно из событий не срабатывает, например, привязка видео к DOM, показ событий и т. Д.

Это часть приложения Cordova, построенного на Angular 1 и Ionic Framework. Вот код в моем контроллере:

angular.module('smartlab.controllers').controller('SupportVideoCtrl', ['$scope', '$http', function($scope, $http) {

    // include Twilio Video library
    const Video = Twilio.Video;

    // call our "cross origin friendly" smartlab cloud server to get Twilio token (they can only be generated server-side)

    $http.get('TOKEN_URL', function(data) {

    }).then(function(data) {
        console.log(data);
        console.log("Token = " + data.data.token);

        Video.connect(data.data.token, { name: 'Support' }).then(room => {
            console.log('Connected to Room "%s"', room.name);

            // None of the events below fire
            room.participants.forEach(participantConnected);  
            room.on('participantConnected', participantConnected);
            room.on('participantDisconnected', participantDisconnected);
            room.once('disconnected', error => room.participants.forEach(participantDisconnected));

        });
    });

    function participantConnected(participant) {
        console.log('Participant "%s" connected', participant.identity);

        const div = document.createElement('div');
        div.id = participant.sid;
        div.innerText = participant.identity;

        participant.on('trackAdded', track => trackAdded(div, track));
        participant.tracks.forEach(track => trackAdded(div, track));
        participant.on('trackRemoved', trackRemoved);

        console.log("Participant Connected");
        console.dir(div);

        document.body.appendChild(div);
    }

    function participantDisconnected(participant) {
        console.log('Participant "%s" disconnected', participant.identity);

        participant.tracks.forEach(trackRemoved);

        document.getElementById(participant.sid).remove();
    }

    function trackAdded(div, track) {
        console.log("Track added");
        console.dir(div);
        console.dir(track);
        div.appendChild(track.attach());
    }

    function trackRemoved(track) {
        track.detach().forEach(element => element.remove());
    }

}]);

Кто-нибудь использовал эту библиотеку, и у вас есть какой-то пример кода, из которого можно извлечь или увидеть что-то не так с кодом выше? Я проверил их пример приложения NodeJS, но он сильно отличается от моей реализации, поэтому он не очень полезен. Спасибо!

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

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