ChatConversation class
~english The conversation class, indicating a one-to-one chat, a group chat, or a conversation chat. It contains the messages that are sent and received within the conversation.
The following code shows how to get the number of the unread messages from the conversation.
  // ConversationId can be the other party id, the group id, or the chat room id.
  ChatConversation? con = await ChatClient.getInstance.chatManager.getConversation(conversationId);
  int? unreadCount = con?.unreadCount;
~end
~chinese 会话类,用于定义单聊会话、群聊会话和聊天室会话。每类会话中包含发送和接收的消息。
以下示例代码展示如何从会话中获取未读消息数:
  // The `ConversationId` can be the other party ID, the group ID, or the chat room ID.
  ChatConversation? con = await ChatClient.getInstance.chatManager.getConversation(conversationId);
  int? unreadCount = con?.unreadCount;
~end
Constructors
- 
          ChatConversation.fromJson(Map<String, dynamic> map)
- 
          
            factory
Properties
- 
  ext
  → Map<String, String> ?
- 
  ~english
The conversation extension attribute.
  no setter
- hashCode → int
- 
  The hash code for this object.
  no setterinherited
- id → String
- 
  ~english
The conversation ID.
  final
- isChatThread → bool
- 
  ~english
Is chat thread conversation.
~end
  final
- isPinned → bool
- 
  ~english
Whether the conversation is pinned:
  final
- 
  marks
  → List<ConversationMarkType> ?
- 
  ~english
The conversation remarks.
~end
  final
- pinnedTime → int
- 
  ~english
The UNIX timestamp when the conversation is pinned. The unit is millisecond. This value is 0when the conversation is not pinned. ~endfinal
- runtimeType → Type
- 
  A representation of the runtime type of the object.
  no setterinherited
- type → ChatConversationType
- 
  ~english
The conversation type.
~end
  final
Methods
- 
  appendMessage(ChatMessage message) → Future< void> 
- ~english Inserts a message to the end of a conversation in the local database.
- 
  deleteAllMessages() → Future< void> 
- ~english Deletes all the messages of the conversation from both the memory and local database.
- 
  deleteMessage(String messageId) → Future< void> 
- ~english Deletes a message in the local database.
- 
  deleteMessageByIds(List< String> messageIds) → Future<void> 
- ~english Deletes messages with message ids.
- 
  deleteMessagesWithTs(int startTs, int endTs) → Future< void> 
- ~english Deletes messages sent or received in a certain period from the local database.
- 
  insertMessage(ChatMessage message) → Future< void> 
- ~english Inserts a message to a conversation in the local database and the SDK will automatically update the last message.
- 
  lastReceivedMessage() → Future< ChatMessage?> 
- ~english Gets the latest message from the conversation.
- 
  latestMessage() → Future< ChatMessage?> 
- ~english Gets the last message from the conversation.
- 
  loadMessage(String messageId) → Future< ChatMessage?> 
- ~english Gets the message with a specific message ID.
- 
  loadMessages({String startMsgId = '', int loadCount = 20, ChatSearchDirection direction = ChatSearchDirection.Up}) → Future< List< ChatMessage> >
- ~english Loads multiple messages from the local database.
- 
  loadMessagesFromTime({required int startTime, required int endTime, int count = 20}) → Future< List< ChatMessage> >
- ~english Loads messages from the local database according the following parameters: start timestamp, end timestamp, count.
- 
  loadMessagesWithKeyword(String keywords, {String? sender, int timestamp = -1, int count = 20, MessageSearchScope searchScope = MessageSearchScope.All, ChatSearchDirection direction = ChatSearchDirection.Up}) → Future< List< ChatMessage> >
- ~english Loads messages from the local database by the following parameters: keywords, timestamp, max count, sender, search direction.
- 
  loadMessagesWithMsgType({required MessageType type, int timestamp = -1, int count = 20, String? sender, ChatSearchDirection direction = ChatSearchDirection.Up}) → Future< List< ChatMessage> >
- ~english Retrieves messages from the database according to the following parameters: the message type, the Unix timestamp, max count, sender.
- 
  loadPinnedMessages() → Future< List< ChatMessage> >
- ~english Get the pinned messages in the conversation
- 
  markAllMessagesAsRead() → Future< void> 
- ~english Marks all messages as read. ~end
- 
  markMessageAsRead(String messageId) → Future< void> 
- ~english Marks a message as read.
- 
  messagesCount() → Future< int> 
- ~english Message count ~end
- 
  noSuchMethod(Invocation invocation) → dynamic 
- 
  Invoked when a nonexistent method or property is accessed.
  inherited
- 
  setExt(Map< String, String> ? ext) → Future<void> 
- ~english Set the conversation extension attribute.
- 
  toString() → String 
- 
  A string representation of this object.
  inherited
- 
  unreadCount() → Future< int> 
- ~english Gets the unread message count of the conversation.
- 
  updateMessage(ChatMessage message) → Future< void> 
- ~english Updates a message in the local database.
Operators
- 
  operator ==(Object other) → bool 
- 
  The equality operator.
  inherited