Quick Reference for AI Agents & Developers
Retrieve List of Groups
How do I retrieve the list of groups I’ve joined and groups that are available? To fetch the list of groups, use theGroupsRequest class. To create an object of the GroupsRequest class, you need to use the GroupsRequestBuilder class. The GroupsRequestBuilder class allows you to set the parameters based on which the groups are fetched.
Set Limit
This method sets the limit i.e. the number of groups that should be fetched in a single iteration.- Java
- Kotlin
Set Search Keyword
This method allows you to set the search string based on which the groups are to be fetched.- Java
- Kotlin
Joined Only
This method tells CometChat to only return the groups that the user has joined or is a part of.- Java
- Kotlin
Set Tags
This method accepts a list of tags based on which the list of groups is to be fetched. The list fetched will only contain the groups that have been tagged with the specified tags.- Java
- Kotlin
With Tags
This property when set to true will fetch tags data along with the list of groups.- Java
- Kotlin
build() method to get the object of the GroupsRequest class.
Once you have the object of the GroupsRequest class, call the fetchNext() method. This method returns a list of Group objects containing N number of groups depending on the limit set.
The list of groups fetched will only include public and password type groups. Private groups are only included if the user is a member of that private group.
- Java
- Kotlin
Retrieve Particular Group Details
How do I retrieve information for a specific group? To get the information of a group, use thegetGroup() method.
- Java
- Kotlin
| Parameter | Description |
|---|---|
GUID | The GUID of the group for whom the details are to be fetched |
Group object containing the details of the group is returned.
Get online group member count
To get the total count of online users in particular groups, you can use thegetOnlineGroupMemberCount() method.
- Java
- Kotlin
Hashmap with the GUID of the group as the key and the online member count for that group as the value.
Best Practices
Use Pagination for Large Lists
Use Pagination for Large Lists
Set an appropriate limit (e.g., 30) and call
fetchNext() multiple times to load groups in batches, improving performance and user experience.Filter with joinedOnly for User Groups
Filter with joinedOnly for User Groups
Use
joinedOnly(true) to fetch only groups the user has joined, reducing unnecessary data transfer and improving load times.Implement Search for Better UX
Implement Search for Better UX
Use
setSearchKeyWord() to allow users to quickly find specific groups by name, especially in apps with many groups.Use Tags for Categorization
Use Tags for Categorization
Troubleshooting
Empty Groups List
Empty Groups List
Symptom:
fetchNext() returns an empty list even though groups exist.Cause: Filters may be too restrictive, or the user hasn’t joined any groups (when using joinedOnly(true)).Solution: Remove filters temporarily to verify groups exist. Check if joinedOnly() is appropriate for your use case.Private Groups Not Showing
Private Groups Not Showing
Symptom: Private groups are missing from the fetched list.Cause: Private groups only appear if the user is a member.Solution: This is expected behavior. Users must be added to private groups by admins before they can see them.
getGroup() Returns Null
getGroup() Returns Null
Symptom:
getGroup() fails with “Group not found” error.Cause: The GUID is incorrect, or the group has been deleted.Solution: Verify the GUID is correct. Check if the group still exists by fetching the groups list first.