Key Features

Update time: 2023/01/18 15:28:41

Platform support

Platform SDK and Compatibility Demo and source code UI Components
iOS Compatible with iOS 8.0 and later Compatible with iOS 9.0 and later Compatible with iOS 9.0 and later
Android Android 4.4 and later Supported Supported
Windows C, C++, and C#, compatible with Windows XP (SP2 and later), Windows 7, Windows 8/8.1, Windows 10.
Support for 32-bit and 64-bit programs
Supported Supported
Web Compatible with IE9 and later, Chrome, Firefox, and Safari. PC Web and H5 Demo Supported
macOS Compatible with macOS 10.10, only supports x86_64 architecture, not i386 N/A N/A
Unity Android 4.0 and later, iOS 9.0 and later N/A N/A
Cocos2d-x Android, Windows(x86) and iOS N/A N/A
Flutter Android 4.4 and later; iOS 9.0 and later; Windows 7 and later; macOS 10.14 and later N/A N/A

Multi-device login

Multi-device login types
Only allow one device login. Windows, Web, Android, and iOS login sessions are mutually exclusive.
Concurrent login sessions among desktop clients and web apps are not allowed. Logins from Android and iOS apps at the same time are restricted. Desktop apps and mobile apps can log in simultaneously.
All clients from different platforms can log in online at the same time

To edit the multi-device login policy, log on to the CommsEase console, and edit Configuration of Instant Messaging in your project.

Message types

Message type Description
Text message Messages that contain only texts.
Image message Image messages that contain information about image URLs, dimensions, and size.
Audio messages Audio messages that contain information about audio URLs, duration, size, and format.
Video messages Video messages that contain information about video URLs, duration, size, and format.
File message File messages that contain information about file URLs, size, and format. File formats are not restricted.
Location message Location messages that contain the geographic location title, longitude, and latitude.
Notification message Notifications for group events and chat room events. Push notifications and notification bar reminders are not supported.
Reminder message Simplified notification messages. Push and notification bar reminders are not supported.
Custom message User-defined message type, such as red packets and rock paper scissors.
System notification message Built-in system notification messages and user-defined system notification messages.
For more information, see Basic messaging


