fetchLatestMessageWithChatThreads method
~english Get the latest news of the specified Chat Thread list from the server.
Param chatThreadIds
Chat Thread id list. The list length is not greater than 20.
Return returns a Map collection, the key is the chat thread ID, and the value is the latest message object of the chat thread.
Throws A description of the exception. See ChatError. ~end
~chinese 从服务器批量获取指定子区中的最新一条消息。
Param chatThreadIds
要查询的子区 ID 列表,每次最多可传 20 个子区。
Return 若调用成功,返回子区的最新一条消息列表;失败则抛出异常。
Throws 如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。 ~end
Implementation
Future<Map<String, ChatMessage>> fetchLatestMessageWithChatThreads({
required List<String> chatThreadIds,
}) async {
Map req = {
"threadIds": chatThreadIds,
};
Map result = await _channel.invokeMethod(
ChatMethodKeys.fetchLastMessageWithChatThreads,
req,
);
try {
ChatError.hasErrorFromResult(result);
Map? map = result[ChatMethodKeys.fetchLastMessageWithChatThreads];
Map<String, ChatMessage> ret = {};
if (map == null) {
return ret;
}
for (var key in map.keys) {
Map<String, dynamic> msgMap = map[key];
ret[key] = ChatMessage.fromJson(msgMap);
}
return ret;
} on ChatError catch (e) {
throw e;
}
}