Skip to main content

Chatroom Overview

Chatroom provides a business model with no user limit and supports high-concurrency message processing, suitable for scenarios such as live streaming, communities, games, social networking, and interest discussions. Key points of the chatroom business are as follows:

  • There is no limit to the number of chatrooms that can be created under an App Key, and there is no limit to the number of members in a single chatroom.
  • Chatrooms have an automatic destruction mechanism. By default, all chatrooms will automatically destroy and kick out all members after 1 hour of inactivity (no members entering or leaving and no new messages). This duration can be extended, or it can be configured for scheduled automatic destruction. For details, refer to the server documentation Chatroom Destruction Mechanism.
  • Chatrooms have an automatic exit mechanism for offline members. When the default preset conditions are met, the RC server will kick out chatroom members. For details, refer to Exit Chatroom.
  • Local messages in chatrooms are deleted when exiting the chatroom. Chat Premium Plan and Chat Ultimate Plan customers can choose to enable the Cloud Storage for Chatroom Messages feature to store messages on the RC server. Specific features and fees are subject to the Billing Instructions document.
  • Chatrooms do not support offline message push notifications. Only online chatroom members can receive chatroom messages.

Client UI Framework Reference Design

The chatroom product does not currently provide dedicated UI components for chatroom conversations. You can refer to the following UI framework design to understand the design concept of chatrooms.

  • The Chatroom tab in the figure below shows the chatroom message list.
  • The Chatroom Management window in the figure below demonstrates some of the capabilities supported by chatrooms, such as muting, banning, allowlist, etc.

Service Configuration

The client SDK supports chatrooms by default, and no application is required to enable it.

Some basic features and value-added services of chatrooms can be enabled and configured on the Console's Basic Features and Chat pricing plans pages.

Client SDK Usage Notes

tip

Global IM UIKit depends on IMLib, so it has all the capabilities of IMLib, including chatrooms. However, please note that global IM UIKit does not provide out-of-the-box UI components for chatroom conversations.

Chatroom Feature Interfaces

The chatroom session relationship is established and maintained by RC. The SDK provides some chatroom management interfaces such as joining and exiting. More chatroom management features require the use of the IM server API. The table below describes the main feature interfaces of RC chatrooms.

Feature CategoryFeature DescriptionClient APIRC Server API
Create & Destroy ChatroomManually create or destroy a chatroom. Note: The client SDK does not have a separate API for creating a chatroom. The client does not provide an API for manually destroying a chatroom.Not providedCreate Room, Destroy Room
Join & Exit ChatroomJoin an existing chatroom, ensure the chatroom ID exists. Joining and exiting chatrooms are only provided by the client API. Note: The client has deprecated APIs that support creating a chatroom if it does not exist before joining, but this is no longer recommended.Join Chatroom, Exit ChatroomNot provided
Query Chatroom & User Info
  • Query basic information about a chatroom, including chatroom ID, name, and creation time.
  • Query chatroom member information, supports retrieving member user IDs and join times, up to 500 members, and supports sorting by join time.
Query Chatroom InfoQuery Room Info
Chatroom KeepaliveAdd one or more chatrooms to the chatroom keepalive list. Chatrooms in the keepalive list will not be automatically destroyed by the RC server.Not providedKeepalive Room
Chatroom Attribute Management

Set custom attributes in a specified chatroom. For example, in a voice live streaming chatroom scenario, this feature can be used to record the attributes of each microphone position; or in card games like Werewolf, it can record user roles and game states.

Chatroom attributes are stored in Key-Value format, supporting setting, deleting, and querying attributes, and supports batch and forced operations.

Chatroom AttributesAttribute Management (KV)
Ban/Unban Chatroom UserBan one or more chatroom members. Banned members will be kicked out of the specified chatroom and cannot re-enter the chatroom during the ban period.Not providedMember Ban
Chatroom User Allowlist

This service needs to be enabled under General Services on the Chat pricing plans page. Chat Premium Plan or Chat Ultimate Plan can enable this service. Specific features and fees are subject to the Billing Instructions document.

When a user is added to the allowlist of a chatroom, their messages will not be discarded even if the chatroom message volume is high, and the user will not be automatically kicked out by the RC server.

Not providedChatroom Allowlist Service
Send Chatroom MessageSend chatroom messages.Send MessageSend Chatroom Message
Recall Chatroom MessageRecall chatroom messages.Recall MessageMessage Recall
Get Chatroom History MessagesGet chatroom history messages.Get Chatroom History MessagesHistory Message Log
Chatroom Low-Priority Messages

This service needs to be enabled under General Services on the Chat pricing plans page. Chat Premium Plan or Chat Ultimate Plan can enable this service. Specific features and fees are subject to the Billing Instructions document.

If a message type is in the low-priority message list, all messages of that type are considered low-priority. When the server load is high, high-priority messages are retained first, and low-priority messages are discarded first. By default, all messages are high-priority.

Not providedChatroom Message Priority Service
Chatroom Message Allowlist

This service needs to be enabled under General Services on the Chat pricing plans page. Chat Premium Plan or Chat Ultimate Plan can enable this service. Specific features and fees are subject to the Billing Instructions document.

If a message type is in the chatroom message allowlist, all messages of that type are protected and will not be discarded even if the chatroom message volume is high.

Not providedChatroom Allowlist Service
Mute Chatroom MemberMute one or more members in a specified chatroom. Muted chatroom members can receive and view chatroom messages but cannot send messages to the chatroom.Not providedMute a User
Mute All Chatroom MembersMute all members in a chatroom or cancel the mute status of all members in a specified chatroom. When all group members are muted, no members can send messages to the group via the client SDK.Not providedMute All
Mute ExceptionsAdd one or more group members to the chatroom mute exceptions list. When a chatroom member is added to the exceptions list, they can still send messages to the chatroom via the client SDK even if the chatroom is in a mute-all state.Not providedMute All
Global Mute Chatroom Members

This service needs to be enabled under General Services on the Chat pricing plans page. Chat Premium Plan or Chat Ultimate Plan can enable this service. Specific features and fees are subject to the Billing Instructions document.

Add one or more users to the global mute list of chatrooms. Users in the list cannot send messages in any chatroom under the application.

Not providedGlobal Mute

Differences Between Groups and Ultra Groups

You can understand the differences between business types and all features through the following documents: