getReferenceMessageContent function

String getReferenceMessageContent(
  1. RCIMIWMessage? refMsg, {
  2. bool useModifiedContent = false,
})

获取引用消息的内容文本

根据不同的消息类型返回对应的引用内容文本

Implementation

String getReferenceMessageContent(
  RCIMIWMessage? refMsg, {
  bool useModifiedContent = false,
}) {
  final effectiveMessage = refMsg == null
      ? null
      : useModifiedContent
          ? getEffectiveMessage(refMsg)
          : refMsg;
  String referenceContent = "";
  if (effectiveMessage is RCIMIWTextMessage) {
    referenceContent = effectiveMessage.text ?? "";
  } else if (effectiveMessage is RCIMIWReferenceMessage) {
    referenceContent = effectiveMessage.text ?? "";
  } // 图片消息
  else if (effectiveMessage is RCIMIWImageMessage) {
    referenceContent = '[图片]';
  }
  // 语音消息
  else if (effectiveMessage is RCIMIWVoiceMessage) {
    referenceContent = "[语音] ${effectiveMessage.duration} ''";
  }
  // 表情消息
  else if (effectiveMessage is RCIMIWGIFMessage) {
    referenceContent = '[表情]';
  }
  // 位置消息
  else if (effectiveMessage is RCIMIWLocationMessage) {
    referenceContent = '[位置]';
  }
  // 文件消息
  else if (effectiveMessage is RCIMIWFileMessage) {
    referenceContent = '[文件] ${effectiveMessage.name}';
  }
  // 小视频消息
  else if (effectiveMessage is RCIMIWSightMessage) {
    referenceContent = '[视频]';
  } else {
    referenceContent = effectiveMessage?.toString() ?? "";
  }
  return referenceContent;
}