Skip to main content

Group Overview

Group chat is a common multi-user communication method in instant messaging applications, typically involving two or more users. RC's group service supports rich group member management, mute management, and other features, along with offline push notifications and historical message roaming. It can be used for interest groups, office groups, customer service communication, and more. Global IM UIKit provides out-of-the-box group chat UI components.

Service Configuration

The client SDK supports group services by default, and no application is required to enable it. Some basic features and value-added services can be enabled and configured in the Basic features and Chat pricing plans pages of the Console.

  • There is no limit to the number of groups that can be created under an App Key. There is also no limit to the number of groups a single user can join.
  • Groups have a capacity limit. By default, the maximum number of group members is 3000, which can be modified by submitting a ticket.
  • By default, the Cloud Storage for One-to-One and Group Messages service is not enabled for an App Key. You can enable it yourself. For details, see Enable Cloud Storage for One-to-One and Group Messages. For App Keys in the production environment, only Chat Premium Plan and Chat Ultimate Plan can enable this service.
  • By default, users can only view group chat messages after they join the group. After enabling the service, new members can access historical group chat messages from before they joined. For details, see Enable New Users to Access Historical Messages Before Joining a Group.

Client SDK Usage Notes

  • The client SDK does not provide APIs for group management. To create a group, the App server must request the RC server API. Other operations such as disbanding a group, joining a group, exiting a group, etc., must also be performed by the App server requesting the RC server API. For details, see the Group Management Features section below.
  • Group owner, group administrator, group announcement, group invitation, and group number search are all part of the group business logic and need to be implemented on the App side.
  • RC is only responsible for delivering messages to all users in the group and does not maintain group member profiles (avatars, names, group member cards, etc.). The App needs to maintain relevant data on its business server and implement the relevant interfaces of Global IM UIKit to provide data to Global IM UIKit.

Group Management Features

For client developers, basic management operations such as creating or disbanding a group only require interaction with the App's own business server. The App server is responsible for calling the corresponding RC server API (Server API) interfaces to complete these operations.

Server APIDescription
Create Group, Disband GroupProvide the creator's user ID, group ID, and group name to request group creation from the RC server. If a group is disbanded, the group member relationships no longer exist.
Join Group, Exit GroupAfter joining a group, members can view new messages generated after joining by default. After exiting a group, members no longer receive new messages from that group.
Refresh Group InfoModify the group information used in RC push services.
Query Group MembersQuery the user ID information of all members in a specified group.
Query Groups by UserQuery all groups a user has joined based on their user ID, returning the group ID and group name. RC does not store group profile information. Group profiles and member information need to be maintained by the developer on the application server. If there are discrepancies in the user-group relationships maintained by the App server, this interface can be used for verification.
Sync User GroupsSynchronize all groups a specified user has joined with the RC server to prevent inconsistencies between the user-group information in the App and the RC server. If there is existing group and member data on the App Server before integrating RC services, this interface can be used to synchronize the existing user-group relationships with RC during the first connection.
Mute a UserMute one or more users in a specified group or all groups. Muted users can receive and view messages from other users in the group but cannot send messages via the client SDK.
Mute AllMute all members of a group. All members of a muted group cannot send messages. If certain users need to speak, they can be added to the group mute allowlist.
Add to Mute ExceptionsAfter a group is muted, users in the mute allowlist can send group messages.