Hits hors connexion

 

Avant-propos

Avant de commencer l’implémentation du plugin Offline, veuillez-vous assurer d’avoir initialisé le Tracker JavaScript AT Internet et sélectionné le plugin depuis l’interface Tag Composer.

 

Principe

Le plugin Offline vous permet de sauvegarder sur le navigateur de l’utilisateur les hits qui n’ont pu être envoyés suite à la perte de connexion Internet. Le plugin utilise pour cela la fonctionnalité localStorage disponible dans les navigateurs les plus récents. L’état de la connexion Internet (navigateur en ligne ou non) est quant à lui déterminé par la propriété online du navigateur disponible en HTML5.

Ce plugin est donc dédié à une utilisation dans une application en HTML5 avec support du localStorage.

L’utilisation de cette fonctionnalité est soumise à la souscription d’une option. Cette fonctionnalité est susceptible d’augmenter l’espace de stockage utilisé sur le navigateur de l’utilisateur.

 

Configuration du mode de stockage

Le mode de gestion du stockage est directement configurable depuis l’interface Tag Composer ou via la configuration, à l’initialisation du Tracker.

Trois modes sont disponibles :

  • required (par défaut) : Les hits ne sont stockés que lorsqu’une perte de connexion est détectée.
  • always : Les hits ne sont jamais envoyés. Ils sont directement stockés sur le navigateur.
  • never : Les hits ne sont jamais stockés. Si une perte de connexion est détectée en même temps que la tentative d’envoi d’un hit, celui-ci sera perdu.

Pour modifier le mode de stockage des hits, ajouter le code suivant à l’endroit souhaité :

Sauvegarder les hits lors de la perte de connexion :

var config = {Offline: {storageMode: 'required'}};
var tag = new ATInternet.Tracker.Tag(config);

Toujours sauvegarder les hits :

var config = {Offline: {storageMode: 'always'}};
var tag = new ATInternet.Tracker.Tag(config);

Ne jamais sauvegarder les hits :

var config = {Offline: {storageMode: 'never'}};
var tag = new ATInternet.Tracker.Tag(config);
 

Envoi des hits sauvegardés

Vous pouvez à tout moment (si une connexion Internet est établie), demander l’envoi des hits stockés.

Pour cela, le Tracker expose un objet offline proposant une méthode send :

tag.offline.send();

Cette méthode envoie l’ensemble des hits stockés et les supprime du localStorage après chaque envoi.

Vous pouvez, grâce à cette méthode, décider du moment d’envoi de vos hits. En configurant le mode de stockage à always il vous suffira ensuite d’appeler la méthode send pour déclencher l’envoi au moment souhaité.

 

Récupération des hits

Vous pouvez à tout moment récupérer la liste des hits sauvegardés. Pour cela, la méthode get de la classe offline est mise à disposition dans le Tracker.

var hits = tag.offline.get();

Cette méthode retourne un tableau d’URL.

 

Taille de stockage

Vous pouvez à tout moment obtenir le nombre de hits stockés dans le localStorage du navigateur.

var count = tag.offline.get().length;

Vous pouvez aussi obtenir la taille (en octets) estimée des hits stockés dans le localStorage du navigateur. Pour cela, la classe offline expose une méthode getLength :

var length = tag.offline.getLength();

La taille de stockage vaut 1Mo par défaut. Vous pouvez modifier cette valeur depuis l’interface Tag Composer ou via la configuration, à l’initialisation du Tracker :

var config = {Offline: {storageCapacity: 1}};
var tag = new ATInternet.Tracker.Tag(config);
 

Suppression des hits

Vous pouvez supprimer manuellement l’ensemble des hits stockés grâce à la méthode remove :

tag.offline.remove();

 

Dernière mise à jour : 08/12/2017