Package ai.nexconn.chat.params
Class SearchMessagesQueryParams
-
- All Implemented Interfaces:
public final class SearchMessagesQueryParamsParameters for creating a paginated message search query.
Used with ai.nexconn.chat.channel.BaseChannel.createSearchMessagesQuery. Supports filtering by keyword, sender user IDs, message types, time range, and channels.
val params = SearchMessagesQueryParams( keyword = "hello", channelTypes = listOf(ChannelType.GROUP), channelIds = listOf("groupId"), senderUserIds = listOf("user_001"), messageTypes = listOf(MessageType.TEXT, MessageType.IMAGE), startTime = startTimestamp, endTime = endTimestamp ) val query = BaseChannel.createSearchMessagesQuery(params) query.loadNextPage { messages, error -> if (error == null && messages != null) { // Handle results } }
-
-
Field Summary
Fields Modifier and Type Field Description private final Stringkeywordprivate final LongstartTimeprivate final LongendTimeprivate final List<ChannelType>channelTypesprivate final List<String>channelIdsprivate final List<String>subChannelIdsprivate final List<String>senderUserIdsprivate final List<String>messageTypesprivate final IntegerpageSizeprivate final BooleanisAscending
-
Constructor Summary
Constructors Constructor Description SearchMessagesQueryParams(String keyword, Long startTime, Long endTime, List<ChannelType> channelTypes, List<String> channelIds, List<String> subChannelIds, List<String> senderUserIds, List<String> messageTypes, Integer pageSize, Boolean isAscending)
-
Method Summary
Modifier and Type Method Description final StringgetKeyword()final LonggetStartTime()final LonggetEndTime()final List<ChannelType>getChannelTypes()final List<String>getChannelIds()final List<String>getSubChannelIds()final List<String>getSenderUserIds()final List<String>getMessageTypes()final IntegergetPageSize()final BooleanisAscending()-
-
Constructor Detail
-
SearchMessagesQueryParams
SearchMessagesQueryParams(String keyword, Long startTime, Long endTime, List<ChannelType> channelTypes, List<String> channelIds, List<String> subChannelIds, List<String> senderUserIds, List<String> messageTypes, Integer pageSize, Boolean isAscending)
- Parameters:
keyword- Search keywordstartTime- Query start timestamp (milliseconds), 0 means no start time limitendTime- Query end timestamp (milliseconds), 0 means no end time limitchannelTypes- Channel type filter; null searches all channel typeschannelIds- Channel ID filter; null searches all channelssubChannelIds- Sub-channel ID filter (for community channels); null searches all sub-channelssenderUserIds- Sender user ID filter; null means no sender filteringmessageTypes- Message type filter (object names); null means no message type filteringpageSize- Number of results per page (default 20, range (0, 100])isAscending- Whether to sort ascending (oldest first); default false (newest first)
-
-
Method Detail
-
getKeyword
final String getKeyword()
-
getStartTime
final Long getStartTime()
-
getEndTime
final Long getEndTime()
-
getChannelTypes
final List<ChannelType> getChannelTypes()
-
getChannelIds
final List<String> getChannelIds()
-
getSubChannelIds
final List<String> getSubChannelIds()
-
getSenderUserIds
final List<String> getSenderUserIds()
-
getMessageTypes
final List<String> getMessageTypes()
-
getPageSize
final Integer getPageSize()
-
isAscending
final Boolean isAscending()
-
-
-
-