fetchMemberListFromServer method

Future<ChatCursorResult<String>> fetchMemberListFromServer(
  1. String groupId,
  2. {int pageSize = 200,
  3. String? cursor}
)

Gets the member list of the group with pagination.

For example:

  ChatCursorResult<String> result = await ChatClient.getInstance.groupManager.fetchMemberListFromServer(groupId); // search 1
  result = await ChatClient.getInstance.groupManager.fetchMemberListFromServer(groupId, cursor: result.cursor); // search 2

Param groupId The group ID.

Param pageSize The number of group members per page.

Param cursor The cursor position from which to start to get data next time. Sets the parameter as null for the first time.

Return The result of ChatCursorResult, including the cursor for getting data next time and the group member list. If ChatCursorResult.cursor is an empty string (""), all data is fetched.

Throws A description of the exception. See ChatError.

Implementation

Future<ChatCursorResult<String>> fetchMemberListFromServer(
  String groupId, {
  int pageSize = 200,
  String? cursor,
}) async {
  Map req = {
    'groupId': groupId,
    'pageSize': pageSize,
  };
  req.putIfNotNull("cursor", cursor);
  Map result = await _channel.invokeMethod(
    ChatMethodKeys.getGroupMemberListFromServer,
    req,
  );
  try {
    ChatError.hasErrorFromResult(result);
    return ChatCursorResult<String>.fromJson(
        result[ChatMethodKeys.getGroupMemberListFromServer],
        dataItemCallback: (value) => value);
  } on ChatError catch (e) {
    throw e;
  }
}