BaseMessage class Null safety

Represents base class for messages.

Implementers
Available Extensions

Constructors

BaseMessage({required String message, required MessageSendingStatus? sendingStatus, required String channelUrl, required ChannelType channelType, Sender? sender, List<User> mentionedUsers = const <User>[], String? requestId, int messageId = 0, MentionType? mentionType, List<String>? requestedMentionUserIds, int createdAt = 0, int updatedAt = 0, int? parentMessageId, String? parentMessageText, ThreadInfo? threadInfo, List<MessageMetaArray>? metaArrays, String? customType, int? messageSurvivalSeconds, bool forceUpdateLastMessage = false, bool isSilent = false, int? errorCode, bool isOperatorMessage = false, String? data, OGMetaData? ogMetaData, List<Reaction>? reactions = const <Reaction>[]})
default constructor
BaseMessage.fromJson(Map<String, dynamic> json)
Map json object
factory

Properties

channelType ChannelType
Channel type of this message
@JsonKey(defaultValue: ChannelType.group), read / write
channelUrl String
Channel url of this message.
final
createdAt int
Message creation time in millisecond(UTC)
@JsonKey(defaultValue: 0), final
customType String?
Custom message type
final
data String?
data for this message
read / write
errorCode int?
The error code of this message. This value generated only when message send fails.
read / write
forceUpdateLastMessage bool
True if this message should update last message of its channel
@JsonKey(defaultValue: false), final
hashCode int
The hash code for this object. [...]
read-only, override
isOperatorMessage bool
True if this message was created by an operator.
@JsonKey(name: 'is_op_msg', defaultValue: false), final
isSilent bool
True if this message won't affect unread message count / mention count
@JsonKey(name: 'silent', defaultValue: false), final
mentionedUsers List<User>
The list of users who was mentioned together with this message.
@JsonKey(defaultValue: const []), final
mentionType MentionType?
Mention type that this message uses
@JsonKey(unknownEnumValue: null), final
message String
Message text.
final
messageId int
Unique message ID.
@JsonKey(defaultValue: 0), final
messageSurvivalSeconds int?
Message disappear in seconds, default is -1 and won't disappear
@JsonKey(defaultValue: -1), final
metaArrays List<MessageMetaArray>?
Gets an array of meta arrays sorted by chronological order. current does not support backward compatibility
@JsonKey(name: 'sorted_metaarray'), read / write
ogMetaData OGMetaData?
Open graph information in this message. Nullable
@JsonKey(name: 'og_tag'), final
parentMessageId int?
The unique ID of the parent message. If the message object is a parent message or a single message without any reply, the value of this property is 0. If the object is a reply, the value is the unique ID of its parent message.
final
parentMessageText String?
The written text of the message object’s parent message. If the message object is a parent message, the value of this property is null. If the object is a reply to a parent message and the type of the parent message is UserMessage, the value is message. If it is FileMessage, the value is the name of the uploaded file.
final
reactions List<Reaction>?
reactions for this message
@JsonKey(defaultValue: const []), read / write
requestedMentionUserIds List<String>?
Represents target user ids to mention when success to send this message. This value is valid only when the message is a pending message or failed message. If the message is a succeeded message, see mentionedUserIds
final
requestId String?
Request ID for checking ACK.
final
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
sender Sender?
Sender of this message
@JsonKey(name: 'user'), read / write
sendingStatus MessageSendingStatus?
Represents the dispatch state of this message. If this message is not dispatched completely to the Sendbird server, the value is pending. If failed to send the message, the value is failed. And if success to send the message, the value is succeeded.
read / write
threadInfo ThreadInfo?
The thread info that belongs to this message object.
read / write
updatedAt int
Message update time in millisecond(UTC).
@JsonKey(defaultValue: 0), final

Methods

applyReactionEvent(ReactionEvent event) bool
Applies ReactionEvent to this message. [...]
applyThreadInfoUpdateEvent(ThreadInfoUpdateEvent event) bool
Applies ThreadInfoUpdateEvent event to this message. [...]
getMetaArrays(List<String> keys) List<MessageMetaArray>
Retreives list of MessageMetaArray with given keys
getThreadedMessagesByTimestamp(int timestamp, ThreadedMessageListParams params) Future<ThreadedMessageResponse>
Retrieves threaded messages (replies) on this message with timestamp and params.
isResendable() bool
Returns true if this message can be resend.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toJson() Map<String, dynamic>
toString() String
A string representation of this object. [...]
inherited

Operators

operator ==(Object other) bool
The equality operator. [...]
override

Static Methods

getMessage(MessageRetrievalParams params) Future<BaseMessage>
Retrieves a BaseMessage with given MessageRetrievalParams.
msgFromJson<T extends BaseMessage>(Map<String, dynamic> json, {ChannelType? channelType, String? type}) → T?