> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.poool.fr/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Envoyer un tracking personnalisé avec les événements Poool Engage

###### Sur Poool Engage, le tracking personnalisé repose sur l’utilisation des événements exposés par la solution.
Lors du chargement du SDK Engage et des interactions utilisateur (affichage de l'élément, clics, formulaires, etc.), Poool déclenche automatiquement des événements contenant les données associées à chaque action.

## Principe et Fonctionnement

Vous pouvez écouter les événements depuis votre intégration afin de récupérer les informations liées aux éléments et aux actions des utilisateurs, puis les utiliser pour envoyer un tracking personnalisé vers vos outils (analytics, dataLayer, CRM, etc.).
Poool détecte automatiquement les interactions et vous permet d’exploiter ces données selon vos besoins.

Depuis votre intégration, vous pouvez vous brancher sur les événements Poool Engage via la méthode `.on()`.
Cela vous permet de :
* détecter les actions des éléments Engage et des utilisateurs en temps réel
* récupérer les données associées à ces actions
* envoyer un tracking personnalisé selon vos besoins

## Arguments des événements

Chaque événement retourne un objet d’arguments contenant les données liées à l’action déclenchée.
Ces arguments ne sont pas identiques pour tous les événements : ils varient en fonction du type d’événement.
Par exemple :
* un événement de clic retourne des informations liées à l’élément cliqué ou au block
* un événement de formulaire retourne des informations liées aux champs et à la soumission
* un événement de vue retourne des données de contexte (élément, page, état, visibilité)
Chaque événement dispose donc de sa propre structure d’arguments, que vous pouvez exploiter pour adapter votre tracking.

## Exemple : tracker un clic sur un élément

```
engage.on('click', (event) => {
  console.log('Utilisateur a interagi avec Engage', event)

  // Exemple Google Analytics (GA4)
  gtag('event', 'engage_click', {
    element: event.element,
    type: event.type
  })

  // Exemple Google Tag Manager (dataLayer)
  window.dataLayer = window.dataLayer || []
  window.dataLayer.push({
    event: 'poool_engage_click',
    element: event.element,
    type: event.type
  })
})
```

L’événement `click` est déclenché lorsqu’un utilisateur interagit avec un élément d’Engage.
Il retourne ici un objet `event` contenant les informations liées à l’élément cliqué.

## Accéder à la liste complète des événements

Voici les événements principaux disponibles dans Poool Engage :
* `ready` : lorsque l'élément Engage est chargé et prêt
* `seen` : lorsque l'élément devient visible dans le viewport
* `click` : clic sur l'élément
* `formSubmit` : soumission d’un formulaire dans un widget Engage
* `destroy` : clique sur un bouton / image configuré pour détruire l'élément
* `error` : erreur SDK ou de l'élément

Pour consulter l’ensemble des événements disponibles ainsi que les données associées, vous pouvez vous référer à la documentation officielle :
https://www.poool.dev/fr/docs/engage/javascript/events#click
## Bonnes pratiques

* Vérifiez que votre script de tracking est chargé avant d’écouter les événements
* Testez vos événements en environnement de staging
* Utilisez `console.log` pour valider les données reçues
* Adaptez votre tracking selon les éléments

