Skip to main content

Search messages

Chat UI does not provide a built-in message search page by default. To implement a custom search page, use the search query APIs provided by BaseChannel.

Common search methods

  • Global keyword search: BaseChannel.createSearchMessagesQuery(SearchMessagesQueryParams)
  • Search by user: BaseChannel.createSearchMessagesByUserQuery(SearchMessagesByUserQueryParams)
  • Search by channel and time range: BaseChannel.createSearchMessagesByTimeRangeQuery(SearchMessagesByTimeRangeQueryParams)
  • Filter by message type: BaseChannel.createLocalMessagesByTimeQuery(LocalMessagesByTimeQueryParams) (using messageTypes)

Example

kotlin
val query = BaseChannel.createSearchMessagesQuery(
SearchMessagesQueryParams(
keyword = "order",
channelTypes = listOf(ChannelType.DIRECT, ChannelType.GROUP),
messageTypes = listOf(MessageType.TEXT, MessageType.IMAGE),
pageSize = 20
)
)

query.loadNextPage { page, error ->
if (error == null) {
val messages = page?.data.orEmpty()
// Render search results
}
}