【发布时间】:2015-07-29 21:09:19
【问题描述】:
我正在尝试使用 webrtc 数据通道设置文本聊天。 我的网络是一个私有网络,所以我不能使用任何依赖项或框架,如 peerjs 或类似的。 我在 java play 服务器上发布了我的项目,所以 我有一个 webrtsPeerConnection 对象,用户可以选择启动连接或接受来自其他人的连接。 问题:数据通道已为发起呼叫的用户设置并处于活动状态。 但是对于加入呼叫数据通道的用户,不要激活并且 onDataChannel 事件永远不会触发。 有什么建议吗??
提前致谢!
我的代码 java 脚本:
// init peer connection and data channel objects
var pc = new RTCpeerConnection(null,null);
var DC,DCnam;
function InitConnection(){
//created RTCpeerConnection
createDataChannel();
pc.createOffer(function(desc){
pc.setLocalDescripyion(desc,function(){},function(){})
enter code here
})
}
//create data channel
function createDataChannel(){
DC = pc.createDataChannel(DCname,{
reliable:true
});
}
//when user A call user B set remote description and create answer
function CheckCalls(){
&http.get("/checkCslls").success(function(data){
if(data[0])
{
//get offer and offerer
offerer = data[0].offerer;
pc.odataChannel function(e){
console.log(e);
}
pc.setRemoteDescription(new sessionDescription()data[0].offer));
pc.createAnswer(function(answerDesc){
pc.setLocalDescripyion(answerDesc);
})
}
})
}
//when user B send answer
(onDataChannel event fires on user A object).
function checkAnswers(){
$http.get("/checkAnswers").success(function(data){
if(data.answer){
pc.setRemoteDescription(new sessionDescription(data.answer));
}
})
【问题讨论】:
-
代码有点混乱,我也没有看到任何冰候选人的交流。
-
这个答案可能会有所帮助:stackoverflow.com/questions/43788872/…
标签: javascript webrtc