SMIConversationEntry

Objective-C

@protocol SMIConversationEntry <NSObject>

Swift

protocol ConversationEntry : NSObjectProtocol

Represents an entry in a conversation. An entry can be a permanent record in a conversation such as a message or a join event. Or it can represent more ephemeral events like a typing indicator.

  • The identifier for the SMIConversation that a given SMIConversationEntry is associated with.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) NSUUID *_Nonnull conversationId;

    Swift

    var conversationId: UUID { get }
  • The unique identifier of a given SMIConversationEntry.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) NSString *_Nonnull identifier;

    Swift

    var identifier: String { get }
  • The timestamp of the SMIConversationEntry.

    Note

    This timestamp is initially set with the time the entry was created, but updates when the service confirms receipt of the message.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) NSDate *_Nonnull timestamp;

    Swift

    var timestamp: Date { get }
  • The display name of the particpant at the time this conversation entry was sent

    Note

    This could differ from the displayName of the sender

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) NSString *_Nonnull senderDisplayName;

    Swift

    var senderDisplayName: String { get }
  • The format of the SMIEntryPayload contained within a given SMIConversationEntry.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) SMIConversationFormatTypes _Nonnull format;

    Swift

    var format: ConversationFormatTypes { get }
  • The type of the SMIEntryPayload contained within a given SMIConversationEntry.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) SMIConversationEntryTypes _Nonnull type;

    Swift

    var type: ConversationEntryTypes { get }
  • The message type of the SMIEntryPayload contained within a given SMIConversationEntry.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) SMIConversationEntryMessageTypes _Nonnull messageType;

    Swift

    var messageType: ConversationEntryMessageTypes { get }
  • The status of the SMIConversationEntry.

    Note

    This status changes over the lifetime of a conversation as the message is propagated through the service.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) SMIConversationEntryStatus _Nonnull status;

    Swift

    var status: ConversationEntryStatus { get }
  • The SMIEntryPayload associated with a given SMIConversationEntry.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) SMISerializable<SMIEntryPayload> *_Nonnull payload;

    Swift

    var payload: any Serializable & EntryPayload { get }
  • The SMIParticipant who is associated with a given SMIConversationEntry.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) SMISerializable<SMIParticipant> *_Nonnull sender;

    Swift

    var sender: any Serializable & Participant { get }
  • The error associated with the conversation entry.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly, nullable) NSError *error;

    Swift

    var error: (any Error)? { get }