HyphenateChatSDK 4.13.0
EMChatMessage.h
1
15#import <Foundation/Foundation.h>
16
17#import "EMMessageBody.h"
18#import "EMMessageReaction.h"
19
27typedef NS_ENUM(NSInteger, EMChatType) {
28 EMChatTypeChat = 0,
29 EMChatTypeGroupChat,
30 EMChatTypeChatRoom,
31};
32
40typedef NS_ENUM(NSInteger, EMMessageStatus) {
41 EMMessageStatusPending = 0,
42 EMMessageStatusDelivering,
43 EMMessageStatusSucceed,
44 EMMessageStatusFailed,
45};
46
54typedef NS_ENUM(NSInteger, EMMessageDirection) {
55 EMMessageDirectionSend = 0,
56 EMMessageDirectionReceive,
57};
58
66typedef NS_ENUM(NSInteger, EMChatRoomMessagePriority) {
68 EMChatRoomMessagePriorityHigh = 0,
70 EMChatRoomMessagePriorityNormal,
72 EMChatRoomMessagePriorityLow,
73};
74
82@interface EMMessagePinInfo: NSObject
84@property (strong,nonatomic) NSString* _Nonnull operatorId;
86@property (nonatomic) NSInteger pinTime;
87
88@end
89
97typedef NS_ENUM(NSInteger, EMMessagePinOperation) {
99 EMMessagePin = 0,
100
102 EMMessageUnpin
103};
104
105@class EMChatThread;
113@interface EMChatMessage : NSObject
114
115-(instancetype _Nonnull ) init __attribute__((unavailable("call initWithConversationID instead")));
116
124@property (nonatomic, copy) NSString * _Nonnull messageId;
125
133@property (nonatomic, copy) NSString * _Nonnull conversationId;
134
142@property (nonatomic) EMMessageDirection direction;
143
151@property (nonatomic, copy) NSString * _Nonnull from;
152
160@property (nonatomic, copy) NSString * _Nonnull to;
161
171@property (nonatomic) long long timestamp;
172
184@property (nonatomic) long long localTime;
185
193@property (nonatomic) EMChatType chatType;
194
202@property (nonatomic) EMMessageStatus status;
203
227@property (nonatomic, readonly) BOOL onlineState;
228
242@property (nonatomic) BOOL isReadAcked;
243
257@property (nonatomic) BOOL isChatThreadMessage;
258
272@property (nonatomic) BOOL isNeedGroupAck;
273
281@property (nonatomic, readonly) int groupAckCount;
282
308@property (nonatomic) BOOL isDeliverAcked;
309
323@property (nonatomic) BOOL isRead;
324
338@property (nonatomic) BOOL isListened;
339
347@property (nonatomic, strong) EMMessageBody * _Nonnull body;
348
356@property (nonatomic, readonly) NSArray <EMMessageReaction *>* _Nullable reactionList;
357
373- (EMMessageReaction *_Nullable)getReaction:(NSString * _Nonnull)reaction;
374
386@property (nonatomic, copy) NSDictionary * _Nullable ext;
399@property (readonly) EMChatThread * _Nullable chatThread;
414@property (nonatomic) EMChatRoomMessagePriority priority;
415
426@property (nonatomic,readonly) BOOL broadcast;
427
442@property (nonatomic) BOOL deliverOnlineOnly;
443
457@property (nonatomic,strong) NSArray<NSString*>* _Nullable receiverList;
458
469@property (nonatomic,readonly) BOOL isContentReplaced;
470
485@property (nonatomic,readonly) EMMessagePinInfo* _Nullable pinnedInfo;
486
512- (instancetype _Nonnull)initWithConversationID:(NSString *_Nonnull)aConversationId
513 from:(NSString *_Nonnull)aFrom
514 to:(NSString *_Nonnull)aTo
515 body:(EMMessageBody *_Nonnull)aBody
516 ext:(NSDictionary *_Nullable)aExt;
517
539- (instancetype _Nonnull)initWithConversationID:(NSString *_Nonnull)aConversationId
540 body:(EMMessageBody *_Nonnull)aBody
541 ext:(NSDictionary *_Nullable)aExt;
542
543@end
Definition: EMChatMessage.h:114
NSArray< EMMessageReaction * > *_Nullable reactionList
Definition: EMChatMessage.h:356
BOOL isReadAcked
Definition: EMChatMessage.h:242
BOOL isNeedGroupAck
Definition: EMChatMessage.h:272
BOOL isContentReplaced
Definition: EMChatMessage.h:469
NSDictionary *_Nullable ext
Definition: EMChatMessage.h:386
NSString *_Nonnull conversationId
Definition: EMChatMessage.h:133
BOOL isChatThreadMessage
Definition: EMChatMessage.h:257
NSString *_Nonnull from
Definition: EMChatMessage.h:151
BOOL deliverOnlineOnly
Definition: EMChatMessage.h:442
BOOL onlineState
Definition: EMChatMessage.h:227
BOOL isDeliverAcked
Definition: EMChatMessage.h:308
NSString *_Nonnull messageId
Definition: EMChatMessage.h:124
long long localTime
Definition: EMChatMessage.h:184
EMChatThread *_Nullable chatThread
Definition: EMChatMessage.h:399
BOOL isRead
Definition: EMChatMessage.h:323
int groupAckCount
Definition: EMChatMessage.h:281
EMMessageStatus status
Definition: EMChatMessage.h:202
NSString *_Nonnull to
Definition: EMChatMessage.h:160
long long timestamp
Definition: EMChatMessage.h:171
EMMessageDirection direction
Definition: EMChatMessage.h:142
BOOL isListened
Definition: EMChatMessage.h:338
BOOL broadcast
Definition: EMChatMessage.h:426
EMChatType chatType
Definition: EMChatMessage.h:193
EMChatRoomMessagePriority priority
Definition: EMChatMessage.h:414
EMMessagePinInfo *_Nullable pinnedInfo
Definition: EMChatMessage.h:485
EMMessageBody *_Nonnull body
Definition: EMChatMessage.h:347
NSArray< NSString * > *_Nullable receiverList
Definition: EMChatMessage.h:457
Definition: EMChatThread.h:22
Definition: EMMessageBody.h:46
Definition: EMChatMessage.h:83
NSString *_Nonnull operatorId
Definition: EMChatMessage.h:84
NSInteger pinTime
Definition: EMChatMessage.h:86
Definition: EMMessageReaction.h:21