getMessageBrief static method

String getMessageBrief(
  1. NIMMessage message
)

Implementation

static String getMessageBrief(NIMMessage message) {
  String brief = 'unknown';
  var customBrief =
      ChatKitClient.instance.chatUIConfig.getMessageBrief?.call(message);
  if (customBrief?.isNotEmpty == true) {
    brief = customBrief!;
    return brief;
  }
  switch (message.messageType) {
    case NIMMessageType.text:
      brief = message.content!;
      break;
    case NIMMessageType.image:
      brief = S.of().chatMessageBriefImage;
      break;
    case NIMMessageType.audio:
      brief = S.of().chatMessageBriefAudio;
      break;
    case NIMMessageType.video:
      brief = S.of().chatMessageBriefVideo;
      break;
    case NIMMessageType.location:
      brief = S.of().chatMessageBriefLocation;
      break;
    case NIMMessageType.file:
      brief = S.of().chatMessageBriefFile;
      break;
    case NIMMessageType.avchat:
      //todo avChat
      brief = S.of().chatMessageNonsupport;
      break;
    case NIMMessageType.custom:
      var mergedMessage = MergeMessageHelper.parseMergeMessage(message);
      if (mergedMessage != null) {
        brief = S.of().chatMessageBriefChatHistory;
      } else {
        var multiLineMap = MessageHelper.parseMultiLineMessage(message);
        if (multiLineMap != null &&
            multiLineMap[ChatMessage.keyMultiLineTitle] != null) {
          brief = multiLineMap[ChatMessage.keyMultiLineTitle]!;
        } else {
          brief = S.of().chatMessageBriefCustom;
        }
      }
      break;
    default:
      brief = S.of().chatMessageNonsupport;
      break;
  }
  return brief;
}