User Overview
Your users need to integrate with RC services to access Instant Messaging (IM) functionality. In RC's system, a "user" refers to an application user who holds a valid Token and has successfully connected to RC's IM service.
Registering Users
You need to use your application server (App Server) to call RC's Register User API with your user's userId to obtain a unique user credential (Token). This step must be completed via server-side API.
When connecting to RC's IM server, the application client must present this Token as authentication. RC will verify the Token's validity to ensure secure connections.
User Registration Limits
- In the Development environment?, the maximum number of registered users is 100.
- In the Production environment?, there is no registration limit.
Deleting Users
In your application's Development environment, you can delete registered test users via the Console to manage test user quantities. This operation is not supported in Production environment.
Deactivating Users
User deactivation refers to deleting user data from RC services. Your application can use the server-side Deactivate User API to implement account closure functionality, meeting app store or compliance requirements.
User deactivation capability is only available via server-side API.
After successful deactivation, all data associated with that userId will be deleted. You can query all deactivated userIds. If needed, you can reactivate previously deactivated userIds, but note that the user's personal data cannot be restored.
User Profiles
User profiles generally refer to data such as nicknames, avatars, group nicknames, and group avatars. By default, RC does not store or maintain your application's user profile data - you need to manage this data on your own server.
If you wish to have RC manage user profiles, you can use the User Profile Hosting service which is enabled by default.
Friend Relationships
By default, RC IM services do not store your application's user friend relationship data nor interfere with friend relationship logic. Your application server (App Server) must maintain user friend relationships independently. If you want RC to manage friend relationships, you can use the User Profile Hosting service (enabled by default), which provides friend relationship management functionality.
When using the friend relationship service, non-friends can message each other by default. To restrict messaging to friends only in one-to-one chats, enable this feature in Console under Developer > Profile Hosting Service > Feature Settings.
When not using RC's friend relationship management service, if you need to restrict message exchange behavior between users (e.g., preventing malicious users from bypassing friend relationships to send harassing messages due to userId leakage), you can use the User allowlist service. When enabled, users will only receive messages from users in their allowlist.
User Management APIs
| Category | Description | Client API | Server API |
|---|---|---|---|
| Register User | Obtain Token for your users. | Not available | Register User |
| Delete User | See Deleting Users above. | Not available | Not available |
| Invalidate Token | Revoke Tokens obtained before a specified time. | Not available | Invalidate Token |
| Deactivate User | Disable user ID and delete personal data in RC services. | Not available | Deactivate User |
| Query Deactivated Users | Get list of deactivated user IDs. | Not available | Query Deactivated Users |
| Reactivate User | Re-enable a deactivated user ID. | Not available | Reactivate User ID |
| Set RC-side User Info | Set username and avatar for push notifications etc. | Not available | Modify User Info |
| Get RC-side User Info | Get user registration info in RC (including creation time, username for push, avatar URL). | Not available | Get Info |
| Modify RC-side User Info | Modify username and avatar for push notifications. | Not available | Modify Info |
| Ban User | Prevent user from connecting to RC IM service (effective immediately). Supports setting ban duration, manual unban, and querying banned user IDs with ban end times. | Not available | Add Banned User, Unban User, Query Banned Users |
| Check Online Status | Check online status of specified users. | Not available | Check Online Status |
| Add to Blocklist | Add specified user to blocklist. Users in User A's blocklist cannot message A. | Add to Blocklist | Add to Blocklist |
| Remove from Blocklist | Remove specified user from blocklist. | Remove from Blocklist | Remove from Blocklist |
| Check Blocklist Status | Check if specified user is in current user's blocklist. | Check User in Blocklist | Not available |
| Get Blocklist | Get current user's blocklist. | Get Blocklist | Query Blocklist |
| User Allowlist | When enabled, users only receive messages from allowlisted users. | Not available | Enable Allowlist, Query Allowlist Status, Add to Allowlist, Remove from Allowlist, Query Allowlist |