ConversationEntryModel

Wraps a ConversationEntry for display in the chat feed.

This is the most common entry type and covers all server-backed entries including text messages, attachments, rich links, carousels, quick replies, participant changes, and routing events. It delegates all ConversationEntry properties (such as payload, entryType, sender, and status) to the underlying conversation entry, making them directly accessible.

When implementing custom rendering in ViewComponents.ChatFeedEntry, inspect ConversationEntry.payload to determine the specific message format and render accordingly. For interactive message types (quick replies, list pickers), use com.salesforce.android.smi.core.ConversationClient.sendReply to submit the user's selection rather than com.salesforce.android.smi.core.ConversationClient.sendMessage.

Parameters

conversationEntry

The underlying conversation entry from the core SDK.

See also

Constructors

Link copied to clipboard
constructor(conversationEntry: ConversationEntry)

Properties

Link copied to clipboard
open override val contentType: String

Identifies the type of content this entry represents. For conversation entries this matches the ConversationEntryType name; for synthetic entries it matches an internal type name. Useful for filtering or logging entry types.

Link copied to clipboard
open override val conversationId: UUID
Link copied to clipboard
open override val entryId: String
Link copied to clipboard
open override val entryType: ConversationEntryType
Link copied to clipboard
open override val error: NetworkError?
Link copied to clipboard
open override val identifier: String
Link copied to clipboard

Whether this entry is the last message in a consecutive group from the same sender. The UI uses this to determine whether to show the sender avatar or tail on the message bubble.

Link copied to clipboard

true if this entry was sent by the local user (end user), false if it was sent by a remote participant (agent or chatbot).

Link copied to clipboard

true if this is an inbound message that has not yet been marked as read. Only applies to entries of type ConversationEntryType.Message.

Link copied to clipboard
open override val keyId: String

A stable identifier for this entry within the feed, suitable for use as a list item key in Compose lazy lists or RecyclerView adapters.

Link copied to clipboard
open override val modality: Modality?
Link copied to clipboard
open override val payload: EntryPayload
Link copied to clipboard
open override val sender: Participant
Link copied to clipboard
open override val senderDisplayName: String
Link copied to clipboard
open override val status: ConversationEntryStatus
Link copied to clipboard
open override val timestamp: Long

The epoch timestamp (in milliseconds) when this entry was created or received.