WIP: handle disappearing message failed to send

pull/731/head
Ryan Zhao 8 months ago
parent c74d9a89f5
commit 71fa811064

@ -621,18 +621,6 @@ extension ConversationVC:
threadVariant: threadVariant,
using: dependencies
)
// Trigger disappear after read
dependencies.jobRunner.upsert(
db,
job: DisappearingMessagesJob.updateNextRunIfNeeded(
db,
interaction: insertedInteraction,
startedAtMs: TimeInterval(SnodeAPI.currentOffsetTimestampMs())
),
canStartJob: true,
using: dependencies
)
}
.subscribe(on: DispatchQueue.global(qos: .userInitiated))
.sinkUntilComplete(

@ -459,7 +459,13 @@ public struct Interaction: Codable, Identifiable, Equatable, FetchableRecord, Mu
}
// Start the disappearing messages timer if needed
if self.expiresStartedAtMs != nil {
let shouldStartExipring: Bool = try {
guard self.expiresStartedAtMs != nil else { return false }
guard self.variant == .standardOutgoing else { return true }
return try self.recipientStates.filter(RecipientState.Columns.state != RecipientState.State.sent).isEmpty(db)
}()
if shouldStartExipring {
JobRunner.upsert(
db,
job: DisappearingMessagesJob.updateNextRunIfNeeded(db)

Loading…
Cancel
Save