Configure push settings
The current iOS Call SDK supports push settings in these scenarios:
startCall:callType:mediaType:pushConfig:extra:inviteToCall:pushConfig:extra:endCall:pushConfig:acceptCall:pushConfig:
Top-level object: NCCallPushConfig
Objective C
NCCallPushConfig *pushConfig = [NCCallPushConfig new];
pushConfig.disablePushTitle = NO;
pushConfig.pushTitle = @"New call invitation";
pushConfig.pushContent = @"Tap to answer";
pushConfig.templateId = @"template-id";
Field descriptions
| Field | Type | Description |
|---|---|---|
disablePushTitle | BOOL | Whether to hide the push title. |
pushTitle | NSString * | Push title. |
pushContent | NSString * | Push body. |
templateId | NSString * | Push template ID. |
iOSConfig | NCCallIOSPushConfig * | iOS-specific push configuration. |
androidConfig | NCCallAndroidPushConfig * | Android-specific push configuration. |
iOS-specific object: NCCallIOSPushConfig
Objective C
NCCallIOSPushConfig *iosConfig = [NCCallIOSPushConfig new];
iosConfig.threadId = @"thread-id";
iosConfig.apnsCollapseId = @"collapse-id";
iosConfig.richMediaUri = @"https://example.com/image.png";
pushConfig.iOSConfig = iosConfig;
Field descriptions
| Field | Description |
|---|---|
threadId | Used for notification grouping. |
apnsCollapseId | Used for notification replacement. |
richMediaUri | Rich media or extension content URI. |
Android-specific object: NCCallAndroidPushConfig
In the current public headers, the Android push configuration exposes only Huawei Push and FCM related fields:
Objective C
NCCallAndroidPushConfig *androidConfig = [NCCallAndroidPushConfig new];
androidConfig.channelId_HW = @"hw-channel";
androidConfig.importance_HW = NCCallPushImportanceHWNormal;
androidConfig.imageUrl_HW = @"https://example.com/hw.png";
androidConfig.category_HW = @"VOIP";
androidConfig.channelId_FCM = @"fcm-channel";
androidConfig.collapseKey_FCM = @"fcm-collapse";
androidConfig.imageUrl_FCM = @"https://example.com/fcm.png";
pushConfig.androidConfig = androidConfig;
Use push settings when starting a call
Objective C
[[NCCallEngine sharedInstance] startCall:@[@"remoteUserId"]
callType:NCCallSingleType
mediaType:NCCallAudioVideoMediaType
pushConfig:pushConfig
extra:@"business-extra"];
Use NCCallOption to pass related fields together
If you need to configure push settings, extra, and a group targetId together, use NCCallOption:
Objective C
NCCallOption *option = [NCCallOption new];
option.pushConfig = pushConfig;
option.extra = @"business-extra";
option.targetId = @"group-id";