Envoyer des événements

Ce guide n'est disponible que pour des analyses sur Piano Analytics

Veuillez vérifier le tableau de compatibilité

 

Avant-propos

Le Tracker dispose de méthodes techniques de marquage d’événements utiles pour compléter les fonctionnalités de base des SDK.

Ces méthodes sont disponibles pour les SDK :

  • JavaScript à partir de la version 5.21.0
  • Android à partir de la version 2.17.0
  • Apple à partir de la version 2.18.0
 

Méthodes de marquage

Le Tracker expose des fonctions permettant l’envoi d’événements personnalisés :

  • tag.events.send pour un envoi indépendant d’un événement,
  • tag.events.add et tag.dispatch pour un envoi groupé d’un événement avec d’autres marqueurs.
  • tracker.events.add et tracker.dispatch pour un envoi groupé d’un événement avec d’autres marqueurs.
  • tracker.Events().add et tracker.dispatch pour un envoi groupé d’un événement avec d’autres marqueurs.
 

send

events.send(name, data, options)

Envoyer un événement de façon indépendante.

ParamTypeDescription
namestringNom de l’événement
dataobjectContenu de l’événement
optionsobjectEléments de configuration techniques du Tracker pour l’envoi

Le paramètre options permet de déclarer des propriétés utiles pour la gestion automatique des clics ou encore pour l’exécution automatique d’une méthode après envoi du hit.

Il accepte donc trois propriétés telles que :

  • elem correspondant à l’élément du DOM marqué,
  • event correspondant à l’événement de clic,
  • callback correspondant à une fonction personnalisée à exécuter après envoi.

Exemple de marquage

tag.events.send('product.display',
     {
        'placement': 'homepage_slider',
        'product': {
            'id': 'id1',
            'name': 'name1',
            'brand': 'brand1',
            'original_price': 16.50,
            'price': 14.00,
            'currency': 'EUR',
            'stock': true,
            'category1': 'category1',
            'category2': 'category2',
            'position': 1
        }
     },
     {
        elem: this, // (optional) Tagged DOM element
        event: event, // (optional) JavaScript event (prevent event propagation)
        callback: callback // (optional) function to execute
     });


Pas d’équivalence.


Pas d’équivalence.

 

add / dispatch

events.add(name, data)

Ajouter un événement pour un envoi groupé.

ParamTypeDescription
namestringNom de l’événement
dataobjectContenu de l’événement

Exemple de marquage

tag.page.set({'name': 'homepage'});
tag.events.add('product.display',
     {
        'placement': 'homepage_slider',
        'product': {
            'id': 'id1',
            'name': 'name1',
            'brand': 'brand1',
            'original_price': 16.50,
            'price': 14.00,
            'currency': 'EUR',
            'stock': true,
            'category1': 'category1',
            'category2': 'category2',
            'position': 1
        }
     });
tag.dispatch();
events.add(name, data)

Ajouter un événement pour un envoi groupé.

ParamTypeDescription
nameStringNom de l’événement
data[String : Any]Contenu de l’événement

Exemple de marquage

tracker.screens.add("homepage")
_ = tracker.events.add(name: "product.display", data:
[
    "placement": "homepage_slider",
    "product":
    [
        "id": "id1",
        "name": "name1",
        "brand": "brand1",
        "original_price": 16.50,
        "price": 14.00,
        "currency": "EUR",
        "stock": true,
        "category1": "category1",
        "category2": "category2",
        "position": 1
    ]
])
tracker.dispatch()
Events().add(name, dataObject)

Ajouter un événement pour un envoi groupé.

ParamTypeDescription
nameStringNom de l’événement
dataObjectMap<String, Object>Contenu de l’événement

Exemple de marquage

tracker.Screens().add("homepage");
tracker.Events().add("product.display", new HashMap<String, Object>() {{
	put("placement", "homepage_slider");
	put("product", new HashMap<String, Object>() {{
	    put("id", "id1");
	    put("name", "name1");
	    put("brand", "brand1");
	    put("original_price", 16.50);
	    put("price", 14.00);
	    put("currency", "EUR");
	    put("stock", true);
	    put("category1", "category1");
	    put("category2", "category2");
	    put("position", 1);
    }});
}});
tracker.dispatch();