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.


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

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

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

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

◆ messageTypeList

- (NSArray<NSNumber *>*) messageTypeList

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

Search all conversations or a specified conversation

conversationID == null: search all conversations

conversationID != null: search a specified conversation

◆ searchTimePosition

- (NSUInteger) searchTimePosition

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

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

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

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.