Developers » AS2 tagging » Apple » Getting started » Configuration
Configuration
- iOS
- watchOS
- tvOS
Foreword
To facilitate integration of your tag, the Tag Composer application allows you to configure and download our SDK.
These configuration variables are listed in the tracker’s DefaultConfiguration.plist file.
You may specify different configurations by type of device by creating .plist files and adding the type of device to the file name (e.g. DefaultConfiguration~ipad.plist, DefaultConfiguration~iphone.plist…).
We recommend setting the configuration
secure
totrue
, since OS can block non-secure requests.
Editing the configuration
At any moment, you may change your tag’s configuration.
When creating a tracker:
let myConfiguredTracker = ATInternet.sharedInstance.tracker("myConfiguredTracker", configuration: ["log":"YOURLOG", "logSSL":"YOURSSLLOG", "domain":"YOURDOMAINLOG", "pixelPath":"/hit.xiti", "site":"YOURSITEID", "secure":"true", "identifier":"uuid", "plugins":"", "enableBackgroundTask":"true", "storage":"required", "hashUserId":"false", "persistIdentifiedVisitor":"true", "campaignLastPersistence": "false", "campaignLifetime": "30", "sessionBackgroundDuration": "60"])
Tracker* myConfiguredTracker = [[ATInternet sharedInstance] tracker:@"myConfiguredTracker" configuration:@{@"log":@"YOURLOG", @"logSSL":@"YOURSSLLOG", @"domain":@"YOURDOMAINLOG", @"pixelPath":@"/hit.xiti", @"site":@"YOURSITEID", @"secure":@"true", @"identifier":@"uuid", @"plugins":@"", @"enableBackgroundTask":@"true", @"storage":@"required", @"hashUserId":@"false", @"persistIdentifiedVisitor":@"true", @"campaignLastPersistence": @"false", @"campaignLifetime": @"30",@"sessionBackgroundDuration": @"60"}];
Via use of the tracker’s setConfig method:
Please note, the setConfig method is an asynchronous method. To ensure that the configuration was successfully applied, a callback indicating that the configuration was successfully applied is available.
- Modification of a configuration key:
tracker.setConfig("secure", value: "true") { (isSet) -> Void in print("Tracker is now using SSL") }
[self.tracker setConfig:@"secure" value:@"true" sync:NO completionHandler:^(BOOL isSet) { NSLog(@"%@", @"Tracker is now using SSL"); }];
- Replacement of certain configuration keys:
Only keys passed as parameters will be modified or added to the existing configuration
tracker.setConfig(["secure": "true", "site": "YOURSITEID", "hashUserId": "true"], override: false) { (isSet) -> Void in print("Configuration is now set") }
[self.tracker setConfig:@{@"secure": @"true", @"site": @"YOURSITEID", @"hashUserId": @"true"} override: NO sync:NO completionHandler:^(BOOL isSet) { NSLog(@"%@", @"Configuration is now set"); }];
Since 2.2.0 version, it’s possible to use helpers and constants to simplify configuration management.
- Samples to use helpers
// Log ATInternet.sharedInstance.defaultTracker.setLog("YOURLOG") { (isSet) -> Void in print("Your new log is set") } // Secured Log ATInternet.sharedInstance.defaultTracker.setSecuredLog("YOURSSLLOG") { (isSet) -> Void in print("Your new secured log is set") } // Site id ATInternet.sharedInstance.defaultTracker.setSiteId(YOURSITEID) { (isSet) -> Void in print("Your new site id is set") }
// Log [[[ATInternet sharedInstance]defaultTracker]setLog:@"YOURLOG" sync:NO completionHandler:^(BOOL isSet) { NSLog(@"Your new log is set"); }]; // Secured Log [[[ATInternet sharedInstance]defaultTracker]setSecuredLog:@"YOURSSLLOG" sync:NO completionHandler:^(BOOL isSet) { NSLog(@"Your new secured log is set"); }]; // Site id [[[ATInternet sharedInstance]defaultTracker]setSiteId:YOURSITEID sync:YES completionHandler:nil];
- Samples to use constants (all constants are available in TrackerConfigurationKeys in Swift, prefixed by AT_CONF_ in Objective-C)
// Log ATInternet.sharedInstance.defaultTracker.setConfig(TrackerConfigurationKeys.Log, value: "YOURLOG", completionHandler: { (isSet) -> Void in print("Your new log is set") }) // Secured Log ATInternet.sharedInstance.defaultTracker.setConfig(TrackerConfigurationKeys.LogSSL, value: "YOURSSLLOG", completionHandler: { (isSet) -> Void in print("Your new secured log is set") }) // Site id ATInternet.sharedInstance.defaultTracker.setConfig(TrackerConfigurationKeys.Site, value: "YOURSITEID", completionHandler: { (isSet) -> Void in print("Your new site id is set") })
// Log [[[ATInternet sharedInstance]defaultTracker]setConfig:TrackerConfigurationKeys.Log value:@"YOURLOG" sync:NO completionHandler:^(BOOL isSet) { NSLog(@"Your new log is set"); }]; // Secured Log [[[ATInternet sharedInstance]defaultTracker]setConfig:TrackerConfigurationKeys.LogSSL value:@"YOURSSLLOG" sync:NO completionHandler:^(BOOL isSet) { NSLog(@"Your new secured log is set"); }]; // Site id [[[ATInternet sharedInstance]defaultTracker]setConfig:TrackerConfigurationKeys.Site value:@"YOURSITEID" sync:NO completionHandler:^(BOOL isSet) { NSLog(@"Your new site id is set"); }];
List of variables
Name | Default value | Description |
---|---|---|
log | – | Sets the hit collect log |
logSSL | – | Sets the secure hit collect log (ATS compliant) |
domain | xiti.com | Sets the domain of the collect log |
pixelPath | /hit.xiti | Sets the path of the transparent pixel |
site | – | Sets the site ID |
secure | false | Enables use of SSL mode |
identifier | uuid | Sets type of user ID (uuid, idfv) |
storage | never | Sets mode of hit storage (required, never, always) |
enableBackgroundTask | true | Allows sending of offline hits when app is sent to background via creation of a backgroundTask |
hashUserId | false | Enables hashing of user ID (sha256) |
persistIdentifiedVisitor | true | Enables storage of identified user information (numerical or text) |
plugins | – | Enables one or several plugins (e.g:nuggad). Plugins are separated by commas |
campaignLifetime | 30 | Sets campaign lifetime (by default: 30 days) |
campaignLastPersistence | false | Sets the mode of prior attribution (by default, subsequent actions will be attributed to the first campaign detected) |
sessionBackgroundDuration | 60 | Sets the duration, in seconds, between two sessions after the app enters in background |
sendOnlyWhenAppActive (deprecated since v2.11.3) | false | Avoid sending hits when app is not active (background or inactive). Since v2.9.7 |
sendOnApplicationState | all | Allows you to send or not hits depending on the application state. Since v2.11.3 |
ignoreLimitedAdTracking | true | Allows to take into account the limited ad tracking OS configuration: hits will be considered as opt-out (true), otherwise a GUID will be used for user identification (false). Since v2.12.2 |
sendHitWhenOptOut | true | Allows sending anonymous hits when the user is in “opt-put” mode. Since v2.13.0 |
UUIDDuration | 397 | (UUID) Define UUID lifetime |
UUIDExpirationMode | fixed | (UUID) Define UUID expiration mode (possible values : fixed, relative) |