EXPCore Class Reference

Inherits from NSObject
Declared in EXPCore.h

Overview

The Verint class provides the main interface to the Verint SDK.

To use the Verint framework, simply call [EXPCore start]; in your application:didFinishLaunchingWithOptions: and it will automatically parse your configuration file and start the Trigger module. (Other start methods are available. See documentation.)

Configuration

Most configuration is done through the exp_configuration.json file. See the documentation for all available configuration options.

Debugging

When testing your configuration, it is recommended you enable debug log mode. Useful information regarding internal state will be posted to the console for inspection.

CPPs

CPPs (Customer Passed Parameters) are key/value pairs that you can optionally attach to completed surveys.

+ start

Starts the SDK.

+ (void)start

Discussion

Behavior of the module is defined in the exp_configuration.json file.

Declared In

EXPCore.h

+ startWithConfigurationFile:

Starts the SDK using a custom configuration file.

+ (void)startWithConfigurationFile:(NSString *)configFileName

Parameters

configFileName

The name of the configuration file to use when loading modules

Discussion

Behavior of the module is defined in the named configuration file in your project.

See Also

Declared In

EXPCore.h

+ startWithConfigurationJson:

Starts the SDK using custom configuration JSON.

+ (void)startWithConfigurationJson:(NSString *)json

Parameters

json

The configuration JSON to use when loading modules

Discussion

Behavior of the module is defined by the string provided.

See Also

Declared In

EXPCore.h

+ startWithAppId:

Starts the SDK using the given application identifier.

+ (void)startWithAppId:(NSString *)appId

Parameters

appId

The application to start

See Also

Declared In

EXPCore.h

+ startWithAppId:version:

Starts the SDK using the given remote configuration details.

+ (void)startWithAppId:(NSString *)appId version:(NSString *)version

Parameters

appId

The application to start

version

The version of the application to start

See Also

Declared In

EXPCore.h

+ startWithSiteKey:

Starts the SDK with a configuration from the Configurator.

+ (void)startWithSiteKey:(NSString *)siteKey

Parameters

siteKey

The unique ID that identifies your app.

Availability

7.3.0

Discussion

Note: Ensure the configuration container and/or datacenter are set (if non-default values are in use) before calling this function.

Declared In

EXPCore.h

+ startWithConfigurationUrl:

Starts the SDK using configuration file from the given remote address.

+ (void)startWithConfigurationUrl:(NSString *)url

Parameters

url

The remote address of the configuration file to use when loading modules.

Discussion

Note: SDK will not start if broken url has been provided.

See Also

Declared In

EXPCore.h

+ setDelegate:

Registers an optional VerintDelegate for the SDK

+ (void)setDelegate:(id<VerintDelegate>)delegate

Declared In

EXPCore.h

+ version

Gets the version of the SDK

+ (NSString *)version

Declared In

EXPCore.h

+ setDebugLogEnabled:

Sets whether or not to enable debug logging

+ (void)setDebugLogEnabled:(BOOL)enabled

Parameters

enabled

YES to enable debug logging, NO to disable.

Discussion

Debug logging will print useful state information to the console for inspection. By default, debug logging is disabled

Declared In

EXPCore.h

+ isDebugLogEnabled

Returns whether or not debug logging is enabled

+ (BOOL)isDebugLogEnabled

Return Value

YES if enabled, NO otherwise

Declared In

EXPCore.h

+ setEventLogEnabled:

Sets whether or not to enable remote event logging.

+ (void)setEventLogEnabled:(BOOL)enabled

Parameters

enabled

YES to enable event logging, NO to disable.

Availability

3.4.1

Discussion

Event logging captures and transmits significant events that occur during the SDK life cycle. By default, event logging is enabled and it is highly recommended that this logging remain enabled in release builds.

Declared In

EXPCore.h

+ isEventLogEnabled

Returns whether or not event logging is enabled.

+ (BOOL)isEventLogEnabled

Return Value

YES if enabled, NO otherwise

Availability

3.4.1

Declared In

EXPCore.h

+ resetState

Erases all stored counts and state in the SDK; resets the SDK state to be active and recording. This should only be used for specific debugging or testing purposes; it should not be used in production code.

+ (void)resetState

Declared In

EXPCore.h

+ setConfigurationContainer:

Sets the remote configuration container

+ (void)setConfigurationContainer:(NSString *)name

Parameters

name

a specific container name.

