API 概览

大约 11 分钟

API 概览

即时通讯 IM 是一个高度可靠的全球通信平台,用户可以进行一对一单聊、群组聊天或聊天室聊天。用户可以通过发送文本消息、分享图片、音频、视频、文件、表情符号和位置进行沟通。

  • chatClient 是聊天 SDK Connection 类的实例,提供登录和登出即时通讯 IM 的方法,并管理 SDK 与聊天服务器之间的连接,同时也提供管理联系人,群组,聊天室等的方法 。
  • Message 类提供创建消息的方法。

如欲了解各模块中的方法和参数详情,请点击这里open in new window

连接与初始化

chatClient 提供登录和登出即时通讯 IM 的方法和事件,并管理 SDK 与聊天服务器之间的连接。

方法描述
open使用用户 ID 和 token 登录聊天服务器。
renewToken更新 token。
close退出登录账号。
isOpened检查 SDK 是否已连接到聊天服务器。
addEventHandler添加监听。
removeEventHandler移除监听。
onShow在小程序或者 uniApp 中,在应用的 onShow 声命周期中执行这个方法,这个方法会主动检测当前连接是否有效。
事件描述
onConnected成功连接到 IM 服务器时触发的回调。
onDisconnected与 IM 服务器断开连接时触发的回调。
onReconnecting正在重连的回调。
onOfflineMessageSyncStart开始从服务器拉取离线消息时触发。
onOfflineMessageSyncFinish从服务器拉取离线消息结束时触发。
onTokenExpiredtoken 已过期时触发。
onTokenWillExpiretoken 即将过期时触发。

发送消息

  • chatClient 提供发送和接收消息、管理会话(包括加载和删除会话)以及下载附件的方法和事件。
  • Message 类提供创建消息的方法。
  • EventHandler 类用于监听收消息,已读回执等事件。
方法描述
send发送消息。
Message.create创建消息。
deleteAllMessagesAndConversations清除全部会话及其聊天记录。
getGroupMsgReadUser查询哪些成员读取了群组消息。
getHistoryMessages从服务器拉取历史消息。
removeHistoryMessages删除历史消息。
recallMessage撤回消息。
reportMessage举报不当消息。
getSupportedLanguages查询翻译服务支持的语言。
translateMessage翻译文本消息。
addReaction添加 Reaction。
deleteReaction删除 Reaction。
getReactionlist获取 Reaction 列表。
getReactionDetail获取 Reaction 详情。
pinMessage置顶消息。
unpinMessage取消置顶消息。
getServerPinnedMessages分页获取会话中的置顶消息。
modifyMessage修改消息。
事件描述
onTextMessage当收到文本消息时触发。
onAudioMessage当收到音频消息时触发。
onVideoMessage当收到视频消息时触发。
onImageMessage当收到图片消息时触发。
onCmdMessage当收到透传消息时触发。
onCustomMessage当收到自定义消息时触发。
onFileMessage当收到文件消息时触发。
onLocationMessage当收到位置消息时触发。
onStatisticMessage当收到统计消息时触发。
onReceivedMessage当收到消息已到达服务器的确认消息时触发。
onDeliveredMessage当收到消息已被对方收到的确认消息时触发。
onReadMessage当收到消息已被对方阅读的确认消息时触发。
onChannelMessage当收到整个会话所有消息都置为已读的确认消息时触发。
onRecallMessage当收到撤回消息通知时触发。
onModifiedMessage当收到修改消息通知时触发。
onMessagePinEvent当收到置顶消息通知时触发。
onReactionChange当消息的 Reaction 发生变化时触发。
onOfflineMessageSyncStart开始从服务器拉取离线消息时触发。
onOfflineMessageSyncFinish从服务器拉取离线消息结束时触发。

会话

chatClient 提供管理会话的方法。

方法描述
deleteConversation删除会话。
getServerConversations分页获取服务器会话列表。
getServerPinnedConversations分页获取服务器端的置顶会话列表。
pinConversation设置是否置顶会话。
addConversationMark标记会话。
removeConversationMark取消标记会话。
getServerConversationsByFilter根据会话过滤选项从服务器分页查询会话列表。
deleteAllMessagesAndConversations清除全部会话及其聊天记录。
getLocalConversations获取本地会话列表。
getLocalConversation获取单个本地会话。
removeLocalConversation删除单个本地会话。
setLocalConversationCustomField设置本地会话自定义字段。
clearConversationUnreadCount对本地会话的未读消息数清零。

