mirror of
https://github.com/oxen-io/session-ios.git
synced 2023-12-13 21:30:14 +01:00
69 lines
2.9 KiB
Objective-C
69 lines
2.9 KiB
Objective-C
//
|
|
// Copyright (c) 2019 Open Whisper Systems. All rights reserved.
|
|
//
|
|
|
|
#import "OWSReadTracking.h"
|
|
#import "TSMessage.h"
|
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
@interface TSInfoMessage : TSMessage <OWSReadTracking>
|
|
|
|
typedef NS_ENUM(NSInteger, TSInfoMessageType) {
|
|
TSInfoMessageTypeSessionDidEnd,
|
|
TSInfoMessageUserNotRegistered,
|
|
// TSInfoMessageTypeUnsupportedMessage appears to be obsolete.
|
|
TSInfoMessageTypeUnsupportedMessage,
|
|
TSInfoMessageTypeGroupUpdate,
|
|
TSInfoMessageTypeGroupQuit,
|
|
TSInfoMessageTypeDisappearingMessagesUpdate,
|
|
TSInfoMessageAddToContactsOffer,
|
|
TSInfoMessageVerificationStateChange,
|
|
TSInfoMessageAddUserToProfileWhitelistOffer,
|
|
TSInfoMessageAddGroupToProfileWhitelistOffer,
|
|
TSInfoMessageTypeLokiSessionResetInProgress,
|
|
TSInfoMessageTypeLokiSessionResetDone,
|
|
};
|
|
|
|
+ (instancetype)userNotRegisteredMessageInThread:(TSThread *)thread recipientId:(NSString *)recipientId;
|
|
|
|
@property (atomic, readonly) TSInfoMessageType messageType;
|
|
@property (atomic, readonly, nullable) NSString *customMessage;
|
|
@property (atomic, readonly, nullable) NSString *unregisteredRecipientId;
|
|
|
|
- (instancetype)initMessageWithTimestamp:(uint64_t)timestamp
|
|
inThread:(nullable TSThread *)thread
|
|
messageBody:(nullable NSString *)body
|
|
attachmentIds:(NSArray<NSString *> *)attachmentIds
|
|
expiresInSeconds:(uint32_t)expiresInSeconds
|
|
expireStartedAt:(uint64_t)expireStartedAt
|
|
quotedMessage:(nullable TSQuotedMessage *)quotedMessage
|
|
contactShare:(nullable OWSContact *)contact
|
|
linkPreview:(nullable OWSLinkPreview *)linkPreview NS_UNAVAILABLE;
|
|
|
|
- (instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
|
|
|
|
- (instancetype)initWithTimestamp:(uint64_t)timestamp
|
|
inThread:(TSThread *)contact
|
|
messageType:(TSInfoMessageType)infoMessage NS_DESIGNATED_INITIALIZER;
|
|
|
|
- (instancetype)initWithTimestamp:(uint64_t)timestamp
|
|
inThread:(TSThread *)thread
|
|
messageType:(TSInfoMessageType)infoMessage
|
|
customMessage:(NSString *)customMessage;
|
|
|
|
- (instancetype)initWithTimestamp:(uint64_t)timestamp
|
|
inThread:(TSThread *)thread
|
|
messageType:(TSInfoMessageType)infoMessage
|
|
unregisteredRecipientId:(NSString *)unregisteredRecipientId;
|
|
|
|
- (instancetype)initWithTimestamp:(uint64_t)timestamp
|
|
inThread:(nullable TSThread *)thread
|
|
messageBody:(nullable NSString *)body
|
|
attachmentIds:(NSArray<NSString *> *)attachmentIds
|
|
expiresInSeconds:(uint32_t)expiresInSeconds
|
|
expireStartedAt:(uint64_t)expireStartedAt NS_UNAVAILABLE;
|
|
|
|
@end
|
|
|
|
NS_ASSUME_NONNULL_END
|