我制作了一个小型测试应用程序,用于测试 cordova 的 phonertc 插件。
但是我遇到了一些问题。2个ipad在app上互相通话时只有被叫方可以看到来电者,来电者看不到被叫方,但是声音是双向的,所以视频流有问题。
如果我从一个浏览器到另一个浏览器测试应用程序,它可以正常工作,并且当浏览器调用平板电脑时,它也可以工作。但不是当平板电脑调用浏览器时,那么与平板电脑到平板电脑的故事相同。
这是我处理phoneRTC插件的片段。
messageHub.client.signal = function (message) {
session.receiveMessage(data);
}
messageHub.client.callIncomming = function (user) {
if(confirm(user + " is calling you?"))
{
StartSession(false, user);
window.setTimeout(function(){
messageHub.server.acceptCall(user);
},1500);
}
else {
messageHub.server.rejectCall(user);
}
}
messageHub.client.callAccepted = function (user) {
StartSession(true, user);
}
messageHub.client.callRejected = function (user) {
alert(user + " didn't want to talk to you.");
}
function StartSession(initiator, user){
session = new webRTC.Session(config);
session.on('sendMessage', function(data){
messageHub.server.signal(user, JSON.stringify(data));
});
webRTC.setVideoView({
container: document.getElementById('videoContainer'),
local: {
position: [512, 288],
size: [256, 144]
}
});
session.call();
}