From a1aa45ae10b28a70bad6f831a67a2b8eec09fedc Mon Sep 17 00:00:00 2001 From: ryanzhao Date: Tue, 9 Nov 2021 16:07:34 +1100 Subject: [PATCH] trace call timestamp from NSE --- Session/Notifications/PushRegistrationManager.swift | 3 ++- .../NotificationServiceExtension.swift | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Session/Notifications/PushRegistrationManager.swift b/Session/Notifications/PushRegistrationManager.swift index 0fe999ffb..3d30cf816 100644 --- a/Session/Notifications/PushRegistrationManager.swift +++ b/Session/Notifications/PushRegistrationManager.swift @@ -240,8 +240,9 @@ public enum PushRegistrationError: Error { owsAssertDebug(CurrentAppContext().isMainApp) owsAssertDebug(type == .voIP) let payload = payload.dictionaryPayload - if let uuid = payload["uuid"] as? String, let caller = payload["caller"] as? String { + if let uuid = payload["uuid"] as? String, let caller = payload["caller"] as? String, let timestamp = payload["timestamp"] as? UInt64 { let call = SessionCall(for: caller, uuid: uuid, mode: .answer) + call.callMessageTimestamp = timestamp call.reportIncomingCallIfNeeded { error in if let error = error { SNLog("[Calls] Failed to report incoming call to CallKit due to error: \(error)") diff --git a/SessionNotificationServiceExtension/NotificationServiceExtension.swift b/SessionNotificationServiceExtension/NotificationServiceExtension.swift index a861eacce..dce15950f 100644 --- a/SessionNotificationServiceExtension/NotificationServiceExtension.swift +++ b/SessionNotificationServiceExtension/NotificationServiceExtension.swift @@ -218,8 +218,8 @@ public final class NotificationServiceExtension : UNNotificationServiceExtension private func handleSuccessForIncomingCall(for content: UNMutableNotificationContent, callMessage: CallMessage) { if #available(iOSApplicationExtension 14.5, *) { - if let uuid = callMessage.uuid, let caller = callMessage.sender { - let payload = ["uuid": uuid, "caller": caller] + if let uuid = callMessage.uuid, let caller = callMessage.sender, let timestamp = callMessage.sentTimestamp { + let payload = ["uuid": uuid, "caller": caller, "timestamp": timestamp] CXProvider.reportNewIncomingVoIPPushPayload(payload) { error in if let error = error { self.contentHandler!(content)