Crash from unhandled VoIP Notifications

[PKPushRegistry _terminateAppIfThereAreUnhandledVoIPPushes] () is executed by the OS because of unhandled VoIPPushes and thus the application terminated

We have no other VoIP interaction in our application but through Sendbird. If there is some out-of SDK handling that we need to do to prevent this, please let us know.


// If problem, please fill out the below. If question, please delete.
[Version]
.package(url: “GitHub - sendbird/sendbird-calls-ios: A guide of Sendbird Calls SDK for iOS for an engaging voice and video call experience.”,
exact: “1.10.21”),

[Reproduction Steps]
we see it in roughly 0.1% of our sessions, it is worrisome because, apparently

Repeatedly failing to report calls may prevent your app from receiving any more incoming call notifications.
Advances in App Background Execution - WWDC19 - Videos - Apple Developer

no idea how to reproduce it, but likely somehow related to receiving VoIP Pushes with the application in the background, and then launching the application at a later time.

The stack trace looks like this:

Thread 0 name:
Thread 0 Crashed:
0   libsystem_kernel.dylib        	0x000000020a8c9578 __pthread_kill + 8 (:-1)
1   libsystem_pthread.dylib       	0x000000022b744118 pthread_kill + 268 (pthread.c:1670)
2   libsystem_c.dylib             	0x00000001d2e34178 abort + 180 (abort.c:118)
3   libc++abi.dylib               	0x000000022b682bf8 abort_message + 132 (:-1)
4   libc++abi.dylib               	0x000000022b672444 demangling_terminate_handler() + 348 (:-1)
5   libobjc.A.dylib               	0x00000001c49b1ea4 _objc_terminate() + 144 (objc-exception.mm:498)
6   libc++abi.dylib               	0x000000022b681fbc std::__terminate(void (*)()) + 16 (:-1)
7   libc++abi.dylib               	0x000000022b681f60 std::terminate() + 56 (:-1)
8   libdispatch.dylib             	0x00000001d2dd3ec0 _dispatch_client_callout + 40 (object.m:563)
9   libdispatch.dylib             	0x00000001d2de3428 _dispatch_lane_barrier_sync_invoke_and_complete + 56 (queue.c:1085)
10  PushKit                       	0x000000022e908a54 __73-[PKPushRegistry voipPayloadReceived:mustPostCall:withCompletionHandler:]_block_invoke + 444 (PKPushRegistry.m:175)
11  libdispatch.dylib             	0x00000001d2dd2320 _dispatch_call_block_and_release + 32 (init.c:1518)
12  libdispatch.dylib             	0x00000001d2dd3eac _dispatch_client_callout + 20 (object.m:560)
13  libdispatch.dylib             	0x00000001d2de26a4 _dispatch_main_queue_drain + 928 (queue.c:7794)
14  libdispatch.dylib             	0x00000001d2de22f4 _dispatch_main_queue_callback_4CF + 44 (queue.c:7954)
15  CoreFoundation                	0x00000001cb99bc28 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 16 (CFRunLoop.c:1780)
16  CoreFoundation                	0x00000001cb97d560 __CFRunLoopRun + 1992 (CFRunLoop.c:3147)
17  CoreFoundation                	0x00000001cb9823ec CFRunLoopRunSpecific + 612 (CFRunLoop.c:3418)
18  GraphicsServices              	0x0000000206e9835c GSEventRunModal + 164 (GSEvent.c:2196)
19  UIKitCore                     	0x00000001cdd0ef58 -[UIApplication _run] + 888 (UIApplication.m:3782)
20  UIKitCore                     	0x00000001cdd0ebbc UIApplicationMain + 340 (UIApplication.m:5372)
21  SwiftUI                       	0x00000001cf353c50 closure #1 in KitRendererCommon(_:) + 176 (UIKitApp.swift:37)
22  SwiftUI                       	0x00000001cf2ba1ec runApp<A>(_:) + 152 (UIKitApp.swift:14)
23  SwiftUI                       	0x00000001cf2a4294 static App.main() + 128 (App.swift:114)
24  all.health                    	0x00000001042fbe84 static HealthHubApp.$main() + 52 (HealthHubApp.swift:0)
25  all.health                    	0x00000001042fbe84 main + 64
26  dyld                          	0x00000001eaeb4dec start + 2220 (dyldMain.cpp:1165)

[Frequency]
about 0.1%

[Severity]
Mid