NIM 跨平台 C++ SDK
载入中...
搜索中...
未找到
NIM 跨平台 C++ SDK

网易云信 IM 即时通讯服务基于网易二十余年的 IM 技术积累,致力于打造最稳定的即时通讯云平台。NIM SDK 为 PC 应用提供完善的即时通信功能开发能力,屏蔽其内部复杂细节,对外提供较为简洁的 API 接口,方便您快速集成即时通信功能。

NIM 跨平台 C++ SDK 包含 V1 及 V2 两套 API 版本,V2 系列 API 提供与其他语言一致的 API 接口,V1 为历史版本接口,我们将持续保留 V1 系列 API。

如果您是老用户,可以无缝升级到 >=10.0.0 版本的 SDK,一直使用 V1 系列的 API,为您逐步迁移到 V2 提供稳定保障。

如果您是新用户,我们推荐您直接使用 V2 系列的 API,他们都以 v2 命名空间开头。以下是对接不同版本 API 的接入指南:

注解
NIM V1 API SDK 接入指引,请参见 V1 接入指引
NIM V2 API SDK 接入指引,请参见 V2 接入指引

核心类列表

V2 核心类列表

V1 核心类列表

  • nim::Client:NIM SDK 的入口,提供 SDK 初始化和登录/登出等相关接口与回调。
  • nim::Talk:提供消息收发相关接口与回调。
  • nim::Session: 提供会话列表相关接口与回调,如会话列表查询、会话列表置顶、未读数清零等。
  • nim::MsgLog: 提供历史消息相关接口与回调,如查询历史消息、删除某个会话的聊天记录、批量设置已读状态等。
  • nim::TalkEx:提供消息扩展能力,如消息收藏、Thread、快捷评论(Reaction)、会话置顶等。
  • nim::User: 提供用户相关接口与回调,如更新用户名片、设置/取消黑名单、设置/取消静音名单等。
  • nim::Friend: 提供好友关系相关接口与回调,如添加好友、删除好友、获取好友信息等。
  • nim::SubscribeEvent:提供事件订阅与发布相关接口与回调。
  • nim::SystemMsg:提供系统通知相关接口与回调,如发送自定义系统通知、查询系统通知和删除系统通知等。
  • nim::Team: 提供群组相关接口与回调,如创建群、申请入群、解散群等。
  • nim::SuperTeam:提供超大群相关接口与回调,如查询群信息、查询群成员信息、加人入群等。
  • nim::NOS:提供网易云存储服务相关接口。
  • nim::DocTrans:提供文档转换接口。
  • nim::QChat:提供圈组初始化与登录登出相关接口与回调。
  • nim::Server:提供圈组服务器相关接口与回调,如创建服务器、邀请服务器成员、以游客身份进入服务器、订阅服务器等。
  • nim::Channel:提供圈组频道相关接口与回调,如创建频道、查询频道、订阅频道、更新频道黑白名单等。
  • nim::Role:提供圈组身份组相关接口与回调,如创建身份组、添加身份组成员、查询身份组等。
  • nim::Message:提供圈组消息收发/查询相关接口与回调。
  • nim::SystemNotification:提供圈组系统通知相关接口与回调。
  • nim_audio::Audio:提供 IM 语音录制与播放相关接口与回调。
注解
以下仅列出各模块的部分核心 API。全量 API 请进入以上所列的类进行查询。

初始化与登录

V2 初始化与登录

方法 描述
v2::V2NIMClient::init 初始化 SDK
v2::V2NIMClient::uninit 反初始化 SDK
v2::V2NIMClient::updateAppKey 初始化后更新 AppKey 信息
v2::V2NIMLoginService::login 登录 IM
v2::V2NIMLoginService::logout 登出 IM
v2::V2NIMLoginService::getLoginUser 获取当前登录用户
v2::V2NIMLoginService::getLoginStatus 获取当前登录状态
v2::V2NIMLoginService::getLoginClients 获取登录客户端列表
v2::V2NIMLoginService::kickOffline 踢掉登录客户端下线
v2::V2NIMLoginService::getKickedOfflineDetail 获取被踢下线原因
v2::V2NIMLoginService::getConnectStatus 获取连接状态
v2::V2NIMLoginService::getDataSync 获取数据同步状态
v2::V2NIMLoginService::getChatroomLinkAddress 获取聊天室 link 地址
v2::V2NIMLoginService::setReconnectDelayProvider 设置获取重连延时回调
v2::V2NIMLoginService::addLoginListener 注册登录监听器
v2::V2NIMLoginService::removeLoginListener 移除登录监听器
v2::V2NIMLoginService::addLoginDetailListener 添加登录详情监听
v2::V2NIMLoginService::removeLoginDetailListener 移除登录详情监听器

V1 初始化与登录

方法 描述
nim::Client::Init 初始化 SDK
nim::Client::Login 登录 IM
nim::Client::Logout 登出 IM
nim::Client::KickOtherClient 将使用相同 IM 账号登录的其他设备端踢下线

消息(单聊与群聊)

V2 消息(单聊与群聊)

