getMessageList method
Implementation
@override
Future<Map<String, dynamic>> getMessageList({required String conversationID, String? nextReqMessageID}) async {
if (ImState.chatInstance.value != null) {
if (kDebugMode) {
print('>>>>> 拉取消息列表, $conversationID');
}
if (conversationID.startsWith('C2C_')) {
V2TimValueCallback<List<V2TimMessage>> getMessageListResult = await TencentImSDKPlugin.v2TIMManager.getMessageManager().getC2CHistoryMessageList(
userID: conversationID.split('_')[1],
count: 20,
lastMsgID: nextReqMessageID,
);
if (getMessageListResult.code == 0) {
return getMessageListResult.toJson();
} else {
developerLog('拉取群聊历史消息失败,$conversationID | ${getMessageListResult.code} | ${getMessageListResult.desc}');
throw Exception('拉取群聊历史消息失败, ${getMessageListResult.code} | ${getMessageListResult.desc}');
}
} else if (conversationID.startsWith('GROUP_')) {
V2TimValueCallback<List<V2TimMessage>> getMessageListResult = await TencentImSDKPlugin.v2TIMManager.getMessageManager().getGroupHistoryMessageList(
groupID: conversationID.split('_')[1],
count: 20,
lastMsgID: nextReqMessageID,
);
if (getMessageListResult.code == 0) {
return getMessageListResult.toJson();
} else {
developerLog('拉取群聊历史消息失败,$conversationID | ${getMessageListResult.code} | ${getMessageListResult.desc}');
throw Exception('拉取群聊历史消息失败, ${getMessageListResult.code} | ${getMessageListResult.desc}');
}
} else {
developerLog('暂不支持拉取 ${conversationID.split('_')[0]} 类型会话的历史消息');
throw Exception('暂不支持拉取 ${conversationID.split('_')[0]} 类型会话的历史消息');
}
} else {
developerLog('sdk 未初始化');
throw Exception('sdk 未初始化');
}
}