> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kameleoon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Créer un déclencheur

> Apprenez à utiliser le Kameleoon Trigger Builder pour définir quand et où une expérience ou une personnalisation doit s'activer en fonction du comportement en temps réel des visiteurs.

Un **déclencheur** définit les conditions spécifiques que les visiteurs doivent remplir pour qu'une expérience ou une personnalisation s'active. Utilisez les déclencheurs pour cibler les visiteurs en fonction de leur comportement en temps réel ou des caractéristiques de leur visite.

## Accéder au Trigger Builder

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/assets/triggers/create-a-trigger/trigger.png)
</Frame>

Pour commencer à créer un nouveau déclencheur :

1. Dans la barre latérale gauche, cliquez sur **Settings** > **Triggers**.
2. Cliquez sur **New trigger**.
3. Dans la fenêtre **New Trigger**, saisissez un nom pour votre déclencheur.
4. Sélectionnez le **Project** que vous souhaitez associer à ce déclencheur.
5. (Facultatif) Ajoutez une description et des tags pour vous aider à organiser vos déclencheurs.
6. Cliquez sur **Next**.

## Définir les conditions

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/assets/triggers/create-a-trigger/trigger-builder.png)
</Frame>

Le Trigger Builder est l'endroit où vous définissez la logique de votre déclencheur. Sélectionnez des conditions dans la barre latérale et configurez la manière dont elles sont liées entre elles.

1. **Sélectionner une condition :** Dans la barre latérale gauche, faites défiler la liste ou utilisez la barre de recherche pour trouver une condition (par exemple, **Number of visits**). Cliquez sur la condition pour l'ajouter au builder.
2. **Configurer la condition :** Saisissez les valeurs pertinentes pour la condition (par exemple, **3 visits**).
3. **Ajouter d'autres conditions :** Pour ajouter une autre couche de ciblage, cliquez sur **Refine** sur une condition existante ou sélectionnez une nouvelle condition dans la barre latérale.

### Gérer la logique (AND/OR)

Lorsque vous utilisez plusieurs conditions, définissez comment elles fonctionnent ensemble à l'aide du menu déroulant en haut du Trigger Builder ou du [groupe de conditions](#créer-des-groupes-complexes) :

* **If all (AND) :** Kameleoon déclenche le trigger uniquement si le visiteur remplit **toutes** les conditions du groupe.
* **If any (OR) :** Kameleoon déclenche le trigger si le visiteur remplit **au moins une** des conditions du groupe.

### Créer des groupes complexes

Regroupez des conditions pour créer une logique avancée (conditions imbriquées).

