session-ios/SignalServiceKit/src/Messages/OWSReadTracking.h

37 lines
917 B
C
Raw Normal View History

//
2019-01-23 15:05:08 +01:00
// Copyright (c) 2019 Open Whisper Systems. All rights reserved.
//
2019-01-23 15:05:08 +01:00
NS_ASSUME_NONNULL_BEGIN
@class YapDatabaseReadWriteTransaction;
/**
* Some interactions track read/unread status.
* e.g. incoming messages and call notifications
*/
@protocol OWSReadTracking <NSObject>
/**
* Has the local user seen the interaction?
*/
@property (nonatomic, readonly, getter=wasRead) BOOL read;
@property (nonatomic, readonly) uint64_t expireStartedAt;
@property (nonatomic, readonly) uint64_t sortId;
@property (nonatomic, readonly) NSString *uniqueThreadId;
- (BOOL)shouldAffectUnreadCounts;
/**
* Used both for *responding* to a remote read receipt and in response to the local user's activity.
*/
- (void)markAsReadAtTimestamp:(uint64_t)readTimestamp
sendReadReceipt:(BOOL)sendReadReceipt
transaction:(YapDatabaseReadWriteTransaction *)transaction;
@end
2019-01-23 15:05:08 +01:00
NS_ASSUME_NONNULL_END