方法 描述
v2::V2NIMMessageCreator::createTextMessage 创建文本消息
v2::V2NIMMessageCreator::createImageMessage 创建图片消息
v2::V2NIMMessageCreator::createAudioMessage 创建语音消息
v2::V2NIMMessageCreator::createVideoMessage 创建视频消息
v2::V2NIMMessageCreator::createFileMessage 创建文件消息
v2::V2NIMMessageCreator::createLocationMessage 创建地理位置消息
v2::V2NIMMessageCreator::createCustomMessage 创建自定义消息
v2::V2NIMMessageCreator::createTipsMessage 创建提示(tip)消息
v2::V2NIMMessageCreator::createForwardMessage 创建转发消息
v2::V2NIMMessageCreator::createCallMessage 创建话单消息
v2::V2NIMMessageService::sendMessage 发送消息
v2::V2NIMMessageService::replyMessage 回复消息(Thread 场景)
v2::V2NIMMessageService::modifyMessage 更新消息
v2::V2NIMMessageService::revokeMessage 撤回消息
v2::V2NIMMessageService::getMessageList 查询消息
v2::V2NIMMessageService::getMessageListByIds 根据 ID 列表查询消息
v2::V2NIMMessageService::getMessageListByRefers 根据消息引用列表查询消息
v2::V2NIMMessageService::getThreadMessageList 查询 Thread 消息历史
v2::V2NIMMessageService::getLocalThreadMessageList 查询本地 Thread 消息历史
v2::V2NIMMessageService::deleteMessage 删除消息
v2::V2NIMMessageService::deleteMessages 批量删除消息
v2::V2NIMMessageService::clearHistoryMessage 清空历史消息
v2::V2NIMMessageService::updateMessageLocalExtension 更新消息本地扩展字段
v2::V2NIMMessageService::insertMessageToLocal 插入本地消息
v2::V2NIMMessageService::pinMessage PIN 某条消息
v2::V2NIMMessageService::unpinMessage 取消 PIN 某条消息
v2::V2NIMMessageService::updatePinMessage 更新某条 PIN 消息的扩展
v2::V2NIMMessageService::getPinnedMessageList 查询某个会话的所有 PIN 消息
v2::V2NIMMessageService::addQuickComment 添加快捷评论
v2::V2NIMMessageService::removeQuickComment 移除快捷评论
v2::V2NIMMessageService::getQuickCommentList 获取快捷评论列表
v2::V2NIMMessageService::addCollection 添加收藏
v2::V2NIMMessageService::removeCollections 移除收藏
v2::V2NIMMessageService::updateCollectionExtension 更新收藏扩展字段
v2::V2NIMMessageService::getCollectionListByOption 分页获取收藏列表
v2::V2NIMMessageService::sendP2PMessageReceipt 发送 P2P 消息已读回执
v2::V2NIMMessageService::getP2PMessageReceipt 查询 P2P 消息已读回执状态
v2::V2NIMMessageService::isPeerRead 查询 P2P 消息对方是否已读
v2::V2NIMMessageService::sendTeamMessageReceipts 发送群消息已读回执
v2::V2NIMMessageService::getTeamMessageReceipts 获取群消息已读回执状态
v2::V2NIMMessageService::getTeamMessageReceiptDetail 获取群消息已读回执详情
v2::V2NIMMessageService::voiceToText 语音转文字
v2::V2NIMMessageService::cancelMessageAttachmentUpload 取消文件消息附件上传
v2::V2NIMMessageService::searchCloudMessages 搜索云端消息
v2::V2NIMMessageService::registerCustomAttachmentParser 注册自定义消息附件解析器
v2::V2NIMMessageService::unRegisterCustomAttachmentParser 注销自定义消息附件解析器
v2::V2NIMMessageService::addMessageListener 添加消息监听器
v2::V2NIMMessageService::removeMessageListener 移除消息监听器

V1 消息(单聊与群聊)

方法 描述
nim::Talk::CreateTextMessage 构建文本消息
nim::Talk::CreateAudioMessage 构建语音消息
nim::Talk::CreateFileMessage 构建文件消息
nim::Talk::CreateImageMessage 构建图片消息
nim::Talk::CreateVideoMessage 构建视频消息
nim::Talk::CreateLocationMessage 构建地理位置消息
nim::Talk::CreateTipMessage 构建提示(tip)消息
nim::Talk::CreateRetweetMessage 构建转发消息
nim::Talk::SendMsg 发送消息
nim::Talk::StopSendMsg 停止正在发送中的消息(目前只支持发送文件消息时的终止)
nim::Talk::RecallMsgEx 撤回消息
nim::Talk::ReplyMessage 回复消息(Thread 场景)
nim::MsgLog::GetMessagesDynamically 查询历史消息,基于本地可信时间段信息来动态判断获取消息的途径
nim::MsgLog::BatchStatusDeleteAsyncEx 删除某个会话的全部聊天记录
nim::MsgLog::BatchStatusReadAsync 批量设置已读状态
nim::MsgLog::DeleteAllAsyncEx 删除全部消息历史
nim::MsgLog::DeleteAsync 删除一条指定的消息
nim::MsgLog::DeleteBySessionTypeAsyncEx 删除指定会话类型的所有消息
nim::MsgLog::DeleteMessageSelfAsync 单向删除多条消息记录(同时删除本地与云端)
nim::MsgLog::DeleteMsgByTimeAsyncEx 根据时间段删除部分会话的历史消息
nim::MsgLog::FullTextSearchOnlineAsync 在线全文检索
nim::MsgLog::QueryMessageIsThreadRoot 查询某条消息是否为 thread 聊天的根消息
nim::MsgLog::QueryThreadHistoryMsg 分页查询 Thread 消息历史
nim::MsgLog::QuerySentMessageBeReaded 查询自己发送的消息是否被对方已读
nim::MsgLog::SendReceiptAsync 发送消息的已读回执
nim::MsgLog::UpdateLocalExtAsync 更新本地消息扩展字段内容
nim::TalkEx::Collect::AddCollect 添加收藏
nim::TalkEx::Collect::QueryCollectList 分页查询收藏列表
nim::TalkEx::Collect::RemoveCollects 批量删除收藏
nim::TalkEx::Collect::UpdateCollectExt 更新收藏扩展字段
nim::TalkEx::PinMsg::AddPinMessage PIN 某条消息
nim::TalkEx::PinMsg::QueryAllPinMessage 查询某个会话的所有 PIN 消息
nim::TalkEx::PinMsg::UnPinMessage 取消 PIN 某条消息
nim::TalkEx::PinMsg::UpdatePinMessage 更新某条 PIN 消息的扩展字段
nim::TalkEx::QuickComment::AddQuickComment 为某条消息添加快捷评论(Reaction)
nim::TalkEx::QuickComment::QueryQuickCommentList 查询快捷评论列表
nim::TalkEx::QuickComment::RemoveQuickComment 移除快捷评论

