From 354ad184f9903c3a88d5341c6801f16175bf6dfe Mon Sep 17 00:00:00 2001 From: liyong <liyong@3mang.com> Date: Mon, 18 Sep 2017 10:33:13 +0800 Subject: [PATCH] 修改webRtc推流失败和拉流失败\设备切换的处理 --- src/EngineEntrance.js | 2 +- src/apes/WebRtcApe.js | 21 ++++++++++++--------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/EngineEntrance.js b/src/EngineEntrance.js index ab6a6ff..cc5a610 100644 --- a/src/EngineEntrance.js +++ b/src/EngineEntrance.js @@ -62,7 +62,7 @@ export default class MessageEntrance extends Emiter { constructor() { super(); //sdk 信息 - GlobalConfig.sdkVersion = "v2.8.7.20170916"; + GlobalConfig.sdkVersion = "v2.8.8.20170917"; loger.warn("sdkVersion:" + GlobalConfig.sdkVersion); //设置 diff --git a/src/apes/WebRtcApe.js b/src/apes/WebRtcApe.js index 34e5212..b30766c 100644 --- a/src/apes/WebRtcApe.js +++ b/src/apes/WebRtcApe.js @@ -195,15 +195,20 @@ class WebRtcApe extends Emiter { loger.log("添加一个远程视频流: " + _stream.getId(),new Date().getTime()); this.client.subscribe(_stream, (err)=> { loger.warn("添加一个远程视频流->失败", err); - clearTimeout(this.reAddRemoteStreamDelay); + //clearTimeout(this.reAddRemoteStreamDelay); if(err=="INVALID_REMOTE_STREAM"){ //流已经无效,不需要再重连 + loger.warn("流已经无效->不需要再重连", err); return; } - this.reAddRemoteStreamDelay=setTimeout(()=>{ - loger.warn("连接远程的流失败->尝试重新连接"); - this.reAddRemoteStream(_stream); - },1400); + if(err=="PEERCONNECTION_FAILED"){ + //this.reAddRemoteStreamDelay=setTimeout(()=>{ + setTimeout(()=>{ + loger.warn("连接远程的流失败->尝试重新连接"); + this.reAddRemoteStream(_stream); + },1400); + } + }); } @@ -234,7 +239,7 @@ class WebRtcApe extends Emiter { this.rePublishDelay=setTimeout(()=>{ this.publish(); },1200); - this.publish(); + //this.publish(); }else { this.openLoaclStream(); } @@ -318,7 +323,7 @@ class WebRtcApe extends Emiter { GlobalConfig.openCamera =0; GlobalConfig.openMicrophones =0; this.isPublish=false; - this.clearLocalView(); + this.unpublish(); }); this.client.on('stream-published', (evt)=> { loger.log("webRtc->推流成功->",new Date().getTime()); @@ -354,8 +359,6 @@ class WebRtcApe extends Emiter { loger.log("webRtc->停止推流->失败" + err); }); this.localStream.close(); - //$('#localVideoBox_' + this.uid).remove(); - //$("#videoOwnerName_"+this.uid).remove(); this.clearLocalView(); this.isPublish=false; GlobalConfig.openCamera =0; -- libgit2 0.24.0