Show Menu
SUJETS×

Méthodes DIL au niveau de l’instance

Les DIL API de niveau instance vous permettent de créer et d’utiliser par programmation des objets Audience Manager. Les méthodes au niveau de l’instance améliorent la fonctionnalité de l’API établie par les méthodes au niveau de la classe.

Prise en main des méthodes DIL au niveau de l’instance

Lorsque vous utilisez des DIL API de niveau instance :
  • L'accès nécessite un nom de partenaire et un ID d'espace de nommage d'conteneur (NSID). Contactez votre gestionnaire de compte Audience Manager pour obtenir ces informations.
  • Remplacez tout exemple de texte en italique dans la documentation de l’API par la valeur, l’ID ou toute autre variable, comme requis par la méthode utilisée.

signaux

Ajoute des mappages au niveau du client et de la plate-forme à la chaîne de requête d’une demande en attente.
Signature de fonction : signals: function ({key1:value1, key2:value2},prefix){}
  • Vous pouvez associer d’autres appels d’API à cette méthode.
  • Si la bibliothèque JavaScript d’Adobe Experience Cloud se trouve sur la page, submit() attend que le Cloud définisse un cookie avant d’envoyer une demande.
Clés de requête réservées
Les clés de requête suivantes sont réservées et ne peuvent pas être remplacées par cette méthode :
  • sids
  • pdata
  • logdata
  • callback
  • postCallbackFn
  • useImageRequest
Paramètres
Nom
Type
Description
obj
Objet
Objet représentant les paires clé-valeur pour les mappages au niveau de la plate-forme. Le paramètre accepte les chaînes et les tableaux en tant que valeurs de propriété dans l’objet.
prefix
Chaîne
Facultatif. Valeur de chaîne préfixée à chaque clé d’objet (remplace la clé d’origine).
return
DIL.api
Renvoie l’objet API de l’instance DIL active.
Réponse
Renvoie l’objet API de l’ DIL instance active.
Exemple de code
var dataLib = DIL.create({ 
     partner: '

partnerName

' 
     containerNSID: 

containerNSID

 
}); 
 
// Method 1 
var obj = { key1 : 1, key2 : 2 }; 
dataLib.api.signals(obj, 'c_').submit(); 
 
// Method 2 
dataLib.api.signals({c_zdid: 54321}).submit(); 
 
// Method 3 
// Will send 'c_key=a&c_key=2&c_key=3' to Audience Manager 
var obj = { key : ['a', 'b', 'c'] }; 
dataLib.api.signals(obj, 'c_').submit(); 


traits

Ajoute des SID à la chaîne de requête d’une requête en attente.
Signature de fonction : traits:function (sids){}
Vous pouvez associer d’autres appels d’API à cette méthode.
Paramètres
Nom
Type
Description
sids
Tableau
Identifiants des segments de caractéristiques dans un tableau.
Réponse
Renvoie l’objet API de l’ DIL instance active.
Exemple de code
var partnerObject = DIL.create({ 
     partner: '

partner name

', 
     containerNSID: 

NSID

 
}); 
partnerObject.api.traits(

[123, 456, 789]

); 


logs

Ajouter de données aux fichiers journaux dans la requête en attente.
Signature de fonction : logs: function {key1:value1, key2:value2}
Réponse
Renvoie l’objet API de l’ DIL instance active.
Exemple de code
var partnerObject = DIL.create({ 
     partner: '

partner

', 
     containerNSID: 

NSID

 
}); 
partnerObject.api.logs({ 
     file: 'dil.js', 
     message: 'This is the first request' 
});


submit

Envoie toutes les données en attente à Audience Manager pour l’ DIL instance.
Signature de fonction : submit: function () {}
Vous pouvez associer d’autres appels d’API à cette méthode. En outre, DIL écrit les données codées dans un cookie de destination. Par exemple, les espaces sont codés en tant que %20 points-virgules %3B .
Réponse
Renvoie l’objet API de l’ DIL instance active.
Exemple de code
var dataLib = DIL.create({ 
     partner: '

partnerName

', 
     containerNSID: 

containerNSID

 
}); 
 
