AgoraChatSDK 1.0.7
AgoraChatConversation.h
1
15#import <Foundation/Foundation.h>
16
17#import "AgoraChatMessageBody.h"
18
26typedef NS_ENUM(NSInteger, AgoraChatConversationType) {
27 AgoraChatConversationTypeChat = 0,
28 AgoraChatConversationTypeGroupChat,
29 AgoraChatConversationTypeChatRoom,
30};
31
39typedef NS_ENUM(NSInteger, AgoraChatMessageSearchDirection) {
40 AgoraChatMessageSearchDirectionUp = 0,
41 AgoraChatMessageSearchDirectionDown
42};
43
44@class AgoraChatMessage;
45@class AgoraChatError;
46
54@interface AgoraChatConversation : NSObject
55
71@property (nonatomic, copy, readonly) NSString *conversationId;
72
80@property (nonatomic, assign, readonly) AgoraChatConversationType type;
81
89@property (nonatomic, assign, readonly) int unreadMessagesCount;
90
98@property (nonatomic, assign, readonly) int messagesCount;
99
107@property (nonatomic, copy) NSDictionary *ext;
108
116@property (nonatomic, assign) BOOL isChatThread;
117
125@property (nonatomic, strong, readonly) AgoraChatMessage *latestMessage;
126
139
161- (void)insertMessage:(AgoraChatMessage *_Nonnull)aMessage
162 error:(AgoraChatError ** _Nullable)pError;
163
178- (void)appendMessage:(AgoraChatMessage *_Nonnull)aMessage
179 error:(AgoraChatError **_Nullable)pError;
180
195- (void)deleteMessageWithId:(NSString *_Nonnull)aMessageId
196 error:(AgoraChatError ** _Nullable)pError;
197
209- (void)deleteAllMessages:(AgoraChatError ** _Nullable)pError;
210
229- (void)updateMessageChange:(AgoraChatMessage *_Nonnull)aMessage
230 error:(AgoraChatError ** _Nullable)pError;
231
246- (void)markMessageAsReadWithId:(NSString *_Nonnull)aMessageId
247 error:(AgoraChatError ** _Nullable)pError;
248
261- (void)markAllMessagesAsRead:(AgoraChatError ** _Nullable)pError;
262
263
264#pragma mark - Load Messages Methods
265
280- (AgoraChatMessage * _Nullable)loadMessageWithId:(NSString * _Nonnull)aMessageId
281 error:(AgoraChatError ** _Nullable)pError;
282
313- (NSArray<AgoraChatMessage *> * _Nullable)loadMessagesStartFromId:(NSString * _Nullable)aMessageId
314 count:(int)aCount
315 searchDirection:(AgoraChatMessageSearchDirection)aDirection;
316
341- (void)loadMessagesStartFromId:(NSString * _Nullable)aMessageId
342 count:(int)aCount
343 searchDirection:(AgoraChatMessageSearchDirection)aDirection
344 completion:(void (^ _Nullable)(NSArray<AgoraChatMessage *> * _Nullable aMessages, AgoraChatError * _Nullable aError))aCompletionBlock;
345
378- (NSArray<AgoraChatMessage *> * _Nullable)loadMessagesWithType:(AgoraChatMessageBodyType)aType
379 timestamp:(long long)aTimestamp
380 count:(int)aCount
381 fromUser:(NSString* _Nullable)aUsername
382 searchDirection:(AgoraChatMessageSearchDirection)aDirection;
383
408- (void)loadMessagesWithType:(AgoraChatMessageBodyType)aType
409 timestamp:(long long)aTimestamp
410 count:(int)aCount
411 fromUser:(NSString* _Nullable)aUsername
412 searchDirection:(AgoraChatMessageSearchDirection)aDirection
413 completion:(void (^ _Nullable)(NSArray<AgoraChatMessage *> * _Nullable aMessages, AgoraChatError * _Nullable aError))aCompletionBlock;
414
445- (NSArray<AgoraChatMessage *> * _Nullable)loadMessagesWithKeyword:(NSString* _Nullable)aKeyword
446 timestamp:(long long)aTimestamp
447 count:(int)aCount
448 fromUser:(NSString* _Nullable)aSender
449 searchDirection:(AgoraChatMessageSearchDirection)aDirection;
450
475- (void)loadMessagesWithKeyword:(NSString* _Nullable)aKeyword
476 timestamp:(long long)aTimestamp
477 count:(int)aCount
478 fromUser:(NSString* _Nullable)aSender
479 searchDirection:(AgoraChatMessageSearchDirection)aDirection
480 completion:(void (^ _Nullable)(NSArray<AgoraChatMessage *> * _Nullable aMessages, AgoraChatError * _Nullable aError))aCompletionBlock;
481
513- (NSArray<AgoraChatMessage *> * _Nullable)loadCustomMsgWithKeyword:(NSString*)aKeyword
514 timestamp:(long long)aTimestamp
515 count:(int)aCount
516 fromUser:(NSString* _Nullable)aSender
517 searchDirection:(AgoraChatMessageSearchDirection)aDirection;
518
543- (void)loadCustomMsgWithKeyword:(NSString* _Nullable)aKeyword
544 timestamp:(long long)aTimestamp
545 count:(int)aCount
546 fromUser:(NSString* _Nullable)aSender
547 searchDirection:(AgoraChatMessageSearchDirection)aDirection
548 completion:(void (^ _Nullable)(NSArray<AgoraChatMessage *> * _Nullable aMessages, AgoraChatError * _Nullable aError))aCompletionBlock;
549
577- (NSArray<AgoraChatMessage *> * _Nullable)loadMessagesFrom:(long long)aStartTimestamp
578 to:(long long)aEndTimestamp
579 count:(int)aCount;
580
599- (void)loadMessagesFrom:(long long)aStartTimestamp
600 to:(long long)aEndTimestamp
601 count:(int)aCount
602 completion:(void (^ _Nullable)(NSArray<AgoraChatMessage *> * _Nullable aMessages, AgoraChatError * _Nullable aError))aCompletionBlock;
603
604@end
Definition: AgoraChatConversation.h:55
BOOL isChatThread
Definition: AgoraChatConversation.h:116
AgoraChatMessage *_Nullable lastReceivedMessage()
NSString * conversationId
Definition: AgoraChatConversation.h:71
AgoraChatMessage * latestMessage
Definition: AgoraChatConversation.h:125
int unreadMessagesCount
Definition: AgoraChatConversation.h:89
int messagesCount
Definition: AgoraChatConversation.h:98
NSDictionary * ext
Definition: AgoraChatConversation.h:107
AgoraChatConversationType type
Definition: AgoraChatConversation.h:80
Definition: AgoraChatError.h:27
Definition: AgoraChatMessage.h:67