fetchJoinedChatThreadsWithParentId method

Future<ChatCursorResult<ChatThread>> fetchJoinedChatThreadsWithParentId({
  1. required String parentId,
  2. String? cursor,
  3. int limit = 20,
})

~english Paging to get the list of Chat Threads that the current user has joined the specified group from the server。

Param parentId The session id of the upper level of the sub-area

Param cursor The initial value can be empty or empty string.

Param limit The number of fetches at one time. Value range 1, 50.

Return The result of ChatCursorResult, including the cursor for getting data next time and the chat thread object list.

Throws A description of the exception. See ChatError. ~end

~chinese 分页从服务器获取当前用户加入指定群组的子区列表。

Param parentId 群组 ID。

Param cursor 开始取数据的游标位置。首次调用方法时可以不传,按用户加入子区时间的倒序获取数据。

Param limit 每页期望返回的子区数。取值范围为 1,50

Return 若调用成功,返回子区列表;失败则抛出异常。

Throws 如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。 ~end

Implementation

Future<ChatCursorResult<ChatThread>> fetchJoinedChatThreadsWithParentId({
  required String parentId,
  String? cursor,
  int limit = 20,
}) async {
  Map req = {
    "parentId": parentId,
    "pageSize": limit,
  };
  req.putIfNotNull("cursor", cursor);
  Map result = await _channel.invokeMethod(
      ChatMethodKeys.fetchJoinedChatThreadsWithParentId, req);
  try {
    ChatError.hasErrorFromResult(result);
    return ChatCursorResult.fromJson(
        result[ChatMethodKeys.fetchJoinedChatThreadsWithParentId],
        dataItemCallback: (map) {
      return ChatThread.fromJson(map);
    });
  } on ChatError catch (e) {
    throw e;
  }
}