Tipi di condizioni per le estensioni web
Nel contesto di una regola, una condizione viene valutata dopo che si è verificato un evento. Tutte le condizioni devono restituire true affinché la regola possa continuare l’elaborazione. L’eccezione si verifica quando gli utenti inseriscono esplicitamente le condizioni in un bucket di "eccezione", nel qual caso tutte le condizioni all’interno del bucket devono restituire false per consentire alla regola di continuare l’elaborazione.
Ad esempio, un’estensione potrebbe fornire un tipo di condizione “viewport contains” in cui l’utente di potrebbe specificare un selettore CSS. Quando la condizione viene valutata sul sito web del client, l’estensione sarà in grado di trovare elementi che corrispondono al selettore CSS e restituire se uno di essi è contenuto nella finestra dell’utente.
Questo documento illustra come definire i tipi di condizioni per un’estensione web in Adobe Experience Platform.
I tipi di condizione sono in genere i seguenti:
- view nell'interfaccia utente di Experience Platform e nell'interfaccia utente di Data Collection che consente agli utenti di modificare le impostazioni per la condizione.
- Modulo libreria emesso all’interno della libreria runtime dei tag per interpretare le impostazioni e valutare una condizione.
Un modulo libreria di tipo condizione ha un obiettivo: valutare se qualcosa è vero o falso. Sta a te definire ciò che verrà valutato.
Ad esempio, per valutare se l’utente si trova sull’host example.com
, il modulo potrebbe presentarsi così:
module.exports = function(settings) {
return document.location.hostname === 'example.com';
};
Considera ora la situazione in cui desideri che l’utente di Adobe Experience Platform possa configurare il nome dell’host. Puoi consentire all’utente di inserire un nome di host e quindi di salvarlo nell’oggetto impostazioni. L’oggetto potrebbe presentarsi così:
{
"hostname": "example.com"
}
Per utilizzare il nome dell’host definito dall’utente, è necessario modificare il modulo come segue:
module.exports = function(settings) {
return document.location.hostname === settings.hostname;
};
Dati contestuali sugli eventi
Al modulo viene trasmesso un secondo argomento che contiene informazioni contestuali relative all’evento che ha attivato la regola. Può risultare utile in alcuni casi e vi si può accedere nel modo seguente:
module.exports = function(settings, event) {
// event contains information regarding the event that fired the rule
};
L’oggetto event
deve contenere le seguenti proprietà:
$type
youtube.play
.$rule
Oggetto contenente informazioni sulla regola attualmente in esecuzione. L’oggetto deve contenere le seguenti sotto-proprietà:
id
: ID della regola attualmente in esecuzione.name
: nome della regola attualmente in esecuzione.
L’estensione che fornisce il tipo di evento che ha attivato la regola può facoltativamente aggiungere altre informazioni utili a questo oggetto event
.