我制作了一个小测试应用程序,测试了cordova的phonertc插件。
但我遇到了一些问题。当2个ipad从应用程序中相互呼叫时,只有被叫方可以看到呼叫者,呼叫者无法看到被叫方,但是声音通过两种方式,因此视频流存在问题。
如果我从浏览器到浏览器测试应用程序,它可以正常工作,当浏览器调用平板电脑时,它也可以正常工作。但是,当平板电脑呼叫浏览器时,平板电脑与平板电脑的故事相同。
以下是我处理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();
}
答案 0 :(得分:0)
我遇到了类似的问题,一旦我在videoContainer
的样式中设置了明确的高度和宽度就行了,就像这样:
<div id="videoContainer" style="width: 300px; height: 300px;"></div>