IMSDK
IM features a comprehensive suite of solutions including global access, one-to-one chat, group chat, message push, profile and relationship chain hosting, and account authentication. It also provides complete app access and backend management APIs.
V2TIMMessageSearchParam

Properties

NSArray< NSString * > * keywordList
 
V2TIMKeywordListMatchType keywordListMatchType
 
NSArray< NSString * > * senderUserIDList
 
NSArray< NSNumber * > * messageTypeList
 
NSString * conversationID
 
NSUInteger searchTimePosition
 
NSUInteger searchTimePeriod
 
NSUInteger pageIndex
 
NSUInteger pageSize
 

Property Documentation

◆ keywordList

- (NSArray<NSString *>*) keywordList
readwritenonatomicstrong

The keyword list can contain up to 5 keywords. When the sender and type of the message are not specified, the keyword list must be non-empty. Otherwise, the keyword list can be empty.

◆ keywordListMatchType

- (V2TIMKeywordListMatchType) keywordListMatchType
readwritenonatomicassign

Set the keyword list matching type, which can be the OR or AND relationship search. The options are V2TIM_KEYWORD_LIST_MATCH_TYPE_OR (default) and V2TIM_KEYWORD_LIST_MATCH_TYPE_AND.

◆ senderUserIDList

- (NSArray<NSString *>*) senderUserIDList
readwritenonatomicstrong

Set userIDs for message sending. Up to 5 userIDs are supported.

◆ messageTypeList

- (NSArray<NSNumber *>*) messageTypeList
readwritenonatomicstrong

Set the message types to search. If null is passed in, all message types supported are searched (V2TIMFaceElem and V2TIMGroupTipsElem are not supported).

◆ conversationID

- (NSString*) conversationID
readwritenonatomicstrong

Search all conversations or a specified conversation

conversationID == null: search all conversations

conversationID != null: search a specified conversation

◆ searchTimePosition

- (NSUInteger) searchTimePosition
readwritenonatomicassign

Start time for search. The default value is 0, indicating to start search now. The value can also be the UTC timestamp, in seconds.

◆ searchTimePeriod

- (NSUInteger) searchTimePeriod
readwritenonatomicassign

A time period in the past starting from the start time, in seconds. The default value 0 indicates that the time range is not limited. The value 24x60x60 indicates the past day.

◆ pageIndex

- (NSUInteger) pageIndex
readwritenonatomicassign

Page number: used for the paginated display of the search results. Page numbers must start from 0. For example, to display 10 results per page, call the API according to the following rules:

  • First call: call searchLocalMessage with pageSize being set to 10 and pageIndex to 0. Then you can get the total number of results from totalCount in the callback.
  • Page quantity calculation: totalPage = (totalCount % pageSize == 0) ? (totalCount / pageSize) : (totalCount / pageSize + 1)
  • Second call: specify pageIndex (pageIndex < totalPage) to return the subsequent page number.

◆ pageSize

- (NSUInteger) pageSize
readwritenonatomicassign

Number of results per page: used for the paginated display of the search results. If you do not want to paginate the search results, set the parameter to 0. However, a large number of search results without pagination may cause performance issues.