Leave a Group

Learn how to leave a group.

Leave a Group

In order to stop receiving updates and messages for any particular joined group, you will have to leave the group using the leaveGroup() method.

let guid = "SUPERGROUP1";

CometChat.leaveGroup(GUID: guid, onSuccess: { (response) in

    print("Left group successfully.")

}) { (error) in

  print("Group leaving failed with error:" + error!.errorDescription);
}
NSString *guid = @"SUPERGROUP01";

[CometChat leaveGroupWithGUID:guid onSuccess:^(NSString * response) {
    
    NSLog(@"Left group successfully. %@",response);
    
} onError:^(CometChatException * error) {
    
    NSLog(@"Group leaving failed with error: %@",[error errorDescription]);
}];

GUID

The UID of the group you would like to leave

Once a group is left, the user will not receive any updates or messages pertaining to the group.

Real-time Leave Group Event

In other words, as a member of a group, how do I know if someone has left it?

If a user leaves any group, the members of the group receive a real-time event in the onGroupMemberLeft() method of the CometChatGroupDelegate. In order to receive user Events, you must add protocol conformance CometChatGroupDelegate as shown below :

extension AppDelegate: CometChatGroupDelegate {

  func onGroupMemberLeft(action: ActionMessage, leftUser: User, leftGroup: Group) {

    print("\(leftUser.name) left the group \(leftGroup.name).")
  }
}
@interface ViewController ()<CometChatGroupDelegate>

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    [CometChat setGroupdelegate:self];
    
}

- (void)onGroupMemberLeftWithAction:(ActionMessage *)action leftUser:(User *)leftUser leftGroup:(Group *)leftGroup {
    //user was left
}

Do not forget to set your view controller as a CometChat delegate probably in viewDidLoad() as CometChat.groupdelegate = self

Missed Group Member Left Events

In other words, as a member of a group, how do I know if someone has left it when my app is not running?

When you retrieve the list of previous messages if a member has left any group that the logged-in user is a member of, the list of messages will contain an Action message. An Action message is a sub-class of BaseMessage class.

For the group member left event, in the Action object received, the following fields can help you get the relevant information-

  1. action - left
  2. actionBy - User object containing the details of the user who left the group
  3. actionFor - Group object containing the details of the group the user has left

Did this page help you?