Discussion

When testing your remote configuration of the Verint SDK, it may be useful to try out your new configuration in a non-production container first. This method tells the SDK to look for the remote configuration in a specific container.

Declared In

EXPCore.h

+ configurationContainer

Gets the current remote configuration container

+ (NSString *)configurationContainer

Return Value

a string indicating the current configuration container name

Declared In

EXPCore.h

+ setDatacenter:

Sets the datacenter name.

+ (void)setDatacenter:(NSString *)name

Parameters

name

a specific datacenter name.

Availability

7.3.0

Discussion

Note: For clients who have specific datacenter needs. Not typically required.

Declared In

EXPCore.h

+ datacenter

Gets the current datacenter name.

+ (NSString *)datacenter

Return Value

a string indicating the current datacenter name.

Availability

7.3.0

Declared In

EXPCore.h

+ setSupportedConfigurationLocales:defaultLocale:

Set supported configuration locales and the default locale

+ (void)setSupportedConfigurationLocales:(NSArray<NSString*> *)locales defaultLocale:(NSString *)defaultLocale

Parameters

locales

a NSArray of supported configuration locales.

defaultLocale

the default locale.

Discussion

By default only “en” is supported

Declared In

EXPCore.h

+ defaultConfigurationLocale

Get the default supported configuration locale

+ (NSString *)defaultConfigurationLocale

Return Value

the default supported configuration locale.

Declared In

EXPCore.h

+ configurationLocales

Get the supported configuration locales

+ (NSArray<NSString*> *)configurationLocales

Return Value

a NSArray of supported configuration locales.

Declared In

EXPCore.h

+ setCPPValue:forKey:

Adds a CPP to be sent to the server along with a completed survey

+ (void)setCPPValue:(NSString *)value forKey:(NSString *)key

Parameters

value

The value to transmit

key

The key identifying the value

Discussion

CPPs are unique to their provided key. If you set a value for an existing key, the old value will simply be overwritten.

Declared In

EXPCore.h

+ setCPPValueFromArray:forKey:

Adds a list of CPP values to be sent to the server along with a completed survey. The values will be sent as a comma-separated list.

+ (void)setCPPValueFromArray:(NSArray<NSString*> *)value forKey:(NSString *)key

Parameters

value

The values to transmit

key

The key identifying the values

Discussion

CPPs are unique to their provided key. If you set a value for an existing key, the old value will simply be overwritten.

Declared In

EXPCore.h

+ appendCPPValue:forKey:

Adds a CPP value to the end of the list of values for the given key. If no such list exists, then it will be created. If the key already contains a non-array value, then that value will be destroyed and a new list will be created.

+ (void)appendCPPValue:(NSString *)value forKey:(NSString *)key

Parameters

value

The value to add

key

The key identifying the values

Discussion

The values in the resulting array will be sent as a comma-separated list.

Declared In

EXPCore.h

+ CPPValueForKey:

Retrieves the CPP value associated with the given key (or nil, if no such key exists)

+ (NSString *)CPPValueForKey:(NSString *)key

Parameters

key

The key to look for

Return Value

the CPP’s value, if one exists; nil, if it doesn’t

Declared In

EXPCore.h

+ allCPPs

Retrieves a dictionary containing all existing CPPs, where the keys are each CPP’s key and the values are each CPP’s value as a string. If the key is assoicated with a list of values, then the value for that key will be a comma-separated list (exactly as they’re stored on the backend).

+ (NSDictionary *)allCPPs

Return Value

a dictionary containing all existing CPPs

Declared In

EXPCore.h

+ removeCPPValueForKey:

Remove a CPP

+ (void)removeCPPValueForKey:(NSString *)key

Parameters

key

The key of the value to remove.

Declared In

EXPCore.h

+ setUserProfile:

Sets a user profile.

+ (void)setUserProfile:(EXPUserProfile *)userProfile

Parameters

userProfile

an EXPUserProfile object

Discussion

The provided user profile is used to associate a specific user with events during logging.

Declared In

EXPCore.h

+ unifySamplingForWebView:

Connects the story engine to the given web view for unified sampling.

+ (void)unifySamplingForWebView:(WKWebView *)webView

Parameters

webView

a WKWebView

Availability

7.1.1

Discussion

Note: Preliminary support started from 7.1.2

Note: Ensure a web view connected to the unified sampling before the web page load started.

Declared In

EXPCore.h