会话列表

V2 会话列表

方法 描述
v2::V2NIMConversationService::createConversation 创建空会话
v2::V2NIMConversationService::deleteConversation 删除会话
v2::V2NIMConversationService::deleteConversationListByIds 批量删除会话
v2::V2NIMConversationService::stickTopConversation 置顶会话
v2::V2NIMConversationService::updateConversation 更新会话
v2::V2NIMConversationService::updateConversationLocalExtension 更新会话本地扩展字段
v2::V2NIMConversationService::getConversation 获取会话
v2::V2NIMConversationService::getConversationList 分页获取会话列表
v2::V2NIMConversationService::getConversationListByIds 根据会话ID获取会话列表
v2::V2NIMConversationService::getConversationListByOption 根据条件筛选分页获取会话列表
v2::V2NIMConversationService::getTotalUnreadCount 获取会话未读总数
v2::V2NIMConversationService::getUnreadCountByIds 根据会话 ID 列表获取未读总数
v2::V2NIMConversationService::getUnreadCountByFilter 根据过滤条件获取会话未读总数
v2::V2NIMConversationService::clearTotalUnreadCount 清除会话总未读数
v2::V2NIMConversationService::clearUnreadCountByIds 根据会话 ID
v2::V2NIMConversationService::clearUnreadCountByTypes 根据会话类型清除会话未读数
v2::V2NIMConversationService::clearUnreadCountByGroupId 根据会话分组清除会话未读数
v2::V2NIMConversationService::subscribeUnreadCountByFilter 订阅指定过滤条件的会话未读数
v2::V2NIMConversationService::unsubscribeUnreadCountByFilter 取消订阅指定过滤条件的会话未读数
v2::V2NIMConversationService::markConversationRead 标记会话已读时间戳
v2::V2NIMConversationService::getConversationReadTime 获取会话已读时间戳
v2::V2NIMConversationService::addConversationListener 添加会话监听
v2::V2NIMConversationService::removeConversationListener 移除会话监听
v2::V2NIMConversationGroupService::createConversationGroup 创建会话分组
v2::V2NIMConversationGroupService::deleteConversationGroup 删除会话分组
v2::V2NIMConversationGroupService::updateConversationGroup 更新会话分组
v2::V2NIMConversationGroupService::addConversationsToGroup 添加会话到会话分组
v2::V2NIMConversationGroupService::removeConversationsFromGroup 从会话分组中移除会话
v2::V2NIMConversationGroupService::getConversationGroup 获取会话分组信息
v2::V2NIMConversationGroupService::getConversationGroupList 获取会话分组列表
v2::V2NIMConversationGroupService::getConversationGroupListByIds 根据会话分组 ID 获取会话分组
v2::V2NIMConversationGroupService::addConversationGroupListener 添加会话分组监听
v2::V2NIMConversationGroupService::removeConversationGroupListener 移除会话分组监听

V1 会话列表

方法 描述
nim::Session::QueryAllRecentSessionAsyncEx 查询会话列表
nim::Session::QuerySessionDataById 根据给定的 IM 账号(accid)或者群 ID 查询相应会话的信息
nim::Session::CancelToStickTopSession 取消置顶会话列表
nim::Session::DeleteAllRecentSession 删除全部最近会话
nim::Session::DeleteRecentSessionEx 删除最近的某个会话
nim::Session::DeleteSessionRoamingMessage 删除某会话的漫游消息
nim::Session::QueryStickTopSessionList 查询置顶会话列表
nim::Session::SetAllUnreadCountZeroAsync 将所有会话的未读数清零
nim::Session::SetMultiUnreadCountZeroAsync 批量将指定会话的未读数清零
nim::Session::SetToStickTopSession 置顶会话
nim::Session::SetUnreadCountZeroAsync 将某个会话的未读数清零
nim::Session::UpdateToStickTopSession 更新置顶会话列表

系统通知

V2 系统通知

方法 描述
v2::V2NIMNotificationService::sendCustomNotification 发送自定义系统通知
v2::V2NIMNotificationService::addNotificationListener 添加通知监听器
v2::V2NIMNotificationService::removeNotificationListener 移除通知监听器

V1 系统通知

方法 描述
nim::SystemMsg::CreateCustomNotificationMsg 构建自定义系统通知
nim::SystemMsg::QueryMsgAsync 查询本地系统通知
nim::SystemMsg::QueryUnreadCount 查询系统通知未读数
nim::SystemMsg::ReadAllAsync 将全部系统通知设置为已读
nim::SystemMsg::SendCustomNotificationMsg 发送自定义系统通知
nim::SystemMsg::SetStatusAsync 设置系统通知状态

群组

V2 群组

