EVENT

接入侧需要监听处理的事件列表,详细如下:

Members

(static) SDK_READY

SDK 进入 ready 状态时触发,接入侧监听此事件,然后可调用 SDK 发送消息等api,使用 SDK 的各项功能

Example
let onSdkReady = function(event) {
  let message = tim.createTextMessage({ to: 'user1', conversationType: 'C2C', payload: { text: 'Hello world!' }});
  tim.sendMessage(message);
};
tim.on(TIM.EVENT.SDK_READY, onSdkReady);

(static) SDK_NOT_READY

SDK 进入 not ready 状态时触发,此时接入侧将无法使用 SDK 发送消息等功能。
如果想恢复使用,接入侧需调用 login 接口,驱动 SDK 进入 ready 状态

Example
let onSdkNotReady = function(event) {
  // 如果想使用发送消息等功能,接入侧需驱动 SDK 进入 ready 状态,重新调用 login 接口即可,如下所示:
  // tim.login({userID: 'your userID', userSig: 'your userSig'});
};
tim.on(TIM.EVENT.SDK_NOT_READY, onSdkNotReady);

(static) MESSAGE_RECEIVED

SDK 收到推送的单聊、群聊、群提示、群系统通知的新消息,可通过遍历 event.data 获取消息列表数据并渲染到页面

Example
let onMessageReceived = function(event) {
  // event.data - 存储 Message 对象的数组 - [Message]
};
tim.on(TIM.EVENT.MESSAGE_RECEIVED, onMessageReceived);

(static) CONVERSATION_LIST_UPDATED

会话列表更新,event.data 是包含 Conversation 对象的数组

Example
let onConversationListUpdated = function(event) {
  console.log(event.data); // 包含 Conversation 实例的数组
};
tim.on(TIM.EVENT.CONVERSATION_LIST_UPDATED, onConversationListUpdated);

(static) GROUP_LIST_UPDATED

SDK 群组列表更新时触发,可通过遍历 event.data 获取群组列表数据并渲染到页面

Example
let onGroupListUpdated = function(event) {
   console.log(event.data);// 包含 Group 实例的数组
};
tim.on(TIM.EVENT.GROUP_LIST_UPDATED, onGroupListUpdated);

(static) GROUP_SYSTEM_NOTICE_RECEIVED

See:

SDK 收到新的群系统通知时触发

Example
let onGroupSystemNoticeReceived = function(event) {
  const type = event.data.type; // 群系统通知的类型,详见 群系统通知类型常量及含义
  const message = event.data.message; // 群系统通知的消息实例,详见 Message
  console.log(message.payload); // 消息内容. 群系统通知 payload 结构描述
};
tim.on(TIM.EVENT.GROUP_SYSTEM_NOTICE_RECEIVED, onGroupSystemNoticeReceived);

(static) PROFILE_UPDATED

自己或好友的资料发生变更时触发,event.data 是包含 Profile 对象的数组

Example
let onProfileUpdated = function(event) {
  console.log(event.data); // 包含 Profile 对象的数组
};
tim.on(TIM.EVENT.PROFILE_UPDATED, onProfileUpdated);

(static) BLACKLIST_UPDATED

SDK 黑名单列表更新时触发

Example
let onBlacklistUpdated = funciton(event) {
  console.log(event.data); // 我的黑名单列表,结构为包含用户 userID 的数组
};
tim.on(TIM.EVENT.BLACKLIST_UPDATED, onBlacklistUpdated);

(static) KICKED_OUT

用户被踢下线时触发

Example
let onKickedOut = funciton(event) {
  console.log(event.data.type);
  // 1.TIM.TYPES.KICKED_OUT_MULT_ACCOUNT(Web端,同一账号,多页面登录被踢)
  // 2.TIM.TYPES.KICKED_OUT_MULT_DEVICE(同一账号,多端登录被踢)
};
tim.on(TIM.EVENT.KICKED_OUT, onKickedOut);

(static) ERROR

SDK 遇到错误时触发

Example
let onError = function(event) {
  // event.data.code - 错误码
  // event.data.message - 错误信息
};
tim.on(TIM.EVENT.ERROR, onError);