dataLib.api.traits([ 


123,456, 789

]).logs({ 
     file: 'dil.js', 
     message: 'This is the first request' 
}).signals({ 
     c_zdid: 

1111

 
     d_dma: '

default

' 
}).submit();


afterResult

Fonction qui s’exécute après le rappel de publication de destination par défaut.
Signature de fonction : afterResult: function (fn) {}
Vous pouvez associer d’autres appels d’API à cette méthode.
Paramètres
Nom
Type
Description
fn
Fonction
Fonction que vous souhaitez exécuter après le traitement de JSON par le rappel par défaut qui gère la publication de destination.
Réponse
Renvoie un objet API de l’ DIL instance active.
Exemple de code
var dataLib = DIL.create({ 
     partner: '

partnerName

', 
     containerNSID: 

containerNSID

 
}); 
 
dataLib.api.signals({ 
     c_zdid: 

54321

 
     d_dma: '

default

' 
}).afterResult(function(json){ 
     //Do something with the JSON data returned from the server. 
}).submit();


clearData

Efface toutes les données d’une requête en attente.
Signature de fonction : clearData: function () {}
Vous pouvez associer d’autres appels d’API à cette méthode.
Réponse
Renvoie l’objet API de l’ DIL instance active.
Exemple de code
var dataLib = DIL.create({ 
     partner: '

partnerName

', 
     containerNSID: 

containerNSID

 
}); 
 
dataLib.api.traits([

123,456, 789

]).logs({ 
     file: 'dil.js' 
     message: 'This is the first request' 
}).signals({ 
     c_zdid: 

1111

 
     d_dma: '

default

' 
}); 
 
//Reset the pending data 
dataLib.clearData();


customQueryParams

Ajoute à une requête en attente des paramètres de requête personnalisés qui ne sont pas explicitement définis par le serveur de collecte de données.
Signature de fonction : customQueryParams: function (obj) {}
Vous pouvez associer d’autres appels d’API à cette méthode.
Clés de requête réservées
Les clés de requête suivantes sont réservées et ne peuvent pas être remplacées par cette méthode :
  • sids
  • pdata
  • logdata
  • callback
  • postCallbackFn
  • useImageRequest
Réponse
Renvoie l’objet API de l’instance DIL active.
Exemple de code
var partnerObject = DIL.create({ 
     partner: '

partner

', 
     containerNSID: 

NSID

 
}); 
partnerObject.api.customQueryParams({ 
     nid: 54231, 
     ntype: 'default' 
}); 


getContainerNSID

Renvoie la valeur du conteneur NSID pour l’ DIL instance. Utile pour le débogage et le dépannage.
Signature de fonction : dil.api.getContainerNSID: function () {}
Exemple de code
var dataLib = DIL.create({ 
     partner: '

partnerName

', 
     containerNSID: 

containerNSID

 
}); 
 
//Verify the container NSID 
var nsid = dataLib.api.getContainerNSID();


getEventLog

Renvoie les données du journal des événements triées chronologiquement sous la forme d’un tableau de chaînes. Utile pour le débogage et le dépannage.
Signature de fonction : dil.api.getEventLog: function () {}
Exemple de code
var dataLib = DIL.create({ 
     partner: '

partnerName

', 
     containerNSID: 

containerNSID

 
}); 
 
dataLib.api.traits([

123, 456, 789

]).logs({ 
     file: 'dil.js', 
     message: 'This is the first request' 
});.signals({ 
     c_zdid: 

1111

 
     d_dma: '

default

' 
});.submit(); 
 
//Check log for messages 
var log = dataLib.api.getEventLog(); 
if (log && log.length) { 
     alert(log.join('\n')); 
}else{ 
     alert('No log messages'); 
}


getPartner

Renvoie le nom du partenaire pour une DIL instance. Utile pour le débogage et le dépannage.
Signature de fonction : dil.api.getPartner: function () {}
Exemple de code
var dataLib = DIL.create({ 
     partner: '

partnerName

' 
     containerNSID: 

containerNSID

 
}); 
 