联系人

  • chatClient 提供管理聊天联系人(如添加、获取、修改和删除联系人)的方法。
  • EventHandler 类提供联系人事件监听。
方法描述
addContact添加好友。
deleteContact删除指定好友。
declineContactInvite拒绝好友申请。
acceptContactInvite接受好友申请。
getContacts获取联系人列表。
getContactsWithCursor分页获取联系人列表。
addUsersToBlocklist添加联系人至黑名单。
removeUserFromBlocklist将联系人从黑名单移除。
getBlocklist获取黑名单列表。
setContactRemark设置好友备注。
addEventHandler添加联系人变更监听。
removeEventHandler删除联系人变更监听。
事件描述
onContactInvited当收到好友请求时触发。
onContactAgreed当好友请求被接受时触发。
onContactRefuse当好友请求被拒绝时触发。
onContactAdded当添加好友成功后触发。
onContactDeleted当删除好友成功后触发。

群组

  • chatClient 提供群组管理的方法,如群组创建和解散以及成员管理。
  • EventHandler类提供群组管理事件监听。
方法描述
joinGroup申请加入群组。
acceptGroupJoinRequest同意用户加入群。仅群主和管理员可调用此方法。
rejectGroupJoinRequest拒绝入群申请。仅群主和管理员可调用此方法。
inviteUsersToGroup邀请用户加群。
acceptGroupInvite接受入群邀请。
rejectGroupInvite拒绝入群邀请。
leaveGroup离开群组。
getJoinedGroups列出某用户加入的所有群组。
getPublicGroups分页获取公开群。
createGroup创建群组。
destroyGroup解散群组。仅群主可调用此方法。
changeGroupOwner转让群组。仅群主可调用此方法。
modifyGroup修改群信息。仅群组管理员可调用此方法。
getGroupInfo获取群组详情。
fetchGroupAnnouncement获取群公告。
updateGroupAnnouncement更新群公告。
getGroupAdmin获取群组下所有管理员。
setGroupAdmin设置群管理员。仅群主可调用此方法。
removeGroupAdmin移除群管理员。仅群主可调用此方法。
blockGroupMember将单个成员加入群组黑名单。仅群主和管理员可调用此方法。
blockGroupMembers批量添加成员至群组黑名单。仅群组管理员可调用此方法。
unblockGroupMember将单个成员从群组黑名单移除。仅群组管理员可调用此方法。
unblockGroupMembers将成员批量移出群组黑名单。仅群主和管理员可调用此方法。
getGroupBlocklist获取群组黑名单。
muteGroupMember将一个组成员禁言。仅群主和管理员可调用此方法。
unmuteGroupMember解除禁言。仅群主和管理员可调用此方法。
getGroupMutelist获取群组的禁言列表。
disableSendGroupMsg设置全员禁言。仅群组管理员及以上身份可调用此方法。
enableSendGroupMsg解除全员禁言。仅群组管理员及以上身份可调用此方法。
addUsersToGroupAllowlist添加白名单。白名单里的成员可以在群禁言之后继续发言。仅群组管理员及以上身份可调用此方法。
removeGroupAllowlistMember移除白名单。仅群组管理员及以上身份可调用此方法。
getGroupAllowlist获取群组白名单列表。仅群组管理员及以上身份可调用此方法。
isInGroupAllowlist检查当前用户是否在群组白名单中。app 管理员可查询所有用户是否在群组白名单中;app 普通用户可查询自己是否在群组白名单中。
setGroupMemberAttributes设置群成员自定义属性。
getGroupMemberAttributes获取单个群成员所有自定义属性。
getGroupMembersAttributes根据指定的属性 key 获取多个群成员的自定义属性。
事件描述
onGroupEvent当有群组事件发生时触发。

聊天室

  • chatClient 提供聊天室管理的方法,如加入和离开聊天室、获取聊天室列表,以及管理成员权限。
  • EventHandler 类提供聊天室事件监听。