* **Réorganiser :** Cliquez sur une condition et faites-la glisser pour la déplacer vers le haut ou le bas de la liste.
* **Imbriquer (grouper) :** Cliquez sur une condition et faites-la glisser sur une autre pour les combiner en un sous-groupe avec sa propre logique indépendante (**If any**/**If all**).
  * Par exemple, vous pouvez créer une condition qui cible les visiteurs ayant visité le site trois fois aujourd'hui **AND** consulté une certaine page produit au moins une fois.

### Copier ou supprimer des conditions

* **Copier :** Cliquez sur l'icône **Copy** pour cloner une condition.
* **Supprimer :** Cliquez sur l'icône **X** pour supprimer une condition.

#### Ajouter rapidement des conditions

Vous pouvez ajouter rapidement plusieurs conditions du même type en cliquant sur la petite icône **+** située à droite de la condition. Cette fonctionnalité est disponible pour les conditions fréquemment utilisées en grande quantité.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/assets/triggers/create-a-trigger/specific-ip-address-triggers.png)
</Frame>

Lorsque vous ajoutez plusieurs conditions identiques, Kameleoon les relie avec un opérateur **OR**. Le menu déroulant se met à jour avec **is including any of** ou **is not including any of**.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/assets/triggers/create-a-trigger/any-ip-address-triggers.png)
</Frame>

Une fois que vous avez ajouté plusieurs conditions identiques, vous pouvez les supprimer individuellement.

***

Lorsque vous êtes satisfait de vos conditions, cliquez sur **Next**.

## Vérifier et enregistrer

Après avoir cliqué sur **Next**, un panneau récapitulatif s'ouvre à droite. Vérifiez les paramètres et la définition.

* **Settings :** Affiche le nom du déclencheur, le projet, le type de campagne, la description et les tags. Cliquez sur l'icône **pencil** pour modifier l'un de ces paramètres, puis cliquez sur **Save changes**.
* **Definition :** Affiche la définition de votre déclencheur. Vous pouvez voir un résumé visuel sous l'onglet **Block Summary** ou un résumé textuel sous l'onglet **Written Summary**.

Cliquez sur **Create trigger** pour terminer.

***

Une fois votre déclencheur enregistré, il devient disponible pour une utilisation dans les expériences et les personnalisations.

## Conditions

Cette section fournit une liste complète des conditions disponibles et de leurs fonctions.

### Page

* **Page URL :** inclut ou exclut les visiteurs en fonction de l'URL de leur page actuelle.
* **Element on the page :** inclut ou exclut les visites en fonction de la présence d'un élément sur la page. La condition exécute une boucle `querySelectorAll` **jusqu'à l'événement DOM ready. Après cela, la condition renvoie `false`.**
* **Landing Page URL :** inclut ou exclut les visiteurs en fonction de l'URL de la page où leur visite a commencé.
* **Page Title :** inclut ou exclut les visiteurs en fonction du titre de leur page actuelle.
* **Previous page :** inclut ou exclut les visiteurs en fonction de l'URL de leur page précédente.
* **Key pages :** inclut ou exclut les visiteurs ayant consulté des pages spécifiques que vous avez définies comme pages clés.
* **Visited product pages :** inclut ou exclut les visiteurs en fonction des pages produits qu'ils ont visitées et de leur nombre.
* **Price of the product page displayed :** inclut ou exclut les visiteurs en fonction du prix du produit qu'ils consultent actuellement.

### Comportement de navigation

* **Elapsed time since page loaded :** inclut ou exclut les visiteurs en fonction du temps écoulé depuis le chargement de la page.
* **Website exit :** inclut ou exclut les visiteurs dont le curseur a quitté la fenêtre du navigateur. Utilisez la condition Website exit pour afficher du contenu axé sur la rétention—comme une offre de réduction ou un formulaire d'inscription par e-mail—avant qu'un visiteur ne quitte votre site. Pour un exemple pas à pas, consultez [Créer un widget d'intention de sortie](../widgets/create-a-widget-with-the-widget-studio/create-an-exit-intent-widget).
* **Number of pages viewed :** inclut ou exclut les visiteurs ayant vu un certain nombre de pages.
* **Total number of visits :** inclut ou exclut les visiteurs en fonction du nombre total de leurs visites.
* **Number of visits by page :** inclut ou exclut les visiteurs en fonction du nombre de visites d'une page spécifique.
* **Number of visits today :** inclut ou exclut les visiteurs en fonction de leur nombre de visites aujourd'hui.
* **Number of visited product pages :** inclut ou exclut les visiteurs en fonction du nombre de pages produits qu'ils ont consultées.
* **Elapsed time :** inclut ou exclut les visiteurs en fonction du temps écoulé pendant la session.
* **Elapsed time since first visit :** inclut ou exclut les visiteurs en fonction du temps écoulé depuis leur première visite.
* **Elapsed time since last visit :** inclut ou exclut les visiteurs en fonction du temps écoulé depuis leur dernière visite.
* **Elapsed time since session became active :** inclut ou exclut les visiteurs en fonction du temps écoulé depuis le début de la session.

### Exposition à la campagne

* **Web Experiment :** inclut ou exclut les visiteurs ayant été exposés à une expérience spécifique et ayant vu une **variation spécifique** OU **une des variations** (l'originale incluse). La condition prend en compte les visites actuelles ou précédentes. L'expérience sélectionnée peut être **Online**, **Paused** ou **Stopped**.
* **Personalization :** inclut ou exclut les visiteurs ayant été exposés à une personnalisation spécifique. La condition prend en compte les visites actuelles ou précédentes. La personnalisation sélectionnée peut être **Online**, **Paused** ou **Stopped**.
* **Feature Flag :** inclut ou exclut les visiteurs ayant été exposés à un feature flag spécifique et ayant vu **l'une des variations**, **On** ou **Off**, et ayant été assignés à **n'importe quelle variation** ou à une **variation spécifique**.
* **Exclusive Campaign :** exclut les visiteurs participant déjà à une expérience, à une personnalisation, ou aux deux, ce qui signifie que :
  * Si un visiteur a déjà été exposé à une autre campagne (lors d'une visite actuelle ou précédente), Kameleoon ne le ciblera pas dans l'expérience en cours.
  * Un visiteur peut être ciblé par d'autres expériences qui n'ont pas la condition **Exclusive campaign**, même s'il participe actuellement à une campagne exclusive. Autrement dit, cette condition n'empêche pas la participation à d'autres expériences. Elle permet aux visiteurs de participer à des expériences qui n'ont pas la même exigence d'exclusivité.

<Note>
  Kameleoon empêche la suppression des campagnes ou des variations utilisées comme conditions de ciblage dans un segment.
</Note>

### Conversions

* **Converted goal :** inclut ou exclut les visiteurs selon qu'ils ont converti sur un certain objectif lors de la visite en cours ou lors de visites précédentes.

### Technique

* **Custom JS :** Définissez une fonction JavaScript personnalisée qui retourne `true` ou `false`. Si le résultat est `true`, Kameleoon inclut le visiteur dans l'expérience. Cette fonction peut être évaluée à chaque affichage de la page, ou de manière asynchrone.
  * **Check condition immediately or when the page has loaded :** Si `undefined` est renvoyé, le code réessaiera son exécution toutes les 75 ms pendant les 3 premières secondes, puis toutes les 250 ms.
  * **Run the condition asynchronously :** Kameleoon évalue votre JavaScript pour chaque expérience.
  * Si vous utilisez la condition asynchrone, la fonction de callback est `setTargeting`. Remplacez-la dans le code par `setTargeting(true)` ou `setTargeting(false)`.
* **Custom data :** inclut ou exclut les visiteurs en fonction de données personnalisées spécifiques. Pour utiliser cette condition, vous devez d'abord [créer des données personnalisées](../custom-data/create-custom-data).
* **Custom event :** démarre une personnalisation uniquement lorsqu'un événement spécifique a été déclenché. Pour déclencher un événement, utilisez la méthode [`Kameleoon.API.Events.trigger(eventName)`](../../../developer-docs/apis/activation-api-js/api-reference/api-reference#trigger).
* **Browser cookie :** inclut ou exclut les visiteurs en fonction de la présence d'un cookie dans leur navigateur et de sa valeur.
* **Explicit trigger :** déclenche explicitement une campagne en utilisant la Kameleoon Activation API. Utilisez les déclencheurs explicites pour les campagnes que vous implémentez avec un framework JS moderne (par exemple, React, Vue, Angular).
* **Kameleoon trigger :** inclut ou exclut les visiteurs selon qu'ils ont déclenché un autre déclencheur.

### Acquisition

* **Traffic type :** inclut ou exclut les visiteurs provenant de sources spécifiques (par exemple, moteur de recherche, e-mailing, site tributaire).
* **Referring Website URL :** inclut ou exclut les visiteurs en fonction de l'URL de provenance.
* **Acquisition channel :** inclut ou exclut les visiteurs en fonction de leur canal d'acquisition.

### Environnement externe

* **Day / Night :** inclut ou exclut les visites pendant le jour ou la nuit.
* **Weekday :** inclut ou exclut les visiteurs un jour spécifique de la semaine.
* **Timeslot :** inclut ou exclut les visiteurs dans une plage horaire donnée.
* **Date range :** inclut ou exclut les visiteurs du site Web pendant une plage de dates donnée.
* **Sky condition :** inclut ou exclut les visiteurs en fonction de la météo dans leur localisation.
* **Temperature :** inclut ou exclut les visiteurs en fonction de la température de leur localisation.
