CallKitProviderConfigurationBuilderObjcAdapter

@available(iOS 12.0, *)
@objc(BDKCallKitProviderConfigurationBuilder)
public class CallKitProviderConfigurationBuilderObjcAdapter : NSObject

A builder that helps you customise the CallKit user interface.

This object helps you customising the CallKit user interface guiding you in this process with a fluent interface. You use this object while configuring the Kaleyra Video SDK integration with CallKit.

 BDKConfig *config = BDKConfigBuilder.create(@"My app id", BDKEnvironmentSandbox, BDKRegionIndia)
                     .callKit(^(BDKCallKitConfigurationBuilder * callkit) {
                              callkit.enabledWithConfiguration(^(BDKCallKitProviderConfigurationBuilder * provider {
                                                                provider.ringtoneSound(@"my ringtone.mp3")
                                                                        .iconImage([UIImage imageNamed:@"callkit-icon"])
                                                                        .supportedHandles(@[@(CXHandleTypePhoneNumber), @(CXHandleTypeEmailAddress)]);
                             });
                     })
                     .build();

Remark

This builder is suited for Objective-c code. If your application is written in Swift, you should use the CallKitProviderConfigurationBuilder instead.
  • Call this property when you want to setup the supported CXHandle.HandleType your app supports.

    Declaration

    Swift

    @objc
    public var supportedHandles: ([NSNumber]) -> CallKitProviderConfigurationBuilderObjcAdapter { get }
  • Call this method when you want to provide a ringtone sound different from the default system ringtone.

    Declaration

    Swift

    @objc
    public var ringtoneSound: (String) -> CallKitProviderConfigurationBuilderObjcAdapter { get }
  • Call this property when you want to provide a custom icon to be shown in the system call UI interface.

    The icon image must be a square with side length of 40 points. The alpha channel of the image is used to create a white image mask.

    Beware, you should provide the image as png NSData value, not an UIImage object. Take a look at UIImagePNGRepresentation function documentation for more info about transforming a png UIImage to a NSData object.

    Declaration

    Swift

    @objc
    public var iconData: (Data) -> CallKitProviderConfigurationBuilderObjcAdapter { get }
  • Call this method when you want to provide a custom icon the be shown in the system call UI interface.

    The icon image must be a png square with side length of 40 points. The alpha channel of the image is used to create a white image mask.

    Declaration

    Swift

    @objc
    public var iconImage: (UIImage) -> CallKitProviderConfigurationBuilderObjcAdapter { get }