diff --git a/src/EngineEntrance.js b/src/EngineEntrance.js
index 9e4dbb3..c4f01ae 100644
--- a/src/EngineEntrance.js
+++ b/src/EngineEntrance.js
@@ -34,14 +34,14 @@ let _audio_ape;
 let _doc_ape;
 let _whiteboard_ape;
 
-//初始化成功回调函数
-let _initSuccessCallBackFun;
-
-//加入会议成功回调函数
-let _joinClassSuccessCallBackFun;
-
-//监听mcu所有错误异常回调函数
-let _mcuErrorCallBackFun;
+////初始化成功回调函数
+//let _initSuccessCallBackFun;
+//
+////加入会议成功回调函数
+//let _joinClassSuccessCallBackFun;
+//
+////监听mcu所有错误异常回调函数
+//let _mcuErrorCallBackFun;
 
 //MCUClient 外部实例化主类
 export default class MessageEntrance extends Emiter {
@@ -163,7 +163,7 @@ export default class MessageEntrance extends Emiter {
     let errorMessage = {"code": _data, "reson": MessageTypes.ErrorReson[_data] + " " + option};
     loger.error("MCU_ERROR", errorMessage);
 
-    this._emit(MessageTypes.ERROR,errorMessage);
+    this._emit(MessageTypes.ERROR_EVENT,errorMessage);
 
 /*    if (_mcuErrorCallBackFun) {
       _mcuErrorCallBackFun(errorMessage);
@@ -251,9 +251,7 @@ export default class MessageEntrance extends Emiter {
 
   //Sass
   //初始化
-  _init(_param, _onSuccess, _mcuErrorCallBack) {
-    _initSuccessCallBackFun = _onSuccess;
-    _mcuErrorCallBackFun = _mcuErrorCallBack;
+  _init(_param) {
     //{"classId":"1653304953","portal":"112.126.80.182:80","userRole":"normal","userId":0}
     //判断传入的参数是否存在
     if (_param == null || EngineUtils.isEmptyObject(_param)) {
@@ -283,8 +281,8 @@ export default class MessageEntrance extends Emiter {
   }
 
   //外部请求加入会议
-  _joinClass(_param, _onSuccess) {
-    _joinClassSuccessCallBackFun = _onSuccess;
+  _joinClass(_param) {
+    //_joinClassSuccessCallBackFun = _onSuccess;
     //{"userName":"名字","password":""}
     if (_param == null || EngineUtils.isEmptyObject(_param)) {
       this._emit(MessageTypes.MCU_ERROR, MessageTypes.ERR_CLASS_JOIN_PARAM);
diff --git a/src/EverSocket.js b/src/EverSocket.js
index b462f75..d3b9e30 100644
--- a/src/EverSocket.js
+++ b/src/EverSocket.js
@@ -89,6 +89,7 @@ class EverSocket extends Emiter {
       loger.log('WebSocket,Timers已经销毁');
       return;
     }
+    this._setConnected(false);//先设置状态
     this.websocket.onopen = undefined;
     this.websocket.onclose = undefined;
     this.websocket.onerror = undefined;
@@ -100,7 +101,6 @@ class EverSocket extends Emiter {
     }
     this.websocket = undefined;
     this._enableEverSocket = false;
-    this._setConnected(false);
   }
 
   _onOpen() {
diff --git a/src/MessageTypes.js b/src/MessageTypes.js
index 6461a23..7da2795 100644
--- a/src/MessageTypes.js
+++ b/src/MessageTypes.js
@@ -1,55 +1,55 @@
 /**
- *事件定义和错误码定义
+ *事件消息ID和错误码 定义
  */
 
 function MessageTypes() {}
 
 //--------------------事件相关的定义--------------------------------------
 //初始化相关事件定义
-MessageTypes.CLASS_INIT_SUCCESS="100";//'class.init.success';//初始化成功
+MessageTypes.CLASS_INIT_SUCCESS="class_init_success";//'class.init.success';//初始化成功
 //MessageTypes.CLASS_INIT_FAILED='class.init.failed';//初始化失败
 
 //加入会议相关事件定义
-MessageTypes.CLASS_JOIN_MCU_SUCCESS ="210"// 'join.mcu.success';
+MessageTypes.CLASS_JOIN_MCU_SUCCESS ="class_join_mcu_success"// 'join.mcu.success';
 //MessageTypes.CLASS_JOIN_FAILED = 'join.class.failed';
 
 //会议信息和操作事件定义
 //MessageTypes.CLASS_SHOW_DETAIL = 'class_detail.message';
-MessageTypes.CLASS_JOIN_SUCCESS ="200"// 'join.class.success';
-MessageTypes.CLASS_SHOW_ROSTER_NUM ="201";// 'roster_num.message';
-MessageTypes.CLASS_INSERT_ROSTER ="202";// 'roster.insert.message';
-MessageTypes.CLASS_DELETE_ROSTER ="203"// 'roster.delete.message';
-MessageTypes.CLASS_NONENTITY_ROSTER ="204";// 'roster.nonentity.message';
+MessageTypes.CLASS_JOIN_SUCCESS ="class_join_success"// 'join.class.success';
+MessageTypes.CLASS_UPDATE_ROSTER_NUM ="class_update_roster_num";// 'roster_num.message';
+MessageTypes.CLASS_INSERT_ROSTER ="class_insert_roster";// 'roster.insert.message';
+MessageTypes.CLASS_DELETE_ROSTER ="class_delete_roster"// 'roster.delete.message';
+MessageTypes.CLASS_NONENTITY_ROSTER ="class_nonenetity_roster";// 'roster.nonentity.message';
 
-MessageTypes.CLASS_EXIT ="205";// 'class.exit';//退出 关闭会议
-MessageTypes.CLASS_UPTATE_STATUS ="206";// 'class.update.status';//更新会议状态信息
-MessageTypes.CLASS_STATUS_INFO_CHANGE="207";// 'class.status.info.change';//会议状态信息发生改变,需要保存数据到sass和同步MCU
+MessageTypes.CLASS_EXIT ="class_exit";// 'class.exit';//退出 关闭会议
+MessageTypes.CLASS_UPTATE_STATUS ="class_update_status";// 'class.update.status';//更新会议状态信息
+MessageTypes.CLASS_STATUS_INFO_CHANGE="class_status_info_change";// 'class.status.info.change';//会议状态信息发生改变,需要保存数据到sass和同步MCU
 
-MessageTypes.CLASS_UPDATE_TIMER="208";//'class.update.timer';//更新当前上课的时间
+MessageTypes.CLASS_UPDATE_TIMER="class_update_timer";//'class.update.timer';//更新当前上课的时间
 
-MessageTypes.CLASS_RECORD_START="209";//'class.record.start';//开始录制
+MessageTypes.CLASS_RECORD_START="class_record_start";//'class.record.start';//开始录制
 
 
 
 //聊天模块事件定义
-MessageTypes.CHAT_RECEIVE ="300";// 'chat.receive';
+MessageTypes.CHAT_RECEIVE ="chat_receive_message";// 'chat.receive';
 
 //视频模块事件定义
-MessageTypes.VIDEO_PLAY ="400";// 'video.play';//播放视频
-MessageTypes.VIDEO_STOP ="401"; //'video.stop';//停止视频
-MessageTypes.VIDEO_UPDATE ="402";// 'video.update';//废弃,400、401取代
-MessageTypes.VIDEO_BROADCAST= "403";//'video.broadcast';
+MessageTypes.VIDEO_PLAY ="video_play";// 'video.play';//播放视频
+MessageTypes.VIDEO_STOP ="video_stop"; //'video.stop';//停止视频
+//MessageTypes.VIDEO_UPDATE ="video.update";// 'video.update';//废弃,400、401取代
+MessageTypes.VIDEO_BROADCAST= "video_broadcast";//'video.broadcast';
 
 //音频模块事件定义
-MessageTypes.AUDIO_PLAY ="500";// 'audio.play';//播放
-MessageTypes.AUDIO_STOP = "501";//'audio.stop';//停止
-MessageTypes.AUDIO_UPDATE = "502";//'audio.update';
-MessageTypes.AUDIO_BROADCAST= "503";//'audio.broadcast';
+MessageTypes.AUDIO_PLAY ="audio_play";// 'audio.play';//播放
+MessageTypes.AUDIO_STOP = "audio_stop";//'audio.stop';//停止
+//MessageTypes.AUDIO_UPDATE = "502";//'audio.update';
+MessageTypes.AUDIO_BROADCAST= "audio_broadcast";//'audio.broadcast';
 
 
 //文档模块事件定义
-MessageTypes.DOC_DELETE="600";//'document.delete';//删除文档
-MessageTypes.DOC_UPDATE ="601";// 'document.update';//更新文档(添加、变更)
+MessageTypes.DOC_DELETE="document_delete";//'document.delete';//删除文档
+MessageTypes.DOC_UPDATE ="document_update";// 'document.update';//更新文档(添加、变更)
 //MessageTypes.DOC_SHOW = 'document.show';
 //MessageTypes.DOC_UPLOAD='document.upload';//上传文档
 //MessageTypes.DOC_COMMAND='document.command';//操作文档
@@ -60,15 +60,15 @@ MessageTypes.DOC_UPDATE ="601";// 'document.update';//更新文档(添加、变�
 
 
 //白板笔记事件定义
-MessageTypes.WHITEBOARD_ANNOTATION_UPDATE ="700";// 'whiteboard.annotation.update';
+MessageTypes.WHITEBOARD_ANNOTATION_UPDATE ="whiteboard_annotation_update";// 'whiteboard.annotation.update';
 //MessageTypes.WHITEBOARD_ANNOTAION_INSERT = 'whiteboard.annotation.insert';
 //MessageTypes.WHITEBOARD_ANNOTAION_DELETE = 'whiteboard.annotation.delete';
 //MessageTypes.WHITEBOARD_ANNOTATION_CLEAR = 'whiteboard.annotation.clear';
 
 
 //错误事件定义
-MessageTypes.MCU_ERROR ="1000";//"mcuError";//MCU错误(内部使用)
-MessageTypes.ERROR="1100";//外部监听错误的消息ID(外部使用)
+MessageTypes.MCU_ERROR ="mcu_error";//"mcuError";//MCU错误(内部使用)
+MessageTypes.ERROR_EVENT="error_event";//外部监听错误的消息ID(外部使用)
 
 
 //---------------错误消息 ErrorCode 定义-------------------------------------------------
diff --git a/src/Sass.js b/src/Sass.js
index 055b9b6..2b2c985 100644
--- a/src/Sass.js
+++ b/src/Sass.js
@@ -431,14 +431,14 @@ class Sass extends Emiter {
 
 }
 
-Sass.prototype.SUCCESS = Sass.SUCCESS = 'Sass.success';
-Sass.prototype.CLASS_INIT_SUCCESS = Sass.CLASS_INIT_SUCCESS = 'sass.class.init.success';
-Sass.prototype.CLASS_GET_CLASS_PARAM = Sass.CLASS_GET_CLASS_PARAM = 'class.getClassParam.message';
-Sass.prototype.CLASS_GET_CLASS_DETAIL = Sass.CLASS_GET_CLASS_DETAIL = 'class.getClassDetail.message';
-Sass.prototype.DELETE_DOCUMENT_SUCCESS = Sass.DELETE_DOCUMENT_SUCCESS = 'class.deleteDocumentSuccess.message';//删除文档成功
+Sass.prototype.SUCCESS = Sass.SUCCESS = 'Sass_success';
+Sass.prototype.CLASS_INIT_SUCCESS = Sass.CLASS_INIT_SUCCESS = 'sass_class_init_success';
+Sass.prototype.CLASS_GET_CLASS_PARAM = Sass.CLASS_GET_CLASS_PARAM = 'sass_class_getClassParam.message';
+Sass.prototype.CLASS_GET_CLASS_DETAIL = Sass.CLASS_GET_CLASS_DETAIL = 'sass_class_getClassDetail_message';
+Sass.prototype.DELETE_DOCUMENT_SUCCESS = Sass.DELETE_DOCUMENT_SUCCESS = 'sass_class_deleteDocumentSuccess_message';//删除文档成功
 
-Sass.prototype.CLASS_SAVE_STATUS_INFO_SUCCESS = Sass.CLASS_SAVE_STATUS_INFO_SUCCESS = 'class.saveClassStatusInfoSuccess.message';//保存会议状态信息
-Sass.prototype.CLASS_SAVE_RECORD_INFO_SUCCESS = Sass.CLASS_SAVE_RECORD_INFO_SUCCESS = 'class.saveClassRecordInfoSuccess.message';//保存录制会议信息
+Sass.prototype.CLASS_SAVE_STATUS_INFO_SUCCESS = Sass.CLASS_SAVE_STATUS_INFO_SUCCESS = 'sass_class_saveClassStatusInfoSuccess_message';//保存会议状态信息
+Sass.prototype.CLASS_SAVE_RECORD_INFO_SUCCESS = Sass.CLASS_SAVE_RECORD_INFO_SUCCESS = 'sass_class_saveClassRecordInfoSuccess_message';//保存录制会议信息
 
 
 export default new Sass;
diff --git a/src/apes/ConferApe.js b/src/apes/ConferApe.js
index 15b6313..48ed254 100644
--- a/src/apes/ConferApe.js
+++ b/src/apes/ConferApe.js
@@ -548,7 +548,7 @@ class ConferApe extends Ape {
 
   //广播当前的人数
   emitRosterChange() {
-    this._emit(MessageTypes.CLASS_SHOW_ROSTER_NUM, Object.keys(this.rosters).length);
+    this._emit(MessageTypes.CLASS_UPDATE_ROSTER_NUM, Object.keys(this.rosters).length);
   }
 
   ///////数据的封包和解包/////////////////////////////////////////