注解
V2 群组相关 API 统一为一套,同时支持高级群及超大群,在调用这些 API 时您可以指定 teamType 是高级群还是超大群
方法 描述
v2::V2NIMTeamService::createTeam 创建群组
v2::V2NIMTeamService::updateTeamInfo 修改群组信息
v2::V2NIMTeamService::leaveTeam 退出群组
v2::V2NIMTeamService::getTeamInfo 获取群组信息
v2::V2NIMTeamService::getTeamInfoByIds 根据群组 ID 获取群组信息
v2::V2NIMTeamService::dismissTeam 解散群组
v2::V2NIMTeamService::inviteMember 邀请成员加入群组
v2::V2NIMTeamService::acceptInvitation 同意邀请入群
v2::V2NIMTeamService::rejectInvitation 拒绝邀请入群
v2::V2NIMTeamService::kickMember 踢出群组成员
v2::V2NIMTeamService::applyJoinTeam 申请加入群组
v2::V2NIMTeamService::acceptJoinApplication 接受入群申请
v2::V2NIMTeamService::rejectJoinApplication 拒绝入群申请
v2::V2NIMTeamService::updateTeamMemberRole 设置成员角色
v2::V2NIMTeamService::transferTeamOwner 移交群主
v2::V2NIMTeamService::updateSelfTeamMemberInfo 修改自己的群成员信息
v2::V2NIMTeamService::updateTeamMemberNick 修改群成员昵称
v2::V2NIMTeamService::setTeamChatBannedMode 设置群组禁言模式
v2::V2NIMTeamService::setTeamMemberChatBannedStatus 设置群组成员聊天禁言状态
v2::V2NIMTeamService::getJoinedTeamList 获取当前已经加入的群组列表
v2::V2NIMTeamService::getJoinedTeamCount 获取当前已经加入的群组数量
v2::V2NIMTeamService::getTeamMemberList 获取群组成员列表
v2::V2NIMTeamService::getTeamMemberListByIds 根据账号 ID 列表获取群组成员列表
v2::V2NIMTeamService::getTeamMemberInvitor 根据账号 ID 列表获取群组成员邀请人
v2::V2NIMTeamService::getTeamJoinActionInfoList 获取群加入相关信息
v2::V2NIMTeamService::searchTeamByKeyword 根据关键字搜索群组,只搜索群名称
v2::V2NIMTeamService::searchTeamMembers 根据关键字搜索群组成员
v2::V2NIMTeamService::addTeamMembersFollow 添加特别关注群成员列表
v2::V2NIMTeamService::removeTeamMembersFollow 移除特别关注群成员列表
v2::V2NIMTeamService::addTeamListener 添加群组监听器
v2::V2NIMTeamService::removeTeamListener 移除群组监听器

V1 群组

方法 描述
nim::Team::CreateTeamAsyncEx 创建群组
nim::Team::AcceptInvitationAsync 接受入群邀请
nim::Team::RejectInvitationAsync 拒绝入群邀请
nim::Team::AddManagersAsync 添加群管理员
nim::Team::ApplyJoinAsync 申请入群
nim::Team::PassJoinApplyAsync 同意入群申请
nim::Team::RejectJoinApplyAsync 拒绝入群申请
nim::Team::AddManagersAsync 添加群管理员
nim::Team::RemoveManagersAsync 删除群管理员
nim::Team::TransferTeamAsync 将群主身份移交给其他群成员
nim::Team::DismissAsync 解散群组
nim::Team::UpdateMyPropertyAsync 更新自己的群属性
nim::Team::GetTeaminfoList 根据一组群 ID 查询相应的群详细信息
nim::Team::InviteAsync 邀请用户入群
nim::Team::KickAsync 将某用户踢出群
nim::Team::UpdateTeamInfoAsync 更新群信息
nim::Team::LeaveAsync 退出群组
nim::Team::MuteAsync 群禁言/解除群禁言
nim::Team::MuteMemberAsync 将某群成员禁言/解除禁言
nim::Team::QueryAllMyTeamsAsync 查询所有群
nim::Team::QueryMuteListOnlineAsync 获取群禁言成员列表
nim::Team::QueryTeamInfoByKeywordAsync 按关键字查询群信息
nim::Team::QueryTeamInfoOnlineAsync 获取群信息(从云信服务端获取)
nim::Team::QueryTeamMemberAsync 查询某个群成员的信息
nim::Team::QueryTeamMembersAsync 查询群成员
nim::Team::TeamMsgAckReadEx 发送群消息已读回执
nim::Team::TeamMsgQueryUnreadList 根据指定的 IM 账号(accid)获取群租消息已读未读情况
nim::Team::QueryTeamMembersAsync 查询群成员
nim::SuperTeam::AcceptInvitationAsync 接受加入超大群的邀请
nim::SuperTeam::AddManagersAsync 添加超大群的管理员
nim::SuperTeam::RemoveManagersAsync 删除超大群的管理员
nim::SuperTeam::TransferTeamAsync 将超大群群组身份移交给其他成员
nim::SuperTeam::ApplyJoinAsync 申请加入超大群
nim::SuperTeam::InviteAsync 邀请用户加入超大群
nim::SuperTeam::RejectInvitationAsync 拒绝“加入超大群”的邀请
nim::SuperTeam::RejectJoinApplyAsync 拒绝“加入超大群”的申请
nim::SuperTeam::KickAsync 将某个成员踢出超大群
nim::SuperTeam::UpdateMyPropertyAsync 更新自己在超大群的属性
nim::SuperTeam::UpdateSuperTeamInfoAsync 更新超大群的信息
nim::SuperTeam::KickAsync 将某个成员踢出超大群
nim::SuperTeam::LeaveAsync 退出超大群
nim::SuperTeam::MuteAsync 将超大群禁言/解除禁言
nim::SuperTeam::MuteMemberAsync 将某个超大群成员禁言/解除禁言
nim::SuperTeam::PassJoinApplyAsync 同意加入超大群的申请
nim::SuperTeam::QueryAllMySuperTeamsAsync 查询所有超大群
nim::SuperTeam::QueryAllMySuperTeamsInfoAsync 查询所有超大群的信息
nim::SuperTeam::QueryMuteListAsync 获取超大群的禁言成员列表
nim::SuperTeam::QuerySuperTeamInfoAsync 查询某个超大群的信息
nim::SuperTeam::QuerySuperTeamInfoOnlineAsync 查询某个超大群的信息(从服务器获取)
nim::SuperTeam::QuerySuperTeamMemberAsync 查询超大群中某个成员的信息
nim::SuperTeam::QuerySuperTeamsInfoByKeywordAsync 根据关键字查询所有群的信息
nim::SuperTeam::QuerySuperTeamMembersAsync 查询超大群的成员信息

