HyphenateSDK  3.1.4
IEMGroupManager.h
1 
15 #import <Foundation/Foundation.h>
16 
17 #import "EMGroupManagerDelegate.h"
18 #import "EMGroup.h"
19 #import "EMGroupOptions.h"
20 #import "EMCursorResult.h"
21 
29 @protocol IEMGroupManager <NSObject>
30 
31 @required
32 
33 #pragma mark - Delegate
34 
48 - (void)addDelegate:(id<EMGroupManagerDelegate>)aDelegate
49  delegateQueue:(dispatch_queue_t)aQueue;
50 
62 - (void)removeDelegate:(id)aDelegate;
63 
64 #pragma mark - Get Group
65 
77 - (NSArray *)getAllGroups;
78 
90 - (NSArray *)loadAllMyGroupsFromDB;
91 
103 - (NSArray *)getAllIgnoredGroupIds;
104 
105 #pragma mark - Sync method
106 
126 - (NSArray *)getMyGroupsFromServerWithError:(EMError **)pError;
127 
151 - (EMCursorResult *)getPublicGroupsFromServerWithCursor:(NSString *)aCursor
152  pageSize:(NSInteger)aPageSize
153  error:(EMError **)pError;
154 
176 - (EMGroup *)searchPublicGroupWithId:(NSString *)aGroundId
177  error:(EMError **)pError;
178 
179 #pragma mark - Create
180 
210 - (EMGroup *)createGroupWithSubject:(NSString *)aSubject
211  description:(NSString *)aDescription
212  invitees:(NSArray *)aInvitees
213  message:(NSString *)aMessage
214  setting:(EMGroupOptions *)aSetting
215  error:(EMError **)pError;
216 
217 #pragma mark - Fetch Info
218 
242 - (EMGroup *)fetchGroupInfo:(NSString *)aGroupId
243  includeMembersList:(BOOL)aIncludeMembersList
244  error:(EMError **)pError;
245 
267 - (NSArray *)fetchGroupBansList:(NSString *)aGroupId
268  error:(EMError **)pError;
269 
270 #pragma mark - Edit Group
271 
297 - (EMGroup *)addOccupants:(NSArray *)aOccupants
298  toGroup:(NSString *)aGroupId
299  welcomeMessage:(NSString *)aWelcomeMessage
300  error:(EMError **)pError;
301 
325 - (EMGroup *)removeOccupants:(NSArray *)aOccupants
326  fromGroup:(NSString *)aGroupId
327  error:(EMError **)pError;
328 
352 - (EMGroup *)blockOccupants:(NSArray *)aOccupants
353  fromGroup:(NSString *)aGroupId
354  error:(EMError **)pError;
355 
356 
380 - (EMGroup *)unblockOccupants:(NSArray *)aOccupants
381  forGroup:(NSString *)aGroupId
382  error:(EMError **)pError;
383 
407 - (EMGroup *)changeGroupSubject:(NSString *)aSubject
408  forGroup:(NSString *)aGroupId
409  error:(EMError **)pError;
410 
434 - (EMGroup *)changeDescription:(NSString *)aDescription
435  forGroup:(NSString *)aGroupId
436  error:(EMError **)pError;
437 
459 - (EMGroup *)leaveGroup:(NSString *)aGroupId
460  error:(EMError **)pError;
461 
483 - (EMGroup *)destroyGroup:(NSString *)aGroupId
484  error:(EMError **)pError;
485 
486 
508 - (EMGroup *)blockGroup:(NSString *)aGroupId
509  error:(EMError **)pError;
510 
532 - (EMGroup *)unblockGroup:(NSString *)aGroupId
533  error:(EMError **)pError;
534 
535 #pragma mark - Edit Public Group
536 
558 - (EMGroup *)joinPublicGroup:(NSString *)aGroupId
559  error:(EMError **)pError;
560 
584 - (EMGroup *)applyJoinPublicGroup:(NSString *)aGroupId
585  message:(NSString *)aMessage
586  error:(EMError **)pError;
587 
588 #pragma mark - Application
589 
611 - (EMError *)acceptJoinApplication:(NSString *)aGroupId
612  applicant:(NSString *)aUsername;
613 
637 - (EMError *)declineJoinApplication:(NSString *)aGroupId
638  applicant:(NSString *)aUsername
639  reason:(NSString *)aReason;
640 
664 - (EMGroup *)acceptInvitationFromGroup:(NSString *)aGroupId
665  inviter:(NSString *)aUsername
666  error:(EMError **)pError;
667 
691 - (EMError *)declineInvitationFromGroup:(NSString *)aGroupId
692  inviter:(NSString *)aUsername
693  reason:(NSString *)aReason;
694 
695 #pragma mark - Apns
696 
718 - (EMError *)ignoreGroupPush:(NSString *)aGroupId
719  ignore:(BOOL)aIsIgnore;
720 
721 #pragma mark - Async method
722 
738 - (void)asyncGetMyGroupsFromServer:(void (^)(NSArray *aList))aSuccessBlock
739  failure:(void (^)(EMError *aError))aFailureBlock;
740 
760 - (void)asyncGetPublicGroupsFromServerWithCursor:(NSString *)aCursor
761  pageSize:(NSInteger)aPageSize
762  success:(void (^)(EMCursorResult *aCursor))aSuccessBlock
763  failure:(void (^)(EMError *aError))aFailureBlock;
764 
782 - (void)asyncSearchPublicGroupWithId:(NSString *)aGroundId
783  success:(void (^)(EMGroup *aGroup))aSuccessBlock
784  failure:(void (^)(EMError *aError))aFailureBlock;
785 
811 - (void)asyncCreateGroupWithSubject:(NSString *)aSubject
812  description:(NSString *)aDescription
813  invitees:(NSArray *)aInvitees
814  message:(NSString *)aMessage
815  setting:(EMGroupOptions *)aSetting
816  success:(void (^)(EMGroup *aGroup))aSuccessBlock
817  failure:(void (^)(EMError *aError))aFailureBlock;
818 
838 - (void)asyncFetchGroupInfo:(NSString *)aGroupId
839  includeMembersList:(BOOL)aIncludeMembersList
840  success:(void (^)(EMGroup *aGroup))aSuccessBlock
841  failure:(void (^)(EMError *aError))aFailureBlock;
842 
860 - (void)asyncFetchGroupBansList:(NSString *)aGroupId
861  success:(void (^)(NSArray *aList))aSuccessBlock
862  failure:(void (^)(EMError *aError))aFailureBlock;
863 
885 - (void)asyncAddOccupants:(NSArray *)aOccupants
886  toGroup:(NSString *)aGroupId
887  welcomeMessage:(NSString *)aWelcomeMessage
888  success:(void (^)(EMGroup *aGroup))aSuccessBlock
889  failure:(void (^)(EMError *aError))aFailureBlock;
890 
910 - (void)asyncRemoveOccupants:(NSArray *)aOccupants
911  fromGroup:(NSString *)aGroupId
912  success:(void (^)(EMGroup *aGroup))aSuccessBlock
913  failure:(void (^)(EMError *aError))aFailureBlock;
914 
934 - (void)asyncBlockOccupants:(NSArray *)aOccupants
935  fromGroup:(NSString *)aGroupId
936  success:(void (^)(EMGroup *aGroup))aSuccessBlock
937  failure:(void (^)(EMError *aError))aFailureBlock;
938 
958 - (void)asyncUnblockOccupants:(NSArray *)aOccupants
959  forGroup:(NSString *)aGroupId
960  success:(void (^)(EMGroup *aGroup))aSuccessBlock
961  failure:(void (^)(EMError *aError))aFailureBlock;
962 
982 - (void)asyncChangeGroupSubject:(NSString *)aSubject
983  forGroup:(NSString *)aGroupId
984  success:(void (^)(EMGroup *aGroup))aSuccessBlock
985  failure:(void (^)(EMError *aError))aFailureBlock;
986 
1006 - (void)asyncChangeDescription:(NSString *)aDescription
1007  forGroup:(NSString *)aGroupId
1008  success:(void (^)(EMGroup *aGroup))aSuccessBlock
1009  failure:(void (^)(EMError *aError))aFailureBlock;
1010 
1028 - (void)asyncLeaveGroup:(NSString *)aGroupId
1029  success:(void (^)(EMGroup *aGroup))aSuccessBlock
1030  failure:(void (^)(EMError *aError))aFailureBlock;
1031 
1048 - (void)asyncDestroyGroup:(NSString *)aGroupId
1049  success:(void (^)(EMGroup *aGroup))aSuccessBlock
1050  failure:(void (^)(EMError *aError))aFailureBlock;
1051 
1068 - (void)asyncBlockGroup:(NSString *)aGroupId
1069  success:(void (^)(EMGroup *aGroup))aSuccessBlock
1070  failure:(void (^)(EMError *aError))aFailureBlock;
1071 
1088 - (void)asyncUnblockGroup:(NSString *)aGroupId
1089  success:(void (^)(EMGroup *aGroup))aSuccessBlock
1090  failure:(void (^)(EMError *aError))aFailureBlock;
1091 
1108 - (void)asyncJoinPublicGroup:(NSString *)aGroupId
1109  success:(void (^)(EMGroup *aGroup))aSuccessBlock
1110  failure:(void (^)(EMError *aError))aFailureBlock;
1111 
1131 - (void)asyncApplyJoinPublicGroup:(NSString *)aGroupId
1132  message:(NSString *)aMessage
1133  success:(void (^)(EMGroup *aGroup))aSuccessBlock
1134  failure:(void (^)(EMError *aError))aFailureBlock;
1135 
1155 - (void)asyncAcceptJoinApplication:(NSString *)aGroupId
1156  applicant:(NSString *)aUsername
1157  success:(void (^)())aSuccessBlock
1158  failure:(void (^)(EMError *aError))aFailureBlock;
1159 
1181 - (void)asyncDeclineJoinApplication:(NSString *)aGroupId
1182  applicant:(NSString *)aUsername
1183  reason:(NSString *)aReason
1184  success:(void (^)())aSuccessBlock
1185  failure:(void (^)(EMError *aError))aFailureBlock;
1186 
1207 - (void)asyncAcceptInvitationFromGroup:(NSString *)aGroupId
1208  inviter:(NSString *)aUsername
1209  success:(void (^)(EMGroup *aGroup))aSuccessBlock
1210  failure:(void (^)(EMError *aError))aFailureBlock;
1211 
1233 - (void)asyncDeclineInvitationFromGroup:(NSString *)aGroupId
1234  inviter:(NSString *)aUsername
1235  reason:(NSString *)aReason
1236  success:(void (^)())aSuccessBlock
1237  failure:(void (^)(EMError *aError))aFailureBlock;
1238 
1258 - (void)asyncIgnoreGroupPush:(NSString *)aGroupId
1259  ignore:(BOOL)aIsIgnore
1260  success:(void (^)())aSuccessBlock
1261  failure:(void (^)(EMError *aError))aFailureBlock;
1262 
1263 @end
Definition: EMGroupOptions.h:41
Definition: EMError.h:26
NSArray * getAllIgnoredGroupIds()
Definition: EMGroup.h:26
NSArray * getAllGroups()
Definition: EMCursorResult.h:24
NSArray * loadAllMyGroupsFromDB()
Definition: IEMGroupManager.h:29
Definition: EMGroupManagerDelegate.h:39