Retrieve a list of messages
Ways to load messages are different for open channels and group channels. For open channels, use
PreviousMessageListQuery to retrieve messages from a certain reference point. Meanwhile,
Message collection retrieve messages sent and received in a group channel.
Messages in open channels
getMessagesByTimestamp() method or the
getMessagesByMessageId() method, you can retrieve messages before or after a reference point, which can be a specific timestamp in Unix milliseconds or a message ID in an open channel.
Those methods have two parameters, which are a reference point of message retrieval and a
params parameter for
MessageListParams. Under the
MessageListParams object, you can specify values to properties such as
customType. The following code shows several types of parameters that you can configure to customize a message query.
This table only contains properties shown in the code above. To see the comprehensive list of all available methods and properties, see MessageListParams in API reference.
Specifies the number of messages to retrieve that were sent before the specified timestamp.
Specifies the number of messages to retrieve that were sent after the specified timestamp.
If you wish to get messages using pagination instead of a time-based or ID-based reference point, use
PreviousMessageListQuery and its
load() method, which returns a list of
BaseMessage objects. With a returned list, you can display the past messages in your UI once they are loaded. The following code is an example of retrieving previous messages in a channel.
To see the comprehensive list of all available methods and properties, see PreviousMessageListQueryParams in API reference.
Specifies the number of results returned per call. Acceptable values are
Determines whether to sort the retrieved messages in reverse order. If set to
Specifies the message type to filter the messages with the corresponding type. Acceptable values are
Determines whether to retrieve the information about reactions made to each message.
Messages in group channels
A chat view of a group channel can be drawn with a
MessageCollection instance. To retrieve messages within the collection, check if there are more messages to load through
hasNext and then call
loadNext, respectively. Then the previous or next page of messages is retrieved.