李勇

1.修复IE 无法打开网页的问题

2.修复录制回放结束后数据没有清空,导致再次重放时白板标注不显示的问题
此 diff 太大无法显示。
@@ -26,7 +26,7 @@ import ArrayBufferUtil from 'libs/ArrayBufferUtil'; @@ -26,7 +26,7 @@ import ArrayBufferUtil from 'libs/ArrayBufferUtil';
26 import UTF8 from 'utf-8'; 26 import UTF8 from 'utf-8';
27 27
28 let loger = Loger.getLoger('MessageEntrance'); 28 let loger = Loger.getLoger('MessageEntrance');
29 -let _sdkInfo = {"version": "v.1.8.0.20170314-1", "author": "www.3mang.com"}; 29 +let _sdkInfo = {"version": "v.1.8.1.20170327-5", "author": "www.3mang.com"};
30 30
31 //APE 31 //APE
32 let _sass; 32 let _sass;
@@ -20,14 +20,27 @@ class Loger { @@ -20,14 +20,27 @@ class Loger {
20 } 20 }
21 21
22 initId() { 22 initId() {
23 - const infoType = this.sdkInfo.constructor.name.toLowerCase(); 23 + if(!this.sdkInfo){
  24 + console.log("this.sdkInfo无效-->",this.sdkInfo);
  25 + return '';
  26 + }
  27 + const infoType = Object.prototype.toString.call(this.sdkInfo);
  28 + if (infoType === '[object String]') {
  29 + return this.sdkInfo;
  30 + }
  31 + if (infoType === '[object Object]') {
  32 + return this.sdkInfo.mid || '';
  33 + }
  34 + return '';
  35 +
  36 + /* const infoType = this.sdkInfo.constructor.name.toLowerCase();
24 if (infoType === 'string') { 37 if (infoType === 'string') {
25 return this.sdkInfo; 38 return this.sdkInfo;
26 } 39 }
27 if (infoType === 'object') { 40 if (infoType === 'object') {
28 return this.sdkInfo.mid || ''; 41 return this.sdkInfo.mid || '';
29 } 42 }
30 - return ''; 43 + return '';*/
31 } 44 }
32 45
33 log(...msg) { 46 log(...msg) {
@@ -311,12 +311,12 @@ class RecordPlayBackParse extends Emiter { @@ -311,12 +311,12 @@ class RecordPlayBackParse extends Emiter {
311 GlobalConfig.recordPlaybackMaxTime = this._recordPlaybackMaxTime; 311 GlobalConfig.recordPlaybackMaxTime = this._recordPlaybackMaxTime;
312 loger.log("录制回放数据解析完成,录制回放的总时间长为->", this._recordPlaybackMaxTime); 312 loger.log("录制回放数据解析完成,录制回放的总时间长为->", this._recordPlaybackMaxTime);
313 //console.log("_messages", this._messages); 313 //console.log("_messages", this._messages);
314 - loger.log("_conferApeMssages", this._conferApeMssages);  
315 - loger.log("_chatApeMssages", this._chatApeMssages);  
316 - loger.log("_docApeMssages", this._docApeMssages);  
317 - loger.log("_whiteApeMssages", this._whiteApeMssages);  
318 - loger.log("_videoApeMssages", this._videoApeMssages);  
319 - loger.log("_audioApeMssages", this._audioApeMssages); 314 + //loger.log("_conferApeMssages", this._conferApeMssages);
  315 + //loger.log("_chatApeMssages", this._chatApeMssages);
  316 + //loger.log("_docApeMssages", this._docApeMssages);
  317 + //loger.log("_whiteApeMssages", this._whiteApeMssages);
  318 + //loger.log("_videoApeMssages", this._videoApeMssages);
  319 + //loger.log("_audioApeMssages", this._audioApeMssages);
320 320
321 this._emit(RecordPlayBackParse.CLASS_JOIN_RECORD_PLAYBACK_SUCCESS, {"recordPlaybackMaxTime": this._recordPlaybackMaxTime}); 321 this._emit(RecordPlayBackParse.CLASS_JOIN_RECORD_PLAYBACK_SUCCESS, {"recordPlaybackMaxTime": this._recordPlaybackMaxTime});
322 } 322 }
@@ -353,6 +353,7 @@ class RecordPlayBackParse extends Emiter { @@ -353,6 +353,7 @@ class RecordPlayBackParse extends Emiter {
353 if (!this._isReady) { 353 if (!this._isReady) {
354 return {"code": ApeConsts.RETURN_FAILED, "data": "录制回放还未准备完成"}; 354 return {"code": ApeConsts.RETURN_FAILED, "data": "录制回放还未准备完成"};
355 } 355 }
  356 + console.log("classStatusInfo",GlobalConfig.classStatusInfo);
356 this._startTimerCounter(); 357 this._startTimerCounter();
357 this._emit(MessageTypes.RECORD_PLAYBACK_UPDATE, {"status": PLAY}); 358 this._emit(MessageTypes.RECORD_PLAYBACK_UPDATE, {"status": PLAY});
358 } 359 }
@@ -361,6 +362,9 @@ class RecordPlayBackParse extends Emiter { @@ -361,6 +362,9 @@ class RecordPlayBackParse extends Emiter {
361 stopRecordPlayback(_param) { 362 stopRecordPlayback(_param) {
362 this._stopTimerCounter(); 363 this._stopTimerCounter();
363 this._recordPlaybackTimestamp = 0; 364 this._recordPlaybackTimestamp = 0;
  365 + //把记录的文档信息也要清除
  366 + GlobalConfig.activeDocId=0;
  367 + GlobalConfig.activeDocCurPage=1;
364 this._emit(MessageTypes.RECORD_PLAYBACK_UPDATE, {"status": STOP}); 368 this._emit(MessageTypes.RECORD_PLAYBACK_UPDATE, {"status": STOP});
365 } 369 }
366 370
@@ -379,8 +383,11 @@ class RecordPlayBackParse extends Emiter { @@ -379,8 +383,11 @@ class RecordPlayBackParse extends Emiter {
379 return {"code": ApeConsts.RETURN_FAILED, "data": "参数不正确"}; 383 return {"code": ApeConsts.RETURN_FAILED, "data": "参数不正确"};
380 } 384 }
381 //先暂停,更改进行的时间 385 //先暂停,更改进行的时间
382 - this._stopTimerCounter() 386 + this._stopTimerCounter();
383 this._recordPlaybackTimestamp = _param.time || 0; 387 this._recordPlaybackTimestamp = _param.time || 0;
  388 + //把记录的文档信息也要清除
  389 + GlobalConfig.activeDocId=0;
  390 + GlobalConfig.activeDocCurPage=1;
384 391
385 //各个ape模块查找关键帧数据 392 //各个ape模块查找关键帧数据
386 this._searchKeyfram(); 393 this._searchKeyfram();
@@ -121,7 +121,10 @@ export default class Ape extends Emiter { @@ -121,7 +121,10 @@ export default class Ape extends Emiter {
121 loger.log('REG OBJECT EVENT ->', pdu.id2type(sub_type)); 121 loger.log('REG OBJECT EVENT ->', pdu.id2type(sub_type));
122 switch (sub_type) { 122 switch (sub_type) {
123 case pdu.RCPDU_REG_ROSTER_INSERT_PDU: 123 case pdu.RCPDU_REG_ROSTER_INSERT_PDU:
124 - let rosterInsertData = pdu['RCRegstryRosterInsertItemPdu'].decode(user_data); 124 + //let rosterInsertData = pdu['RCRegstryRosterInsertItemPdu'].decode(user_data);
  125 + loger.log('RCPDU_REG_ROSTER_INSERT_PDU---->');
  126 + console.log(user_data);
  127 + let rosterInsertData = pdu['RCRegistryRosterInsertItemPdu'].decode(user_data);
125 let rosterInsertItems = rosterInsertData.items; 128 let rosterInsertItems = rosterInsertData.items;
126 let rosterInsertItemsLen = rosterInsertItems.length; 129 let rosterInsertItemsLen = rosterInsertItems.length;
127 for (let i = 0; i < rosterInsertItemsLen; ++i) { 130 for (let i = 0; i < rosterInsertItemsLen; ++i) {
@@ -493,8 +493,9 @@ class ConferApe extends Ape { @@ -493,8 +493,9 @@ class ConferApe extends Ape {
493 } 493 }
494 494
495 rosterInsertHandler(nodeId, nodeData) { 495 rosterInsertHandler(nodeId, nodeData) {
  496 + loger.log("rosterInsertHandler--->");
496 if (GlobalConfig.nodeId == nodeId) { 497 if (GlobalConfig.nodeId == nodeId) {
497 - // loger.log("自己加入 rosterInsertHandler"); 498 +
498 } else { 499 } else {
499 // loger.log("有人加入 rosterInsertHandler"); 500 // loger.log("有人加入 rosterInsertHandler");
500 this.rosterUpdateHandler(nodeId, nodeData); 501 this.rosterUpdateHandler(nodeId, nodeData);
@@ -119,7 +119,7 @@ class MCU extends Emiter { @@ -119,7 +119,7 @@ class MCU extends Emiter {
119 let subTypeLabel = pdu.id2type(pduMsg.subType); 119 let subTypeLabel = pdu.id2type(pduMsg.subType);
120 //loger.log('MCU-SecondLayer封装消息', 'sessionId', sessionLabel, pduMsg.sessionId, 'subtype', subTypeLabel, pduMsg.subType); 120 //loger.log('MCU-SecondLayer封装消息', 'sessionId', sessionLabel, pduMsg.sessionId, 'subtype', subTypeLabel, pduMsg.subType);
121 121
122 - loger.warn('MCU->收到消息处理->', GlobalConfig.mcuDelay, GlobalConfig.messageDelay); 122 + loger.warn('MCU->收到消息处理->subType->',pduMsg.subType, GlobalConfig.mcuDelay, GlobalConfig.messageDelay);
123 //延迟处理消息(3个条件--->ape允许延迟&&客户端设置需要延迟&&Sass设置的延迟时间大于0) 123 //延迟处理消息(3个条件--->ape允许延迟&&客户端设置需要延迟&&Sass设置的延迟时间大于0)
124 if (ape._apeDelayed && GlobalConfig.messageDelay && GlobalConfig.mcuDelay > 0) { 124 if (ape._apeDelayed && GlobalConfig.messageDelay && GlobalConfig.mcuDelay > 0) {
125 loger.warn('延迟处理消息->', GlobalConfig.mcuDelay); 125 loger.warn('延迟处理消息->', GlobalConfig.mcuDelay);