//Verify the partner name 
var partner = dataLib.api.getPartner();


getState

Renvoie l’état de l’ DIL instance active. Utile pour le débogage et le dépannage.
Signature de fonction : dil.api.getState: function () {}
Exemple de code
var dataLib = DIL.create({ 
     partner: '

partnerName

', 
     containerNSID: 

containerNSID

 
}); 
 
dataLib.api.traits([

123, 456, 789

]).logs({ 
     file: 'dil.js', 
     message:'This is the first request' 
});.signals({ 
     c.zdid: 

1111

 
     d_dma: '

default

' 
});.submit(); 
 
var state = dataLib.api.getState(); 
 
/*Object outline of state 
state = { 
     pendingRequest: {

pending data for call to server

}, 
     otherRequestInfo:{ 
          firingQueue: [], 
          fired: [], 
          firing: false, 
          errored: [], 
          reservedKeys: { 
               sids: true, 
               pdata: true, 
               logdata: true, 
               callback: true, 
               postCallbackFn: true, 
               useImageRequest: true, 
          }, 
          firstRequestHasFired: false, 
          num_of_jsonp_responses: 0, 
          num_of_jsonp_errors: 0, 
          num_of_img_responses: 0, 
          num_of_img_errors: 0 
     }, 
     destinationPublishingInfo: { 
          THROTTLE_START: 3000, 
          throttleTimerSet: false, 
          id: ''destination_publishing_iframe_' + partner + '_' + containerNSID, 
          url: (constants.isHTTPS ? 'https://' : 'https://fast.') + partner + '.demdex.net/dest3.html?d_nsid=' 
          ​+ containerNSID + '#' + encodeURIComponent(document.location.href), 
               iframe: null, 
               iframeHasLoaded: false, 
               sendingMessages: false, 
               messages: [], 
               messageSendingInterval: constants.POST_MESSAGE_ENABLED ? 15: 100, 
               //Recommend 100ms for IE 6 & 7, 15ms for other browsers 
               jsonProcessed: [] 
     } 
} 
*/


idSync

Comprend deux fonctions qui permettent aux partenaires de données d’échanger et de synchroniser les ID utilisateur entre eux et Audience Manager.
Signature de fonction :
Fonctionne avec DIL les versions 2.10 et 3.1 ou ultérieures.
Code Synchronise les identifiants des utilisateurs
dil.Instance.api.idSync(initConfig)
Entre différents partenaires de données et le Gestionnaire d’Audiences. Par exemple, le partenaire x utilisera cette méthode pour synchroniser un ID d’utilisateur avec le partenaire y, puis l’enverra au Gestionnaire d’Audiences.
Important : Cette méthode est désapprouvée. Veuillez utiliser la idSyncByURL méthode de l’instance Adobe Experience Platform Identity Service.
dil.Instance.api.aamIdSync(initConfig)
Lorsque vous connaissez déjà l’ID utilisateur et souhaitez l’envoyer à Audience Manager.
Important : Cette méthode est désapprouvée. Veuillez utiliser la idSyncByDataSource méthode de l’instance Adobe Experience Platform Identity Service.
Eléments idSync
idSync peuvent se composer des éléments suivants :
Nom Type Description
dpid Chaîne
Identifiant de fournisseur de données attribué par Audience Manager.
dpuuid Chaîne
L’identifiant unique du fournisseur de données pour l’utilisateur.
minutesToLive Nombre
(Optionnel) Définit le délai d’expiration du cookie. Doit être un nombre entier. Sa valeur par défaut est de 20 160 minutes (14 jours).
url Chaîne
URL de destination.
Macros
idSync accepte les macros suivantes :
  • %TIMESTAMP% : ​Génère un horodatage (en millisecondes). Utilisé pour la mise en cache.
  • %DID% : ​Insère l’ID Audience Manager de l’utilisateur.
  • %HTTP_PROTO% : ​Définit le protocole de la page ( http ou https ).
