我无法在我的cordova应用程序中看到OPENTOK订阅者视频

时间:2014-03-11 15:32:31

标签: javascript git cordova videochat opentok

我在cordova应用程序中安装了以下插件:

我能够将我的设备连接到同一会话,但我无法在每个设备屏幕上看到订阅者流。

我只能看到自己的流。

这是我的index.js的代码:

var app = {
// Application Constructor
initialize: function() {
this.bindEvents();
},

bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
},

onDeviceReady: function() {
app.receivedEvent('deviceready');
},

receivedEvent: function(id) {

var apiKey = "44684902";
var sessionId = "2_MX40NDY4NDkwMn5-VHVlIE1hciAxMSAwNzo0NjoxNyBQRFQgMjAxNH4wLjIyMDExNzk5fg";
var token =   "T1==cGFydG5lcl9pZD00NDY4NDkwMiZzZGtfdmVyc2lvbj10YnJ1YnktdGJyYi12MC45MS4yMDExLTAyLTE3JnNpZz04OGU4ODg4NTEyYTFhZTcyNWNkOGJiOWQ0ODhlMjA2ZWQ5NjI1YmJmOnJvbGU9cHVibGlzaGVyJnNlc3Npb25faWQ9Ml9NWDQwTkRZNE5Ea3dNbjUtVkhWbElFMWhjaUF4TVNBd056bzBOam94TnlCUVJGUWdNakF4Tkg0d0xqSXlNREV4TnprNWZnJmNyZWF0ZV90aW1lPTEzOTQ1NDkyMDAmbm9uY2U9MC4zNTU5Mzc3NzU5MDg3MjIyJmV4cGlyZV90aW1lPTEzOTQ1NzA3NjImY29ubmVjdGlvbl9kYXRhPQ==";

var publisher = TB.initPublisher(apiKey,'myPublisherDiv' );
var session = TB.initSession( sessionId );
session.on({
    'sessionConnected': function( event ){
      session.publish( publisher );
    },
    'streamCreated': function( event ){
        var div = document.createElement('div');
        div.setAttribute('id', 'stream' + event.stream.streamId);
        document.body.appendChild(div);
        session.subscribe( event.stream, div.id);
    }
  });
  session.connect( apiKey, token );

  }
  };

1 个答案:

答案 0 :(得分:0)

您的代码似乎有多个问题。首先,sessionIds中不应包含任何空格。其次,session.on方法没有右括号)

Cordova不擅长检测javascript错误,我强烈建议您使用weinre作为调试工具。

我在https://github.com/songz/cordova-plugin-opentok.git

的存储库的examples文件夹中添加了一些示例代码

您可以尝试将示例目录中的www文件夹替换为www文件夹。 repository's readme文件包含有关示例代码以及如何使其正常工作的说明。

希望有所帮助!