Don't show fake call UI on old iOS versions

(cherry picked from commit 78f382a8f1d0fd4d8f2c071433e07435b4d370f6)
This commit is contained in:
Isaac 2025-05-12 11:11:45 +04:00
parent e8cf06d3be
commit 15b769a274

View File

@ -2400,30 +2400,33 @@ private func extractAccountManagerState(records: AccountRecordsView<TelegramAcco
} }
private func reportFailedIncomingCallKitCall() { private func reportFailedIncomingCallKitCall() {
guard let callKitIntegration = CallKitIntegration.shared else { if #available(iOS 14.4, *) {
return } else {
} guard let callKitIntegration = CallKitIntegration.shared else {
let uuid = CallSessionInternalId() return
callKitIntegration.reportIncomingCall( }
uuid: uuid, let uuid = CallSessionInternalId()
stableId: Int64.random(in: Int64.min ... Int64.max), callKitIntegration.reportIncomingCall(
handle: "Unknown", uuid: uuid,
phoneNumber: nil, stableId: Int64.random(in: Int64.min ... Int64.max),
isVideo: false, handle: "Unknown",
displayTitle: "Unknown", phoneNumber: nil,
completion: { error in isVideo: false,
if let error = error { displayTitle: "Unknown",
if error.domain == "com.apple.CallKit.error.incomingcall" && (error.code == -3 || error.code == 3) { completion: { error in
Logger.shared.log("PresentationCall", "reportFailedIncomingCallKitCall device in DND mode") if let error = error {
} else { if error.domain == "com.apple.CallKit.error.incomingcall" && (error.code == -3 || error.code == 3) {
Logger.shared.log("PresentationCall", "reportFailedIncomingCallKitCall error \(error)") Logger.shared.log("PresentationCall", "reportFailedIncomingCallKitCall device in DND mode")
} else {
Logger.shared.log("PresentationCall", "reportFailedIncomingCallKitCall error \(error)")
}
} }
} }
} )
) Queue.mainQueue().after(1.0, {
Queue.mainQueue().after(1.0, { callKitIntegration.dropCall(uuid: uuid)
callKitIntegration.dropCall(uuid: uuid) })
}) }
} }
private func authorizedContext() -> Signal<AuthorizedApplicationContext, NoError> { private func authorizedContext() -> Signal<AuthorizedApplicationContext, NoError> {