Integra Connectif con Empathy per utilizzare i dati di ricerca generati da ogni contatto nei workflow di Connectif.
In questo articolo, imparerai come integrare Empathy con Connectif e come salvare nei campi personalizzati del contatto i filtri di ricerca di prezzo minimo e massimo
Perché implementare l'estensione
1. Casi d'uso che puoi creare dopo questa integrazione
Ecco alcune idee che possono aiutarti a implementare diverse strategie nell'applicazione di Empathy dopo aver attivato l'estensione con Empathy nel tuo negozio Connectif.
- Includere un raccomandatore nel tuo sito web con prodotti popolari nel tuo eCommerce che si trovano nella stessa fascia di prezzo indicata dal contatto in Empathy.
- Inviare un'email con prodotti raccomandati che rientrano nella stessa fascia di prezzo ai contatti che hanno effettuato una ricerca in Empathy e non hanno fatto nulla di più.
2. Quali dati puoi importare da Empathy a Connectif?
Con questa estensione, Connectif riceverà da Empathy le seguenti informazioni:
- Il termine di ricerca che un contatto utilizza in Empathy.
- La limitazione del prezzo minimo e massimo, filtrata dal contatto nella sua ricerca.
PASSO 1: Creazione dell'integrazione personalizzata in Connectif
1. Accedi a Impostazioni del negozio nel menu laterale sinistro.
2. Nel selettore di schede, vai su "Integrazioni > Integrazioni personalizzate (webhook)" e fai clic su Crea nuova integrazione.
3. Imposta il campo "Nome dell'integrazione" per identificare l'integrazione.
4. (Opzionale) Personalizza il colore, aggiungi una descrizione o categorizza l'integrazione.
5. Fai clic su Salva.
PASSO 2: Creazione dell'evento di ricezione
2.1. Creazione dell'evento di ricezione della ricerca, del prezzo e del marchio
(In questa sezione, spieghiamo come creare e configurare l'evento che verrà ricevuto da Empathy).
6. Nella scheda Ricevi dati, fai clic su Crea nuovo evento di ricezione e seleziona il tipo Web/App mobile.
7. Assegna un nome e l'alias "empathy-search".
8. Fai clic su Aggiungi un nuovo campo per creare ciascuno dei campi personalizzati e completa le sue informazioni:
- Crea un campo con il nome "PriceFrom" e l'ID "priceFrom" di tipo Decimale per raccogliere il delimitatore del prezzo minimo.
- Crea un campo con il nome "PriceUpTo" e l'ID "priceUpTo" di tipo Decimale per raccogliere il delimitatore del prezzo massimo.
9. Fai clic su Salva.
PASSO 3: Creazione del workflow per attivare l'evento durante la navigazione del contatto
(In questa sezione, creeremo il workflow che raccoglierà l'attività del contatto durante la sua navigazione nel motore di ricerca Empathy all'interno dell'eCommerce. Questa attività sarà raccolta tramite uno script che sarà inserito nell'eCommerce tramite un inline).
10. Vai su Workflows e crea un nuovo workflow vuoto.
11. Nella configurazione del nodo "Inizio", nella zona Scegli una limitazione, seleziona Tutta la mia lista e, in Scegli una fonte di dati seleziona Tutti gli esistenti e i nuovi.
12. Aggiungi il nodo di attivazione "Alla visita della pagina" perché il workflow si attivi quando un contatto visita il sito web.
13. Accedi alla sua configurazione e, nella scheda Limitazioni, rimuovi tutte le limitazioni.
14. Aggiungi il nodo "Invia contenuto web" per inserire lo script che verificherà l'attività del contatto in Empathy.
15. Accedi alla sua configurazione e crea un nuovo contenuto di tipo Inline.
16. Nell'editor di contenuti, aggiungi un componente di tipo HTML.
17. Modificalo, copiando e incollando il seguente codice:
<script>
(function () {
var searchEventAlias = "empathy-search";
var tempQuery = null;
var tempPriceFrom = null;
var tempPriceUpTo = null;
function sendConnectifEventsWhenReady(events) {
if (
window.connectif &&
window.connectif.managed &&
window.connectif.managed.isInitialized()
) {
window.connectif.managed.sendEvents(events);
} else {
document.addEventListener(
"connectif.managed.initialized",
function onConnectifInitialized() {
window.connectif.managed.sendEvents(events);
},
{ once: true }
);
}
}
function debounce(func, timeout) {
var timer;
return function (data) {
if (timer) {
clearTimeout(timer);
}
timer = setTimeout(function () {
func(data);
}, timeout);
};
}
function isInterfaceXDefined() {
return !!window.InterfaceX;
}
function whenInterfaceXReady() {
if (isInterfaceXDefined()) {
return Promise.resolve();
}
var numberOfChecks = 50;
var count = 0;
return new Promise((resolve, reject) => {
function check() {
setTimeout(function () {
if (isInterfaceXDefined()) {
resolve();
} else {
count++;
if (count === numberOfChecks) {
reject(new Error("InterfaceX cannot found after timeout"));
} else {
check();
}
}
}, 100);
}
check();
});
}
whenInterfaceXReady()
.then(function onInterfaceXDefined() {
window.InterfaceX.bus.on("SearchResponseChanged", true).subscribe(
debounce(function onSearch(payload) {
var data = payload.eventPayload.request;
// ignore page navigation
if (data.page > 1) {
return;
}
var priceFrom =
(data &&
data.filters &&
data.filters.facetPrice &&
data.filters.facetPrice[0] &&
data.filters.facetPrice[0].range &&
data.filters.facetPrice[0].range.min) ||
null;
var priceUpTo =
(data &&
data.filters &&
data.filters.facetPrice &&
data.filters.facetPrice[0] &&
data.filters.facetPrice[0].range &&
data.filters.facetPrice[0].range.max) ||
null;
var query = data.query;
var queryHasChanged = query !== tempQuery;
var priceRangeHasChanged =
priceFrom !== tempPriceFrom || priceUpTo !== tempPriceUpTo;
if (!queryHasChanged && !priceRangeHasChanged) {
return;
}
tempQuery = query;
tempPriceFrom = priceFrom;
tempPriceUpTo = priceUpTo;
function trackSearch() {
var events = [];
if (queryHasChanged) {
events.push({
type: "search",
searchText: query,
});
}
if (priceRangeHasChanged) {
events.push({
type: "custom",
eventAlias: searchEventAlias,
payload: {
priceFrom: priceFrom || 0,
priceUpTo: priceUpTo || 0,
},
});
}
sendConnectifEventsWhenReady(events);
}
trackSearch();
}, 1000)
);
})
.catch(console.error);
})();
</script>
18. Salva il contenuto e continua per terminare la configurazione del nodo.
19. Seleziona il contenuto Inline che hai appena creato e fai clic su Successivo .
20. Nella schermata successiva, aggiungi il selettore appropriato per visualizzare il contenuto. Deve essere un elemento che si trova nella tua pagina. Nel nostro esempio, abbiamo posizionato il selettore nel footer della pagina, per fare in modo che il contenuto, cioè lo script, venga sempre attivato.
21. Nella scheda Limitazioni, rimuovi tutte le limitazioni del nodo e salva la configurazione del nodo.
22. Salva e attiva il Workflow.
PASSO 4: Archiviazione delle informazioni nella scheda del contatto Connectif
4.1. Creazione di campi personalizzati in Connectif
(In questa sezione, creeremo campi personalizzati che raccoglieranno le informazioni inviate da Empathy, come il marchio e i filtri di prezzo massimo e minimo utilizzati dal contatto durante la navigazione).
23. Vai su "Contatti > Campi del contatto" e fai clic su Aggiungi nuovo campo personalizzato.
24. Assegna il tipo Decimale e fai clic su Vai all'editor.
27. Assegna il Nome "priceFrom" e l'ID "priceFrom" e fai clic su Salva. Questo valore raccoglierà il prezzo minimo indicato dal contatto.
28. Crea un secondo campo, anche di tipo Decimale.
29. Assegna il Nome "priceUpTo" e l'ID "priceUpTo" e fai clic su Salva. Questo valore raccoglierà il prezzo massimo del contatto.
4.2. Creazione del workflow per aggiornare i campi
(In questa sezione spieghiamo come archiviare i dati inviati da Empathy nella scheda del contatto in Connectif tramite un workflow).
30. Accedi dal menu laterale a Workflows e crea un nuovo Workflow personalizzato.
31. Nella configurazione del nodo "Inizio", nella sezione Scegli una limitazione, seleziona Tutta la mia lista e, in Scegli una fonte di dati seleziona Tutti gli esistenti e i nuovi.
32. Collega il nodo "Inizio" al nodo Trigger che hai creato per ricevere il marchio e il prezzo da Empathy.
33. Collega il nodo Trigger al nodo "Imposta campo".
34. Accedi alla sua configurazione e, all'interno della sua interfaccia, trascina i campi che hai appena creato, con origine dati Contatto, dalla colonna di sinistra al blocco centrale in modo che corrispondano ai campi omonimi nella colonna di destra.
35. Salva la configurazione del nodo.
36. Salva e attiva il tuo workflow.
Continua a imparare!
Per sfruttare appieno il potenziale del tuo account Connectif, ti consigliamo di continuare con i seguenti articoli:
Raccomandazione sulla home, per imparare come creare una banner di raccomandazione nella pagina principale, che puoi personalizzare con i dati di Empathy.
Integrazione personalizzata per ricevere i dati, per imparare come utilizzare informazioni che non vengono registrate di default sulla piattaforma.
Integrazioni con sistemi esterni, per integrare il tuo account Connectif con Facebook, moduli e altri webhook del tuo sito web.
Integrazioni tramite API, per gestire eventi come registrazioni degli acquisti o aggiunte di contatti.