Browse SDKs · Android
SDKsAndroid

Subscribe to user online status

Use subscribeUsersOnlineStatus() to subscribe to online status for specified users.

Copy
List<String> userIDs = Arrays.asList("user_a", "user_b");

OpenIMClient.getInstance().userInfoManager.subscribeUsersOnlineStatus(
    new OnBase<List<UsersOnlineStatus>>() {
        @Override
        public void onSuccess(List<UsersOnlineStatus> states) {
            // Use states to display online status.
        }

        @Override
        public void onError(int code, String error) {
            // Handle the error.
        }
    },
    userIDs
);

Remove empty and duplicate IDs, and subscribe only to users whose status is needed. The callback returns the initial List<UsersOnlineStatus>. Each item contains userID, status, and platformIDs.

Status fields

FieldDescription
userIDTarget user ID.
statusOnline status value defined by the server contract.
platformIDsPlatforms on which the user is online.

Receive onUserStatusChanged through OnUserListener when a user's online status changes:

@Override
public void onUserStatusChanged(UsersOnlineStatus status) {
    // Handle the online-status change.
}

Subscription creates or updates the subscription set. When a user's status is no longer needed, cancel the subscription through Unsubscribe from user status.