getRevokedMessage static method
Implementation
static RevokedMessageInfo? getRevokedMessage(NIMMessage message) {
RevokedMessageInfo? revokedMessageInfo;
var textMsg =
message.messageType == NIMMessageType.text ? message.text : null;
var multiMap = MessageHelper.parseMultiLineMessage(message);
if (textMsg?.isNotEmpty == true || multiMap?.isNotEmpty == true) {
revokedMessageInfo = RevokedMessageInfo(
reeditMessage: textMsg, multiLineMessage: multiMap);
Map<String, dynamic>? ext;
if (message.serverExtension?.isNotEmpty == true) {
ext = jsonDecode(message.serverExtension!);
}
var replyMessageInfoMap = ext?[ChatMessage.keyReplyMsgKey] as Map?;
if (replyMessageInfoMap != null) {
revokedMessageInfo.replyMsgId = ReplyMessageInfo.fromMap(
replyMessageInfoMap.cast<String, dynamic>())
.idClient;
}
if (message.threadReply != null) {
final refer = message.threadReply!;
revokedMessageInfo.replyMsgId = refer.messageClientId;
}
var aitInfo = ext?[ChatMessage.keyAitMsg] as Map?;
if (aitInfo != null) {
revokedMessageInfo.aitContactsModel =
AitContactsModel.fromMap(aitInfo.cast<String, dynamic>());
}
}
return revokedMessageInfo;
}