正在显示
4 个修改的文件
包含
28 行增加
和
19 行删除
此 diff 太大无法显示。
| @@ -21,6 +21,7 @@ | @@ -21,6 +21,7 @@ | ||
| 21 | "iscroll": "^5.2.0", | 21 | "iscroll": "^5.2.0", |
| 22 | "jquery": "^3.1.0", | 22 | "jquery": "^3.1.0", |
| 23 | "jquery-touchswipe": "^1.6.15", | 23 | "jquery-touchswipe": "^1.6.15", |
| 24 | + "mdetect": "^1.2.3", | ||
| 24 | "protobufjs": "^5.0.1", | 25 | "protobufjs": "^5.0.1", |
| 25 | "string.fromcodepoint": "^0.2.1", | 26 | "string.fromcodepoint": "^0.2.1", |
| 26 | "url-parse": "^1.1.1", | 27 | "url-parse": "^1.1.1", |
| @@ -31,7 +32,7 @@ | @@ -31,7 +32,7 @@ | ||
| 31 | "wbp": { | 32 | "wbp": { |
| 32 | "project": "umd", | 33 | "project": "umd", |
| 33 | "entries": { | 34 | "entries": { |
| 34 | - "McuClient": "./McuClientEngine.js" | 35 | + "McuClient": "./src/McuClientEngine.js" |
| 35 | }, | 36 | }, |
| 36 | "source": "src/", | 37 | "source": "src/", |
| 37 | "build": "dist/" | 38 | "build": "dist/" |
| 1 | -/*eslint-disable*/ | 1 | +/*eslint-disable*/ ; |
| 2 | 2 | ||
| 3 | import Emiter from 'Emiter'; | 3 | import Emiter from 'Emiter'; |
| 4 | import MessageTypes from 'MessageTypes'; | 4 | import MessageTypes from 'MessageTypes'; |
| @@ -72,7 +72,7 @@ class MCU extends Emiter { | @@ -72,7 +72,7 @@ class MCU extends Emiter { | ||
| 72 | joinRequestPdu.type = 2; | 72 | joinRequestPdu.type = 2; |
| 73 | joinRequestPdu.initiator = this.classInfo.nodeId; | 73 | joinRequestPdu.initiator = this.classInfo.nodeId; |
| 74 | joinRequestPdu.nodeType = PduConsts.NT_TERMINAL; //normal | 74 | joinRequestPdu.nodeType = PduConsts.NT_TERMINAL; //normal |
| 75 | - joinRequestPdu.classDescription = descriptorPdu;// classDescription | 75 | + joinRequestPdu.classDescription = descriptorPdu; // classDescription |
| 76 | 76 | ||
| 77 | let pduMsg = pdu.create_join_class_request_pdu( | 77 | let pduMsg = pdu.create_join_class_request_pdu( |
| 78 | joinRequestPdu.type, | 78 | joinRequestPdu.type, |
| @@ -86,7 +86,7 @@ class MCU extends Emiter { | @@ -86,7 +86,7 @@ class MCU extends Emiter { | ||
| 86 | PduConsts.SEG_ONCE | 86 | PduConsts.SEG_ONCE |
| 87 | ); | 87 | ); |
| 88 | 88 | ||
| 89 | - pduMsg.set("site", this.classInfo.siteId);//课堂号对应的名称 | 89 | + pduMsg.set("site", this.classInfo.siteId); //课堂号对应的名称 |
| 90 | pduMsg.set("userId", this.classInfo.userId); | 90 | pduMsg.set("userId", this.classInfo.userId); |
| 91 | pduMsg.set("userName", Base64.fromByteArray(ArrayBufferUtil.strToUint8Array(this.classInfo.userName))); | 91 | pduMsg.set("userName", Base64.fromByteArray(ArrayBufferUtil.strToUint8Array(this.classInfo.userName))); |
| 92 | pduMsg.set("userRole", this.classInfo.userRole); | 92 | pduMsg.set("userRole", this.classInfo.userRole); |
| @@ -131,16 +131,23 @@ class MCU extends Emiter { | @@ -131,16 +131,23 @@ class MCU extends Emiter { | ||
| 131 | let sessionLabel = ApeConsts(pduMsg.sessionId); | 131 | let sessionLabel = ApeConsts(pduMsg.sessionId); |
| 132 | if (ape) { | 132 | if (ape) { |
| 133 | let subTypeLabel = pdu.id2type(pduMsg.subType); | 133 | let subTypeLabel = pdu.id2type(pduMsg.subType); |
| 134 | - //loger.log('MCU-SecondLayer封装消息', 'sessionId', sessionLabel, pduMsg.sessionId, 'subtype', subTypeLabel, pduMsg.subType); | 134 | + loger.log('MCU-SecondLayer封装消息', |
| 135 | + 'sessionId', | ||
| 136 | + sessionLabel, | ||
| 137 | + pduMsg.sessionId, | ||
| 138 | + 'subtype', | ||
| 139 | + subTypeLabel, | ||
| 140 | + pduMsg.subType, | ||
| 141 | + GlobalConfig.mcuDelay, | ||
| 142 | + GlobalConfig.messageDelay); | ||
| 135 | 143 | ||
| 136 | - loger.warn('接收服务端消息----------------->subType->', pduMsg.subType, GlobalConfig.mcuDelay, GlobalConfig.messageDelay); | ||
| 137 | //延迟处理消息(3个条件--->ape允许延迟&&客户端设置需要延迟&&Sass设置的延迟时间大于0) | 144 | //延迟处理消息(3个条件--->ape允许延迟&&客户端设置需要延迟&&Sass设置的延迟时间大于0) |
| 138 | - if (ape._apeDelayed && GlobalConfig.messageDelay && GlobalConfig.mcuDelay > 0) { | 145 | + if (GlobalConfig.messageDelay && GlobalConfig.messageDelay.indexOf(sessionLabel) !== -1 && GlobalConfig.mcuDelay > 0) { |
| 139 | loger.warn('延迟处理消息->', GlobalConfig.mcuDelay); | 146 | loger.warn('延迟处理消息->', GlobalConfig.mcuDelay); |
| 140 | setTimeout(() => { | 147 | setTimeout(() => { |
| 141 | //this._pduRegAdapterHandler(regBuffer, seekTime); | 148 | //this._pduRegAdapterHandler(regBuffer, seekTime); |
| 142 | ape._emit(pduMsg.subType, pduMsg.data); | 149 | ape._emit(pduMsg.subType, pduMsg.data); |
| 143 | - }, GlobalConfig.mcuDelay * 1000);//mcuDelay单位是秒, | 150 | + }, GlobalConfig.mcuDelay * 1000); //mcuDelay单位是秒, |
| 144 | // 这里需要换算为毫秒 | 151 | // 这里需要换算为毫秒 |
| 145 | return; | 152 | return; |
| 146 | } | 153 | } |
| @@ -190,20 +197,20 @@ class MCU extends Emiter { | @@ -190,20 +197,20 @@ class MCU extends Emiter { | ||
| 190 | } | 197 | } |
| 191 | loger.log('leaveMCU'); | 198 | loger.log('leaveMCU'); |
| 192 | GlobalConfig.setCurrentStatus(GlobalConfig.statusCode_3); | 199 | GlobalConfig.setCurrentStatus(GlobalConfig.statusCode_3); |
| 193 | - GlobalConfig.classJoinSuccess=false; | 200 | + GlobalConfig.classJoinSuccess = false; |
| 194 | this._everSocket.end(); | 201 | this._everSocket.end(); |
| 195 | } | 202 | } |
| 196 | 203 | ||
| 197 | // 主动建立MCU连接 | 204 | // 主动建立MCU连接 |
| 198 | joinMCU(_classInfo) { | 205 | joinMCU(_classInfo) { |
| 199 | loger.log('开始建立EverSocket通道.'); | 206 | loger.log('开始建立EverSocket通道.'); |
| 200 | - GlobalConfig.classJoinSuccess=false; | 207 | + GlobalConfig.classJoinSuccess = false; |
| 201 | loger.log(_classInfo); | 208 | loger.log(_classInfo); |
| 202 | _classInfo.classId = parseInt(_classInfo.classId); // classId 必须整形 | 209 | _classInfo.classId = parseInt(_classInfo.classId); // classId 必须整形 |
| 203 | this.classInfo = _classInfo; | 210 | this.classInfo = _classInfo; |
| 204 | // 创建刷新nodeId | 211 | // 创建刷新nodeId |
| 205 | this.classInfo.nodeId = EngineUtils.creatSoleNumberFromTimestamp(); | 212 | this.classInfo.nodeId = EngineUtils.creatSoleNumberFromTimestamp(); |
| 206 | - GlobalConfig.nodeId = this.classInfo.nodeId;//这是标识自己身份的id | 213 | + GlobalConfig.nodeId = this.classInfo.nodeId; //这是标识自己身份的id |
| 207 | 214 | ||
| 208 | let nodeInfoRecordPdu = new pdu['RCNodeInfoRecordPdu']; | 215 | let nodeInfoRecordPdu = new pdu['RCNodeInfoRecordPdu']; |
| 209 | nodeInfoRecordPdu.name = this.classInfo.userName; | 216 | nodeInfoRecordPdu.name = this.classInfo.userName; |
| @@ -211,13 +218,13 @@ class MCU extends Emiter { | @@ -211,13 +218,13 @@ class MCU extends Emiter { | ||
| 211 | nodeInfoRecordPdu.userId = this.classInfo.userId; | 218 | nodeInfoRecordPdu.userId = this.classInfo.userId; |
| 212 | nodeInfoRecordPdu.role = ApeConsts.userTypesToId[this.classInfo.userRole] || 1; //NR_NORMAL用户的身份,根据用户登录时的身份设置 | 219 | nodeInfoRecordPdu.role = ApeConsts.userTypesToId[this.classInfo.userRole] || 1; //NR_NORMAL用户的身份,根据用户登录时的身份设置 |
| 213 | nodeInfoRecordPdu.level = 0; | 220 | nodeInfoRecordPdu.level = 0; |
| 214 | - nodeInfoRecordPdu.handUpTime=0; | ||
| 215 | - nodeInfoRecordPdu.openCamera=0; | ||
| 216 | - nodeInfoRecordPdu.openMicrophones=0; | ||
| 217 | - nodeInfoRecordPdu.microphones=GlobalConfig.microphones; | ||
| 218 | - nodeInfoRecordPdu.cameras=GlobalConfig.cameras; | ||
| 219 | - nodeInfoRecordPdu.videoQuality=GlobalConfig.videoQuality;//设置分辨率的 | ||
| 220 | - nodeInfoRecordPdu.userIp=GlobalConfig.userIp; | 221 | + nodeInfoRecordPdu.handUpTime = 0; |
| 222 | + nodeInfoRecordPdu.openCamera = 0; | ||
| 223 | + nodeInfoRecordPdu.openMicrophones = 0; | ||
| 224 | + nodeInfoRecordPdu.microphones = GlobalConfig.microphones; | ||
| 225 | + nodeInfoRecordPdu.cameras = GlobalConfig.cameras; | ||
| 226 | + nodeInfoRecordPdu.videoQuality = GlobalConfig.videoQuality; //设置分辨率的 | ||
| 227 | + nodeInfoRecordPdu.userIp = GlobalConfig.userIp; | ||
| 221 | 228 | ||
| 222 | let conferenceRecord = {}; //RCConferenceRecord_T | 229 | let conferenceRecord = {}; //RCConferenceRecord_T |
| 223 | conferenceRecord._conference_id = this.classInfo.classId; | 230 | conferenceRecord._conference_id = this.classInfo.classId; |
| 1 | module.exports = function (umdConf) { | 1 | module.exports = function (umdConf) { |
| 2 | umdConf.devServer.host = '0.0.0.0'; | 2 | umdConf.devServer.host = '0.0.0.0'; |
| 3 | - //umdConf.webpackFeatures.enableEntryHTML();//生成 | 3 | + umdConf.devServer.port = '8282'; |
| 4 | + umdConf.webpackFeatures.enableEntryHTML('McuClient'); | ||
| 4 | umdConf.output.publicPath = ''; | 5 | umdConf.output.publicPath = ''; |
| 5 | umdConf.output.library = 'MCUClientEngine'; | 6 | umdConf.output.library = 'MCUClientEngine'; |
| 6 | 7 |
-
请 注册 或 登录 后发表评论