用户资料

V2 用户资料

方法 描述
v2::V2NIMUserService::getUserList 根据用户账号列表获取用户资料
v2::V2NIMUserService::updateSelfUserProfile 更新自己的用户资料
v2::V2NIMUserService::addUserToBlockList 添加用户到黑名单中
v2::V2NIMUserService::removeUserFromBlockList 从黑名单中移除用户
v2::V2NIMUserService::getBlockList 获取黑名单列表
v2::V2NIMUserService::getUserListFromCloud 根据用户账号列表从服务器获取用户资料
v2::V2NIMUserService::searchUserByOption 根据关键字搜索用户信息
v2::V2NIMUserService::addUserListener 添加用户资料监听器
v2::V2NIMUserService::removeUserListener 移除用户资料监听器

V1 用户资料

方法 描述
nim::User::GetBlacklist 获取黑名单列表
nim::User::GetMutelist 获取静音名单列表
nim::User::GetUserNameCardOnline 在线查询指定 IM 账号(accid)的用户名片
nim::User::SetBlack 将用户加入/移出黑名单
nim::User::SetMute 将用户加入/移出静音名单
nim::User::UpdateMyUserNameCard 更新自己的用户名片

好友关系

V2 好友关系

方法 描述
v2::V2NIMFriendService::addFriend 添加好友
v2::V2NIMFriendService::deleteFriend 删除好友
v2::V2NIMFriendService::acceptAddApplication 接受好友申请
v2::V2NIMFriendService::rejectAddApplication 拒绝好友申请
v2::V2NIMFriendService::setFriendInfo 设置好友信息
v2::V2NIMFriendService::getFriendList 获取好友列表
v2::V2NIMFriendService::getFriendByIds 根据账号 ID 获取好友信息
v2::V2NIMFriendService::checkFriend 根据账号 ID 检查好友状态
v2::V2NIMFriendService::getAddApplicationList 获取申请添加好友信息列表
v2::V2NIMFriendService::getAddApplicationUnreadCount 获取申请添加好友未读数
v2::V2NIMFriendService::setAddApplicationRead 设置好友申请已读
v2::V2NIMFriendService::searchFriendByOption 根据关键字搜索好友信息
v2::V2NIMFriendService::addFriendListener 添加好友监听器
v2::V2NIMFriendService::removeFriendListener 移除好友监听器

V1 好友关系

方法 描述
nim::Friend::DeleteEx 删除好友
nim::Friend::GetFriendProfile 获取好友信息
nim::Friend::GetList 增量获取好友列表
nim::Friend::Request 添加好友
nim::Friend::Update 更新好友资料

云存储

V2 云存储

方法 描述
v2::V2NIMStorageService::addCustomStorageScene 添加自定义存储场景, 需在登录前调用
v2::V2NIMStorageService::createUploadFileTask 创建文件上传任务
v2::V2NIMStorageService::uploadFile 文件上传
v2::V2NIMStorageService::cancelUploadFile 取消文件上传
v2::V2NIMStorageService::downloadFile 下载文件
v2::V2NIMStorageService::cancelDownloadFile 取消下载任务
v2::V2NIMStorageService::getStorageSceneList 查询存储场景列表
v2::V2NIMStorageService::shortUrlToLong 短链接转长链接
v2::V2NIMStorageService::downloadAttachment 下载消息附件
v2::V2NIMStorageService::getImageThumbUrl 获取图片消息中的图片缩略图
v2::V2NIMStorageService::getVideoCoverUrl 获取视频消息中的视频封面

V1 云存储

方法 描述
nim::NOS::InitConfig 对上传资源时使用的各场景资源生命周期进行初始化
nim::NOS::RegDownloadCb (全局回调)注册下载回调
nim::NOS::RegUploadCb (全局回调)注册上传回调
nim::NOS::RegCustomCustomTokenCb (全局回调)注册自定义token获取回调
nim::NOS::FetchMediaEx 获取资源
nim::NOS::StopFetchMedia 停止获取资源(目前仅对文件消息类型有效)
nim::NOS::UploadResourceEx2 上传资源
nim::NOS::StopUploadResourceEx 停止上传资源
nim::NOS::DownloadResourceEx 下载资源
nim::NOS::StopDownloadResourceEx 停止下载资源
nim::NOS::SafeURLToOriginURL 安全链接转换为原始链接
nim::NOS::UnregNosCb (全局回调)注销所有回调
nim::NOS::SetSupportQuickTrans 设置是否支持快传

独立信令

V2 独立信令

