正在显示
4 个修改的文件
包含
33 行增加
和
3 行删除
| @@ -62,7 +62,7 @@ export default class MessageEntrance extends Emiter { | @@ -62,7 +62,7 @@ export default class MessageEntrance extends Emiter { | ||
| 62 | constructor() { | 62 | constructor() { |
| 63 | super(); | 63 | super(); |
| 64 | //sdk 信息 | 64 | //sdk 信息 |
| 65 | - GlobalConfig.sdkVersion = "v2.5.12.20170915"; | 65 | + GlobalConfig.sdkVersion = "v2.6.2.20170915"; |
| 66 | loger.warn("sdkVersion:" + GlobalConfig.sdkVersion); | 66 | loger.warn("sdkVersion:" + GlobalConfig.sdkVersion); |
| 67 | 67 | ||
| 68 | //设置 | 68 | //设置 |
| @@ -2799,6 +2799,14 @@ export default class MessageEntrance extends Emiter { | @@ -2799,6 +2799,14 @@ export default class MessageEntrance extends Emiter { | ||
| 2799 | * 发布流 | 2799 | * 发布流 |
| 2800 | * */ | 2800 | * */ |
| 2801 | _publishMedia(_params){ | 2801 | _publishMedia(_params){ |
| 2802 | + //判断是否能推流,当前课堂推流人数是有限制的 | ||
| 2803 | + let premission=GlobalConfig.getPublishPermission(); | ||
| 2804 | + loger.log("判断是否能推流->",premission); | ||
| 2805 | + if(!premission&&GlobalConfig.userRole!=ApeConsts.invisible){ | ||
| 2806 | + loger.warn("不能再打开更多设备"); | ||
| 2807 | + this._emit(MessageTypes.MCU_ERROR, MessageTypes.ERR_WEBRTC_PUBLISH_FULL); | ||
| 2808 | + return ; | ||
| 2809 | + } | ||
| 2802 | //ios和安卓的只需要更新数据即可 | 2810 | //ios和安卓的只需要更新数据即可 |
| 2803 | if(GlobalConfig.deviceType==1||GlobalConfig.deviceType==2){ | 2811 | if(GlobalConfig.deviceType==1||GlobalConfig.deviceType==2){ |
| 2804 | loger.log("调用webRtc推流"); | 2812 | loger.log("调用webRtc推流"); |
| @@ -172,6 +172,24 @@ class GlobalConfig { | @@ -172,6 +172,24 @@ class GlobalConfig { | ||
| 172 | static getUserInfoFromeNodeId(_nodeId){ | 172 | static getUserInfoFromeNodeId(_nodeId){ |
| 173 | return this.rosters[_nodeId]; | 173 | return this.rosters[_nodeId]; |
| 174 | } | 174 | } |
| 175 | + //获取推流权限,需要检查当前是否可以继续推流 | ||
| 176 | + static getPublishPermission(){ | ||
| 177 | + if(!this.rosters){ | ||
| 178 | + return true; | ||
| 179 | + } | ||
| 180 | + let openCounter=0; | ||
| 181 | + for (let i in this.rosters){ | ||
| 182 | + let item=this.rosters[i]; | ||
| 183 | + if(item&&(item.openCamera>0||item.openMicrophones>0)){ | ||
| 184 | + openCounter++; | ||
| 185 | + //统计当前已经开启摄像头和麦克风的人数,如果当前开启的人数大于等于最大允许的数量就不允许其他人再打开 | ||
| 186 | + if(openCounter>=GlobalConfig.maxMediaChannels){ | ||
| 187 | + return false; | ||
| 188 | + } | ||
| 189 | + } | ||
| 190 | + } | ||
| 191 | + return true; | ||
| 192 | + } | ||
| 175 | // 判断自己是否主持人角色 | 193 | // 判断自己是否主持人角色 |
| 176 | static get isHost() { | 194 | static get isHost() { |
| 177 | if (this.userRole == ApeConsts.host) { | 195 | if (this.userRole == ApeConsts.host) { |
| @@ -171,6 +171,9 @@ MessageTypes.ERR_INTERFACE_PARAMS_ERROR = 702; //调用的接口,传递的参 | @@ -171,6 +171,9 @@ MessageTypes.ERR_INTERFACE_PARAMS_ERROR = 702; //调用的接口,传递的参 | ||
| 171 | MessageTypes.ERR_MUSICSHARE_DELETE_FAILED = 720; //删除媒体共享文件失败 | 171 | MessageTypes.ERR_MUSICSHARE_DELETE_FAILED = 720; //删除媒体共享文件失败 |
| 172 | MessageTypes.ERR_MUSICSHARE_DELETE_FAILED_PARAM = 721; //删除媒体共享文件,参数错误 | 172 | MessageTypes.ERR_MUSICSHARE_DELETE_FAILED_PARAM = 721; //删除媒体共享文件,参数错误 |
| 173 | 173 | ||
| 174 | +MessageTypes.ERR_WEBRTC_PUBLISH_FULL = 800; //webRtc推流人数已经满,不能再打开更多的设备推流 | ||
| 175 | + | ||
| 176 | + | ||
| 174 | MessageTypes.ERR_INIT_RECORD_PLAY_BACK_FAILED = 910; //初始化录制回放失败 | 177 | MessageTypes.ERR_INIT_RECORD_PLAY_BACK_FAILED = 910; //初始化录制回放失败 |
| 175 | MessageTypes.ERR_GET_RECORD_PLAY_BACK_DATA_FAILED = 911; //获取录制回放数据失败 | 178 | MessageTypes.ERR_GET_RECORD_PLAY_BACK_DATA_FAILED = 911; //获取录制回放数据失败 |
| 176 | 179 | ||
| @@ -223,6 +226,8 @@ MessageTypes.ErrorReson[MessageTypes.ERR_SDK_FAILED] = "sdk还没初始化"; | @@ -223,6 +226,8 @@ MessageTypes.ErrorReson[MessageTypes.ERR_SDK_FAILED] = "sdk还没初始化"; | ||
| 223 | MessageTypes.ErrorReson[MessageTypes.ERR_INTERFACE_NONE] = "调用的接口不存在"; | 226 | MessageTypes.ErrorReson[MessageTypes.ERR_INTERFACE_NONE] = "调用的接口不存在"; |
| 224 | MessageTypes.ErrorReson[MessageTypes.ERR_INTERFACE_PARAMS_ERROR] = "调用的接口,传递的参数不正确"; | 227 | MessageTypes.ErrorReson[MessageTypes.ERR_INTERFACE_PARAMS_ERROR] = "调用的接口,传递的参数不正确"; |
| 225 | 228 | ||
| 229 | +MessageTypes.ErrorReson[MessageTypes.ERR_WEBRTC_PUBLISH_FULL] = "已经达到最大推流数量,不能再打开更多设备"; | ||
| 230 | + | ||
| 226 | MessageTypes.ErrorReson[MessageTypes.ERR_INIT_RECORD_PLAY_BACK_FAILED] = "初始化录制回放失败"; | 231 | MessageTypes.ErrorReson[MessageTypes.ERR_INIT_RECORD_PLAY_BACK_FAILED] = "初始化录制回放失败"; |
| 227 | MessageTypes.ErrorReson[MessageTypes.ERR_GET_RECORD_PLAY_BACK_DATA_FAILED] = "获取录制回放数据失败"; | 232 | MessageTypes.ErrorReson[MessageTypes.ERR_GET_RECORD_PLAY_BACK_DATA_FAILED] = "获取录制回放数据失败"; |
| 228 | 233 |
| @@ -326,8 +326,7 @@ class WebRtcApe extends Emiter { | @@ -326,8 +326,7 @@ class WebRtcApe extends Emiter { | ||
| 326 | this.localStream.close(); | 326 | this.localStream.close(); |
| 327 | //$(this.localViewId).html(""); | 327 | //$(this.localViewId).html(""); |
| 328 | $('#localVideoBox_' + this.uid).remove(); | 328 | $('#localVideoBox_' + this.uid).remove(); |
| 329 | - $("videoOwnerName_"+this.uid).remove(); | ||
| 330 | - | 329 | + $("#videoOwnerName_"+this.uid).remove(); |
| 331 | this.isPublish=false; | 330 | this.isPublish=false; |
| 332 | GlobalConfig.openCamera =0; | 331 | GlobalConfig.openCamera =0; |
| 333 | GlobalConfig.openMicrophones =0; | 332 | GlobalConfig.openMicrophones =0; |
-
请 注册 或 登录 后发表评论