15 #import <Foundation/Foundation.h>
17 #import "EMCommonDefs.h"
18 #import "EMChatManagerDelegate.h"
19 #import "EMConversation.h"
22 #import "EMTextMessageBody.h"
23 #import "EMLocationMessageBody.h"
24 #import "EMCmdMessageBody.h"
25 #import "EMFileMessageBody.h"
26 #import "EMImageMessageBody.h"
27 #import "EMVoiceMessageBody.h"
28 #import "EMVideoMessageBody.h"
29 #import "EMCursorResult.h"
31 #import "EMGroupMessageAck.h"
48 #pragma mark - Delegate
64 delegateQueue:(dispatch_queue_t)aQueue;
79 #pragma mark - Conversation
115 type:(EMConversationType)aType
116 createIfNotExist:(BOOL)aIfCreate;
134 - (void)deleteConversation:(NSString *)aConversationId
135 isDeleteMessages:(BOOL)aIsDeleteMessages
136 completion:(
void (^)(NSString *aConversationId,
EMError *aError))aCompletionBlock;
154 - (void)deleteConversations:(NSArray *)aConversations
155 isDeleteMessages:(BOOL)aIsDeleteMessages
156 completion:(
void (^)(
EMError *aError))aCompletionBlock;
173 - (void)importConversations:(NSArray *)aConversations
174 completion:(
void (^)(
EMError *aError))aCompletionBlock;
176 #pragma mark - Message
178 - (
EMMessage *)getMessageWithMessageId:(NSString *)aMessageId;
195 - (NSString *)getMessageAttachmentPath:(NSString *)aConversationId;
211 - (void)importMessages:(NSArray *)aMessages
212 completion:(
void (^)(
EMError *aError))aCompletionBlock;
228 - (void)updateMessage:(
EMMessage *)aMessage
229 completion:(
void (^)(
EMMessage *aMessage,
EMError *aError))aCompletionBlock;
249 - (void)sendMessageReadAck:(NSString *)aMessageId
250 toUser:(NSString *)aUsername
251 completion:(
void (^)(
EMError *aError))aCompletionBlock;
274 - (void)sendGroupMessageReadAck:(NSString *)aMessageId
275 toGroup:(NSString *)aGroupId
276 content:(NSString *)aContent
277 completion:(
void (^)(
EMError *aError))aCompletionBlock;
297 - (void)recallMessageWithMessageId:(NSString *)aMessageId
298 completion:(
void (^)(
EMError *aError))aCompletionBlock;
316 - (void)sendMessage:(
EMMessage *)aMessage
317 progress:(
void (^)(
int progress))aProgressBlock
335 - (void)resendMessage:(
EMMessage *)aMessage
336 progress:(
void (^)(
int progress))aProgressBlock
355 - (void)downloadMessageThumbnail:(
EMMessage *)aMessage
356 progress:(
void (^)(
int progress))aProgressBlock
376 - (void)downloadMessageAttachment:(
EMMessage *)aMessage
377 progress:(
void (^)(
int progress))aProgressBlock
406 - (
EMCursorResult *)fetchHistoryMessagesFromServer:(NSString *)aConversationId
407 conversationType:(EMConversationType)aConversationType
408 startMessageId:(NSString *)aStartMessageId
409 pageSize:(
int)aPageSize
435 - (void)asyncFetchHistoryMessagesFromServer:(NSString *)aConversationId
436 conversationType:(EMConversationType)aConversationType
437 startMessageId:(NSString *)aStartMessageId
438 pageSize:(
int)aPageSize
441 - (void)asyncFetchGroupMessageAcksFromServer:(NSString *)aMessageId
442 groupId:(NSString *)aGroupId
443 startGroupAckId:(NSString *)aGroupAckId
444 pageSize:(
int)aPageSize
447 #pragma mark - EM_DEPRECATED_IOS 3.6.1
465 - (void)sendMessageReadAck:(
EMMessage *)aMessage
466 completion:(
void (^)(
EMMessage *aMessage,
EMError *aError))aCompletionBlock EM_DEPRECATED_IOS(3_3_0, 3_6_1, "Use -[
IEMChatManager sendMessageReadAck:toUser:completion:]");
486 - (void)recallMessage:(
EMMessage *)aMessage
487 completion:(
void (^)(
EMMessage *aMessage,
EMError *aError))aCompletionBlock EM_DEPRECATED_IOS(3_3_0, 3_6_1, "Use -[
IEMChatManager recallMessageWithMessageId:completion:]");
490 #pragma mark - EM_DEPRECATED_IOS 3.2.3
505 #pragma mark - EM_DEPRECATED_IOS < 3.2.3
541 - (BOOL)deleteConversation:(NSString *)aConversationId
542 deleteMessages:(BOOL)aDeleteMessage __deprecated_msg("Use -deleteConversation:isDeleteMessages:completion:");
561 - (BOOL)deleteConversations:(NSArray *)aConversations
562 deleteMessages:(BOOL)aDeleteMessage __deprecated_msg("Use -deleteConversations:isDeleteMessages:completion:");
579 - (BOOL)importConversations:(NSArray *)aConversations __deprecated_msg("Use -importConversations:completion:");
596 - (BOOL)importMessages:(NSArray *)aMessages __deprecated_msg("Use -importMessages:completion:");
613 - (BOOL)updateMessage:(
EMMessage *)aMessage __deprecated_msg("Use -updateMessage:completion:");
630 - (void)asyncSendReadAckForMessage:(
EMMessage *)aMessage __deprecated_msg("Use -sendMessageReadAck:completion:");
652 - (void)asyncSendMessage:(
EMMessage *)aMessage
653 progress:(
void (^)(
int progress))aProgressCompletion
654 completion:(
void (^)(
EMMessage *message,
EMError *error))aCompletion __deprecated_msg("Use -sendMessage:progress:completion:");
675 - (void)asyncResendMessage:(
EMMessage *)aMessage
676 progress:(
void (^)(
int progress))aProgressCompletion
677 completion:(
void (^)(
EMMessage *message,
EMError *error))aCompletion __deprecated_msg("Use -resendMessage:progress:completion:");
698 - (void)asyncDownloadMessageThumbnail:(
EMMessage *)aMessage
699 progress:(
void (^)(
int progress))aProgressCompletion
700 completion:(
void (^)(
EMMessage * message,
EMError *error))aCompletion __deprecated_msg("Use -downloadMessageThumbnail:progress:completion:");
721 - (void)asyncDownloadMessageAttachments:(
EMMessage *)aMessage
722 progress:(
void (^)(
int progress))aProgressCompletion
723 completion:(
void (^)(
EMMessage *message,
EMError *error))aCompletion __deprecated_msg("Use -downloadMessageAttachment:progress:completion");
748 - (void)loadMessagesWithType:(EMMessageBodyType)aType
749 timestamp:(
long long)aTimestamp
751 fromUser:(NSString*)aUsername
752 searchDirection:(EMMessageSearchDirection)aDirection
753 completion:(
void (^)(NSArray *aMessages,
EMError *aError))aCompletionBlock;
779 - (void)loadMessagesWithKeyword:(NSString*)aKeywords
780 timestamp:(
long long)aTimestamp
782 fromUser:(NSString*)aSender
783 searchDirection:(EMMessageSearchDirection)aDirection
784 completion:(
void (^)(NSArray *aMessages,
EMError *aError))aCompletionBlock;