diff --git a/Session/Notifications/PushRegistrationManager.swift b/Session/Notifications/PushRegistrationManager.swift index cd3676624..1856caa58 100644 --- a/Session/Notifications/PushRegistrationManager.swift +++ b/Session/Notifications/PushRegistrationManager.swift @@ -250,9 +250,8 @@ public enum PushRegistrationError: Error { call.callMessageID = infoMessage.uniqueId } let appDelegate = UIApplication.shared.delegate as! AppDelegate + // NOTE: Just start 1-1 poller so that it won't wait for polling group messages appDelegate.startPollerIfNeeded() - appDelegate.startClosedGroupPoller() - appDelegate.startOpenGroupPollersIfNeeded() call.reportIncomingCallIfNeeded { error in if let error = error { SNLog("[Calls] Failed to report incoming call to CallKit due to error: \(error)") diff --git a/SessionMessagingKit/Sending & Receiving/MessageReceiver.swift b/SessionMessagingKit/Sending & Receiving/MessageReceiver.swift index b5df1d94d..e4edf4309 100644 --- a/SessionMessagingKit/Sending & Receiving/MessageReceiver.swift +++ b/SessionMessagingKit/Sending & Receiving/MessageReceiver.swift @@ -174,6 +174,8 @@ public enum MessageReceiver { // • This method was invoked and the received message timestamps table was updated // • Processing wasn't finished // • The user doesn't see the new closed group + } else if let message = message as? CallMessage, case .offer = message.kind{ + // Allow duplicates for all call offer messages } else { guard !Set(storage.getReceivedMessageTimestamps(using: transaction)).contains(envelope.timestamp) || isRetry else { throw Error.duplicateMessage } storage.addReceivedMessageTimestamp(envelope.timestamp, using: transaction)