15 #import <Foundation/Foundation.h>
17 #import "EMMessageBody.h"
27 EMConversationTypeChat = 0,
28 EMConversationTypeGroupChat,
29 EMConversationTypeChatRoom
40 EMMessageSearchDirectionUp = 0,
41 EMMessageSearchDirectionDown
42 } EMMessageSearchDirection;
80 @property (nonatomic, assign, readonly) EMConversationType
type;
98 @property (nonatomic, copy) NSDictionary *
ext;
139 - (void)insertMessage:(
EMMessage *)aMessage
156 - (void)appendMessage:(
EMMessage *)aMessage
173 - (void)deleteMessageWithId:(NSString *)aMessageId
187 - (void)deleteAllMessages:(
EMError **)pError;
204 - (void)updateMessageChange:(
EMMessage *)aMessage
221 - (void)markMessageAsReadWithId:(NSString *)aMessageId
236 - (void)markAllMessagesAsRead:(
EMError **)pError;
239 #pragma mark - Load Messages Methods
255 - (
EMMessage *)loadMessageWithId:(NSString *)aMessageId
284 - (NSArray<
EMMessage *> *)loadMessagesStartFromId:(NSString *)aMessageId
286 searchDirection:(EMMessageSearchDirection)aDirection;
308 - (void)loadMessagesStartFromId:(NSString *)aMessageId
310 searchDirection:(EMMessageSearchDirection)aDirection
311 completion:(
void (^)(NSArray *aMessages,
EMError *aError))aCompletionBlock;
343 - (NSArray<
EMMessage *> *)loadMessagesWithType:(EMMessageBodyType)aType
344 timestamp:(
long long)aTimestamp
346 fromUser:(NSString*)aUsername
347 searchDirection:(EMMessageSearchDirection)aDirection;
373 - (void)loadMessagesWithType:(EMMessageBodyType)aType
374 timestamp:(
long long)aTimestamp
376 fromUser:(NSString*)aUsername
377 searchDirection:(EMMessageSearchDirection)aDirection
378 completion:(
void (^)(NSArray *aMessages,
EMError *aError))aCompletionBlock;
410 - (NSArray<
EMMessage *> *)loadMessagesWithKeyword:(NSString*)aKeyword
411 timestamp:(
long long)aTimestamp
413 fromUser:(NSString*)aSender
414 searchDirection:(EMMessageSearchDirection)aDirection;
440 - (void)loadMessagesWithKeyword:(NSString*)aKeyword
441 timestamp:(
long long)aTimestamp
443 fromUser:(NSString*)aSender
444 searchDirection:(EMMessageSearchDirection)aDirection
445 completion:(
void (^)(NSArray *aMessages,
EMError *aError))aCompletionBlock;
478 - (NSArray<
EMMessage *> *)loadCustomMsgWithKeyword:(NSString*)aKeyword
479 timestamp:(
long long)aTimestamp
481 fromUser:(NSString*)aSender
482 searchDirection:(EMMessageSearchDirection)aDirection;
508 - (void)loadCustomMsgWithKeyword:(NSString*)aKeyword
509 timestamp:(
long long)aTimestamp
511 fromUser:(NSString*)aSender
512 searchDirection:(EMMessageSearchDirection)aDirection
513 completion:(
void (^)(NSArray *aMessages,
EMError *aError))aCompletionBlock;
540 - (NSArray<
EMMessage *> *)loadMessagesFrom:(
long long)aStartTimestamp
541 to:(
long long)aEndTimestamp
562 - (void)loadMessagesFrom:(
long long)aStartTimestamp
563 to:(
long long)aEndTimestamp
565 completion:(
void (^)(NSArray *aMessages,
EMError *aError))aCompletionBlock;
567 #pragma mark - Deprecated methods
584 - (BOOL)insertMessage:(
EMMessage *)aMessage __deprecated_msg("Use -insertMessage:error: instead");
601 - (BOOL)appendMessage:(
EMMessage *)aMessage __deprecated_msg("Use -appendMessage:error: instead");
618 - (BOOL)deleteMessageWithId:(NSString *)aMessageId __deprecated_msg("Use -deleteMessageWithId:error: instead");
631 - (BOOL)deleteAllMessages
__deprecated_msg("Use -deleteAllMessages: instead");
648 - (BOOL)updateMessage:(
EMMessage *)aMessage __deprecated_msg("Use -updateMessageChange:error: instead");
665 - (BOOL)markMessageAsReadWithId:(NSString *)aMessageId __deprecated_msg("Use -markMessageAsReadWithId:error: instead");
678 - (BOOL)markAllMessagesAsRead
__deprecated_msg("Use -markAllMessagesAsRead: instead");
692 - (BOOL)updateConversationExtToDB
__deprecated_msg("setExt: will update extend properties to DB");
709 - (
EMMessage *)loadMessageWithId:(NSString *)aMessageId __deprecated_msg("Use -loadMessageWithId:error: instead");
730 - (NSArray *)loadMoreMessagesFromId:(NSString *)aMessageId
732 direction:(EMMessageSearchDirection)aDirection __deprecated_msg("Use -loadMessagesStartFromId:count:searchDirection:completion: instead");
757 - (NSArray *)loadMoreMessagesWithType:(EMMessageBodyType)aType
758 before:(
long long)aTimestamp
760 from:(NSString*)aSender
761 direction:(EMMessageSearchDirection)aDirection __deprecated_msg("Use -loadMessagesWithType:timestamp:count:fromUser:searchDirection:completion: instead");
786 - (NSArray *)loadMoreMessagesContain:(NSString*)aKeywords
787 before:(
long long)aTimestamp
789 from:(NSString*)aSender
790 direction:(EMMessageSearchDirection)aDirection __deprecated_msg("Use -loadMessagesContainKeywords:timestamp:count:fromUser:searchDirection:completion: instead");
811 - (NSArray *)loadMoreMessagesFrom:(
long long)aStartTimestamp
812 to:(
long long)aEndTimestamp
813 maxCount:(
int)aMaxCount __deprecated_msg("Use -loadMessagesFrom:to:count:completion: instead");
Definition: EMConversation.h:55
NSDictionary * ext
Definition: EMConversation.h:98
"Use -deleteAllMessages: instead" __deprecated_msg()
EMMessage * latestMessage
Definition: EMConversation.h:107
EMMessage * lastReceivedMessage()
EMConversationType type
Definition: EMConversation.h:80
int unreadMessagesCount
Definition: EMConversation.h:89
NSString * conversationId
Definition: EMConversation.h:71
Definition: EMMessage.h:66