fetchHistoryMessages method Null safety
- {required String conversationId,
- ChatConversationType type = ChatConversationType.Chat,
- int pageSize = 20,
- String startMsgId = ''}
Gets historical messages of the conversation from the server with pagination.
Param conversationId The conversation ID.
Param type The conversation type. See ChatConversationType.
Param pageSize The number of messages per page.
Param startMsgId The ID of the message from which you start to get the historical messages. If null is passed, the SDK gets messages in reverse chronological order.
Return The obtained messages and the cursor for the next fetch action.
Throws A description of the exception. See ChatError.
Implementation
Future<ChatCursorResult<ChatMessage>> fetchHistoryMessages({
required String conversationId,
ChatConversationType type = ChatConversationType.Chat,
int pageSize = 20,
String startMsgId = '',
}) async {
Map req = Map();
req['con_id'] = conversationId;
req['type'] = conversationTypeToInt(type);
req['pageSize'] = pageSize;
req['startMsgId'] = startMsgId;
Map result = await ChatChannel.invokeMethod(
ChatMethodKeys.fetchHistoryMessages, req);
try {
ChatError.hasErrorFromResult(result);
return ChatCursorResult<ChatMessage>.fromJson(
result[ChatMethodKeys.fetchHistoryMessages],
dataItemCallback: (value) {
return ChatMessage.fromJson(value);
});
} on ChatError catch (e) {
throw e;
}
}