VoIP PushKit integration
The current iOS Call SDK exposes two public APIs that are directly related to VoIP PushKit:
[[NCCallEngine sharedInstance] enableVoipPushKit:YES]didVoIPPushNotificationReceived:inviterUserId:mediaType:userIdList:userDict:inNCCallEventDelegate
When to use VoIP PushKit
If your iOS app needs to detect incoming calls more quickly after the app is killed or moved to the background, evaluate whether to enable VoIP PushKit. Whether CallKit or PushKit is allowed in your target market depends on your product and compliance policy.
Enable PushKit
Objective C
[[NCCallEngine sharedInstance] enableVoipPushKit:YES];
Set this during app startup, before Call SDK initialization or early in the initialization flow.
Receive VoIP incoming call data
Objective C
@interface MyCallHandler () <NCCallEventDelegate>
@end
@implementation MyCallHandler
- (void)didVoIPPushNotificationReceived:(NSString *)callId
inviterUserId:(NSString *)inviterUserId
mediaType:(NCCallMediaType)mediaType
userIdList:(NSArray *)userIdList
userDict:(NSDictionary *)userDict {
// Update the incoming call UI based on callId, inviterUserId, and mediaType
}
@end
What the public API confirms
From NexconnCall.h and NCCallEngine.h, you can confirm the following:
- The SDK can enable or disable VoIP PushKit behavior.
- The SDK can deliver VoIP incoming call data back to the app layer.
The current public umbrella header does not directly confirm the standard integration path for:
- Uploading the PushKit token from the app layer
- The full console configuration flow after APNs or VoIP certificates are uploaded
- Whether the app must call any additional internal bridge APIs