Skip to main content

Managing Offline Message Storage Configuration

The IM service supports modifying offline message configurations at both the application level and user level.

tip

Offline message configuration only applies to one-to-one chats and group chats. Chatrooms and ultra groups do not support offline messages due to their business characteristics, hence no offline message configuration is available.

Understanding Offline Messages

Offline messages? refer to messages received when users are offline. The RC server automatically retains messages received during offline periods for users, with a default retention period of 7 days. If the client comes online within 7 days, the server will directly deliver the offline messages to the recipient. If the client remains offline for 7 days, the server will discard expired messages.

Not all conversation types in the IM service support offline messages:

  • Supports offline messages: One-to-one chats, group chats, system messages
  • Does not support offline messages: Chatrooms, ultra groups

Application-Level Offline Message Configuration

You can modify the following application-level offline message storage settings:

  • Offline message storage duration. You can adjust the storage period in the RC Console under Chat > Chat settings > Global Message > Offline message storage duration. When target users are offline, messages they receive are saved as offline messages with a default 7-day storage period. These messages will be retrieved upon their next login. The adjustable range is 1-7 days. This setting only applies to one-to-one chats, group chats, and system message conversation types.
  • Group offline message storage duration. When target users are offline, group messages they receive are stored as offline messages with a default 7-day retention period, retrievable upon their next login. If this setting is not configured, the group offline message duration follows the "Set Offline Message Storage Duration" configuration. If configured, group message offline storage duration will follow this setting.
  • Group offline message storage quantity. By default, all group messages within 7 days are stored. This can be modified by submitting a ticket. Configuration changes will affect all group chat conversations under the application.

User-Level Offline Message Configuration

tip

Both setting and retrieving user-level offline message storage durations require the User-Level Feature Settings to be enabled. Please submit a ticket to enable this feature.

The IM service supports user-level offline message configuration, allowing only the modification of offline message storage duration. By default, users have a 7-day offline message storage period. The adjustable range is 1-7 days.

After enabling the User-Level Feature Settings for an App Key, the client SDK supports modifying the offline message storage duration for the currently logged-in user.

Setting User Offline Message Storage Duration

Sets the offline message storage duration for the current user in days.

Interface

RongIMClient.getInstance().setOfflineMessageDuration(duration, callback);

Parameter Description

ParameterTypeDescription
durationintOffline message storage duration, ranging from 1-7 days.
callbackRongIMClient.ResultCallback<Long>Callback interface.

Example Code

int duration = 3;

RongIMClient.getInstance().setOfflineMessageDuration(duration, new RongIMClient.ResultCallback<Long>() {
@Override
public void onSuccess(Long aLong) {

}

@Override
public void onError(RongIMClient.ErrorCode e) {

}
});

Retrieving User Offline Message Storage Duration

Gets the offline message storage duration for the current user in days.

RongIMClient.getInstance().getOfflineMessageDuration(new RongIMClient.ResultCallback<String>() {
@Override
public void onSuccess(String s) {

}

@Override
public void onError(RongIMClient.ErrorCode e) {

}
});
ParameterTypeDescription
callbackRongIMClient.ResultCallback<String>Callback interface.