Allonger la durée de session

Le cycle de vie de la session est géré par le Tracking Tag dans le navigateur. La session se termine 30 minutes après le dernier pageview.

Pour gérer la session, le Tag créer le cookie de session _cs_s qui expire 30 minutes après son initialisation. A l’exécution du Tag, il vérifie si le ce cookie existe :

  • si le cookie n’existe pas, le nombre de session est incrémenté (stocké dans le cookie _cs_id) et le cookie est créé.
  • s’il existe déjà, sa date d’expiration est mise à jour (+30 minutes).

Au déclenchement d’un événement pageview naturel ou artificiel, la date d’expiration du cookie _cs_s est mise à jour (+30 minutes).

Lorsque des visiteurs restent sur une page plus de 30 minutes (pour regarder des vidéos, suivre un live feed sportif, ou lire de longs articles…):

  • la session se termine 30 minutes après le dernier pageview
  • après ces 30 minutes, dès que les utilisateurs déplacent leur curseur, scrollent ou rechargent la page, le Tag incrémente le nombre de sessions, définit le cookie de session et envoie un nouveau pageview avec un page number à 1.

Cela implique que ce qui serait considéré comme une session, est en fait découpé en deux sessions distinctes.

Pour étendre artificiellement la durée de session, utilisez la commande extendSession:

<script type="text/javascript">
window._uxa = window._uxa || [];
window._uxa.push(["extendSession"])
</script>

A l’appel de cette commande, le Tag initie un processus qui:

  • ajoute 30 minutes à la date d’expiration du cookie de session _cs_s après l’exécution du processus.
  • envoie une variable dynamique avec la clé session_expiry_update et le nombre d’itération du processus en valeur e.g. {session_expiry_update: 2} de sorte que le pipeline de données Contentsquare ne ferme pas la session.

Ce processus s’exécute toutes les 29 minutes:

  • tant que la durée de session n’a pas atteint 4 heures (durée maximum d’une session), en comptant à partir du début de la session, pas à partir de l’exécution de la commande.
  • jusqu’à ce qu’un nouvel événement pageview soit déclenché (naturel ou artificiel). Le processus s’arrête ensuite et le fonctionnement standard de gestion des sessions reprend.

Grâce à ce processus, la commande ne doit être appelée qu’une seule fois par pageview.

Effacer les données des visiteurs

Section titled Effacer les données des visiteurs

Utilisez la commande session:clear:visitor pour effacer toutes les données liées aux visiteurs précédents :

  • Cvars
  • Consentement
  • Exclusions
  • ID du visiteur
  • Numéro de page
  • Numéro de session

La commande doit être exécutée avant le chargement du Tag :

<script type="text/javascript">
(function () {
window._uxa = window._uxa || [];
window._uxa.push(["session:clear:visitor"]);
var mt = document.createElement("script");
mt.type = "text/javascript";
mt.async = true;
mt.src = "//t.contentsquare.net/uxa/YOUR_TAG_ID.js";
document.getElementsByTagName("head")[0].appendChild(mt);
})();
</script>

Utilisez la commande session:start:newVisitor pour déclencher la création d’un nouveau visiteur.
La commande session:start:newVisitor:

  1. Créé un nouveau visiteur en supprimant puis recréant le cookie _cs_id.
  2. Créé une nouvelle session pour ce visiteur en supprimant puis recréant le cookie _cs_s cookie.
  3. Supprime toutes les informations de session, les cookies et informations liées comme les custom vars, consent le cookie de consentement _cs_c, et ainsi de suite.
  4. Déclenche un nouveau pageview.