方法 描述
v2::V2NIMSignallingService::call 直接呼叫对方加入房间
v2::V2NIMSignallingService::callSetup 呼叫建立,包括加入信令频道房间,同时接受对方呼叫
v2::V2NIMSignallingService::createRoom 创建信令房间
v2::V2NIMSignallingService::closeRoom 关闭信令房间接口
v2::V2NIMSignallingService::joinRoom 加入信令房间接口
v2::V2NIMSignallingService::leaveRoom 离开信令房间接口
v2::V2NIMSignallingService::invite 邀请成员加入信令房间接口
v2::V2NIMSignallingService::cancelInvite 取消之前的邀请成员加入信令房间接口
v2::V2NIMSignallingService::rejectInvite 拒绝别人的邀请加入信令房间请求
v2::V2NIMSignallingService::acceptInvite 接受别人的邀请加入信令房间请求
v2::V2NIMSignallingService::sendControl 发送自定义控制指令,可以实现自定义相关的业务逻辑
v2::V2NIMSignallingService::getRoomInfoByChannelName 根据频道名称查询频道房间信息
v2::V2NIMSignallingService::addSignallingListener 添加信令监听器
v2::V2NIMSignallingService::removeSignallingListener 移除信令监听器

V1 独立信令

方法 描述
nim::Signaling::RegOnlineNotifyCb 注册独立信令的在线通知回调接口
nim::Signaling::RegMutilClientSyncNotifyCb 注册独立信令的多端同步通知回调接口
nim::Signaling::RegOfflineNotifyCb 注册独立信令的离线通知回调接口
nim::Signaling::RegChannelsSyncCb 注册独立信令的频道列表同步回调接口
nim::Signaling::RegMembersSyncCb 注册独立信令的频道成员变更同步回调接口
nim::Signaling::SignalingCreate 创建频道
nim::Signaling::SignalingClose 关闭销毁频道
nim::Signaling::Join 加入频道接口
nim::Signaling::Leave 离开频道接口
nim::Signaling::QueryChannelInfo 查询频道接口
nim::Signaling::Call 呼叫接口
nim::Signaling::CallEx 呼叫接口
nim::Signaling::JoinAndAccept 加入并接受接口
nim::Signaling::Invite 邀请接口
nim::Signaling::CancelInvite 取消邀请接口
nim::Signaling::Reject 拒绝邀请接口
nim::Signaling::Accept 接受邀请接口
nim::Signaling::Control 用户自定义控制指令接口

事件订阅

V2 事件订阅

方法 描述
v2::V2NIMSubscriptionService::subscribeUserStatus 订阅用户状态
v2::V2NIMSubscriptionService::unsubscribeUserStatus 取消用户状态订阅请求
v2::V2NIMSubscriptionService::publishCustomUserStatus 发布用户自定义状态
v2::V2NIMSubscriptionService::queryUserStatusSubscriptions 查询用户状态订阅关系
v2::V2NIMSubscriptionService::addSubscribeListener 添加用户状态订阅的监听器
v2::V2NIMSubscriptionService::removeSubscribeListener 移除用户状态订阅的监听器

V1 事件订阅

方法 描述
nim::SubscribeEvent::RegPushEventCb (全局回调)统一注册接收订阅的事件的回调函数
nim::SubscribeEvent::RegBatchPushEventCb (全局回调)统一注册批量接收订阅的事件的回调函数
nim::SubscribeEvent::Publish 发布事件
nim::SubscribeEvent::Subscribe 订阅事件
nim::SubscribeEvent::UnSubscribe 按账号取消指定事件的订阅关系
nim::SubscribeEvent::BatchUnSubscribe 取消指定事件的全部订阅关系
nim::SubscribeEvent::QuerySubscribe 按账号查询指定事件订阅关系

聊天室

V2 聊天室

方法 描述
v2::V2NIMChatroomClient::getInstanceId 获取聊天室客户端实例 ID
v2::V2NIMChatroomClient::updateAppKey 重新设置 App key,您可以在不重新初始化的情况下切换 App key
v2::V2NIMChatroomClient::enter 进入聊天室
v2::V2NIMChatroomClient::exit 退出聊天室
v2::V2NIMChatroomClient::getChatroomInfo 查询聊天室信息
v2::V2NIMChatroomClient::getChatroomService 获取聊天室服务
v2::V2NIMChatroomClient::getStorageService 获取存储服务
v2::V2NIMChatroomClient::addChatroomClientListener 添加聊天室实例监听器
v2::V2NIMChatroomClient::removeChatroomClientListener 移除聊天室实例监听器
v2::V2NIMChatroomService::sendMessage 发送消息
v2::V2NIMChatroomService::cancelMessageAttachmentUpload 取消文件消息附件上传
v2::V2NIMChatroomService::getMemberListByOption 分页获取聊天室成员列表
v2::V2NIMChatroomService::getMessageList 查询历史消息
v2::V2NIMChatroomService::updateMemberRole 更新聊天室成员角色
v2::V2NIMChatroomService::setMemberBlockedStatus 设置聊天室成员黑名单状态
v2::V2NIMChatroomService::setMemberChatBannedStatus 设置聊天室成员禁言状态
v2::V2NIMChatroomService::setMemberTempChatBanned 设置聊天室成员临时禁言状态
v2::V2NIMChatroomService::updateChatroomInfo 更新聊天室信息
v2::V2NIMChatroomService::updateSelfMemberInfo 更新自己在聊天室的成员信息
v2::V2NIMChatroomService::getMemberByIds 根据账号列表查询成员信息
v2::V2NIMChatroomService::kickMember 踢出聊天室成员
v2::V2NIMChatroomService::setTempChatBannedByTag 按聊天室标签临时禁言
v2::V2NIMChatroomService::getMemberListByTag 根据标签查询成员列表
v2::V2NIMChatroomService::getMemberCountByTag 查询某个标签下的成员人数
v2::V2NIMChatroomService::updateChatroomLocationInfo 更新坐标信息
v2::V2NIMChatroomService::updateChatroomTags 更新聊天室 tag 信息
v2::V2NIMChatroomService::getMessageListByTag 根据标签查询消息列表
v2::V2NIMChatroomService::registerCustomAttachmentParser 注册聊天室自定义消息附件解析器,解析自定义消息类型为 100 的附件
v2::V2NIMChatroomService::unRegisterCustomAttachmentParser 反注册聊天室自定义消息附件解析器
v2::V2NIMChatroomService::addChatroomListener 添加聊天室监听器
v2::V2NIMChatroomService::removeChatroomListener 移除聊天室监听器

V1 聊天室

方法 描述
nim_chatroom::ChatRoom::RegEnterCb 注册全局登录回调
nim_chatroom::ChatRoom::RegExitCb 注册全局登出、被踢回调
nim_chatroom::ChatRoom::RegSendMsgAckCb 注册全局发送消息回执回调
nim_chatroom::ChatRoom::RegReceiveMsgCb 注册全局接收消息回调
nim_chatroom::ChatRoom::RegReceiveMsgsCb 注册全局接收批量消息回调
nim_chatroom::ChatRoom::RegNotificationCb 注册全局接收通知回调
nim_chatroom::ChatRoom::RegLinkConditionCb 注册全局聊天室链接情况回调
nim_chatroom::ChatRoom::RegTagsChangedCb 注册聊天室 Tag 变更回调
nim_chatroom::ChatRoom::RegCustomTokenCb 注册全局聊天室自定义通知回调
nim_chatroom::ChatRoom::RegRequestLoginTokenCb 注册全局聊天室自定义token获取回调
nim_chatroom::ChatRoom::RegRequestLoginExtensionCb 注册该回调用于在登录时获取第三方鉴权登录扩展字段
nim_chatroom::ChatRoom::RegSDKLogCallback SDK系统日志回调,可用于动态获取日志,不建议用于生产环境
nim_chatroom::ChatRoom::Init 聊天室模块初始化
nim_chatroom::ChatRoom::Cleanup 聊天室模块清理
nim_chatroom::ChatRoom::IndependentEnter2 聊天室独立进入
nim_chatroom::ChatRoom::AnonymousEnter2 聊天室匿名进入
nim_chatroom::ChatRoom::Enter 聊天室登录
nim_chatroom::ChatRoom::Exit 聊天室登出
nim_chatroom::ChatRoom::GetLoginState 获取聊天室登录状态
nim_chatroom::ChatRoom::SetMsgsBatchReport 设置消息接收批量上报开关
nim_chatroom::ChatRoom::SendMsg 发送消息
nim_chatroom::ChatRoom::SendMsg 发送消息
nim_chatroom::ChatRoom::CreateRoomMessage 生成消息内容(所有支持的消息类型的内容)
nim_chatroom::ChatRoom::GetMembersOnlineAsync 异步查询成员列表
nim_chatroom::ChatRoom::GetMembersByTagOnlineAsync 根据 tag 异步查询聊天室成员列表
nim_chatroom::ChatRoom::GetMembersCountByTagOnlineAsync 获取聊天室内指定 tag 的成员数量
nim_chatroom::ChatRoom::GetMessageHistoryOnlineAsync 异步查询消息历史
nim_chatroom::ChatRoom::GetMessageHistoryByTagsOnlineAsync 根据消息关联的标签查询历史消息
nim_chatroom::ChatRoom::SetMemberAttributeOnlineAsync 异步设置成员身份标识
nim_chatroom::ChatRoom::GetInfoAsync 异步获取当前聊天室信息
nim_chatroom::ChatRoom::GetMemberInfoByIDsAsync 异步获取指定成员信息
nim_chatroom::ChatRoom::KickMemberAsync 异步踢掉指定成员
nim_chatroom::ChatRoom::TempMuteMemberAsync 异步临时禁言/解禁成员
nim_chatroom::ChatRoom::TempMuteMemberByTagAsync 异步根据 tag 临时禁言/解禁成员
nim_chatroom::ChatRoom::UpdateRoomInfoAsync 更新聊天室信息
nim_chatroom::ChatRoom::UpdateMyRoomRoleAsync 更新我的信息
nim_chatroom::ChatRoom::QueueOfferAsync 新加(更新)麦序队列元素
nim_chatroom::ChatRoom::QueueOfferAsyncEx 新加(更新)麦序队列元素
nim_chatroom::ChatRoom::QueuePollAsync 取出麦序元素
nim_chatroom::ChatRoom::QueueListAsync 排序列出所有元素
nim_chatroom::ChatRoom::QueueHeaderAsync 查看麦序头元素
nim_chatroom::ChatRoom::QueueDropAsync (管理员权限)删除麦序队列
nim_chatroom::ChatRoom::UnregChatroomCb 反注册Chatroom提供的所有回调
nim_chatroom::ChatRoom::QueryAllRobotInfosBlock 获取指定机器人信息
nim_chatroom::ChatRoom::QueryRobotInfoByAccidBlock 根据 ID 获取指定机器人信息
nim_chatroom::ChatRoom::GetRobotInfoAsync 获取机器人信息
nim_chatroom::ChatRoom::QueueBatchUpdateAsync 批量更新聊天室队列
nim_chatroom::ChatRoom::UpdateLocation 更新聊天室位置信息
nim_chatroom::ChatRoom::UpdateTags 更新聊天室标签

AI 数字人

注解
该模块仅在 V2 中提供
方法 描述
v2::V2NIMAIService::getAIUserList 获取 AI 数字人列表
v2::V2NIMAIService::proxyAIModelCall AI 数字人请求代理接口
v2::V2NIMAIService::addAIListener 添加 AI 模块的监听器
v2::V2NIMAIService::removeAIListener 移除 AI 模块的状态监听器

圈组-初始化与登录

