1.统一错误异常的监听,应用层通过errorCode来处理不同的异常
2.Sass请求 中的fetch发送数据请求,在移动端的webView中,需要依赖下面两个来解决加载的问题
require('es6-promise').polyfill();
require('whatwg-fetch');
3.定义errorCode
正在显示
9 个修改的文件
包含
186 行增加
和
80 行删除
此 diff 太大无法显示。
| 1 | +require('es6-promise').polyfill(); | ||
| 2 | +require('whatwg-fetch'); | ||
| 3 | +require('jquery-touchswipe'); | ||
| 4 | +require('string.fromcodepoint'); | ||
| 5 | + | ||
| 1 | import Emiter from './Emiter'; | 6 | import Emiter from './Emiter'; |
| 2 | import Sass from 'Sass'; | 7 | import Sass from 'Sass'; |
| 3 | import Mcu from 'mcu'; | 8 | import Mcu from 'mcu'; |
| @@ -11,6 +16,7 @@ import WhiteBoardApe from 'apes/WhiteBoardApe'; | @@ -11,6 +16,7 @@ import WhiteBoardApe from 'apes/WhiteBoardApe'; | ||
| 11 | import EngineUtils from "EngineUtils"; | 16 | import EngineUtils from "EngineUtils"; |
| 12 | import GlobalConfig from 'GlobalConfig'; | 17 | import GlobalConfig from 'GlobalConfig'; |
| 13 | 18 | ||
| 19 | + | ||
| 14 | let loger = Loger.getLoger('MessageEntrance'); | 20 | let loger = Loger.getLoger('MessageEntrance'); |
| 15 | let _sdkInfo={"version":"v.1.0.1","author":"www.3mang.com"}; | 21 | let _sdkInfo={"version":"v.1.0.1","author":"www.3mang.com"}; |
| 16 | 22 | ||
| @@ -23,13 +29,15 @@ let _video_ape; | @@ -23,13 +29,15 @@ let _video_ape; | ||
| 23 | let _doc_ape; | 29 | let _doc_ape; |
| 24 | let _wb_ape; | 30 | let _wb_ape; |
| 25 | 31 | ||
| 26 | -//init callBack function | 32 | +//初始化成功回调函数 |
| 27 | let _initSuccessCallBackFun; | 33 | let _initSuccessCallBackFun; |
| 28 | -let _initFailureCallBackFun; | ||
| 29 | 34 | ||
| 30 | -//join callBack function | 35 | +//加入会议成功回调函数 |
| 31 | let _joinClassSuccessCallBackFun; | 36 | let _joinClassSuccessCallBackFun; |
| 32 | -let _joinClassFailureCallBackFun; | 37 | + |
| 38 | +//监听mcu所有错误异常回调函数 | ||
| 39 | +let _mcuErrorCallBackFun; | ||
| 40 | + | ||
| 33 | 41 | ||
| 34 | //MCUClient 外部实例化主类 | 42 | //MCUClient 外部实例化主类 |
| 35 | export default class MessageEntrance extends Emiter { | 43 | export default class MessageEntrance extends Emiter { |
| @@ -39,8 +47,10 @@ export default class MessageEntrance extends Emiter { | @@ -39,8 +47,10 @@ export default class MessageEntrance extends Emiter { | ||
| 39 | this.sdkInfo=_sdkInfo; | 47 | this.sdkInfo=_sdkInfo; |
| 40 | loger.log(this.sdkInfo); | 48 | loger.log(this.sdkInfo); |
| 41 | 49 | ||
| 42 | - this.on(MessageTypes.CLASS_INIT_FAILED,this._sassInitFailedHandler.bind(this)); | ||
| 43 | - this.on(MessageTypes.CLASS_JOIN_FAILED,this._joinClassFailureHandler.bind(this)); | 50 | + //初始化状态 |
| 51 | + GlobalConfig.setCurrentStatus(GlobalConfig.statusCode_0); | ||
| 52 | + | ||
| 53 | + this.on(MessageTypes.MCU_ERROR,this._mcuErrorHandler.bind(this)); | ||
| 44 | this.on(MessageTypes.DOC_SHOW, this.docShowHandler.bind(this)); | 54 | this.on(MessageTypes.DOC_SHOW, this.docShowHandler.bind(this)); |
| 45 | 55 | ||
| 46 | // Sass平台层 | 56 | // Sass平台层 |
| @@ -48,7 +58,7 @@ export default class MessageEntrance extends Emiter { | @@ -48,7 +58,7 @@ export default class MessageEntrance extends Emiter { | ||
| 48 | _sass.on('*', (type, data) => this._emit(type, data)); | 58 | _sass.on('*', (type, data) => this._emit(type, data)); |
| 49 | _sass.on(_sass.SUCCESS, this._sassVerifySuccessHandler.bind(this)); | 59 | _sass.on(_sass.SUCCESS, this._sassVerifySuccessHandler.bind(this)); |
| 50 | _sass.on(_sass.CLASS_INIT_SUCCESS, this._sassInitSuccessHandler.bind(this)); | 60 | _sass.on(_sass.CLASS_INIT_SUCCESS, this._sassInitSuccessHandler.bind(this)); |
| 51 | - _sass.on(_sass.CLASS_INIT_FAILED, this._sassInitFailedHandler.bind(this)); | 61 | + _sass.on(_sass.CLASS_GET_CLASS_DETAIL, this._h5SassGetClassDetailSuccessHandler.bind(this)); |
| 52 | _sass.on(_sass.CLASS_GET_MEETING_PARAM,this._h5SassGetMeetingParaSuccessHandler); | 62 | _sass.on(_sass.CLASS_GET_MEETING_PARAM,this._h5SassGetMeetingParaSuccessHandler); |
| 53 | 63 | ||
| 54 | // 底层MCU消息层 | 64 | // 底层MCU消息层 |
| @@ -71,34 +81,52 @@ export default class MessageEntrance extends Emiter { | @@ -71,34 +81,52 @@ export default class MessageEntrance extends Emiter { | ||
| 71 | _doc_ape = new DocApe(); | 81 | _doc_ape = new DocApe(); |
| 72 | _doc_ape.on('*', (type, data) => this._emit(type, data)); | 82 | _doc_ape.on('*', (type, data) => this._emit(type, data)); |
| 73 | _doc_ape.on(MessageTypes.DOC_UPDATE, this.docUpdateHandler.bind(this)); | 83 | _doc_ape.on(MessageTypes.DOC_UPDATE, this.docUpdateHandler.bind(this)); |
| 74 | - | ||
| 75 | _doc_ape.on(MessageTypes.DOC_DEL, this.docDeleteHandler.bind(this)); | 84 | _doc_ape.on(MessageTypes.DOC_DEL, this.docDeleteHandler.bind(this)); |
| 76 | 85 | ||
| 86 | + | ||
| 77 | _wb_ape = new WhiteBoardApe(); | 87 | _wb_ape = new WhiteBoardApe(); |
| 78 | _wb_ape.on('*', (type, data) => this._emit(type, data)); | 88 | _wb_ape.on('*', (type, data) => this._emit(type, data)); |
| 79 | _wb_ape.on(MessageTypes.ANNOTATION_UPDATE, this.annoUpdateHandler.bind(this)); | 89 | _wb_ape.on(MessageTypes.ANNOTATION_UPDATE, this.annoUpdateHandler.bind(this)); |
| 80 | 90 | ||
| 91 | + | ||
| 81 | //公开外部调用的方法 | 92 | //公开外部调用的方法 |
| 82 | this.init=this._init; | 93 | this.init=this._init; |
| 83 | this.joinClass=this._joinClass; | 94 | this.joinClass=this._joinClass; |
| 84 | this.sendChatMsg=this._sendChatMsg; | 95 | this.sendChatMsg=this._sendChatMsg; |
| 85 | this.setDebugData=this._setDebugData; | 96 | this.setDebugData=this._setDebugData; |
| 97 | + this.mcuClientStatus=this._mcuClientStatus; | ||
| 98 | + } | ||
| 99 | + | ||
| 100 | + | ||
| 101 | + //mcu异常监听 | ||
| 102 | + _mcuErrorHandler(_data){ | ||
| 103 | + if(_mcuErrorCallBackFun){ | ||
| 104 | + let errorMessage={"code":_data,"reson":""}; | ||
| 105 | + _mcuErrorCallBackFun(errorMessage); | ||
| 106 | + } | ||
| 86 | } | 107 | } |
| 87 | - _init(_param,_onSuccess,_onFailure){ | ||
| 88 | - _initSuccessCallBackFun=_onSuccess; | ||
| 89 | - _initFailureCallBackFun=_onFailure; | ||
| 90 | 108 | ||
| 109 | + //获取当前的状态 | ||
| 110 | + _mcuClientStatus(){ | ||
| 111 | + return GlobalConfig.getCurrentStatus(); | ||
| 112 | + } | ||
| 113 | + | ||
| 114 | + //初始化 | ||
| 115 | + _init(_param,_onSuccess,_mcuErrorCallBack){ | ||
| 116 | + _initSuccessCallBackFun=_onSuccess; | ||
| 117 | + // _initFailureCallBackFun=_onFailure; | ||
| 118 | + _mcuErrorCallBackFun=_mcuErrorCallBack; | ||
| 91 | //{"meetingNumber":"1653304953","portal":"112.126.80.182:80","userRole":"normal","userId":0} | 119 | //{"meetingNumber":"1653304953","portal":"112.126.80.182:80","userRole":"normal","userId":0} |
| 92 | //判断传入的参数是否存在 | 120 | //判断传入的参数是否存在 |
| 93 | - if(_param==null||EngineUtils.isEmptyObject(_param)){ | ||
| 94 | - loger.log('init初始化失败',MessageTypes.ERROR_PARAM); | ||
| 95 | - this._emit(MessageTypes.CLASS_INIT_FAILED,MessageTypes.ERROR_PARAM); | 121 | + if(_param==null||EngineUtils.isEmptyObject(_param)||_onSuccess==null||_mcuErrorCallBack==null){ |
| 122 | + loger.log('init初始化失败,参数错误'); | ||
| 123 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_INIT_PAEAM); | ||
| 96 | return ; | 124 | return ; |
| 97 | } | 125 | } |
| 98 | //判断必要的参数字段值 | 126 | //判断必要的参数字段值 |
| 99 | - if(_param.meetingNumber==null||isNaN(_param.meetingNumber)||_param.portal==null){ | 127 | + if(_param.meetingNumber==null||isNaN(_param.meetingNumber)||_param.portal==null||_param.portal==""){ |
| 100 | loger.log('init初始化失败',_param); | 128 | loger.log('init初始化失败',_param); |
| 101 | - this._emit(MessageTypes.CLASS_INIT_FAILED,MessageTypes.ERROR_PARAM); | 129 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_INIT_PAEAM); |
| 102 | return ; | 130 | return ; |
| 103 | } | 131 | } |
| 104 | loger.log('init',_param); | 132 | loger.log('init',_param); |
| @@ -114,19 +142,19 @@ export default class MessageEntrance extends Emiter { | @@ -114,19 +142,19 @@ export default class MessageEntrance extends Emiter { | ||
| 114 | } | 142 | } |
| 115 | } | 143 | } |
| 116 | 144 | ||
| 117 | - _joinClass(_param,_onSuccess,_onFailure){ | 145 | + //外部请求加入会议 |
| 146 | + _joinClass(_param,_onSuccess){ | ||
| 118 | _joinClassSuccessCallBackFun=_onSuccess; | 147 | _joinClassSuccessCallBackFun=_onSuccess; |
| 119 | - _joinClassFailureCallBackFun=_onFailure; | ||
| 120 | //{"userName":"名字","password":""} | 148 | //{"userName":"名字","password":""} |
| 121 | - if(_param==null||EngineUtils.isEmptyObject(_param)){ | ||
| 122 | - this._emit(MessageTypes.CLASS_JOIN_FAILED,MessageTypes.ERROR_PARAM); | 149 | + if(_param==null||EngineUtils.isEmptyObject(_param)||_onSuccess==null){ |
| 150 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_JOIN_PARAM); | ||
| 123 | loger.log('不能进入会议,传递的参数不对.',_param); | 151 | loger.log('不能进入会议,传递的参数不对.',_param); |
| 124 | return ; | 152 | return ; |
| 125 | } | 153 | } |
| 126 | //判断userName | 154 | //判断userName |
| 127 | - if(_param.userName==null){ | 155 | + if(_param.userName==null||_param.userName==""){ |
| 128 | loger.log('不能进入会议,传递的参数不对.名字不能为空'); | 156 | loger.log('不能进入会议,传递的参数不对.名字不能为空'); |
| 129 | - this._emit(MessageTypes.CLASS_JOIN_FAILED,MessageTypes.ERROR_PARAM); | 157 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_JOIN_PARAM); |
| 130 | return ; | 158 | return ; |
| 131 | } | 159 | } |
| 132 | 160 | ||
| @@ -142,8 +170,10 @@ export default class MessageEntrance extends Emiter { | @@ -142,8 +170,10 @@ export default class MessageEntrance extends Emiter { | ||
| 142 | leaveClass() { | 170 | leaveClass() { |
| 143 | if(_mcu){ | 171 | if(_mcu){ |
| 144 | _mcu.leaveMCU(); | 172 | _mcu.leaveMCU(); |
| 173 | + GlobalConfig.setCurrentStatus(GlobalConfig.statusCode_3); | ||
| 145 | } | 174 | } |
| 146 | } | 175 | } |
| 176 | + | ||
| 147 | // 用meetingNumber向SASS平台获取入会验证信息成功 | 177 | // 用meetingNumber向SASS平台获取入会验证信息成功 |
| 148 | _sassInitSuccessHandler(_data) { | 178 | _sassInitSuccessHandler(_data) { |
| 149 | //{"siteId":"h5test","passwordRequired":true,"md5":"de399d5540b3da2fbc1eb0a770d4fd66","code":0,"msType":1} | 179 | //{"siteId":"h5test","passwordRequired":true,"md5":"de399d5540b3da2fbc1eb0a770d4fd66","code":0,"msType":1} |
| @@ -155,20 +185,22 @@ export default class MessageEntrance extends Emiter { | @@ -155,20 +185,22 @@ export default class MessageEntrance extends Emiter { | ||
| 155 | } | 185 | } |
| 156 | loger.log('向SASS平台获取入会验证信息成功.'); | 186 | loger.log('向SASS平台获取入会验证信息成功.'); |
| 157 | this._emit(MessageTypes.CLASS_INIT_SUCCESS,_data); | 187 | this._emit(MessageTypes.CLASS_INIT_SUCCESS,_data); |
| 188 | + GlobalConfig.setCurrentStatus(GlobalConfig.statusCode_1); | ||
| 158 | 189 | ||
| 159 | if(_initSuccessCallBackFun){ | 190 | if(_initSuccessCallBackFun){ |
| 160 | _initSuccessCallBackFun(_data); | 191 | _initSuccessCallBackFun(_data); |
| 161 | } | 192 | } |
| 162 | } | 193 | } |
| 163 | 194 | ||
| 164 | - // 用meetingNumber向SASS平台获取入会验证信息失败 | ||
| 165 | - _sassInitFailedHandler() { | ||
| 166 | - loger.log('向SASS平台获取入会验证信息失败.'); | ||
| 167 | - //this._emit(MessageTypes.CLASS_INIT_FAILED); | ||
| 168 | - if(_initFailureCallBackFun){ | ||
| 169 | - _initFailureCallBackFun(); | ||
| 170 | - } | ||
| 171 | - } | 195 | + //// 用meetingNumber向SASS平台获取入会验证信息失败 |
| 196 | + //_sassInitFailedHandler(_data) { | ||
| 197 | + // loger.log('向SASS平台获取入会验证信息失败.'); | ||
| 198 | + // //this._emit(MessageTypes.CLASS_INIT_FAILED); | ||
| 199 | + // let callBackObj={"code":_data,"message":""}; | ||
| 200 | + // if(_initFailureCallBackFun){ | ||
| 201 | + // _initFailureCallBackFun(callBackObj); | ||
| 202 | + // } | ||
| 203 | + //} | ||
| 172 | 204 | ||
| 173 | //使用固定的假数据 | 205 | //使用固定的假数据 |
| 174 | _setDebugData(_data){ | 206 | _setDebugData(_data){ |
| @@ -183,31 +215,43 @@ export default class MessageEntrance extends Emiter { | @@ -183,31 +215,43 @@ export default class MessageEntrance extends Emiter { | ||
| 183 | _mcu.joinMCU(GlobalConfig.getConfInfo()); | 215 | _mcu.joinMCU(GlobalConfig.getConfInfo()); |
| 184 | } | 216 | } |
| 185 | } | 217 | } |
| 218 | + | ||
| 219 | + //获取会议所有参数 | ||
| 220 | + _h5SassGetClassDetailSuccessHandler(_data){ | ||
| 221 | + loger.log('获取getClassDetail完成.'); | ||
| 222 | + GlobalConfig.classDetail=_data; | ||
| 223 | + loger.log(GlobalConfig.classDetail); | ||
| 224 | + this._emit(MessageTypes.CLASS_SHOW_DETAIL, _data); | ||
| 225 | + } | ||
| 226 | + | ||
| 186 | //获取会议所有参数 | 227 | //获取会议所有参数 |
| 187 | _h5SassGetMeetingParaSuccessHandler(_data){ | 228 | _h5SassGetMeetingParaSuccessHandler(_data){ |
| 188 | loger.log('获取getMeetingParam完成.'); | 229 | loger.log('获取getMeetingParam完成.'); |
| 189 | GlobalConfig.meetingParam=_data; | 230 | GlobalConfig.meetingParam=_data; |
| 190 | - loger.log(_data); | 231 | + loger.log(GlobalConfig.meetingParam); |
| 191 | } | 232 | } |
| 192 | 233 | ||
| 193 | // MCU 会议成功 | 234 | // MCU 会议成功 |
| 194 | - _joinClassSuccessHandler() { | 235 | + _joinClassSuccessHandler(_data) { |
| 195 | loger.log('MCU 会议成功.'); | 236 | loger.log('MCU 会议成功.'); |
| 237 | + GlobalConfig.setCurrentStatus(GlobalConfig.statusCode_2); | ||
| 196 | if(_sass){ | 238 | if(_sass){ |
| 197 | _sass.getClassDetail();//会议信息 | 239 | _sass.getClassDetail();//会议信息 |
| 198 | _sass.getMeetingParam();//会议参数大全 | 240 | _sass.getMeetingParam();//会议参数大全 |
| 199 | } | 241 | } |
| 200 | if(_joinClassSuccessCallBackFun){ | 242 | if(_joinClassSuccessCallBackFun){ |
| 201 | - _joinClassSuccessCallBackFun(); | ||
| 202 | - } | ||
| 203 | - } | ||
| 204 | - // MCU 会议失败 | ||
| 205 | - _joinClassFailureHandler(_data){ | ||
| 206 | - loger.log("_joinClassFailureHandler",_data); | ||
| 207 | - if(_joinClassFailureCallBackFun){ | ||
| 208 | - _joinClassFailureCallBackFun(_data); | 243 | + _joinClassSuccessCallBackFun(_data); |
| 209 | } | 244 | } |
| 210 | } | 245 | } |
| 246 | + //// MCU 会议失败 | ||
| 247 | + //_joinClassFailureHandler(_data){ | ||
| 248 | + // GlobalConfig.setCurrentStatus(GlobalConfig.statusCode_1); | ||
| 249 | + // loger.log("_joinClassFailureHandler",_data); | ||
| 250 | + // if(_joinClassFailureCallBackFun){ | ||
| 251 | + // let callBackObj={"code":_data,"message":""}; | ||
| 252 | + // _joinClassFailureCallBackFun(callBackObj); | ||
| 253 | + // } | ||
| 254 | + //} | ||
| 211 | 255 | ||
| 212 | // 参会处理 | 256 | // 参会处理 |
| 213 | conferenceHandler(msg_type) { | 257 | conferenceHandler(msg_type) { |
| @@ -6,11 +6,23 @@ let loger = Loger.getLoger('GlobalConfig'); | @@ -6,11 +6,23 @@ let loger = Loger.getLoger('GlobalConfig'); | ||
| 6 | 6 | ||
| 7 | class GlobalConfig { | 7 | class GlobalConfig { |
| 8 | constructor () { | 8 | constructor () { |
| 9 | + | ||
| 9 | } | 10 | } |
| 11 | + _currentStatus=null; | ||
| 10 | static setDebugData (_deBugData){ | 12 | static setDebugData (_deBugData){ |
| 11 | this.isDebug=true; | 13 | this.isDebug=true; |
| 12 | this.deBugData=_deBugData; | 14 | this.deBugData=_deBugData; |
| 13 | } | 15 | } |
| 16 | + static getCurrentStatus(){ | ||
| 17 | + if(this._currentStatus==null){ | ||
| 18 | + this._currentStatus=this.statusCode_0; | ||
| 19 | + } | ||
| 20 | + return this._currentStatus; | ||
| 21 | + } | ||
| 22 | + static setCurrentStatus(_data){ | ||
| 23 | + this._currentStatus=_data; | ||
| 24 | + } | ||
| 25 | + | ||
| 14 | static getConfInfo (){ | 26 | static getConfInfo (){ |
| 15 | if(this.isDebug){ | 27 | if(this.isDebug){ |
| 16 | 28 | ||
| @@ -51,9 +63,16 @@ class GlobalConfig { | @@ -51,9 +63,16 @@ class GlobalConfig { | ||
| 51 | } | 63 | } |
| 52 | } | 64 | } |
| 53 | } | 65 | } |
| 66 | + | ||
| 67 | +GlobalConfig.statusCode_0={"code":0,message:"SDK 未初始化"}; | ||
| 68 | +GlobalConfig.statusCode_1={"code":1,message:"未加入会议"}; | ||
| 69 | +GlobalConfig.statusCode_2={"code":2,message:"已经加入会议"}; | ||
| 70 | +GlobalConfig.statusCode_3={"code":3,message:"已经离开会议"}; | ||
| 71 | +GlobalConfig.statusCode_4={"code":4,message:"未知状态"}; | ||
| 72 | + | ||
| 54 | GlobalConfig.siteId="gust"; | 73 | GlobalConfig.siteId="gust"; |
| 55 | -GlobalConfig.confId=1653304953;//课堂号=classId=meetingNumber 之后统一修改为classId | ||
| 56 | -GlobalConfig.nodeId=1483947664;//随机生成 | 74 | +GlobalConfig.confId=0;//课堂号=classId=meetingNumber 之后统一修改为classId |
| 75 | +GlobalConfig.nodeId=0;//随机生成 | ||
| 57 | GlobalConfig.topNodeID=101;//现在固定值,还不知道是做什么用 | 76 | GlobalConfig.topNodeID=101;//现在固定值,还不知道是做什么用 |
| 58 | GlobalConfig.userRole="normal"; | 77 | GlobalConfig.userRole="normal"; |
| 59 | GlobalConfig.role=1; | 78 | GlobalConfig.role=1; |
| @@ -80,4 +99,6 @@ GlobalConfig.isDebug=false; | @@ -80,4 +99,6 @@ GlobalConfig.isDebug=false; | ||
| 80 | GlobalConfig.deBugData={}; | 99 | GlobalConfig.deBugData={}; |
| 81 | 100 | ||
| 82 | GlobalConfig.meetingParam={}; | 101 | GlobalConfig.meetingParam={}; |
| 102 | +GlobalConfig.classDetail={}; | ||
| 103 | + | ||
| 83 | export default GlobalConfig; | 104 | export default GlobalConfig; |
| @@ -18,11 +18,11 @@ function MessageTypes() {} | @@ -18,11 +18,11 @@ function MessageTypes() {} | ||
| 18 | //--------------------事件相关的定义-------------------------------------- | 18 | //--------------------事件相关的定义-------------------------------------- |
| 19 | //初始化相关事件定义 | 19 | //初始化相关事件定义 |
| 20 | MessageTypes.CLASS_INIT_SUCCESS='class.init.success';//初始化成功 | 20 | MessageTypes.CLASS_INIT_SUCCESS='class.init.success';//初始化成功 |
| 21 | -MessageTypes.CLASS_INIT_FAILED='class.init.failed';//初始化失败 | 21 | +//MessageTypes.CLASS_INIT_FAILED='class.init.failed';//初始化失败 |
| 22 | 22 | ||
| 23 | //加入会议相关事件定义 | 23 | //加入会议相关事件定义 |
| 24 | -MessageTypes.CLASS_JOIN_FAILED = 'join.class.failed'; | ||
| 25 | MessageTypes.CLASS_JOIN_SUCCESS = 'join.class.success'; | 24 | MessageTypes.CLASS_JOIN_SUCCESS = 'join.class.success'; |
| 25 | +//MessageTypes.CLASS_JOIN_FAILED = 'join.class.failed'; | ||
| 26 | 26 | ||
| 27 | //会议信息和操作事件定义 | 27 | //会议信息和操作事件定义 |
| 28 | MessageTypes.CLASS_SHOW_DETAIL = 'class_detail.message'; | 28 | MessageTypes.CLASS_SHOW_DETAIL = 'class_detail.message'; |
| @@ -50,20 +50,42 @@ MessageTypes.ANNOTATION_UPDATE = 'annotation.update'; | @@ -50,20 +50,42 @@ MessageTypes.ANNOTATION_UPDATE = 'annotation.update'; | ||
| 50 | //音频 | 50 | //音频 |
| 51 | MessageTypes.AUDIO_RECEIVE='audio.receive'; | 51 | MessageTypes.AUDIO_RECEIVE='audio.receive'; |
| 52 | 52 | ||
| 53 | + | ||
| 54 | + | ||
| 55 | + | ||
| 53 | //错误事件定义 | 56 | //错误事件定义 |
| 54 | -MessageTypes.NET_ERROR = 'net_error'; | ||
| 55 | -MessageTypes.PRO_ERROR = 'pro_error';//协议异常 | 57 | +MessageTypes.MCU_ERROR ="mcuError";//MCU错误 |
| 58 | + | ||
| 59 | + | ||
| 60 | +//---------------错误消息 code 定义------------------------------------------------- | ||
| 61 | +MessageTypes.ERR_NETWORK=10000;//网络错误 | ||
| 62 | +MessageTypes.ERR_UNKNOWN=10001;//未知错误 | ||
| 63 | + | ||
| 64 | + | ||
| 65 | +//会议初始化失败的几种情况 | ||
| 66 | +MessageTypes.ERR_CLASS_INIT_PAEAM=100;//初始化参数错误 | ||
| 67 | +MessageTypes.ERR_CLASS_INIT_NETWORK=101;//初始化网络错误 | ||
| 68 | +MessageTypes.ERR_CLASS_INIT_PROTOCOL=102;//初始化协议错误 | ||
| 69 | +MessageTypes.ERR_CLASS_INIT_FAILED=103;//初始化验证失败 | ||
| 70 | + | ||
| 71 | + | ||
| 72 | +//加入会议失败的几种情况 | ||
| 73 | +MessageTypes.ERR_CLASS_JOIN_NETWORK=200;//加入会议网络错误 | ||
| 74 | +MessageTypes.ERR_CLASS_JOIN_PROTOCOL=201;//加入会议化协议错误 | ||
| 75 | +MessageTypes.ERR_CLASS_JOIN_FAILED=202;//加入会议化异常错误 | ||
| 76 | +MessageTypes.ERR_CLASS_JOIN_PARAM=203;//加入会议参数错误 | ||
| 77 | +MessageTypes.ERR_CLASS_JOIN_FULL=204;//人数已满 | ||
| 78 | +MessageTypes.ERR_CLASS_MD5_WRONG=205;//MD5验证失败 | ||
| 79 | +MessageTypes.ERR_CLASS_PASSWORD_WRONG=206;//密码错误 | ||
| 80 | +MessageTypes.ERR_CLASS_JOIN_CONFILICT=207;//已经在其它地方登陆 | ||
| 81 | + | ||
| 56 | 82 | ||
| 83 | +MessageTypes.ERR_GET_CLASS_DETAIL=300;//获取classDetail失败 | ||
| 84 | +MessageTypes.ERR_GET_MEETING_PARAML=301;//获取MeetingParam失败 | ||
| 57 | 85 | ||
| 58 | -//---------------错误消息定义------------------------------------------------- | ||
| 59 | -MessageTypes.ERROR_NET='网络异常'; | ||
| 60 | -MessageTypes.ERROR_PARAM='参数不正确'; | ||
| 61 | 86 | ||
| 62 | -MessageTypes.ERROR_CLASS_JOIN_FULL = 'class.join,full';//人数已满 | ||
| 63 | -MessageTypes.ERROR_CLASS_JOIN_CONFILICT = 'class.join.conflict';//已经在其它地方登陆 | ||
| 64 | -MessageTypes.ERROR_CLASS_PASSWORD_WRONG = 'class.password.wrong';//密码错误 | ||
| 65 | -MessageTypes.ERROR_CLASS_MD5_WRONG = 'class.md5.wrong';//MD5验证失败 | ||
| 66 | -MessageTypes.ERROR_CLASS_PROTOCOL_WRONG = 'class.protocol.wrong';//协议异常 | 87 | +//APE |
| 88 | +MessageTypes.ERR_APE_SEND_FAILED_NO_JOIN=500;//APE在sdk为初始化或未加入会议之前调用发送数据接口 | ||
| 67 | 89 | ||
| 68 | export default MessageTypes; | 90 | export default MessageTypes; |
| 69 | 91 |
| @@ -57,7 +57,7 @@ class Sass extends Emiter { | @@ -57,7 +57,7 @@ class Sass extends Emiter { | ||
| 57 | return ret.json(); | 57 | return ret.json(); |
| 58 | } else { | 58 | } else { |
| 59 | loger.error(`Sass获取课堂校验信息-网络异常.状态码:${ret.status}`); | 59 | loger.error(`Sass获取课堂校验信息-网络异常.状态码:${ret.status}`); |
| 60 | - this._emit(Sass.CLASS_INIT_FAILED); | 60 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_INIT_NETWORK); |
| 61 | throw ''; | 61 | throw ''; |
| 62 | } | 62 | } |
| 63 | }) | 63 | }) |
| @@ -67,12 +67,12 @@ class Sass extends Emiter { | @@ -67,12 +67,12 @@ class Sass extends Emiter { | ||
| 67 | this._emit(Sass.CLASS_INIT_SUCCESS,ret); | 67 | this._emit(Sass.CLASS_INIT_SUCCESS,ret); |
| 68 | } else { | 68 | } else { |
| 69 | loger.warn('Sass获取课堂校验信息失败.'); | 69 | loger.warn('Sass获取课堂校验信息失败.'); |
| 70 | - this._emit(Sass.CLASS_INIT_FAILED); | 70 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_INIT_FAILED); |
| 71 | } | 71 | } |
| 72 | }) | 72 | }) |
| 73 | .catch(err => { | 73 | .catch(err => { |
| 74 | loger.error(`Sass获取课堂校验信息异常.状态码:${err}`); | 74 | loger.error(`Sass获取课堂校验信息异常.状态码:${err}`); |
| 75 | - this._emit(Sass.CLASS_INIT_FAILED,err); | 75 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_INIT_PROTOCOL); |
| 76 | }); | 76 | }); |
| 77 | } | 77 | } |
| 78 | 78 | ||
| @@ -102,14 +102,14 @@ class Sass extends Emiter { | @@ -102,14 +102,14 @@ class Sass extends Emiter { | ||
| 102 | return ret.text(); | 102 | return ret.text(); |
| 103 | } else { | 103 | } else { |
| 104 | loger.error(`会议密码校验-网络异常.状态码:${ret.status}`); | 104 | loger.error(`会议密码校验-网络异常.状态码:${ret.status}`); |
| 105 | - this._emit(MessageTypes.NET_ERROR); | 105 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_JOIN_NETWORK); |
| 106 | throw ''; | 106 | throw ''; |
| 107 | } | 107 | } |
| 108 | }) | 108 | }) |
| 109 | .then(ret => { | 109 | .then(ret => { |
| 110 | if (ret === 'false') { | 110 | if (ret === 'false') { |
| 111 | loger.error(`会议密码校验-失败.`); | 111 | loger.error(`会议密码校验-失败.`); |
| 112 | - this._emit(MessageTypes.CLASS_JOIN_FAILED,MessageTypes.ERROR_CLASS_PASSWORD_WRONG); | 112 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_PASSWORD_WRONG); |
| 113 | return ; | 113 | return ; |
| 114 | } | 114 | } |
| 115 | if (ret === 'true') { | 115 | if (ret === 'true') { |
| @@ -118,11 +118,11 @@ class Sass extends Emiter { | @@ -118,11 +118,11 @@ class Sass extends Emiter { | ||
| 118 | return; | 118 | return; |
| 119 | } | 119 | } |
| 120 | loger.error(`会议密码校验-协议异常.`); | 120 | loger.error(`会议密码校验-协议异常.`); |
| 121 | - this._emit(MessageTypes.CLASS_JOIN_FAILED,MessageTypes.ERROR_CLASS_PROTOCOL_WRONG); | 121 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_JOIN_PROTOCOL); |
| 122 | }) | 122 | }) |
| 123 | .catch(err => { | 123 | .catch(err => { |
| 124 | loger.error(`会议密码校验-异常.状态码:${err}`); | 124 | loger.error(`会议密码校验-异常.状态码:${err}`); |
| 125 | - this._emit(MessageTypes.NET_ERROR); | 125 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_JOIN_FAILED); |
| 126 | }); | 126 | }); |
| 127 | } | 127 | } |
| 128 | 128 | ||
| @@ -138,7 +138,7 @@ class Sass extends Emiter { | @@ -138,7 +138,7 @@ class Sass extends Emiter { | ||
| 138 | return ret.json(); | 138 | return ret.json(); |
| 139 | } else { | 139 | } else { |
| 140 | loger.error(`H5SassMD5校验-网络异常.状态码:${ret.status}`); | 140 | loger.error(`H5SassMD5校验-网络异常.状态码:${ret.status}`); |
| 141 | - this._emit(MessageTypes.NET_ERROR); | 141 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_JOIN_NETWORK); |
| 142 | throw ''; | 142 | throw ''; |
| 143 | } | 143 | } |
| 144 | }) | 144 | }) |
| @@ -164,13 +164,13 @@ class Sass extends Emiter { | @@ -164,13 +164,13 @@ class Sass extends Emiter { | ||
| 164 | this._emit(Sass.SUCCESS,ret); | 164 | this._emit(Sass.SUCCESS,ret); |
| 165 | } else { | 165 | } else { |
| 166 | loger.log('H5SassMD5校验-失败.'); | 166 | loger.log('H5SassMD5校验-失败.'); |
| 167 | - this._emit(MessageTypes.CLASS_JOIN_FAILED,MessageTypes.ERROR_CLASS_MD5_WRONG); | 167 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_MD5_WRONG); |
| 168 | 168 | ||
| 169 | } | 169 | } |
| 170 | }) | 170 | }) |
| 171 | .catch(err => { | 171 | .catch(err => { |
| 172 | loger.error(`H5SassMD5校验-异常.状态码:${err}`); | 172 | loger.error(`H5SassMD5校验-异常.状态码:${err}`); |
| 173 | - this._emit(MessageTypes.NET_ERROR); | 173 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_JOIN_FAILED); |
| 174 | }); | 174 | }); |
| 175 | } | 175 | } |
| 176 | 176 | ||
| @@ -186,22 +186,22 @@ class Sass extends Emiter { | @@ -186,22 +186,22 @@ class Sass extends Emiter { | ||
| 186 | return ret.json(); | 186 | return ret.json(); |
| 187 | } else { | 187 | } else { |
| 188 | loger.error(`H5Sass获取Class详情-网络异常.状态码:${ret.status}`); | 188 | loger.error(`H5Sass获取Class详情-网络异常.状态码:${ret.status}`); |
| 189 | - this._emit(MessageTypes.NET_ERROR); | 189 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_GET_CLASS_DETAIL); |
| 190 | throw ''; | 190 | throw ''; |
| 191 | } | 191 | } |
| 192 | }) | 192 | }) |
| 193 | .then(ret => { | 193 | .then(ret => { |
| 194 | if (ret.errorCode === 0) { | 194 | if (ret.errorCode === 0) { |
| 195 | loger.log('H5Sass获取Class详情完成'); | 195 | loger.log('H5Sass获取Class详情完成'); |
| 196 | - this._emit(MessageTypes.CLASS_SHOW_DETAIL, ret); | 196 | + this._emit(Sass.CLASS_GET_CLASS_DETAIL, ret); |
| 197 | } else { | 197 | } else { |
| 198 | loger.warn('H5Sass获取Class详情失败.'); | 198 | loger.warn('H5Sass获取Class详情失败.'); |
| 199 | - this._emit(MessageTypes.NET_ERROR); | 199 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_GET_CLASS_DETAIL); |
| 200 | } | 200 | } |
| 201 | }) | 201 | }) |
| 202 | .catch(err => { | 202 | .catch(err => { |
| 203 | loger.error(`H5Sass获取Class详情异常.状态码:${err}`); | 203 | loger.error(`H5Sass获取Class详情异常.状态码:${err}`); |
| 204 | - this._emit(MessageTypes.NET_ERROR); | 204 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_GET_CLASS_DETAIL); |
| 205 | }); | 205 | }); |
| 206 | } | 206 | } |
| 207 | 207 | ||
| @@ -235,7 +235,8 @@ class Sass extends Emiter { | @@ -235,7 +235,8 @@ class Sass extends Emiter { | ||
| 235 | return ret.json(); | 235 | return ret.json(); |
| 236 | } else { | 236 | } else { |
| 237 | loger.error(`H5Sass获取getMeetingParam-网络异常.状态码:${ret.status}`); | 237 | loger.error(`H5Sass获取getMeetingParam-网络异常.状态码:${ret.status}`); |
| 238 | - this._emit(MessageTypes.NET_ERROR); | 238 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_GET_MEETING_PARAML); |
| 239 | + | ||
| 239 | throw ''; | 240 | throw ''; |
| 240 | } | 241 | } |
| 241 | }) | 242 | }) |
| @@ -245,19 +246,19 @@ class Sass extends Emiter { | @@ -245,19 +246,19 @@ class Sass extends Emiter { | ||
| 245 | this._emit(Sass.CLASS_GET_MEETING_PARAM, ret); | 246 | this._emit(Sass.CLASS_GET_MEETING_PARAM, ret); |
| 246 | } else { | 247 | } else { |
| 247 | loger.warn('H5Sass获取getMeetingParam失败.'); | 248 | loger.warn('H5Sass获取getMeetingParam失败.'); |
| 248 | - this._emit(MessageTypes.NET_ERROR); | 249 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_GET_MEETING_PARAML); |
| 249 | } | 250 | } |
| 250 | }) | 251 | }) |
| 251 | .catch(err => { | 252 | .catch(err => { |
| 252 | loger.error(`H5Sass获取getMeetingParam异常.状态码:${err}`); | 253 | loger.error(`H5Sass获取getMeetingParam异常.状态码:${err}`); |
| 253 | - this._emit(MessageTypes.NET_ERROR); | 254 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_GET_MEETING_PARAML); |
| 254 | }); | 255 | }); |
| 255 | } | 256 | } |
| 256 | } | 257 | } |
| 257 | 258 | ||
| 258 | Sass.prototype.SUCCESS = Sass.SUCCESS = 'h5sass.success'; | 259 | Sass.prototype.SUCCESS = Sass.SUCCESS = 'h5sass.success'; |
| 259 | Sass.prototype.CLASS_INIT_SUCCESS = Sass.CLASS_INIT_SUCCESS = 'sass.class.init.success'; | 260 | Sass.prototype.CLASS_INIT_SUCCESS = Sass.CLASS_INIT_SUCCESS = 'sass.class.init.success'; |
| 260 | -Sass.prototype.CLASS_INIT_FAILED = Sass.CLASS_INIT_FAILED = 'sass.class.init.failed'; | ||
| 261 | Sass.prototype.CLASS_GET_MEETING_PARAM= Sass.CLASS_GET_MEETING_PARAM = 'class_getMeetingParam.message'; | 261 | Sass.prototype.CLASS_GET_MEETING_PARAM= Sass.CLASS_GET_MEETING_PARAM = 'class_getMeetingParam.message'; |
| 262 | +Sass.prototype.CLASS_GET_CLASS_DETAIL= Sass.CLASS_GET_CLASS_DETAIL = 'class_getClassDetail.message'; | ||
| 262 | export default new Sass; | 263 | export default new Sass; |
| 263 | 264 |
| @@ -21,6 +21,7 @@ import MessageTypes from 'MessageTypes'; | @@ -21,6 +21,7 @@ import MessageTypes from 'MessageTypes'; | ||
| 21 | import ApeConsts from './ApeConsts'; | 21 | import ApeConsts from './ApeConsts'; |
| 22 | import ArrayBufferUtil from 'libs/ArrayBufferUtil'; | 22 | import ArrayBufferUtil from 'libs/ArrayBufferUtil'; |
| 23 | import PduConsts from 'pdus/PduConsts'; | 23 | import PduConsts from 'pdus/PduConsts'; |
| 24 | +import GlobalConfig from 'GlobalConfig'; | ||
| 24 | 25 | ||
| 25 | // 日志对象 | 26 | // 日志对象 |
| 26 | const loger = Loger.getLoger('Ape'); | 27 | const loger = Loger.getLoger('Ape'); |
| @@ -280,6 +281,11 @@ export default class Ape extends Emiter { | @@ -280,6 +281,11 @@ export default class Ape extends Emiter { | ||
| 280 | 281 | ||
| 281 | send(appPdu) { | 282 | send(appPdu) { |
| 282 | loger.log('Ape发送数据NORMAL PDU', appPdu); | 283 | loger.log('Ape发送数据NORMAL PDU', appPdu); |
| 284 | + loger.log('当前的状态============',GlobalConfig.getCurrentStatus().code); | ||
| 285 | + if(GlobalConfig.getCurrentStatus().code==0||GlobalConfig.getCurrentStatus().code==1){ | ||
| 286 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_APE_SEND_FAILED_NO_JOIN); | ||
| 287 | + return; | ||
| 288 | + } | ||
| 283 | let normalPdu = pdu.create_normal_pdu( | 289 | let normalPdu = pdu.create_normal_pdu( |
| 284 | appPdu.type, | 290 | appPdu.type, |
| 285 | this._confInfo.nodeId, | 291 | this._confInfo.nodeId, |
| @@ -300,6 +306,12 @@ export default class Ape extends Emiter { | @@ -300,6 +306,12 @@ export default class Ape extends Emiter { | ||
| 300 | // 发送当前APE(session uniform包) | 306 | // 发送当前APE(session uniform包) |
| 301 | sendUniform(appPdu, top) { | 307 | sendUniform(appPdu, top) { |
| 302 | loger.log('Ape发送数据UNIFORM PDU', appPdu); | 308 | loger.log('Ape发送数据UNIFORM PDU', appPdu); |
| 309 | + loger.log('当前的状态============',GlobalConfig.getCurrentStatus().code); | ||
| 310 | + if(GlobalConfig.getCurrentStatus().code==0||GlobalConfig.getCurrentStatus().code==1){ | ||
| 311 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_APE_SEND_FAILED_NO_JOIN); | ||
| 312 | + return; | ||
| 313 | + } | ||
| 314 | + | ||
| 303 | let uniformPdu = pdu.create_uniform_pdu( | 315 | let uniformPdu = pdu.create_uniform_pdu( |
| 304 | appPdu.type, | 316 | appPdu.type, |
| 305 | this._confInfo.nodeId, | 317 | this._confInfo.nodeId, |
| @@ -45,10 +45,10 @@ class ChatApe extends Ape { | @@ -45,10 +45,10 @@ class ChatApe extends Ape { | ||
| 45 | sendChatMsg(_messageInfo) { | 45 | sendChatMsg(_messageInfo) { |
| 46 | if(this._confInfo===null||EngineUtils.isEmptyObject(this._confInfo)){ | 46 | if(this._confInfo===null||EngineUtils.isEmptyObject(this._confInfo)){ |
| 47 | loger.log('不能发送聊天消息.McuClient还未初始化数据!'); | 47 | loger.log('不能发送聊天消息.McuClient还未初始化数据!'); |
| 48 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_APE_SEND_FAILED_NO_JOIN); | ||
| 48 | return ; | 49 | return ; |
| 49 | } | 50 | } |
| 50 | 51 | ||
| 51 | - | ||
| 52 | // to, message | 52 | // to, message |
| 53 | loger.log('发送聊天消息.', _messageInfo.to, _messageInfo.message); | 53 | loger.log('发送聊天消息.', _messageInfo.to, _messageInfo.message); |
| 54 | 54 |
| @@ -112,8 +112,8 @@ class ConferApe extends Ape { | @@ -112,8 +112,8 @@ class ConferApe extends Ape { | ||
| 112 | 112 | ||
| 113 | //更新人员列表数据 | 113 | //更新人员列表数据 |
| 114 | rosterUpdateHandler(nodeId, nodeData) { | 114 | rosterUpdateHandler(nodeId, nodeData) { |
| 115 | - var userDataObj=pdu['RCNodeInfoUserDataPdu'].decode(nodeData.userData); | ||
| 116 | - loger.log("更新人员列表数据",nodeId,userDataObj); | 115 | + |
| 116 | + //loger.log("更新人员列表数据",nodeId,userDataObj); | ||
| 117 | if (nodeData.role === ApeConsts.NR_MASTER || | 117 | if (nodeData.role === ApeConsts.NR_MASTER || |
| 118 | nodeData.role === ApeConsts.NR_SLAVE) { | 118 | nodeData.role === ApeConsts.NR_SLAVE) { |
| 119 | this.hostNodeId = nodeData.nodeId; | 119 | this.hostNodeId = nodeData.nodeId; |
| @@ -127,7 +127,11 @@ class ConferApe extends Ape { | @@ -127,7 +127,11 @@ class ConferApe extends Ape { | ||
| 127 | let rosterExists = this.rosters[nodeId]; | 127 | let rosterExists = this.rosters[nodeId]; |
| 128 | this.rosters[nodeId] = nodeData; | 128 | this.rosters[nodeId] = nodeData; |
| 129 | if (!rosterExists) { | 129 | if (!rosterExists) { |
| 130 | - this._emit(MessageTypes.CLASS_INSERT_ROSTER, {"nodeId":nodeId,"nodeData":nodeData}); | 130 | + let userDataObj=pdu['RCNodeInfoUserDataPdu'].decode(nodeData.userData); |
| 131 | + let newNodeData=nodeData; | ||
| 132 | + newNodeData.userData=userDataObj; | ||
| 133 | + loger.log("更新人员列表数据",{"nodeId":nodeId}); | ||
| 134 | + this._emit(MessageTypes.CLASS_INSERT_ROSTER, {"nodeId":nodeId,"nodeData":newNodeData}); | ||
| 131 | this.emitRosterChange(); | 135 | this.emitRosterChange(); |
| 132 | } | 136 | } |
| 133 | } | 137 | } |
| @@ -11,7 +11,7 @@ import ApeConsts from 'apes/ApeConsts'; | @@ -11,7 +11,7 @@ import ApeConsts from 'apes/ApeConsts'; | ||
| 11 | import ConferApe from 'apes/ConferApe'; | 11 | import ConferApe from 'apes/ConferApe'; |
| 12 | import ArrayBufferUtil from 'libs/ArrayBufferUtil'; | 12 | import ArrayBufferUtil from 'libs/ArrayBufferUtil'; |
| 13 | import Base64 from 'base64-js'; | 13 | import Base64 from 'base64-js'; |
| 14 | -//import GlobalConfig from 'GlobalConfig'; | 14 | +import GlobalConfig from 'GlobalConfig'; |
| 15 | 15 | ||
| 16 | let loger = Loger.getLoger('MCU'); | 16 | let loger = Loger.getLoger('MCU'); |
| 17 | 17 | ||
| @@ -36,11 +36,11 @@ class MCU extends Emiter { | @@ -36,11 +36,11 @@ class MCU extends Emiter { | ||
| 36 | 36 | ||
| 37 | //MCU-发送加入会议请求 | 37 | //MCU-发送加入会议请求 |
| 38 | _sendJoinClassRequest(){ | 38 | _sendJoinClassRequest(){ |
| 39 | - loger.log('MCU-发送加入会议请求.'); | ||
| 40 | const confInfo = this.confInfo; | 39 | const confInfo = this.confInfo; |
| 41 | - | 40 | + loger.log('MCU-发送加入会议请求.',confInfo); |
| 42 | // 创建刷新nodeId | 41 | // 创建刷新nodeId |
| 43 | confInfo.nodeId = parseInt(Date.now() / 1000); | 42 | confInfo.nodeId = parseInt(Date.now() / 1000); |
| 43 | + GlobalConfig.nodeId=confInfo.nodeId;//这是标识自己身份的id | ||
| 44 | 44 | ||
| 45 | var joinRequestPdu = new pdu['RCConferenceJoinRequestPdu']; | 45 | var joinRequestPdu = new pdu['RCConferenceJoinRequestPdu']; |
| 46 | joinRequestPdu.type = 2; | 46 | joinRequestPdu.type = 2; |
| @@ -96,7 +96,8 @@ class MCU extends Emiter { | @@ -96,7 +96,8 @@ class MCU extends Emiter { | ||
| 96 | this._emit(MessageTypes.CLASS_JOIN_SUCCESS, this.confInfo); | 96 | this._emit(MessageTypes.CLASS_JOIN_SUCCESS, this.confInfo); |
| 97 | break; | 97 | break; |
| 98 | case PduConsts.RET_FULL_CAPACITY: | 98 | case PduConsts.RET_FULL_CAPACITY: |
| 99 | - this._emit(MessageTypes.CLASS_JOIN_FAILED,MessageTypes.ERROR_CLASS_JOIN_FULL); | 99 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_CLASS_JOIN_FULL); |
| 100 | + //this._emit(MessageTypes.CLASS_JOIN_FAILED,MessageTypes.ERR_CLASS_JOIN_FULL); | ||
| 100 | //this._emit(MessageTypes.CLASS_JOIN_FULL); | 101 | //this._emit(MessageTypes.CLASS_JOIN_FULL); |
| 101 | break; | 102 | break; |
| 102 | default: | 103 | default: |
| @@ -143,6 +144,7 @@ class MCU extends Emiter { | @@ -143,6 +144,7 @@ class MCU extends Emiter { | ||
| 143 | this._everSocket.send(msg.toArrayBuffer()); | 144 | this._everSocket.send(msg.toArrayBuffer()); |
| 144 | } else { | 145 | } else { |
| 145 | loger.log('MCU-发送会议数据失败,MCU底层通道不可用'); | 146 | loger.log('MCU-发送会议数据失败,MCU底层通道不可用'); |
| 147 | + this._emit(MessageTypes.MCU_ERROR,MessageTypes.ERR_SOCKET_DISCONNECT); | ||
| 146 | } | 148 | } |
| 147 | } | 149 | } |
| 148 | 150 |
-
请 注册 或 登录 后发表评论