floo::BMXGroupService

群组Service

#include <bmx_group_service.h>

Public Types

Name

typedef std::function< void(int percent)>

typedef std::shared_ptr< [CreateGroupOptions] >

Public Functions

Name

virtual BMXErrorCode

get(BMXGroupList & list, bool forceRefresh) =0 获取群组列表,如果设置了forceRefresh则从服务器拉取

virtual BMXErrorCode

search(BMXGroupList & list, bool forceRefresh) =0 Deprecated.

virtual BMXErrorCode

fetchGroupsByIdList(const std::vector< int64_t > & groupIdList, BMXGroupList & list, bool forceRefresh) =0 通过传入群组的id列表获取群组信息列表,如果设置了forceRefresh则从服务器拉取

virtual BMXErrorCode

search(const std::vector< int64_t > & groupIdList, BMXGroupList & list, bool forceRefresh) =0 Deprecated.

virtual BMXErrorCode

fetchGroupById(int64_t groupId, BMXGroupPtr & group, bool forceRefresh) =0 通过群组id获取群信息,如果设置了forceRefresh则从服务器拉取

virtual BMXErrorCode

search(int64_t groupId, BMXGroupPtr & group, bool forceRefresh) =0 Deprecated.

virtual BMXErrorCode

fetchLocalGroupsByName(BMXGroupList & list, const std::string & name) =0 通过群名称查询本地群信息,从本地数据库中通过群名称查询获取群组

virtual BMXErrorCode

search(BMXGroupList & list, const std::string & name) =0 Deprecated.

virtual BMXErrorCode

create(const [CreateGroupOptions] & options, BMXGroupPtr & group) =0 创建群

virtual BMXErrorCode

destroy(BMXGroupPtr group) =0 销毁群

virtual BMXErrorCode

join(BMXGroupPtr group, const std::string & message) =0 加入一个群,根据群设置可能需要管理员批准

virtual BMXErrorCode

leave(BMXGroupPtr group) =0 退出群

virtual BMXErrorCode

getInfo(BMXGroupPtr group) =0 获取群详情,从服务端拉取最新信息

virtual BMXErrorCode

getMembersNickname(BMXGroupPtr group, const std::vector< int64_t > & members, BMXGroup::MemberList & list) =0 获取群组成员详细信息

virtual BMXErrorCode

getInvitationList(BMXGroupInvitationPagePtr & result, const std::string & cursor ="", int pageSize =10) =0 分页获取群组邀请列表

virtual BMXErrorCode

getApplicationList(BMXGroupList list, BMXGroupApplicationPagePtr & result, const std::string & cursor ="", int pageSize =10) =0 分页获取群组申请列表

virtual BMXErrorCode

getMembers(BMXGroupPtr group, BMXGroupMemberResultPagePtr & result, const std::string & cursor ="", int pageSize =200) =0 分页获取群成员列表,如果设置了forceRefresh则从服务器拉取,单页最大数量为500.

virtual BMXErrorCode

getMembers(BMXGroupPtr group, BMXGroup::MemberList & list, bool forceRefresh) =0 获取群成员列表,如果设置了forceRefresh则从服务器拉取,最多拉取1000人

virtual BMXErrorCode

addMembers(BMXGroupPtr group, const std::vector< int64_t > & members, const std::string & message) =0 添加群成员

virtual BMXErrorCode

removeMembers(BMXGroupPtr group, const std::vector< int64_t > & members, const std::string & reason) =0 删除群成员

virtual BMXErrorCode

addAdmins(BMXGroupPtr group, const std::vector< int64_t > & admins, const std::string & message) =0 添加管理员

virtual BMXErrorCode

removeAdmins(BMXGroupPtr group, const std::vector< int64_t > & admins, const std::string & reason) =0 删除管理员

virtual BMXErrorCode

getAdmins(BMXGroupPtr group, BMXGroup::MemberList & list, bool forceRefresh) =0 获取Admins列表,如果设置了forceRefresh则从服务器拉取

virtual BMXErrorCode

blockMembers(BMXGroupPtr group, const std::vector< int64_t > & members) =0 添加黑名单

virtual BMXErrorCode

unblockMembers(BMXGroupPtr group, const std::vector< int64_t > & members) =0 从黑名单删除

virtual BMXErrorCode

getBlockList(BMXGroupPtr group, BMXGroupMemberResultPagePtr & result, const std::string & cursor ="", int pageSize =200) =0 分页获取黑名单

virtual BMXErrorCode

getBlockList(BMXGroupPtr group, BMXGroup::MemberList & list, bool forceRefresh) =0 获取黑名单

virtual BMXErrorCode

banMembers(BMXGroupPtr group, const std::vector< int64_t > & members, int64_t duration, const std::string & reason ="") =0 禁言

virtual BMXErrorCode

banGroup(BMXGroupPtr group, int64_t duration) =0 全员禁言,当前服务器时间加上禁言时长后计算出全员禁言到期时间(只有管理和群主可以发言)

virtual BMXErrorCode

unbanMembers(BMXGroupPtr group, const std::vector< int64_t > & members) =0 解除禁言

virtual BMXErrorCode

unbanGroup(BMXGroupPtr group) =0 全员解除禁言

virtual BMXErrorCode

getBannedMembers(BMXGroupPtr group, BMXGroupBannedMemberResultPagePtr & result, const std::string & cursor ="", int pageSize =200) =0 分页获取禁言列表

virtual BMXErrorCode

getBannedMembers(BMXGroupPtr group, BMXGroup::BannedMemberList & list) =0 获取禁言列表

virtual BMXErrorCode

muteMessage(BMXGroupPtr group, BMXGroup::MsgMuteMode mode) =0 设置是否屏蔽群消息

virtual BMXErrorCode

acceptApplication(BMXGroupPtr group, int64_t applicantId) =0 接受入群申请

virtual BMXErrorCode

declineApplication(BMXGroupPtr group, int64_t applicantId, const std::string & reason ="") =0 拒绝入群申请

virtual BMXErrorCode

acceptInvitation(BMXGroupPtr group, int64_t inviter) =0 接受入群邀请

virtual BMXErrorCode

declineInvitation(BMXGroupPtr group, int64_t inviter, const std::string & reason ="") =0 拒绝入群邀请

virtual BMXErrorCode

transferOwner(BMXGroupPtr group, int64_t newOwnerId) =0 转移群主

virtual BMXErrorCode

uploadSharedFile(BMXGroupPtr group, const std::string & filePath, const std::string & displayName, const std::string & extensionName, Callback ) =0 添加群共享文件

virtual BMXErrorCode

cancelUploadSharedFile(BMXGroupPtr group, const std::string & filePath) =0 取消上传群共享文件

virtual BMXErrorCode

removeSharedFile(BMXGroupPtr group, BMXGroup::SharedFilePtr sharedFile) =0 移除群共享文件

virtual BMXErrorCode

downloadSharedFile(BMXGroupPtr group, BMXGroup::SharedFilePtr sharedFile, Callback ) =0 下载群共享文件

virtual BMXErrorCode

cancelDownloadSharedFile(BMXGroupPtr group, BMXGroup::SharedFilePtr sharedFile) =0 取消下载群共享文件

virtual BMXErrorCode

getSharedFilesList(BMXGroupPtr group, BMXGroup::SharedFileList & list, bool forceRefresh) =0 获取群共享文件列表

virtual BMXErrorCode

changeSharedFileName(BMXGroupPtr group, BMXGroup::SharedFilePtr sharedFile, const std::string & name) =0 修改群共享文件名称

virtual BMXErrorCode

getLatestAnnouncement(BMXGroupPtr group, BMXGroup::AnnouncementPtr & announcement, bool forceRefresh) =0 获取最新的群公告

virtual BMXErrorCode

getAnnouncementList(BMXGroupPtr group, BMXGroup::AnnouncementList & list, bool forceRefresh) =0 获取群公告列表

virtual BMXErrorCode

editAnnouncement(BMXGroupPtr group, const std::string & title, const std::string & content) =0 设置群公告

virtual BMXErrorCode

deleteAnnouncement(BMXGroupPtr group, int64_t announcementId) =0 删除群公告

virtual BMXErrorCode

setName(BMXGroupPtr group, const std::string & name) =0 设置群名称

virtual BMXErrorCode

setDescription(BMXGroupPtr group, const std::string & description) =0 设置群描述信息

virtual BMXErrorCode

setExtension(BMXGroupPtr group, const std::string & extension) =0 设置群扩展信息

virtual BMXErrorCode

setMyNickname(BMXGroupPtr group, const std::string & nickname) =0 设置在群里的昵称

virtual BMXErrorCode

setMsgPushMode(BMXGroupPtr group, BMXGroup::MsgPushMode mode) =0 设置群消息通知模式

virtual BMXErrorCode

setJoinAuthMode(BMXGroupPtr group, BMXGroup::JoinAuthMode mode) =0 设置入群审批模式

virtual BMXErrorCode

setInviteMode(BMXGroupPtr group, BMXGroup::InviteMode mode) =0 设置邀请模式

virtual BMXErrorCode

setAllowMemberModify(BMXGroupPtr group, bool enable) =0 设置是否允许群成员设置群信息

virtual BMXErrorCode

setEnableReadAck(BMXGroupPtr group, bool enable) =0 设置是否开启群消息已读功能

virtual BMXErrorCode

setHistoryVisible(BMXGroupPtr group, bool enable) =0 设置群成员是否开可见群历史聊天记录

virtual BMXErrorCode

setAvatar(BMXGroupPtr group, const std::string & avatarPath, Callback ) =0 设置群头像

virtual BMXErrorCode

downloadAvatar(BMXGroupPtr group, bool thumbnail, Callback callback) =0 下载群头像

virtual void

addGroupListener(BMXGroupServiceListener * listener) =0 添加群组变化监听者

virtual void

removeGroupListener(BMXGroupServiceListener * listener) =0 移除群组变化监听者

Protected Functions

Public Types Documentation

typedef Callback

typedef CreateGroupOptionsPtr

Public Functions Documentation

function ~BMXGroupService

function get

获取群组列表,如果设置了forceRefresh则从服务器拉取

Parameters:

  • list 群组id列表,传入空列表函数返回后从此处获取返回的群组id列表

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

Deprecated.

Parameters:

  • list 群组id列表,传入空列表函数返回后从此处获取返回的群组id列表

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

use get instead.

获取群组列表,如果设置了forceRefresh则从服务器拉取

function fetchGroupsByIdList

通过传入群组的id列表获取群组信息列表,如果设置了forceRefresh则从服务器拉取

Parameters:

  • groupIdList 群组id列表

  • list 群组详细信息列表,传入空列表函数返回后从此处获取返回的群组详细信息列表

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

function search

Deprecated.

Parameters:

  • groupIdList 群组id列表

  • list 群组详细信息列表,传入空列表函数返回后从此处获取返回的群组详细信息列表

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

use fetchGroupsByIdList instead.

获取传入群组id的群组信息列表,如果设置了forceRefresh则从服务器拉取

function fetchGroupById

通过群组id获取群信息,如果设置了forceRefresh则从服务器拉取

Parameters:

  • groupId 要搜索的群组id

  • group 搜索返回的群组信息,传入指向为空的shared_ptr对象函数执行后从此获取返回结果

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

function search

Deprecated.

Parameters:

  • groupId 要搜索的群组id

  • group 搜索返回的群组信息,传入指向为空的shared_ptr对象函数执行后从此获取返回结果

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

use fetchGroupById instead.

获取群信息,如果设置了forceRefresh则从服务器拉取

function fetchLocalGroupsByName

通过群名称查询本地群信息,从本地数据库中通过群名称查询获取群组

Parameters:

  • list 搜索结果返回的群列表信息

  • name 查询的群名称关键字

Return: BMXErrorCode

function search

Deprecated.

Parameters:

  • list 搜索结果返回的群列表信息

  • name 查询的群名称关键字

Return: BMXErrorCode

use fetchLocalGroupsByName instead.

通过群名称查询本地群信息,从本地数据库中通过群名称查询获取群组

function create

创建群

Parameters:

  • options 创建群组时传入的参数选项

  • group 创建返回的结果,传入指向为空的shared_ptr对象函数执行后从此获取返回结果

Return: BMXErrorCode

function destroy

销毁群

Parameters:

  • group 要销毁的群组

Return: BMXErrorCode

function join

加入一个群,根据群设置可能需要管理员批准

Parameters:

  • group 要加入的群组

  • message 申请入群的信息

Return: BMXErrorCode

function leave

退出群

Parameters:

  • group 要退出的群组

Return: BMXErrorCode

function getInfo

获取群详情,从服务端拉取最新信息

Parameters:

  • group 要获取群组最新信息的群组

Return: BMXErrorCode

function getMembersNickname

获取群组成员详细信息

Parameters:

  • group 进行操作的群组

  • members 要获取群组成员信息详情的群成员id

  • list 返回的群成员详细,传入空列表在函数操作后从此处获取群成员详细信息列表

Return: BMXErrorCode

function getInvitationList

分页获取群组邀请列表

Parameters:

  • result 分页获取的群组邀请列表,传入指向为空的shared_ptr对象函数执行后从此处获取结果

  • cursor 分页获取的起始cursor,第一次传入为空,后续传入上次操作返回的result中的cursor

  • pageSize 分页大小

Return: BMXErrorCode

function getApplicationList

分页获取群组申请列表

Parameters:

  • list 需要获取群组申请列表信息的群组id列表

  • result 分页获取的群组申请列表,传入指向为空的shared_ptr对象函数执行后从此处获取结果

  • cursor 分页获取的起始cursor,第一次传入为空,后续传入上次操作返回的result中的cursor

  • pageSize 分页大小

Return: BMXErrorCode

function getMembers

分页获取群成员列表,如果设置了forceRefresh则从服务器拉取,单页最大数量为500.

Parameters:

  • group 进行操作的群组

  • result 分页获取的群成员列表,传入指向为空的shared_ptr对象函数执行后从此处获取结果

  • cursor 分页获取的起始cursor,第一次传入为空,后续传入上次操作返回的result中的cursor

  • pageSize 分页大小

Return: BMXErrorCode

function getMembers

获取群成员列表,如果设置了forceRefresh则从服务器拉取,最多拉取1000人

Parameters:

  • group 进行操作的群组

  • list 群成员列表,传入空列表函数返回后从此处获取返回的群组详细信息列表

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

function addMembers

添加群成员

Parameters:

  • group 进行操作的群组

  • members 要添加进群的成员id列表

  • message 添加成员原因信息

Return: BMXErrorCode

function removeMembers

删除群成员

Parameters:

  • group 进行操作的群组

  • members 要删除的群组成员id列表

  • reason 删除的原因

Return: BMXErrorCode

function addAdmins

添加管理员

Parameters:

  • group 进行操作的群组

  • admins 要添加为管理员的成员id列表

  • message 添加为管理员的原因

Return: BMXErrorCode

function removeAdmins

删除管理员

Parameters:

  • group 进行操作的群组

  • admins 要从管理员移除的成员id列表

  • reason 要移除管理员的原因

Return: BMXErrorCode

function getAdmins

获取Admins列表,如果设置了forceRefresh则从服务器拉取

Parameters:

  • group 进行操作的群组

  • list 群管理员列表,传入空列表函数返回后从此处获取返回的群组详细信息列表

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

function blockMembers

添加黑名单

Parameters:

  • group 进行操作的群组

  • members 要加入黑名单的群成员id列表

Return: BMXErrorCode

function unblockMembers

从黑名单删除

Parameters:

  • group 进行操作的群组

  • members 从黑名单移除的用户id列表

Return: BMXErrorCode

function getBlockList

分页获取黑名单

Parameters:

  • group 进行操作的群组

  • result 分页获取的黑名单列表,传入指向为空的shared_ptr对象函数执行后从此处获取结果

  • cursor 分页获取的起始cursor,第一次传入为空,后续传入上次操作返回的result中的cursor

  • pageSize 分页大小

Return: BMXErrorCode

function getBlockList

获取黑名单

Parameters:

  • group 进行操作的群组

  • list 群黑名单列表,传入空列表函数返回后从此处获取返回的群组详细信息列表

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

function banMembers

禁言

Parameters:

  • group 进行操作的群组

  • members 被禁言的群成员id列表

  • duration 禁言时长

  • reason 禁言原因

Return: BMXErrorCode

function banGroup

全员禁言,当前服务器时间加上禁言时长后计算出全员禁言到期时间(只有管理和群主可以发言)

Parameters:

  • group 进行操作的群组

  • duration 禁言时长(分钟)

Return: BMXErrorCode

function unbanMembers

解除禁言

Parameters:

  • group 进行操作的群组

  • members 被解除禁言的群成员id列表

Return: BMXErrorCode

function unbanGroup

全员解除禁言

Parameters:

  • group 进行操作的群组

Return: BMXErrorCode

function getBannedMembers

分页获取禁言列表

Parameters:

  • group 进行操作的群组

  • result 分页获取的禁言列表,传入指向为空的shared_ptr对象函数执行后从此处获取结果

  • cursor 分页获取的起始cursor,第一次传入为空,后续传入上次操作返回的result中的cursor

  • pageSize 分页大小

Return: BMXErrorCode

function getBannedMembers

获取禁言列表

Parameters:

  • group 进行操作的群组

  • list 群禁言列表,传入空列表函数返回后从此处获取返回的群组详细信息列表

Return: BMXErrorCode

function muteMessage

设置是否屏蔽群消息

Parameters:

  • group 进行操作的群组

  • mode 群屏蔽的模式

Return: BMXErrorCode

function acceptApplication

接受入群申请

Parameters:

  • group 进行操作的群组

  • applicantId 申请进群的用户id

Return: BMXErrorCode

function declineApplication

拒绝入群申请

Parameters:

  • group 进行操作的群组

  • applicantId 申请进群的用户id

  • reason 拒绝的原因

Return: BMXErrorCode

function acceptInvitation

接受入群邀请

Parameters:

  • group 进行操作的群组

  • inviter 邀请者id

Return: BMXErrorCode

function declineInvitation

拒绝入群邀请

Parameters:

  • group 进行操作的群组

  • inviter 邀请者id

  • reason 拒绝的原因

Return: BMXErrorCode

function transferOwner

转移群主

Parameters:

  • group 进行操作的群组

  • newOwnerId 转让为新群主的用户id

Return: BMXErrorCode

function uploadSharedFile

添加群共享文件

Parameters:

  • group 进行操作的群组

  • filePath 文件的本地路径

  • displayName 文件的展示名

  • extensionName 文件的扩展名

  • Callback 上传回调函数

Return: BMXErrorCode

function cancelUploadSharedFile

取消上传群共享文件

Parameters:

  • group 进行操作的群组

  • filePath 文件的本地路径

Return: BMXErrorCode

function removeSharedFile

移除群共享文件

Parameters:

  • group 进行操作的群组

  • sharedFile 删除的群共享文件

Return: BMXErrorCode

function downloadSharedFile

下载群共享文件

Parameters:

  • group 进行操作的群组

  • sharedFile 下载的群共享文件

  • Callback 下载回调函数

Return: BMXErrorCode

function cancelDownloadSharedFile

取消下载群共享文件

Parameters:

  • group 进行操作的群组

  • sharedFile 下载的群共享文件

Return: BMXErrorCode

function getSharedFilesList

获取群共享文件列表

Parameters:

  • group 进行操作的群组

  • list 群共享文件列表,传入空列表函数返回后从此处获取返回的群组详细信息列表

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

function changeSharedFileName

修改群共享文件名称

Parameters:

  • group 进行操作的群组

  • sharedFile 进行更改的群共享文件

  • name 修改的群共享文件名称

Return: BMXErrorCode

function getLatestAnnouncement

获取最新的群公告

Parameters:

  • group 进行操作的群组

  • announcement 最新的群组公告,传入指向为空的shared_ptr对象函数返回后从此处获取最新的群组公告

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

function getAnnouncementList

获取群公告列表

Parameters:

  • group 进行操作的群组

  • list 群公告列表,传入空列表函数返回后从此处获取返回的群组详细信息列表

  • forceRefresh 设置为true强制从服务器获取,本地获取失败的情况sdk会自动从服务器获取

Return: BMXErrorCode

function editAnnouncement

设置群公告

Parameters:

  • group 进行操作的群组

  • title 群公告的标题

  • content 群公告的内容

Return: BMXErrorCode

function deleteAnnouncement

删除群公告

Parameters:

  • group 进行操作的群组

  • announcementId 删除的群公告id

Return: BMXErrorCode

function setName

设置群名称

Parameters:

  • group 进行操作的群组

  • name 群组名称

Return: BMXErrorCode

function setDescription

设置群描述信息

Parameters:

  • group 进行操作的群组

  • description 群组描述

Return: BMXErrorCode

function setExtension

设置群扩展信息

Parameters:

  • group 进行操作的群组

  • extension 群组的扩展信息

Return: BMXErrorCode

function setMyNickname

设置在群里的昵称

Parameters:

  • group 进行操作的群组

  • nickname 用户在群组内的昵称

Return: BMXErrorCode

function setMsgPushMode

设置群消息通知模式

Parameters:

  • group 进行操作的群组

  • mode 群消息通知模式

Return: BMXErrorCode

function setJoinAuthMode

设置入群审批模式

Parameters:

  • group 进行操作的群组

  • mode 入群审批模式

Return: BMXErrorCode

function setInviteMode

设置邀请模式

Parameters:

  • group 进行操作的群组

  • mode 群组的邀请模式

Return: BMXErrorCode

function setAllowMemberModify

设置是否允许群成员设置群信息

Parameters:

  • group 进行操作的群组

  • enable 是否允许操作

Return: BMXErrorCode

function setEnableReadAck

设置是否开启群消息已读功能

Parameters:

  • group 进行操作的群组

  • enable 是否开启

Return: BMXErrorCode

function setHistoryVisible

设置群成员是否开可见群历史聊天记录

Parameters:

  • group 进行操作的群组

  • enable 是否开启

Return: BMXErrorCode

function setAvatar

设置群头像

Parameters:

  • group 进行操作的群组

  • avatarPath 群头像文件的本地路径

  • Callback 上传回调函数

Return: BMXErrorCode

function downloadAvatar

下载群头像

Parameters:

  • group 进行操作的群组

  • thumbnail 设置为true下载缩略图,false下载原图

  • callback 下载回调函数

Return: BMXErrorCode

function addGroupListener

添加群组变化监听者

Parameters:

  • listener 群组变化监听者

function removeGroupListener

移除群组变化监听者

Parameters:

  • listener 群组变化监听者

Protected Functions Documentation

function BMXGroupService


Updated on 2022-01-26 at 17:20:40 +0800

Last updated

Was this helpful?