注解
以下接口仅在 V1 中提供
方法 描述
nim::QChat::Init 圈组模块初始化(SDK 初始化时调用一次)
nim::QChat::Login 登录圈组
nim::QChat::Logout 登出圈组
nim::QChat::KickOtherClients 将使用相同 IM 账号(accid)登录圈组的其他设备端踢下线

圈组-服务器

注解
以下接口仅在 V1 中提供
方法 描述
nim::Server::CreateServer 创建服务器,服务器即社群本身
nim::Server::UpdateServer 更新服务器
nim::Server::DeleteServer 删除服务器
nim::Server::AcceptApply 接受“加入服务器”的申请
nim::Server::Invite 邀请用户加入服务器
nim::Server::AcceptInvite 接受“加入服务器”的邀请
nim::Server::Apply 申请加入某个服务器
nim::Server::JoinByInviteCode 通过邀请码加入服务器
nim::Server::Kick 将指定成员踢出服务器
nim::Server::RejectApply 拒绝“加入服务器”的申请
nim::Server::RejectInvite 拒绝“加入服务器”的邀请
nim::Server::Leave 离开服务器
nim::Server::LeaveAsVisitor 以游客身份离开服务器
nim::Server::BanMember 封禁服务器成员
nim::Server::UnbanMember 解封服务器成员
nim::Server::EnterAsVisitor 以游客身份进入服务器
nim::Server::GenerateInviteCode 生成服务器邀请码
nim::Server::GetBannedMembersByPage 分页查询服务器封禁成员列表
nim::Server::GetInviteApplyRecordOfSelf 查询自己的邀请、申请历史
nim::Server::GetInviteApplyRecordOfServer 查询服务器下的邀请、申请历史
nim::Server::GetServerMembers 查询服务器成员列表
nim::Server::GetServerMembersByPage 分页查询服务器成员列表
nim::Server::GetServers 查询服务器列表
nim::Server::GetServersByPage 分页查询服务器列表
nim::Server::MarkRead 标记服务器下所有频道的消息为已读
nim::Server::ServerMemberSearch 根据关键字搜索服务器成员
nim::Server::Subscribe 订阅服务器相关信息
nim::Server::SubscribeAllChannel 订阅服务器下所有频道的消息
nim::Server::SubscribeAsVisitor 以游客身份订阅服务器相关信息

圈组-频道

注解
以下接口仅在 V1 中提供
方法 描述
nim::Channel::ChannelMemberSearch 根据关键字搜索频道成员列表
nim::Channel::ChannelSearchByPage (分页)根据关键字搜索频道成员列表
nim::Channel::CreateChannel 创建频道
nim::Channel::UpdateChannel 更新频道
nim::Channel::DeleteChannel 删除频道
nim::Channel::GetChannels 查询频道列表
nim::Channel::GetChannelsByPage 分页查询频道列表
nim::Channel::GetMembersByPage 分页查询频道成员列表
nim::Channel::UpdateWhiteBlackMembers 更新频道黑白名单成员
nim::Channel::GetWhiteBlackMembersPage 分页查询频道黑白名单列表
nim::Channel::UpdateWhiteBlackRole 更新频道黑白名单身份组
nim::Channel::GetWhiteBlackRolesPage 分页查询频道黑白名单身份组列表
nim::Channel::QueryUnreadInfo 查询频道的消息未读数
nim::Channel::Subscribe 订阅频道未读状态、未读数或未读消息、事件
nim::Channel::SubscribeAsVisitor 以游客身份订阅频道的消息未读状态、未读数或未读消息、事件

圈组-身份组

注解
以下接口仅在 V1 中提供
方法 描述
nim::Role::CreateServerRole 创建服务器身份组
nim::Role::UpdateServerRole 更新服务器身份组
nim::Role::DeleteServerRole 删除服务器身份组
nim::Role::AddMembersToServerRole 将部分成员添加至某个服务器身份组
nim::Role::RemoveMembersFromServerRole 从服务器身份组中移除部分成员
nim::Role::AddChannelRole 创建频道身份组
nim::Role::UpdateChannelRole 更新频道身份组
nim::Role::AddMemberRole 创建用户定制权限,即在频道中添加针对指定成员的特殊权限配置
nim::Role::UpdateMemberRole 更新用户定制权限
nim::Role::RemoveMemberRole 删除用户定制权限
nim::Role::CheckPermission 查询当前登录用户是否拥有特定权限
nim::Role::CheckPermissions 批量查询当前登录用户是否拥有特定权限
nim::Role::GetChannelRoles 查询频道身份组

圈组-消息

注解
以下接口仅在 V1 中提供
方法 描述
nim::Message::Send 发送消息
nim::Message::Update 更新消息
nim::Message::Revoke 撤回消息
nim::Message::Delete 删除消息。删除未读消息将影响未读数
nim::Message::AreMentionedMeMessages 查询消息是否 @ 当前用户
nim::Message::GetLastMessages 获取频道最后一条消息
nim::Message::GetMentionedMeMessages 查询未读消息中 @ 当前用户的消息
nim::Message::GetMessages 查询历史消息
nim::Message::GetMessagesCache 查询本地消息历史缓存
nim::Message::Reply 回复指定消息(Thread 聊天场景)
nim::Message::GetThreadMessages 分页获取 Thread 的回复消息列表
nim::Message::AddQuickComment 针对某条消息添加快捷评论(Reaction)
nim::Message::MarkRead 将消息标记为已读
nim::Message::SearchMsgByPage 分页搜索消息

圈组-系统通知

注解
以下接口仅在 V1 中提供
方法 描述
nim::SystemNotification::Send 发送圈组的自定义系统通知
nim::SystemNotification::SendTypingEvent 发送正在输入事件
nim::SystemNotification::Update 更新自定义系统通知
nim::SystemNotification::MarkSystemNotificationsRead 标记系统通知消息已读