方法描述
joinChatRoom加入聊天室。
leaveChatRoom离开聊天室。
getChatRooms分页获取聊天室列表。
listChatRoomMembers分页列出聊天室的所有成员。
modifyChatRoom修改聊天室详情。
fetchChatRoomAnnouncement获取聊天室公告。
updateChatRoomAnnouncement更新聊天室公告。
setChatRoomAdmin设置聊天室管理员。该方法只有聊天室所有者才有权限调用。
removeChatRoomAdmin移除聊天室管理员。该方法只有聊天室所有者才有权限调用。
getChatRoomAdmin获取聊天室的所有管理员。
blockChatRoomMember添加单个成员至聊天室黑名单。仅聊天室所有者和管理员有权限调用该方法。
unblockChatRoomMember将单个用户从聊天室黑名单移除。仅聊天室所有者和管理员有权限调用该方法。
blockChatRoomMembers批量添加成员至聊天室黑名单。仅聊天室所有者和管理员有权限调用该方法。
unblockChatRoomMembers批量将成员从聊天室黑名单移除。仅聊天室所有者和管理员有权限调用该方法。
getChatRoomBlocklist获取聊天室黑名单。
muteChatRoomMember禁止聊天室用户发言。该方法只有聊天室所有者才有权限调用。
unmuteChatRoomMember解除对聊天室用户的禁言。仅聊天室所有者和管理员有权限调用该方法。
disableSendChatRoomMsg聊天室全员禁言。仅聊天室创建者和管理员可调用此方法。
enableSendChatRoomMsg聊天室解除全员禁言。仅聊天室创建者和管理员可调用此方法。
getChatRoomMutelist获取聊天室所有被禁言成员。
addUsersToChatRoomAllowlist批量增加聊天室白名单成员。仅聊天室所有者和管理员有权限调用该方法。
removeChatRoomAllowlistMember批量移除聊天室白名单成员。仅聊天室所有者和管理员有权限调用该方法。
isInChatRoomAllowlist查询聊天室成员是否是在白名单中。普通成员可查询自己是否在聊天室白名单中;聊天室所有者和管理员可查询其他成员是否在白名单中。
getChatRoomAllowlist获取聊天室白名单列表。仅聊天室所有者和管理员有权调用该方法。
setChatRoomAttribute设置单个聊天室自定义属性。
setChatRoomAttributes批量设置聊天室属性。
removeChatRoomAttribute移除单个聊天室自定义属性。
removeChatRoomAttributes批量移除聊天室属性。
getChatRoomAttributes获取聊天室全部的自定义属性。
getJoinedChatRooms获取用户加入的聊天室列表
事件描述
onChatroomEvent当有聊天室事件时触发。

用户在线状态订阅

  • chatClient 提供管理用户在线状态订阅的方法。
  • EventHandler 类提供订阅用户状态变更监听。
方法描述
publishPresence发布自定义在线状态。
subscribePresence订阅指定用户的在线状态。订阅成功后,在线状态变更时订阅者会收到回调通知。
unsubscribePresence取消订阅指定用户的在线状态。
getSubscribedPresencelist分页查询当前用户订阅了哪些用户的在线状态。
getPresenceStatus查询指定用户的当前在线状态。
事件描述
onPresenceStatusChange当订阅的用户在线状态发生变化时触发。

子区

  • chatClient 提供了管理子区的方法,包括创建、解散子区以及成员管理。
  • EventHandler 类提供子区事件监听。
方法描述
createChatThread创建子区。
joinChatThread加入子区。
leaveChatThread退出子区。
destroyChatThread解散子区。仅子区所属群组的群主和管理员可以调用该方法。
changeChatThreadName修改子区名称。
getChatThreadMembers分页获取子区成员。
removeChatThreadMember移除子区成员。
getJoinedChatThreads分页获取当前用户加入的子区列表。
getChatThreads分页获取当前用户加入指定群组的子区列表。
getChatThreadLastMessage批量获取指定子区中的最新一条消息。
getChatThreadDetail获取子区详情。
事件描述
onChatThreadChange当子区发生变化时触发。

离线推送

chatClient 类提供了配置离线推送服务的方法。

方法描述
setSilentModeForAll设置当前登录用户的免打扰设置。
getSilentModeForAll获取当前用户的免打扰设置。
setSilentModeForConversation设置会话的免打扰。
clearRemindTypeForConversation清除会话的离线推送提醒类型设置。
getSilentModeForConversation获取会话的免打扰设置。
getSilentModeForConversations批量获取指定会话的免打扰设置。
setPushPerformLanguage设置用户推送翻译语言。
getPushPerformLanguage获取用户设置的推送翻译语言。

用户属性

chatClient 类提供了管理用户属性的方法,包括获取和更新用户属性。

方法描述
updateUserInfo修改当前用户的用户属性。
fetchUserInfoById根据用户 ID 获取用户属性。

事件监听

EventHandler类提供事件监听方法。

方法描述
addEventHandler添加事件监听。
removeEventHandler移除事件监听。
上次编辑于: