/*!
* \~chinese
* @header IEMGroupManager.h
* @abstract 此协议定义了群组相关操作
* @author Hyphenate
* @version 3.00
*
* \~english
* @header IEMGroupManager.h
* @abstract This protocol defined the group operations
* @author Hyphenate
* @version 3.00
*/
#import <Foundation/Foundation.h>
#import "EMGroupManagerDelegate.h"
#import "EMGroup.h"
#import "EMGroupOptions.h"
#import "EMCursorResult.h"
/*!
* \~chinese
* 群组相关操作
*
* \~english
* Group operations
*/
@protocol IEMGroupManager <NSObject>
@required
#pragma mark - Delegate
/*!
* \~chinese
* 添加回调代理
*
* @param aDelegate 要添加的代理
* @param aQueue 添加回调代理
*
* \~english
* Add delegate
*
* @param aDelegate Delegate
* @param aQueue The queue of call delegate method
*/
- (void)addDelegate:(id<EMGroupManagerDelegate>)aDelegate
delegateQueue:(dispatch_queue_t)aQueue;
/*!
* \~chinese
* 移除回调代理
*
* @param aDelegate 要移除的代理
*
* \~english
* Remove delegate
*
* @param aDelegate Delegate
*/
- (void)removeDelegate:(id)aDelegate;
#pragma mark - Get Group
/*!
* \~chinese
* 获取所有群组,如果内存中不存在,则先从DB加载
*
* @result 群组列表<EMGroup>
*
* \~english
* Get all groups, will load from DB if not exist in memory
*
* @result Group list<EMGroup>
*/
- (NSArray *)getAllGroups;
/*!
* \~chinese
* 从数据库加载所有群组,加载后更新内存中的群组列表
*
* @result 群组列表<EMGroup>
*
* \~english
* Load all groups from DB, will update group list in memory after loading
*
* @result Group list<EMGroup>
*/
- (NSArray *)loadAllMyGroupsFromDB;
/**
* \~chinese
* 从服务器获取用户所有的群组,成功后更新DB和内存中的群组列表
*
* 同步方法,会阻塞当前线程
*
* @param pError 错误信息
*
* @return 群组列表<EMGroup>
*
* \~english
* Get all of user's groups from server, will update group list in memory and DB after success
*
* Synchronization method will block the current thread
*
* @param pError Error
*
* @result Group list<EMGroup>
*/
- (NSArray *)getMyGroupsFromServerWithError:(EMError **)pError;
/*!
* \~chinese
* 从服务器获取指定范围内的公开群
*
* 同步方法,会阻塞当前线程
*
* @param aCursor 获取公开群的cursor,首次调用传空
* @param aPageSize 期望返回结果的数量, 如果 < 0 则一次返回所有结果
* @param pError 出错信息
*
* @return 获取的公开群结果
*
* \~english
* Get public groups in the specified range from the server
*
* Synchronization method will block the current thread
*
* @param aCursor Cursor, input nil the first time
* @param aPageSize Expect result count, will return all results if < 0
* @param pError Error
*
* @return The result
*/
- (EMCursorResult *)getPublicGroupsFromServerWithCursor:(NSString *)aCursor
pageSize:(NSInteger)aPageSize
error:(EMError **)pError;
/*!
* \~chinese
* 根据群ID搜索公开群
*
* 同步方法,会阻塞当前线程
*
* @param aGroundId 群组id
* @param pError 错误信息
*
* @return 搜索到的群组
*
* \~english
* Search public group with the id
*
* Synchronization method will block the current thread
*
* @param aGroundId Group id
* @param pError Error
*
* @return The group with the id
*/
- (EMGroup *)searchPublicGroupWithId:(NSString *)aGroundId
error:(EMError **)pError;
#pragma mark - Create
/*!
* \~chinese
* 创建群组
*
* 同步方法,会阻塞当前线程
*
* @param aSubject 群组名称
* @param aDescription 群组描述
* @param aInvitees 群组成员(不包括创建者自己)
* @param aMessage 邀请消息
* @param aSetting 群组属性
* @param pError 出错信息
*
* @return 创建的群组
*
* \~english
* Create a group
*
* Synchronization method will block the current thread
*
* @param aSubject Group subject
* @param aDescription Group description
* @param aInvitees Group members, without creater
* @param aMessage Invitation message
* @param aSetting Group options
* @param pError Error
*
* @return Created group
*/
- (EMGroup *)createGroupWithSubject:(NSString *)aSubject
description:(NSString *)aDescription
invitees:(NSArray *)aInvitees
message:(NSString *)aMessage
setting:(EMGroupOptions *)aSetting
error:(EMError **)pError;
#pragma mark - Fetch Info
/*!
* \~chinese
* 获取群组详情
*
* 同步方法,会阻塞当前线程
*
* @param aGroupId 群组ID
* @param aIncludeMembersList 是否获取成员列表
* @param pError 错误信息
*
* @return 群组
*
* \~english
* Fetch group info
*
* Synchronization method will block the current thread
*
* @param aGroupId Group id
* @param aIncludeMembersList Whether get member list
* @param pError Error
*
* @return Group instance
*/
- (EMGroup *)fetchGroupInfo:(NSString *)aGroupId
includeMembersList:(BOOL)aIncludeMembersList
error:(EMError **)pError;
/*!
* \~chinese
* 获取群组黑名单列表, 需要owner权限
*
* 同步方法,会阻塞当前线程
*
* @param aGroupId 群组ID
* @param pError 错误信息
*
* @return 群组黑名单列表<NSString>
*
* \~english
* Get group‘s blacklist, need owner’s authority
*
* Synchronization method will block the current thread
*
* @param aGroupId Group id
* @param pError Error
*
* @return Group blacklist<NSString>
*/
- (NSArray *)fetchGroupBansList:(NSString *)aGroupId
error:(EMError **)pError;
#pragma mark - Edit Group
/*!
* \~chinese
* 邀请用户加入群组
*
* 同步方法,会阻塞当前线程
*
* @param aOccupants 被邀请的用户名列表
* @param aGroupId 群组ID
* @param aWelcomeMessage 欢迎信息
* @param pError 错误信息
*
* @result 群组实例, 失败返回nil
*
* \~english
* Invite User to join a group
*
* Synchronization method will block the current thread
*
* @param aOccupants Invited users
* @param aGroupId Group id
* @param aWelcomeMessage Welcome message
* @param pError Error
*
* @result Group instance, return nil if fail
*/
- (EMGroup *)addOccupants:(NSArray *)aOccupants
toGroup:(NSString *)aGroupId
welcomeMessage:(NSString *)aWelcomeMessage
error:(EMError **)pError;
/*!
* \~chinese
* 将群成员移出群组, 需要owner权限
*
* 同步方法,会阻塞当前线程
*
* @param aOccupants 要移出群组的用户列表
* @param aGroupId 群组ID
* @param pError 错误信息
*
* @result 群组实例
*
* \~english
* Remove members from group, need owner‘s authority
*
* Synchronization method will block the current thread
*
* @param aOccupants Users to be removed
* @param aGroupId Group id
* @param pError Error
*
* @result Group instance
*/
- (EMGroup *)removeOccupants:(NSArray *)aOccupants
fromGroup:(NSString *)aGroupId
error:(EMError **)pError;
/*!
* \~chinese
* 加人到群组黑名单, 需要owner权限
*
* 同步方法,会阻塞当前线程
*
* @param aOccupants 要加入黑名单的用户
* @param aGroupId 群组ID
* @param pError 错误信息
*
* @result 群组实例
*
* \~engli
没有合适的资源?快使用搜索试试~ 我知道了~
ios IM即时通讯 环信SDK3.1.2集成,自定义聊天界面
共811个文件
h:365个
m:247个
png:70个
4星 · 超过85%的资源 需积分: 50 247 下载量 123 浏览量
2016-11-17
15:46:43
上传
评论 6
收藏 57.93MB ZIP 举报
温馨提示
ios IM即时通讯,基于环信SDK3.1.2,自定义聊天界面,实现群和好友的创建添加删除,聊天只实现了文字和图片聊天。
资源推荐
资源详情
资源评论
收起资源包目录
ios IM即时通讯 环信SDK3.1.2集成,自定义聊天界面 (811个子文件)
._3rdparty 177B
._amrwapper 177B
._Auto 177B
._Back 177B
._Base 177B
._Category 177B
._Classes 177B
._contact 177B
._conversation 177B
._conversationList 177B
._Custom 177B
._DACircularProgress 177B
._delegates 177B
._DeviceHelper 177B
._EaseUI 177B
._Emoji 177B
._EMSDWebImage 177B
._EMUIKit 177B
._FaceView 177B
._Footer 177B
._Header 177B
._Helper 177B
._HyphenateFullSDK 177B
._images 177B
._include 177B
._internal 177B
._lib 177B
._Libraries 177B
._MBProgressHUD 177B
._MessageCell 177B
._MessageCellBubbleView 177B
._MJRefresh 177B
._Model 177B
._MoreView 177B
._MWPhotoBrowser 177B
._opencore-amrnb 177B
._opencore-amrwb 177B
._PSTCollectionView 177B
._RecordView 177B
._toolbar 177B
._Util 177B
._ViewController 177B
._Views 177B
._VoiceConvert 177B
libHyphenateFullSDK.a 131.28MB
libopencore-amrnb.a 5.43MB
libopencore-amrwb.a 1.97MB
._libopencore-amrwb.a 177B
._libopencore-amrnb.a 177B
._libHyphenateFullSDK.a 177B
._MJRefresh.bundle 177B
._MWPhotoBrowser.bundle 177B
FixFopen.c 1KB
._FixFopen.c 177B
.DS_Store 10KB
.DS_Store 10KB
.DS_Store 10KB
.DS_Store 8KB
.DS_Store 8KB
.DS_Store 8KB
.DS_Store 8KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
._.DS_Store 177B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
._.DS_Store 120B
IEMGroupManager.h 17KB
MBProgressHUD.h 16KB
共 811 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9
资源评论
- 在人间ing2017-01-03非常感谢,这个版本不错!
- 阮小木2017-03-01没有实时通话部分,
- syqaxldy2017-12-20运行不了....
L_weiguo
- 粉丝: 3
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功