Session OpenTok建议如何开始构建应用程序
我正在尝试实现一个基于opentok的应用程序。 我心目中的项目是一个应用程序,一些用户,每个用户都可以通过他们的应用程序电话与运营商通话,运营商必须呆在电脑上。 只需应用程序呼叫接线员并在服务器上记录呼叫即可。 我认为我必须创建两个应用程序:一个是从手机拨打电话并将其连接到会话,另一个是已经在计算机上打开会话并记录通话的应用程序。还是不? 或者,会话已经在操作员计算机上打开,用户可以通过电话连接会话? 如何创建只有一个令牌ID的一对一视频聊天?如何在每次有人呼叫接线员时创建新呼叫? 如果有人对如何开始有建议、指导或提示,请回答。。。。 提前谢谢 我已经在index.js中创建了基于教程的cordova应用程序Session OpenTok建议如何开始构建应用程序,session,videochat,opentok,Session,Videochat,Opentok,我正在尝试实现一个基于opentok的应用程序。 我心目中的项目是一个应用程序,一些用户,每个用户都可以通过他们的应用程序电话与运营商通话,运营商必须呆在电脑上。 只需应用程序呼叫接线员并在服务器上记录呼叫即可。 我认为我必须创建两个应用程序:一个是从手机拨打电话并将其连接到会话,另一个是已经在计算机上打开会话并记录通话的应用程序。还是不? 或者,会话已经在操作员计算机上打开,用户可以通过电话连接会话? 如何创建只有一个令牌ID的一对一视频聊天?如何在每次有人呼叫接线员时创建新呼叫? 如果有人对
onDeviceReady: function() {
// Getting OpenTokRTC's room's credentials.
// To use your own room in opentokrtc, change cordova to room of your choice
// -> ie: https://opentokrtc.com/myroom.json
// To use your own credentials
// replace data.apiKey, data.sid, and data.token with your own
var apiKey = "xxx";
var sessionId = "xxxx";
var token = "xxx";
// Very simple OpenTok Code for group video chat
var publisher = TB.initPublisher(apiKey,'myPublisherDiv');
var session = TB.initSession( apiKey, sessionId );
session.on({
'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, {subscribeToAudio: false} );
}
});
session.connect(token, function(){
session.publish( publisher );
});
},
// Update DOM on a Received Event
receivedEvent: function(id) {
}
在我的网页应用程序中,我编写了来自opentok教程的代码
<div id="myPublisherDiv"></div>
<script type="text/javascript">
// Initialize API key, session, and token...
// Think of a session as a room, and a token as the key to get in to the room
// Sessions and tokens are generated on your server and passed down to the client
var apiKey = "xxx";
var sessionId = "xxx";
var token = "xxx";
var publisher = TB.initPublisher(apiKey,'myPublisherDiv');
var session = TB.initSession(sessionId);
session.addEventListener('sessionConnected', sessionConnectedHandler);
session.connect(apiKey, token);
function sessionConnectedHandler(event) {
var publisher = TB.initPublisher(apiKey, 'myPublisherDiv');
session.publish(publisher);
}
</script>
我的问题是:如何在网页应用程序中使用从iphone获取的视频流构建第二个div?
另一件让我很困惑的事情是:在任何情况下,我都必须用SDK设置我的服务器?你可以让每个人都连接到同一个会话。获取connectionCreated事件时,将其存储在对象中。轮到某人时,向他发出信号,让他开始发布,然后订阅他的流: 例如,在操作员一侧:
var connections = {};
session.on('connectionCreated', function(event){
connections[event.connection.connectionId] = event.connection.connectionId;
// Create a button for that stream
});
当操作员单击要连接的流时
// retrieve streamId from button, disconnect from other streams
session.signal(
{
type: "publish",
data: "operator",
to: connections[connectionIdFromButton]
},
function(){...}
);
当用户收到信号时,开始发布
session.on("signal:publish", function(event){
session.publish(...)
});
嗯,理论上看起来很简单,但你能更具体一点吗?比如一行代码?现在我可以在我的网站上用javascript代码将我的设备连接到一个页面,但我只能在我的设备上看到这两个视频,而不能在我的网页上看到。。。如果你想我张贴我的代码如果你更新你的问题,包括样本代码,我可以给你一些建议。看看你做错了什么。