Catégorie : Test AB
Cette intégration est uniquement disponible pour les projets Web
À quoi s'attendre
Avec l'intégration de Dynamic Yield avec Contentsquare, vous pouvez plonger plus profondément dans les principaux moteurs qui influencent le comportement des visiteurs sur vos propriétés digitales. Avec les Heatmaps par zone de Contentsquare et l'analyse de parcours, vous pouvez mieux comprendre pourquoi chaque expérience et variation de Dynamic Yield a fonctionné comme elle l'a fait, comment cela a impacté le parcours de vos clients, ainsi que fournir des insights supplémentaires sur la manière d'itérer et de mettre à jour vos efforts de personnalisation pour chaque segment de client. Profitez de l'intégration Dynamic Yield & Contentsquare pour :
- Accéder aux Heatmaps par zone pour attribuer correctement les conversions et les revenus aux éléments réussis de vos campagnes de personnalisation.
- Obtenir des métriques comportementales propriétaires pour chaque élément de la page afin d'éclairer la portée moyenne de défilement de la page et les niveaux d'engagement de chaque élément.
- Utiliser les funnels de conversion et l'analyse de parcours pour comprendre comment chaque expérience a impacté le parcours de vos clients à travers vos propriétés digitales.
Ce que nous collectons
Variables Dynamiques
Clé | Valeur | Type de Données |
AB_DY_{Nom de la Campagne} | Variation : 1 | Texte |
AB_DY_{ID de l'Audience} | vrai | Texte |
Mise en œuvre
Étapes de Mise en œuvre
Il existe 2 solutions parmi lesquelles choisir. L'une est côté client, l'autre est côté serveur.
Veuillez utiliser la section pertinente ci-dessous.
Solution Côté Client
Capture des Campagnes
Remarque : si vous aviez déjà une version précédente du code d'intégration Contentsquare installée, vous devrez la désactiver, sinon passez cette partie.
Pour désactiver l'ancienne version, accédez à l'onglet Extensions et définissez Intégration de la Plateforme Analytics comme inactif OU si vous avez besoin de certaines parties pour fonctionner, alors modifiez-le et retirez le code d'intégration Contentsquare.
Capture des Audiences
- N'hésitez pas à ajuster le code selon vos besoins en termes de timing pour vous assurer que la fonction DY.ServerUtil.getUserAudiences est disponible avant que le code ne s'exécute. Il est recommandé d'injecter ce code après Dynamic Yield.
- Veuillez ne pas changer la variable tvp car il s'agit d'un préfixe requis qui doit rester le même.
- La limite dans le code est fixée à 20 et il n'est pas du tout recommandé d'augmenter cette limite car il y a une limite sur le nombre de variables dynamiques pouvant être envoyées à Contentsquare par page vue, donc vous pourriez atteindre cette limite plus rapidement si vous avez d'autres intégrations activées qui utilisent également des variables dynamiques.
- Il est recommandé d'ajuster le code pour permettre l'envoi de certains ID d'Audience, ceux qui vous intéressent principalement. Vous pouvez y parvenir en ajoutant les ID d'Audience au tableau allowList dans le code. Vous pouvez trouver ces ID dans l'URL de votre IU Dynamic Yield où vous avez créé les audiences.
Ajoutez-les sous forme de nombres séparés par des virgules.
Par exemple : var allowList = [1323949, 894638, 738182];
/* *Nom : Intégration CS d'ID d'Audience Dynamic Yield *Version : 1.0.0 */ var tvp = "AB_DY_"; function sendToCS(csKey, csValue) { csKey = tvp + csKey; _uxa.push([ "trackDynamicVariable", { key: csKey, value: csValue, }, ]); } var counter = 0; var limit = 20; //Ajoutez vos ID d'Audience au tableau ci-dessous avec des valeurs numériques séparées par des virgules. Vous pouvez trouver ces valeurs dans l'URL de votre IU Dynamic Yield. var allowList = []; function csCallback() { if (!disableCallback) { disableCallback = true; setTimeout(function () { if (window.DY && DY.ServerUtil && typeof DY.ServerUtil.getUserAudiences === "function") { var getAudiences = DY.ServerUtil.getUserAudiences(); for (var i = 0; i < getAudiences.length; i++) { if (allowList.includes(getAudiences[i])) { var audienceID = "ID d'Audience : " + getAudiences[i]; var value = "true"; counter++; if (counter <= limit) { sendToCS(audienceID, value); } } } } }, 500); } } window._uxa = window._uxa || []; var disableCallback = false; _uxa.push(["afterPageView", csCallback]); // Fin de l'intégration CS d'ID d'Audience Dynamic Yield
Solution côté serveur
Ajoutez et modifiez le code suivant dans le code côté serveur de votre serveur web qui a la réponse de l'API côté serveur de Dynamic Yield.
Notez que dans le code ci-dessous, la seule partie que vous devez modifier est celle où vous voyez le [DY_RESPONSE_OBJECT] section qui n'est pas un véritable objet. Cela doit être remplacé par la véritable réponse d'objet qui est revenue de l'API de Dynamic Yield. Ce code est tout en JavaScript et doit être rendu dans la réponse du serveur vers votre site à chaque page vue et pour chaque test. Veuillez ne pas modifier toute autre logique de code au-dessus de cela.
/* *Nom: Intégration CS de Dynamic Yield - Côté Serveur *Version: 1.0.0 */ var version = "1.0.0"; var tvp = "AB_DY_SS_"; window._uxa = window._uxa || []; function sendToCS(csKey, csValue) { csKey = tvp + csKey; _uxa.push([ "trackDynamicVariable", { key: csKey, value: csValue, }, ]); } //Remplacez [DY_RESPONSE_OBJECT] par la réponse réelle de DY qui contient les propriétés requises var choices = [DY_RESPONSE_OBJECT].choices; if (choices) { for (var i = 0; i < choices.length; i++) { var variations = choices[i].variations; var analyticsMetadata = variations[0] && variations[0].analyticsMetadata; if (analyticsMetadata) { var campaignName = analyticsMetadata.campaignName; var variationName = analyticsMetadata.variationName; if (campaignName && variationName) { sendToCS(campaignName, variationName); } } } } function callback() { if (!disableCallback) { disableCallback = true; if (window.CS_CONF) { CS_CONF.integrations = CS_CONF.integrations || []; CS_CONF.integrations.push("Dynamic Yield Côté Serveur - v" + version); } } } var disableCallback = false; _uxa.push(["afterPageView", callback]); //Intégration CS de Dynamic Yield Fin
Vérification du bon fonctionnement
Vous pouvez utiliser l'extension chrome pour vérifier que les résultats sont envoyés à CS