BandyerSDK

Objective-C

@interface BandyerSDK : NSObject

Swift

class BandyerSDK : NSObject

The Bandyer SDK facade.

Logging

  • This property sets the logging level for the module. If you want to turn on logging facilities you can set this value to one of the logging levels specified BDFLogLevel enum (e.g. BDFLogLevelError, BDFLogLevelWarning and so on…). If you want to turn off logging you can pass BDFLogLevelOff value. The default value for this flag is BDFLogLevelOff.

    Declaration

    Objective-C

    @property (class, nonatomic) BDFLogLevel logLevel;

    Swift

    class var logLevel: BDFLogLevel { get set }

In app notifications

  • The in-app notifications coordinator instance. The service provided in this property is not started by default, you must call the start method on it explicitly in order to start receiving in-app notifications.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly, nullable) id<BDKInAppNotificationsCoordinator> notificationsCoordinator;

Config

  • The configuration used by the module, provided in initialization method.

    Declaration

    Objective-C

    @property (nonatomic, copy, readonly, nullable) BDKConfig *config;

    Swift

    @NSCopying var config: BDKConfig? { get }

Services

  • The call client instance.

    Throws: an NSInternalInconsistencyException is thrown when this property is accessed before the sdk is initialized.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) id<BCXCallClient> _Nonnull callClient;
  • Returns the call registry containing the calls currently being performed.

    Throws an NSInternalInconsistencyException is thrown when this property is accessed before the sdk is initialized.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) id<BCXCallRegistry> _Nonnull callRegistry;
  • The chat client instance.

    Throws: an NSInternalInconsistencyException is thrown when this property is accessed before the sdk is initialized.

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) id<BCHChatClient> _Nonnull chatClient;
  • The user info fetcher instance that is going to be used whenever the sdk needs to show any user information like hers/his first name, last name and so on.

    Declaration

    Objective-C

    @property (nonatomic, strong, nullable) id<BDKUserInfoFetcher> userInfoFetcher;

Initialization

  • Initialize the module with the appId provided as argument, using a default configuration.

    Throws an exception if this method is called more than once during the lifetime of the application. Throws an NSInvalidArgumentException exception if a blank appId argument is provided.

    Declaration

    Objective-C

    - (void)initializeWithApplicationId:(nonnull NSString *)appId;

    Swift

    func initialize(withApplicationId appId: String)

    Parameters

    appId

    The applicationId.

  • Initialize the module with the appId and the configuration object provided as arguments.

    Once initialized, the module cannot be reinitialized anymore. Beware config object will be copied, so do not expect to change config options after the module has initialized.

    Throws an exception if this method is called more than once during the lifetime of the application. Throws an NSInvalidArgumentException exception if a blank appId argument is provided. Throws an NSInvalidArgumentException exception if a nil config object is provided.

    Declaration

    Objective-C

    - (void)initializeWithApplicationId:(nonnull NSString *)appId
                                 config:(nonnull BDKConfig *)config;

    Swift

    func initialize(withApplicationId appId: String, config: BDKConfig)

    Parameters

    appId

    The applicationId.

    config

    The config object.

Singleton

  • Returns the global singleton instance.

    Declaration

    Objective-C

    + (nonnull instancetype)instance;

    Swift

    class func instance() -> Self

    Return Value

    the global singleton instance.