Chat room overview
Chat rooms enable real-time messaging among multiple users. Chat rooms do not have a strict membership and members do not have any relationship with each other. Once a chat room member exits the chat room, this member does not receive any push message from the chat room, and within 5 minutes, automatically leaves the chat room. Chat rooms are widely applied in live broadcast use cases as stream chat in Twitch.
Chat room roles and privileges
Chat rooms have the following roles and privileges:
- Chat room members: Regular members that can send and receive chat room messages.
- Chat room admins: They are specified by the chat group owner. Apart from sending and receiving chat room messages, they have some administrative privileges. You can add up to 99 admins for each chat room.
- Chat room owner: The creator of the chat room. Chat room owners have the highest privileges, including specifying the chat room admin, disbanding the chat room, modifying the chat room attributes, and managing other chat room members.
Differences between chat group and chat room
Both chat group and chat room support instant messaging among multiple users. The major difference lies in whether mmebers have a stable relationship. Chat group members tend to remain for a long time, whereas chat room members join and leave freely.
The following table shows the feature comparisons between a chat group and a chat room:
Feature | Chat group | Chat room |
---|---|---|
Use cases | Group chat scenarios in Signal and Skype, where all members have a stable relationship. | Stream chat scenarios in Twitch, where viewers have no relationship with each other. Once a member quits the stream chat channel, this member leaves the chat room. |
Maximum number of members | 5,000 | 20,000 and more |
Message push support | Members receive push messages when they go offline. | Members do not receive push messages when they go offline. |
Message storage support | Supports message storage when a member is offline. Once online, this member receives all the stored messages. A maximum number of 200 messages can be stored for each group chat thread. | This feature can be enabled and disabled. If you enable this feature, the SDK supports message storage when a member is offline. Once online, this member receives all the stored messages. By default, 10 messages can be stored for each chat room thread, and you can set this number to a maximum value of 200. |
Message reliablity | All members can receive all the messages in the chat group. | When message overload occurs, the SDK discards the messages based on the threshold, which is 100 messages per second. You can adjust this threshold according to your needs. |
Chat room features
The Chat SDK supports creating and managing chat rooms, managing chat room members, and modifying chat room attributes.
You can implement the following features with the chat room APIs:
Create a chat room
Only the chat room super admin can create a chat room, and the user that creates the chat room becomes the chat room owner. The maximum number of chat room member supported vary according to the pricing plan. For details, see Limitations of chat room.
Join and leave a chat room
All the chat users can join and leave the chat rooms freely.
Disband a chat room
Only the chat room owner can disband the chat room.
Retrieve the chat room list
All the chat users can retrieve the chat room list from the server with pagination.
Retrieve the chat room attributes
All the chat room members can retrieve the chat room attributes including the chat room name and descriptions.
Modify the chat room name
Only the chat room owner has the privilege to modify the chat room name.
Modify the chat room announcement
Only the chat room owner has the privilege to edit and delete the chat room announcement. Once the notification is updated, all the chat room members are informed of this update by callback events.
Transfer the chat room ownership
The chat room owner can transfer the ownership to the specified chat room member.
Add and remove the chat room admin
The chat room owner can add and remove the chat room admin.
Mute the specified chat room member
The chat room owner or admin can mute the specified chat room member.
Mute all the chat room members
The chat room owner or admin can mute all the chat room members. By default, the chat room owner and admin are excluded from the chat room mute list.
Manage the chat room allow list
The chat room owner or admin can add the specified members to the chat room allow list, and remove them from the list. Once added to the chat room allow list, the members can send messages to the chat room even when the chat room owner or admin has muted all the chat room members.
Manage the chat room block list
The chat room owner or admin can add the specified members to the chat room block list, and remove them from the list. Once added to the chat room block list, the members cannot send or receive chat group messages, nor can they join the chat room again.
Limitations of chat room
The maximum number of chat room members, the total number of chat rooms you can create, and the maximum number of chat rooms a user can join vary according to your pricing plan.
Pricing plan | Number of chat room members | Number of chat rooms you can create | Number of chat rooms a user can join |
---|---|---|---|
Free | 100 | 100 | 100 |
Starter | 2,000 | 10,000 | 1,000 |
Pro | 10,000 | 50,000 | 2,000 |
Enterprise | Custom (20,000 by default) | Custom (100,000 by default) | Custom (10,000 by default) |