mirror of https://github.com/oxen-io/session-ios
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.3 KiB
Swift
49 lines
1.3 KiB
Swift
// Copyright © 2022 Rangeproof Pty Ltd. All rights reserved.
|
|
|
|
import Foundation
|
|
import SignalCoreKit
|
|
|
|
@objc(OWSTypingIndicatorInteraction)
|
|
public class TypingIndicatorInteraction: TSInteraction {
|
|
@objc
|
|
public static let TypingIndicatorId = "TypingIndicator"
|
|
|
|
@objc
|
|
public override func isDynamicInteraction() -> Bool {
|
|
return true
|
|
}
|
|
|
|
@objc
|
|
public override func interactionType() -> OWSInteractionType {
|
|
return .typingIndicator
|
|
}
|
|
|
|
@available(*, unavailable, message:"use other constructor instead.")
|
|
@objc
|
|
public required init(coder aDecoder: NSCoder) {
|
|
notImplemented()
|
|
}
|
|
|
|
@available(*, unavailable, message:"use other constructor instead.")
|
|
@objc
|
|
public required init(dictionary dictionaryValue: [String: Any]!) throws {
|
|
notImplemented()
|
|
}
|
|
|
|
@objc
|
|
public let recipientId: String
|
|
|
|
@objc
|
|
public init(thread: TSThread, timestamp: UInt64, recipientId: String) {
|
|
self.recipientId = recipientId
|
|
|
|
super.init(interactionWithUniqueId: TypingIndicatorInteraction.TypingIndicatorId,
|
|
timestamp: timestamp, in: thread)
|
|
}
|
|
|
|
@objc
|
|
public override func save(with transaction: YapDatabaseReadWriteTransaction) {
|
|
owsFailDebug("The transient interaction should not be saved in the database.")
|
|
}
|
|
}
|