fetchHistoryMessages method
- @Deprecated('Use [fetchHistoryMessagesByOption] instead')
- {required String conversationId,
- EMConversationType type = EMConversationType.Chat,
- int pageSize = 20,
- EMSearchDirection direction = EMSearchDirection.Up,
- String startMsgId = ''}
从服务器分页获取历史消息。
Param conversationId
会话 ID。
Param type
会话类型,详见EMConversationType。
Param pageSize
每页获取的消息数量。
Param direction
要搜索的消息方向. 见 EMSearchDirection.
Param startMsgId
获取历史消息的开始消息 ID,如果为空,从最新的消息向前开始获取。
Return 返回消息列表和用于继续获取历史消息的 EMCursorResult
Throws 如果有异常会在这里抛出,包含错误码和错误描述,详见 EMError。
Implementation
@Deprecated('Use [fetchHistoryMessagesByOption] instead')
///
///
///
/// 从服务器分页获取历史消息。
///
/// Param [conversationId] 会话 ID。
///
/// Param [type] 会话类型,详见[EMConversationType]。
///
/// Param [pageSize] 每页获取的消息数量。
///
/// Param [direction] 要搜索的消息方向. 见 [EMSearchDirection].
///
/// Param [startMsgId] 获取历史消息的开始消息 ID,如果为空,从最新的消息向前开始获取。
///
/// **Return** 返回消息列表和用于继续获取历史消息的 [EMCursorResult]
///
/// **Throws** 如果有异常会在这里抛出,包含错误码和错误描述,详见 [EMError]。
///
Future<EMCursorResult<EMMessage>> fetchHistoryMessages({
required String conversationId,
EMConversationType type = EMConversationType.Chat,
int pageSize = 20,
EMSearchDirection direction = EMSearchDirection.Up,
String startMsgId = '',
}) async {
Map req = Map();
req['convId'] = conversationId;
req['type'] = conversationTypeToInt(type);
req['pageSize'] = pageSize;
req['startMsgId'] = startMsgId;
req['direction'] = direction.index;
Map result = await ChatChannel.invokeMethod(
ChatMethodKeys.fetchHistoryMessages, req);
try {
EMError.hasErrorFromResult(result);
return EMCursorResult<EMMessage>.fromJson(
result[ChatMethodKeys.fetchHistoryMessages],
dataItemCallback: (value) {
return EMMessage.fromJson(value);
});
} on EMError catch (e) {
throw e;
}
}