This documentation is currently under development. Certain sections are not yet complete and will be added shortly.
For the complete documentation index, see llms.txt. This page is also available as Markdown.

Extensibilité

Personnalisation avancée du connecteur pour la résolution des contacts, la transformation des événements et le mappage des données.

L’extensibilité personnalise la façon dont le connecteur résout les contacts, mappe les champs et formate les événements. Elle est principalement utilisée par les équipes techniques lorsque le comportement par défaut ne correspond pas au modèle de données.

Configuration

L’extensibilité est configurée dans la console d’administration de The Wallet Crew. Chaque point d’entrée est un script JavaScript stocké dans le connecteur Bloomreach Paramètres avancés.

La préproduction est le point de départ recommandé. Cela réduit le risque de perturber la segmentation de production et les déclencheurs de scénario.

1

Ouvrez les paramètres avancés du connecteur Bloomreach

Ouvrez la page des paramètres avancés

Chaque point d’entrée a son propre emplacement de script :

  • Contact Finder

  • Event Interceptor

  • Customer Mapper

2

Commencez par le changement le plus petit possible

Contact Finder est généralement implémenté en premier lorsque l’e-mail n’est pas l’identifiant principal. Event Interceptor est généralement implémenté en premier lorsque la nomenclature des événements ou la gouvernance est requise.

Limiter les changements facilite l’isolation des problèmes d’attribution et d’ingestion.

3

Validez le comportement de bout en bout

La validation couvre généralement les deux sens du connecteur :

  • Une activité fonctionne toujours (Mettre à jour la Carte / Notifier / Appliquer le privilège).

  • Un événement est toujours attribué au contact Bloomreach attendu.

Lorsque Event Interceptor est utilisé, la validation doit confirmer le nom final de l’événement et les propriétés visibles dans Bloomreach.

4

Déployez en production et surveillez

Une fois que le comportement en préproduction correspond aux attentes, les mêmes scripts peuvent être appliqués à la production. Lorsque les événements sont utilisés comme déclencheurs de scénario, un déploiement pendant une fenêtre de changement est recommandé.

Points d’entrée de l’extensibilité

Les scripts du connecteur sont configurés dans les paramètres avancés du connecteur Bloomreach dans la console d’administration de The Wallet Crew.

Contact Finder

Une Carte est liée à des identifiants externes (e-mail, téléphone, ID membre, ...). Lorsqu’un événement se produit sur une Carte, le connecteur doit l’associer à un contact Bloomreach.

Contact Finder personnalise la façon dont ces identifiants sont convertis en identifiants de contact Bloomreach.

/**
 * Récupérer l’identifiant de contact à partir des identifiants de la Carte afin de déterminer le contact Bloomreach d’une Carte.
 * L’implémentation par défaut utilise l’e-mail comme identifiant enregistré
 *
 * Cette méthode est asynchrone, ce qui permet d’appeler des services web externes si nécessaire.
 *
 * @param {Record<string, any>} identifiers - Paires clé-valeur des identifiants de la Carte
 * @returns {Promise<Record<string, string>>} Objet avec la clé 'registered' contenant l’identifiant de contact côté Bloomreach
 */
async function getContactIdentifiers(identifiers) {
  // Exemple : utiliser l’e-mail comme identifiant de contact
  // il s’agit de l’implémentation par défaut
  return { "registered": identifiers["email"] };
}

export default function (context) {
  context.register('extensions.bloomreach.contactFinder', {
    GetContactIdentifiers: getContactIdentifiers
  });
}

Event Interceptor

Event Interceptor peut transformer eventName et properties avant d’envoyer l’événement à Bloomreach. C’est utile pour les conventions de nommage, le filtrage et l’enrichissement.

En renvoyant null supprime l’événement.

Customer Mapper

Customer Mapper personnalise le mappage entre les champs du formulaire d’inscription de The Wallet Crew et les champs Bloomreach. Cela est utilisé lorsque des données sont envoyées vers Bloomreach ou récupérées depuis Bloomreach avec des composants comme PassDataProvider et CustomerFlowElement.

FAQ

Contact Finder peut-il appeler des services externes ?

Oui. Contact Finder est asynchrone et peut appeler des services externes si nécessaire.

C’est généralement utilisé lorsque l’identifiant de contact Bloomreach n’est pas stocké directement sur la Carte. Les schémas courants incluent la résolution d’un memberId en un e-mail, ou le mappage de plusieurs identifiants vers un seul identifiant Bloomreach « registered ».

Un événement peut-il être supprimé avant d’atteindre Bloomreach ?

Oui. Event Interceptor peut renvoyer null pour omettre un événement.

C’est utile pour la gouvernance et la réduction du bruit. Les exemples incluent le filtrage des événements de scan des Cartes de test, la suppression des propriétés sensibles ou l’ignorance des événements à fort volume qui ne sont pas exploitables dans Bloomreach.

Quand Customer Mapper est-il utilisé ?

Customer Mapper est utilisé lorsque les données Bloomreach sont lues ou écrites via des composants du connecteur. Les points d’entrée typiques sont PassDataProvider (lecture) et CustomerFlowElement (écriture).

Il n’est pas utilisé par chaque activité. Par exemple, l’envoi d’un message Notify ne nécessite pas Customer Mapper, sauf si les propriétés Bloomreach sont aussi utilisées comme source de données pour le rendu de la Carte.

Customer Mapper est l’endroit approprié pour harmoniser les conventions de nommage, les formats de données et les champs facultatifs. Il aide aussi à garder les modèles de Carte stables lorsque les noms des champs Bloomreach changent.

Mis à jour