Réponse
Les deux fonctions retournent Successfully queued si elles réussissent. Autrement, elles renvoient une chaîne contenant un message d’erreur.
Exemple de code
dilInstance.api.idSync(initConfig)
// Fires url with macros replaced 
dilInstance.api.idSync({ 
 dpid: '23', // must be a string 
 url: '//su.addthis.com/red/usync?pid=16&puid=%DID%&url=%HTTP_PROTO%%3A%2F%2Fdpm.demdex.net 
%2Fibs%3Adpid%3D420%26dpuuid%3D%7B%7Buid%7D%7D', 
 minutesToLive: 20160 // optional, defaults to 20160 minutes (14 days)  
});


dilInstance.api.aamIdSync(initConfig)
// Fires 'https:/https:' + '//dpm.demdex.net/ibs:dpid=<dpid>&dpuuid=<dpuuid>' 
dilInstance.api.aamIdSync({ 
 dpid: '23', // must be a string 
 dpuuid: '98765', // must be a string 
 minutesToLive: 20160 // optional, defaults to 20160 minutes (14 days)  
});


result

Ajoute un rappel (qui reçoit JSON) à la demande en attente.
Signature de fonction : result: function (callback) {}
Ce rappel remplace le rappel par défaut qui gère la publication de destination.
Vous pouvez associer d’autres appels d’API à cette méthode.
Paramètres
Nom
Type
Description
callback
Fonction
Fonction JavaScript exécutée par le rappel JSONP.
Réponse
Renvoie l’objet API de l’ DIL instance active.
Exemple de code
var dataLib = DIL.create({ 
     partner: '

partnerName

', 
     containerNSID: 

containerNSID

 
}); 
 
dataLib.api.traits([

123, 456, 789

]).result(function(json){ 
     //Do something, possibly with the JSON data returned from the server. 
});.submit();


secureDataCollection

secureDataCollection est un paramètre booléen qui contrôle la manière dont DIL effectue les appels vers le Data Collection Servers (DCS) et Akamai.
  • Lorsque secureDataCollection= true (par défaut), DIL effectue toujours des appels HTTPS sécurisés.
  • Lorsque secureDataCollection= false , DIL effectue des appels HTTP ou HTTPS en suivant le protocole de sécurité défini par la page.
Définissez secureDataCollection= false si vous utilisez visitorAPI.js et DIL sur la même page. Consultez l’exemple de code ci-dessous.
var dilInstance = DIL.create({ 
     ... 
     secureDataCollection: false 
});


useCORSOnly

useCORSOnly est un paramètre booléen true/false qui contrôle la manière dont le navigateur demande des ressources à d’autres domaines.
Aperçu
useCORSOnly est définie sur false par défaut. False signifie que le navigateur peut effectuer des vérifications de ressources avec CORS ou JSONP. Cependant, DIL toujours essaie de demander des ressources avec CORS en premier. Il revient à JSONP sur les navigateurs plus anciens qui ne prennent pas en charge CORS. Si vous devez forcer le navigateur à utiliser uniquement CORS, par exemple pour les sites présentant des exigences de sécurité élevées, définissez useCORSOnly:true .
Exemple de code
var dilInstance = DIL.create({ 
     ... 
     useCORSOnly: true 
});


  • Nous vous recommandons de définir useCORSOnly: true uniquement lorsque vous êtes certain que les visiteurs de votre site disposent de navigateurs prenant en charge cette fonctionnalité.
  • Quand useCORSOnly: true , DIL ne lancera pas d’appels d’ID à partir d’Internet Explorer version 9 ou ultérieure.

useImageRequest

Modifie le type de requête en image <img> à partir du script <src> .
Signature de fonction : useImageRequest: function () {}
Vous pouvez associer d’autres appels d’API à cette méthode.
Réponse
Renvoie un objet API de l’ DIL instance active.
Exemple de code
var dataLib = DIL.create({ 
     partner:'

partnerName

', 
     containerNSID: 

containerNSID

 
}); 
 
dataLib.api.traits([

123, 456, 789

]).useImageRequest().submit();