Links

Messaging

This section highlights the steps you need to follow to begin integrating chat messaging into your products
The message payload is always the same regardless of which Development Kit the user is using. Users also have a choice on what type of message they want to send.‌

‌Description

Name
Data Type
Description
Attributes
messageId
String
The id of this message
​Content
parentId
String
The messageId of the parent of this message
​Content
childrenNumber
int
The number of messages with parentId of this message
​Content
channelId
String
The name of the channel this message was created in
​Content
userId
String
The name of the user this message was created by
​Content
type
String
The message type
enum*: text custom image file
tags
AmityTags
The message tags
​Content
data
AmityMessageData
The message data (any text will be stored in text key)
text: Text message
isDeleted
bool
The message has been marked as deleted
​Content
channelSegment
int
The sequence number of a message in channel
​Content
createdAt
DateTime
The date/time the message was created at
​Content
updatedAt
DateTime
The date/time the message was updated at
​Content
editedAt
DateTime
The date/time the message was edited at
​Content
flagCount
int
The number of users that have flagged this message
​Content
reactions
AmityReactionMap
The reaction data (stored as a reactionName and counter key/value pair)
Example: { like: 1, dislike: 2 }
reactionsCount
int
The total number of reactions on this message
​Content
myReactions
List<string>
A list of user's reactions on this message
​Content
Messages are JSON content containers that can have up to 20,000 characters or can weigh up to 100KB for custom messages. They will be synchronized among all channel users in real-time. If a message requires larger binary data (such as when sending files), we recommend uploading the data to another cloud storage service, such as AWS S3, and store the URL to the content in the message data.
In addition to the JSON message type, the SDK also provides support for common text and image message types. These additional types are built on top of the standard JSON message layer.
In case of image messages, the SDK freely provides a cloud storage service that will process and store all images uploaded: you don't need to set up and manage a separate cloud storage service for this common case.
All messaging methods are contained in a AmityMessageRepository class. Before calling any messaging methods, you must ensure to first instantiate a repository instance using the AmityChatClient instance you created on setup.