Messaging Description
Offline messages Messages sent from others when a user is offline. Upon the next login, the offline messages temporarily stored during the offline period will be automatically delivered to the client SDK. In the private chat scenario, the most recent 5,000 offline messages in the last 30 days are loaded, and each session can load up to 100 recent offline messages; in the group chat scenario, the offline messages in the most recent 30 days are loaded, and each group chat session can load up to 100 recent offline messages.
Roaming Messages Synchronize the roaming messages stored on the server when a new device logs in.
The SDK automatically sync the most recent 100 sessions in the last 7 days. Each session can load the recent 100 messages.
Multi-device sync When multiple device are online at the same time, messages are sent to multiple devices in real time
Message history Supports local message history and cloud-based message history.
IM Standard allows users to get the message history for the last one year; A maximum of up to 3 years of message history can be extended (value-added)
Message recall Recall delivered messages. Messages delivered within 2 minutes can be recalled by default. The duration can be configured in the CommsEase console.
The recall operation only supports messages in private chats and group chats, and does not support messages in chat rooms
Read receipt Indicate the read and unread state of messages in P2P conversations
Message forwarding Forward one or more messages to other users or groups
@mention Use the custom field to implement the @mention operation. When sending a group message by @mentioning someone, it can be delivered with a list of @mentioned accounts in the extension field.
If a group member receives a message, check whether the member is included in the list of @mentioned accounts in the extension field. If included, a reminder of being @mentioned will be indicated on the interface.
Typing indicator Implement typing indicator using custom system notifications. For more information, see [Send custom system notifications](/en/docs/TM5MzM5Njk/jU1MTk5MzE?#Send custom system notifications)
Push notifications Support Apple APNs, Google FCM, Xiaomi Push, Huawei Push, OPPO Push, VIVO Push and more.
Third-party callbacks After a message is sent, it can be authenticated by configuring a third-party server. The message will be delivered after verification. Otherwise the message will not be delivered.

For the charges of the previous value-added features, see Pricing.

NOS service

Feature Description
Storage CommsEase provides 1TB storage space by default. You can extend the plan as required.
Upload and download acceleration Intelligent selection of the nearest NOS edge node to achieve two-way acceleration for uploads and downloads.
File quick transfer Large file uploads will no longer require repeated transfers
Retrievable image information You can get basic image information, such as type, width and height.
Image cropping Crop the image from the specified position to generate a new image.
Image thumbnail The image thumbnail is created proportionally to the image pixels
Gaussian blurring Blur the image with Gaussian noise
Image rotation Rotate the image by a given angle

For the charges of the previous value-added features, see Pricing.

Managed profiles

Feature Description
Local profiles Load multiple user profiles at a time.
Profiles in the CommsEase server You can retrieve multiple user profiles at a time if the required profiles are unavailable in the local storage.
Edit user profiles Update the profile of the current user.

Managed data of user relationship

Feature Description
Add friends Add friends or send friend requests for verification. Each account can have at most 3,000 friends.
Approve or reject friend requests After receiving the system notification requesting to add a friend request, you can approve or reject it.
Delete friends After deleting a friend, the friend relationship between the two users will be automatically disassociated. After deleting a friend, you can still chat with the user.
Friends list With the managed profiles data, you can obtain the corresponding user information based on the account and create your contacts.
Add to a blocklist If a user is added to the blocklist, you cannot receive any messages or requests from the user. You can add 3,000 users to a blocklist or list of muted accounts.
Remove from a blocklist You can remove one or more users from a blocklist.
Blocklist list Retrieve a blocklist list.
Check if a user is included in the blacklist Check if a user is included in the blacklist.

IM Pro allows you to configure whether messages can be sent between non-friends.

  • To configure the setting, go to **CommsEase console > Project > IM Pro > Configuration > P2P Messaging > Messaging to non-friends.
  • This option only affects the client SDK, and the message sent by the server API is not limited for this option.
  • If Non-friends are not allowed to send messages, the client SDK will return 403 when sending messages to non-friends.


Feature Description
Group capacity IM Pro supports 200 people/group. You can extend the capacity up to 5000 people/group.
Create groups Create a group of a specified type
Group profile Group name, avatar, description, announcement, and extension fields.
The verification mode for requests to join a group, the inviter mode, the invitee mode.
Group profile edit permissions, group extension fields edit permissions.
Invitation Options for this setting: only admins can invite or everyone can invite.
Approval mode Options: Approval is required or not required by invitees
Join request Supported
Verification Options: approval by admins required or not required; Do not approve all requests.
Member types Group owner, admin, regular member.
Admin settings Group owner can assign or revoke administrator roles.
Permissions for editing group profiles Options: Only admins can edit the group profile; All group members can edit the group profile.
Edit the nickname of a group member The group owner can edits the nickname of all members.
Admins can edit the nickname of a regular member.
Edit the nickname of the current user Supported
Message types Include basic message types
Notification alert Enable alerts; only admins can receive alerts; disable alerts.
Message history Support cloud-based message history. IM Standard allows users to get the message history for the last one year;
A maximum of up to 3 years of message history can be retrieved.
offline messages Up to 100 offline messages per group chat can be delivered.
Roaming messages Automatic roaming for 7 days, the most recent 100 messages for each conversation
Force push for specified members Supported
Read receipt of group messages Supported. only suitable for groups with less than 100 members.
Removing members Group owners or admins can remove one or more members from a group. Admins cannot remove group owners or other admins from a group.
Leaving a group Except the group owner, all other members can leave a group.
The group owner must transfer the ownership of a group to one of group members before leaving the group.
Muting members Admins or the group owner can mute or unmute members.
Transfer the ownership of a group The group owner can transfer the ownership of a group to other members in the group.The member granted the ownership becomes the new group owner, and the original group owner becomes a regular member.
The group owner can also leave the group after the transfer.
Dismissing a group The group owner can dismiss a group

For the charges of the previous value-added features, see Pricing.

Chat room

Feature Description
Chat room capacity Unlimited numbers in a chat room.
Creating chat rooms Create chat rooms on the server.
Query information about a chat room You can get information about chat rooms, such as creator, number of online members, name, announcement, live streaming URLs, extension fields, whether to send update notification time, and extension fields for notification events.
Updating the chat room profile You can update information about chat room, such as creator, online number, name, announcement, live streaming URLs, extension fields, whether to send update notification time, and extension fields for notification events.
Opening or closing chat rooms You can open or close a chat room by calling the specific server API.
Message types Support text, image, voice, video, file, location, notification, tip, and custom messages.
Message history You can query the chat room history for the last 10 days, and set whether to save messages in the cloud upon delivery.
Roles Member roles are divided into two categories: permanent members and temporary members. Permanent members include creators, administrators, and regular members. Temporary members include regular guests and anonymous guests.
Blocklist If your account is unable to join a chat room if blocked.
Muting Muted users cannot send messages.
Time-limited muting You can set a duration for muting a user. When the muted state is due, the muted state of the user will be automatically canceled.
Muting all members Only the owner and administrators can send messages if the mute all operation is applied.
Removing members The creator and administrators can remove members. Only the creator can remove administrators.
Edit member profile You can edit the nickname, avatar, and values in extension fields.
Simultaneous chat rooms You can handle multiple chat rooms simultaneously.
Connect the same account to a chat room from multiple devices The same account is allowed to join the same chat room on multiple devices simultaneously.
Chatbot Add and delete multiple chatbots at the same time in chat rooms, up to 100 accounts at a time.
Top N metrics Query the top N data of people joining chat rooms, active users, and the number of messages by hour or day.
Chat room queue Applied in live streaming for voice chats.

To modify the policy of joining a chat room simultaneously on multiple devices, log in to the CommsEase console, and got to "Configuration" under the IM product of the corresponding project.

Data sync

Type Description
Session messages Messages sent in P2P chats, group chats, group operations, and friend operations
Login event Messages sent for login events
Logout event Messages sent for logout events
Chat room messages Messages sent in chat rooms
Audio and video/whiteboard call messages Messages containing call durations and whiteboard session durations
Audio and video/whiteboard storage messages Messages containing storage size and download URL of the audio/video/whiteboard
P2P message unsend event Messages for unsend events in P2P chats
Group message unsend event Messages for unsend events in group chats
Host or admins join and leave events Messages sent when hosts or admins join or leave chat rooms
Private line call termination event Messages sent when a private line call ends
SMS message receipt Messages sent when SMS messages are received
Async delivery for content moderation results Messages for audio and video moderation results

Event subscription

Event Description
Presence event publishing Publish an event. Currently, only publish presence event.
Presence event subscription Subscribe to a specified type of events of a specified account. You must specify a validity period for the subscription.
Query event subscription Query event subscription for a specific account.

CommsEase console

You can log in to the CommsEase console to configure required services that take effect immediately,

Feature Description注
API Calling Server API testing
Account management Create and ban accounts, edit profiles
Multi-device login Configure multi-device login strategies
Multi-device login for chat rooms Configure whether an account can join the same chat room on different devices
Time limit for unsending messages Set a time limit for unsend messages. The default limit is 120 seconds.
Roaming messages Enable or disable roaming messages
Data sync Configure endpoint URL and types of data for data sync
Certificate for push notifications Configure certificates for APNs, iOS PushKit, XIAOMI Push, and HUAWEI Push services.
Identifier management Configure iOS Bundle Identifier and Android Package Name


In addition to providing basic management, the CommsEase console also provides developers with data statistics of various dimensions. Log in to the CommsEase console, click Statistics in the left navigation pane, and select the corresponding application to view the relevant statistics for the application.

Metric Description
Number of new users The number of daily registered CommsEase IDs.
Active users The number of unique users who have connected and interacted with the CommsEase server.
Cumulative number of users Number of registered users as of yesterday.
Geo-location distribution Including the distribution of daily active users and daily new users by province and city.
P2P messages Including the distribution of daily active users and daily new users by province and city.
Group messages The number of outbound messages in the group.
New groups The number of newly created groups.
Total groups The cumulative number of groups created as of yesterday.
Chat room messages The number of outbound messages in a chat room.
New chat rooms The number of newly created chat rooms.
Number of visitors The number of users who joined a chat room, deduplicated number.
Number of joins for a chat room Total number of times joining a chat room (without deduplication)
Was this page helpful?
  • Platform support
  • Multi-device login
  • Message types
  • Messaging
  • NOS service
  • Managed profiles
  • Managed data of user relationship
  • Groups
  • Chat room
  • Data sync
  • Event subscription
  • CommsEase console
  • Statistics