ShengwangChatSDK 1.3.2
AgoraChatMessage.h
1
9#import <Foundation/Foundation.h>
10
11#import "AgoraChatMessageBody.h"
12#import "AgoraChatMessageReaction.h"
13
18typedef NS_ENUM(NSInteger, AgoraChatType) {
19 AgoraChatTypeChat = 0,
20 AgoraChatTypeGroupChat,
21 AgoraChatTypeChatRoom,
22};
23
28typedef NS_ENUM(NSInteger, AgoraChatMessageStatus) {
29 AgoraChatMessageStatusPending = 0,
30 AgoraChatMessageStatusDelivering,
31 AgoraChatMessageStatusSucceed,
32 AgoraChatMessageStatusFailed,
33};
34
39typedef NS_ENUM(NSInteger, AgoraChatMessageDirection) {
40 AgoraChatMessageDirectionSend = 0,
41 AgoraChatMessageDirectionReceive,
42};
43
48typedef NS_ENUM(NSInteger, AgoraChatRoomMessagePriority) {
50 AgoraChatRoomMessagePriorityHigh = 0,
52 AgoraChatRoomMessagePriorityNormal,
54 AgoraChatRoomMessagePriorityLow,
55};
56
61@interface AgoraChatMessagePinInfo: NSObject
63@property (strong,nonatomic) NSString* _Nonnull operatorId;
65@property (nonatomic) NSInteger pinTime;
66
67@end
68
73typedef NS_ENUM(NSInteger, AgoraChatMessagePinOperation) {
75 AgoraChatMessagePin = 0,
76
78 AgoraChatMessageUnpin
79};
80
81@class AgoraChatThread;
86@interface AgoraChatMessage : NSObject
87
88-(instancetype _Nonnull ) init __attribute__((unavailable("call initWithConversationID instead")));
89
94@property (nonatomic, copy) NSString * _Nonnull messageId;
95
100@property (nonatomic, copy) NSString * _Nonnull conversationId;
101
106@property (nonatomic) AgoraChatMessageDirection direction;
107
112@property (nonatomic, copy) NSString * _Nonnull from;
113
118@property (nonatomic, copy) NSString * _Nonnull to;
119
126@property (nonatomic) long long timestamp;
127
134@property (nonatomic) long long localTime;
135
140@property (nonatomic) AgoraChatType chatType;
141
146@property (nonatomic) AgoraChatMessageStatus status;
147
161@property (nonatomic, readonly) BOOL onlineState;
162
170@property (nonatomic) BOOL isReadAcked;
171
179@property (nonatomic) BOOL isChatThreadMessage;
180
188@property (nonatomic) BOOL isNeedGroupAck;
189
194@property (nonatomic, readonly) int groupAckCount;
195
209@property (nonatomic) BOOL isDeliverAcked;
210
218@property (nonatomic) BOOL isRead;
219
227@property (nonatomic) BOOL isListened;
228
233@property (nonatomic, strong) AgoraChatMessageBody * _Nonnull body;
234
239@property (nonatomic, readonly) NSArray <AgoraChatMessageReaction *>* _Nullable reactionList;
240
249- (AgoraChatMessageReaction *_Nullable)getReaction:(NSString * _Nonnull)reaction;
250
257@property (nonatomic, copy) NSDictionary * _Nullable ext;
265@property (readonly) AgoraChatThread * _Nullable chatThread;
274@property (nonatomic) AgoraChatRoomMessagePriority priority;
275
281@property (nonatomic,readonly) BOOL broadcast;
282
290@property (nonatomic) BOOL deliverOnlineOnly;
291
299@property (nonatomic,strong) NSArray<NSString*>* _Nullable receiverList;
300
307@property (nonatomic,readonly) BOOL isContentReplaced;
308
316@property (nonatomic,readonly) AgoraChatMessagePinInfo* _Nullable pinnedInfo;
317
332- (instancetype _Nonnull)initWithConversationID:(NSString *_Nonnull)aConversationId
333 from:(NSString *_Nonnull)aFrom
334 to:(NSString *_Nonnull)aTo
335 body:(AgoraChatMessageBody *_Nonnull)aBody
336 ext:(NSDictionary *_Nullable)aExt;
337
350- (instancetype _Nonnull)initWithConversationID:(NSString *_Nonnull)aConversationId
351 body:(AgoraChatMessageBody *_Nonnull)aBody
352 ext:(NSDictionary *_Nullable)aExt;
353
354@end
Definition: AgoraChatMessageBody.h:33
Definition: AgoraChatMessage.h:87
BOOL broadcast
Definition: AgoraChatMessage.h:281
AgoraChatMessagePinInfo *_Nullable pinnedInfo
Definition: AgoraChatMessage.h:316
BOOL isReadAcked
Definition: AgoraChatMessage.h:170
AgoraChatMessageStatus status
Definition: AgoraChatMessage.h:146
NSArray< AgoraChatMessageReaction * > *_Nullable reactionList
Definition: AgoraChatMessage.h:239
NSString *_Nonnull from
Definition: AgoraChatMessage.h:112
AgoraChatMessageBody *_Nonnull body
Definition: AgoraChatMessage.h:233
int groupAckCount
Definition: AgoraChatMessage.h:194
AgoraChatThread *_Nullable chatThread
Definition: AgoraChatMessage.h:265
AgoraChatMessageDirection direction
Definition: AgoraChatMessage.h:106
long long timestamp
Definition: AgoraChatMessage.h:126
NSString *_Nonnull to
Definition: AgoraChatMessage.h:118
NSString *_Nonnull messageId
Definition: AgoraChatMessage.h:94
NSDictionary *_Nullable ext
Definition: AgoraChatMessage.h:257
BOOL deliverOnlineOnly
Definition: AgoraChatMessage.h:290
NSArray< NSString * > *_Nullable receiverList
Definition: AgoraChatMessage.h:299
AgoraChatType chatType
Definition: AgoraChatMessage.h:140
long long localTime
Definition: AgoraChatMessage.h:134
BOOL isChatThreadMessage
Definition: AgoraChatMessage.h:179
BOOL isRead
Definition: AgoraChatMessage.h:218
BOOL isNeedGroupAck
Definition: AgoraChatMessage.h:188
BOOL isListened
Definition: AgoraChatMessage.h:227
NSString *_Nonnull conversationId
Definition: AgoraChatMessage.h:100
BOOL onlineState
Definition: AgoraChatMessage.h:161
BOOL isContentReplaced
Definition: AgoraChatMessage.h:307
AgoraChatRoomMessagePriority priority
Definition: AgoraChatMessage.h:274
BOOL isDeliverAcked
Definition: AgoraChatMessage.h:209
Definition: AgoraChatMessage.h:62
NSInteger pinTime
Definition: AgoraChatMessage.h:65
NSString *_Nonnull operatorId
Definition: AgoraChatMessage.h:63
Definition: AgoraChatMessageReaction.h:18
Definition: AgoraChatThread.h:19