Configuration

  • iOS
  • watchOS
  • tvOS
 

Avant-propos

Afin de faciliter l’intégration de votre marqueur, l’application Tag Composer vous permet de configurer et télécharger notre SDK.

Ces variables de configuration sont écrites dans le fichier DefaultConfiguration.plist du tracker.

Vous pouvez spécifier des configurations différentes par type d’appareil en créant des fichiers .plist et en ajoutant le type de l’appareil dans le nom du fichier (e.g. DefaultConfiguration~ipad.plist, DefaultConfiguration~iphone.plist …).

Nous recommandons l’utilisation de la configuration secure à true, l’OS pouvant bloquer les requêtes non sécurisées.

 

Modification de la configuration

Vous pouvez modifier à tout moment la configuration de votre marqueur.

Lors de la création d’un tracker :

let myConfiguredTracker = ATInternet.sharedInstance.tracker("myConfiguredTracker", configuration: ["log":"YOURLOG", "logSSL":"YOURSSLLOG", "secure":"true", "domain":"YOURDOMAINLOG", "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 l’utilisation de la méthode setConfig du tracker :

Attention, la méthode setConfig est une méthode asynchrone. Pour vous assurer que la configuration a bien été appliquée, un callback vous indique que la configuration est prise en compte.

  1. Modification d’une clé de configuration

    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");
    }];
  2. Remplacement de certaines clés de configuration :

    Seules les clés passées en paramètre seront modifiées ou ajoutées dans la configuration existante

    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 completionHandler:^(BOOL isSet) {
        NSLog(@"%@", @"Configuration is now set");
    }];
  3. Changement complet d’une configuration :

    Les clés existantes seront supprimées et remplacées par les nouvelles clés passées en paramètre

    tracker.setConfig(["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", "AT-env":"prod"], override: true) { (isSet) -> Void in
        print("Configuration is now set")
    }
    [self.tracker setConfig:@{@"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",@"AT-env":@"prod", @"sessionBackgroundDuration": @"60"} override: NO sync:NO completionHandler:^(BOOL isSet) {
        NSLog(@"%@", @"Configuration is now set");
    }];

Depuis la version 2.2.0, il est désormais possible d’utiliser des helpers et des constantes afin de simplifier la gestion de la configuration.

  1. Exemple d’utilisation des 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];
  2. Exemples d’utilisation des constantes (toutes les constantes sont disponibles dans TrackerConfigurationKeys)

    // 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");
    }];
 

Liste des variables

NomValeur par défautDescription
logDéfinit le log de collecte des hits
logSSLDéfinit le log de collecte sécurisé des hits (ATS compliant)
domainxiti.comDéfinit le domaine du log de collecte
pixelPath/hit.xitiChemin pour le pixel de confirmation d’envoi
siteDéfinit l’identifiant du site
securefalseActive l’utilisation du mode SSL
identifieruuidDéfinit le type d’identifiant utilisateur (uuid, idfv)
storageneverDéfinit le mode de stockage des hits (required, never, always)
enableBackgroundTasktruePermet l’envoi des hits hors connexion lors de la mise en background de l’app via la création d’une backgroundTask
hashUserIdfalseActive le hashage de l’identifiant utilisateur (sha256)
persistIdentifiedVisitortrueActive le stockage des informations de visiteur identifié (numérique ou texte)
pluginsActive un ou plusieurs plugins (e.g :nuggad). Les plugins sont séparés par des virgules
campaignLifetime30Définit la durée de vie d’une campagne (par défaut : 30 jours)
campaignLastPersistencefalseDéfinit le mode de rémanence (par défaut, la première campagne détectée sera considérée comme campagne rémanente)
sessionBackgroundDuration60Définit la durée en secondes entre deux sessions une fois que l’application est passée en arrière-plan
sendOnlyWhenAppActive (déprécié depuis v2.11.3)falseEmpêche l’envoi de hits lorsque l’application n’est pas active (background ou inactive). Depuis v2.9.7
sendOnApplicationStateallPermet d’envoyer ou non les hits en fonction de l’état de l’application. Depuis v2.11.3
ignoreLimitedAdTrackingtruePermet de prendre en compte la configuration OS de suivi publicitaire limité : les hits seront considérés comme opt-out (true), sinon un GUID sera utilisé pour l’identification utilisateur (false). Depuis v2.12.2
sendHitWhenOptOuttruePermet l’envoi de hits anonymisés lorsque l’utilisateur est en « opt-out ». Depuis v2.13.0
 

Cet article vous a-t-il été utile ?

Dernière mise à jour : 28/05/2019