李勇

1.人员信息中增加当前的MS服务器字段;2.MS自动选点的时间修改为2分钟;3.增加外部手动切换MS服务器

此 diff 太大无法显示。
@@ -34,7 +34,7 @@ import mdetect from "mdetect"; @@ -34,7 +34,7 @@ import mdetect from "mdetect";
34 import UTF8 from 'utf-8'; 34 import UTF8 from 'utf-8';
35 35
36 let loger = Loger.getLoger('McuClient'); 36 let loger = Loger.getLoger('McuClient');
37 -let _sdkInfo = { "version": "v1.39.2.20170706", "author": "www.3mang.com" }; 37 +let _sdkInfo = { "version": "v1.40.0.20170706", "author": "www.3mang.com" };
38 38
39 //APE 39 //APE
40 let _sass; 40 let _sass;
@@ -72,8 +72,6 @@ export default class MessageEntrance extends Emiter { @@ -72,8 +72,6 @@ export default class MessageEntrance extends Emiter {
72 this.isGetFastestMcuCallback = false; //是否MCU选点结束 72 this.isGetFastestMcuCallback = false; //是否MCU选点结束
73 this.isGetFastestMsCallback = false; //是否MS选点结束 73 this.isGetFastestMsCallback = false; //是否MS选点结束
74 74
75 - GlobalConfig.setCurrentStatus(GlobalConfig.statusCode_0);  
76 -  
77 //全局的Error处理 75 //全局的Error处理
78 this.on(MessageTypes.MCU_ERROR, this._mcuErrorHandler.bind(this)); 76 this.on(MessageTypes.MCU_ERROR, this._mcuErrorHandler.bind(this));
79 77
@@ -160,7 +158,6 @@ export default class MessageEntrance extends Emiter { @@ -160,7 +158,6 @@ export default class MessageEntrance extends Emiter {
160 this.joinClass = this._joinClass.bind(this); 158 this.joinClass = this._joinClass.bind(this);
161 this.leaveClass = this._leaveClass.bind(this); 159 this.leaveClass = this._leaveClass.bind(this);
162 this.getMcuClientStatus = this._getMcuClientStatus.bind(this); 160 this.getMcuClientStatus = this._getMcuClientStatus.bind(this);
163 - //this.getClassDetail = this._getClassDetail;//停用  
164 this.getClassStatusInfo = this._getClassStatusInfo.bind(this); 161 this.getClassStatusInfo = this._getClassStatusInfo.bind(this);
165 this.sendStartClass = this._sendStartClass.bind(this); 162 this.sendStartClass = this._sendStartClass.bind(this);
166 this.silenceClass = this._silenceClass.bind(this); 163 this.silenceClass = this._silenceClass.bind(this);
@@ -253,7 +250,7 @@ export default class MessageEntrance extends Emiter { @@ -253,7 +250,7 @@ export default class MessageEntrance extends Emiter {
253 this.setDeviceInfo = this._setDeviceInfo.bind(this); //设置设备信息(麦克风,摄像头等等.....) 250 this.setDeviceInfo = this._setDeviceInfo.bind(this); //设置设备信息(麦克风,摄像头等等.....)
254 this.setMessageDelay = this._setMessageDelay.bind(this); //设置是否延迟消息 251 this.setMessageDelay = this._setMessageDelay.bind(this); //设置是否延迟消息
255 this.switchServer = this._switchMcuIpHandler.bind(this); //切换mcu服务器 252 this.switchServer = this._switchMcuIpHandler.bind(this); //切换mcu服务器
256 - this.switchMediaServer = this._switchMsIpHandler.bind(this); //切换ms服务器 253 + this.switchMediaServer = this._switchMediaServer.bind(this); //手动切换ms服务器
257 this.setDebugInfo = this._setDebugInfo.bind(this); //设置debug信息 254 this.setDebugInfo = this._setDebugInfo.bind(this); //设置debug信息
258 } 255 }
259 _setDebugInfo(_data) { 256 _setDebugInfo(_data) {
@@ -868,12 +865,29 @@ export default class MessageEntrance extends Emiter { @@ -868,12 +865,29 @@ export default class MessageEntrance extends Emiter {
868 } 865 }
869 }*/ 866 }*/
870 } 867 }
  868 + //手动切换MS -> {ip;"xxx.xx.xx","port":"xxxx"}
  869 + _switchMediaServer(_param){
  870 + if (GlobalConfig.isRecordPlayBack) {
  871 + //录制回放不做操作
  872 + loger.warn('录制回放->不能手动切换MS');
  873 + return;
  874 + }
  875 + if (_param && _param.ip) {
  876 + GlobalConfig.MS_PUBLISH_IP = _param.ip || "";
  877 + GlobalConfig.MS_PUBLISH_PORT = _param.port || "";
  878 + }
  879 + loger.warn('手动切换MS->',GlobalConfig.MS_PUBLISH_IP+":"+ GlobalConfig.MS_PUBLISH_PORT);
  880 + //更换完用户当前的MS地址,需要更新用户数据
  881 + if(_confer_ape){
  882 + _confer_ape.updateUserInfo();
  883 + }
  884 + }
871 885
872 //切换MS ->_param->{reConnect:false} //reConnect(是否立即替换当前的ip并且重新连接) 886 //切换MS ->_param->{reConnect:false} //reConnect(是否立即替换当前的ip并且重新连接)
873 _switchMsIpHandler(_param) { 887 _switchMsIpHandler(_param) {
874 if (GlobalConfig.isRecordPlayBack) { 888 if (GlobalConfig.isRecordPlayBack) {
875 //录制回放不做操作 889 //录制回放不做操作
876 - loger.log('录制回放->不进行MS动态选点'); 890 + loger.warn('录制回放->不进行MS动态选点');
877 return; 891 return;
878 } 892 }
879 loger.log('MS->动态选点'); 893 loger.log('MS->动态选点');
@@ -901,6 +915,11 @@ export default class MessageEntrance extends Emiter { @@ -901,6 +915,11 @@ export default class MessageEntrance extends Emiter {
901 if (_param && _param.reConnect == true) { 915 if (_param && _param.reConnect == true) {
902 loger.log('MS->最新地址->', GlobalConfig.MSServerIP, GlobalConfig.MSServerPort); 916 loger.log('MS->最新地址->', GlobalConfig.MSServerIP, GlobalConfig.MSServerPort);
903 }*/ 917 }*/
  918 +
  919 + //选点完成需要更新用户数据
  920 + if(_confer_ape){
  921 + _confer_ape.updateUserInfo();
  922 + }
904 loger.log('MS->最新地址->', GlobalConfig.MS_PUBLISH_IP, GlobalConfig.MS_PUBLISH_PORT); 923 loger.log('MS->最新地址->', GlobalConfig.MS_PUBLISH_IP, GlobalConfig.MS_PUBLISH_PORT);
905 } else { 924 } else {
906 //如果选点结束后获得的ip和当前的IP相同,不需要切换 925 //如果选点结束后获得的ip和当前的IP相同,不需要切换
@@ -422,7 +422,7 @@ GlobalConfig.recordReplaytickValues = {}; // 滚动条关键点,用于快进 @@ -422,7 +422,7 @@ GlobalConfig.recordReplaytickValues = {}; // 滚动条关键点,用于快进
422 GlobalConfig.isAutoStartClass = 0; //是否自动开始上课 0-否 ;1 是 422 GlobalConfig.isAutoStartClass = 0; //是否自动开始上课 0-否 ;1 是
423 423
424 GlobalConfig.updateClassInfoDelay = 30; //(秒),每隔30秒同步一次课堂状态的并保存到Sass 424 GlobalConfig.updateClassInfoDelay = 30; //(秒),每隔30秒同步一次课堂状态的并保存到Sass
425 -GlobalConfig.msDynamicChooseIpDelay = 15; //(秒)MS动态选点的间隔 425 +GlobalConfig.msDynamicChooseIpDelay = 60*3; //(秒)MS动态选点的间隔
426 //GlobalConfig.serverTimestamp=0;//当前的系统时间戳 用get set 获取 426 //GlobalConfig.serverTimestamp=0;//当前的系统时间戳 用get set 获取
427 427
428 GlobalConfig.activeDocId = 0; //当前激活的文档ID 428 GlobalConfig.activeDocId = 0; //当前激活的文档ID
@@ -140,6 +140,9 @@ class ConferApe extends Ape { @@ -140,6 +140,9 @@ class ConferApe extends Ape {
140 nodeInfoRecordPdu.msList.push(msListItemPdu); 140 nodeInfoRecordPdu.msList.push(msListItemPdu);
141 } 141 }
142 } 142 }
  143 + //用户当前选择的MS
  144 + nodeInfoRecordPdu.msIpPort=GlobalConfig.MS_PUBLISH_IP+":"+GlobalConfig.MS_PUBLISH_PORT;
  145 +
143 return nodeInfoRecordPdu; 146 return nodeInfoRecordPdu;
144 } 147 }
145 148
@@ -911,6 +911,7 @@ message RCNodeInfoRecordPdu { @@ -911,6 +911,7 @@ message RCNodeInfoRecordPdu {
911 optional string isp=28; 911 optional string isp=28;
912 repeated MsListItemPdu msList = 29; 912 repeated MsListItemPdu msList = 29;
913 optional string selfSilence = 30; 913 optional string selfSilence = 30;
  914 + optional string msIpPort = 31;
914 } 915 }
915 916
916 message RCVotingPollSettingsPdu { 917 message RCVotingPollSettingsPdu {