ABlyft integrierenReferenceJavaScript API

ablyft.push()

Sende Goals, Page-Befehle, Listener und Consent-Änderungen an ABlyft.

ablyft.push(event) nimmt ein Objekt mit einem eventType und den Parametern dieses Typs entgegen. Es kann auch vor dem Laden des Snippets aufgerufen werden, siehe Queueing.

eventTypeZweck
customEin Custom Goal auslösen
revenueEin Revenue Goal mit einem Wert auslösen
reevaluateAudiencesAudiences von Experiments auf aktiven Pages erneut prüfen
forceVariationEine Variation für einen Visitor erzwingen
activatePageEine Page mit dem API-Trigger aktivieren
deactivatePageEine Page deaktivieren
addListenerEine Funktion ausführen, wenn das Snippet seinen Durchlauf beendet hat
enableTrackingConsentSpeichern, dass der Visitor dem Tracking zugestimmt hat
disableTrackingConsentSpeichern, dass der Visitor das Tracking abgelehnt hat

custom

Löst ein Goal vom Typ custom aus, identifiziert über seinen API Name.

ParameterTypErforderlichBeschreibung
eventType'custom'Yes
eventNamestringYesAPI Name des Goals. Unbekannte Namen werden stillschweigend ignoriert.
eventValuenumberNoStandardwert 0. Nur sinnvoll für Goals mit dem Measurement Type Value.
window.ablyft = window.ablyft || [];

window.ablyft.push({
  eventType: 'custom',
  eventName: 'newsletter-signup',
});

revenue

Löst ein Goal vom Typ revenue aus. Dieselben Parameter wie bei custom; übergib das Revenue als eventValue, eine Zahl (kein String) in der Währung, die du verwendest. Ohne Angabe ist der Wert 0.

window.ablyft = window.ablyft || [];

window.ablyft.push({
  eventType: 'revenue',
  eventName: 'purchase',
  eventValue: 49.9, // order value
});

reevaluateAudiences

Wertet die Audiences aller Experiments auf den aktuell aktiven Pages erneut aus, zum Beispiel nachdem sich ein Data-Layer-Wert oder Cookie geändert hat.

ablyft.push({ eventType: 'reevaluateAudiences' });

forceVariation

Erzwingt eine Variation für ein Experiment. Eingereihte Aufrufe dieses Typs werden beim Laden des Snippets sofort angewendet, bevor die Experiments ausgewertet werden.

ParameterTypBeschreibung
experimentIdnumberID des Experiments
variationIdnumberID der Variation, die angezeigt werden soll
window.ablyft = window.ablyft || [];

window.ablyft.push({
  eventType: 'forceVariation',
  experimentId: 12345678,
  variationId: 98765432,
});

Der Aufruf kann vor oder nach dem ABlyft-Snippet platziert werden, muss aber erfolgen, bevor das Experiment für den Visitor ausgewertet wird, also vor der Audience-Prüfung und bevor der Visitor einer Variation zugewiesen wurde. Das ist nützlich für Entwickler, die den realen Ablauf inklusive Goals in einem Browser oder einem automatisierten Test prüfen.

Nur für Visitors ohne Zuweisung

Die erzwungene Variation wird verwendet, wenn der Visitor dem Experiment zum ersten Mal zugewiesen wird. Hat dieser Browser bereits eine Zuweisung für das Experiment (gespeichert im konfigurierten Storage, siehe Storage & privacy), bleibt diese Zuweisung bestehen. Leere den Storage oder nutze ein privates Fenster. Der Visitor muss weiterhin die anderen Prüfungen bestehen (Environment, Audiences, Exclusion Groups). Erzwungene Visitors sind echte Participants: Ihre Daten zählen in deinen Results. Für einen schnellen Blick auf eine Variation ohne Code nutze den Preview-Modus.

activatePage

Aktiviert eine Page, zum Beispiel eine mit dem API-Trigger konfigurierte. Identifiziere die Page über ID oder API Name; ist pageId angegeben, hat sie Vorrang. Existiert die Page nicht, wird ein Fehler protokolliert und ein ablyftError-Event ausgelöst.

ParameterTypBeschreibung
pageIdnumberID der Page
pageApiNamestringAPI Name der Page
ablyft.push({ eventType: 'activatePage', pageApiName: 'checkout-step-2' });

Einrichtung der Page und Wirkung des Aufrufs: Page API.

deactivatePage

Deaktiviert eine Page. Dieselben Parameter und dasselbe Fehlerverhalten wie bei activatePage. Die Wirkung hängt vom Deactivation Mode der Page ab, siehe Page API.

ablyft.push({ eventType: 'deactivatePage', pageApiName: 'checkout-step-2' });

addListener

Registriert einen Listener, der (ohne Argumente) aufgerufen wird, nachdem das Snippet einen Durchlauf beendet hat, auch bei durch reInit() ausgelösten Durchläufen.

ParameterTypBeschreibung
listener.type'lifecycleEnd'Der einzige unterstützte Listener-Typ
listener.handlerfunctionWird ohne Argumente aufgerufen
ablyft.push({
  eventType: 'addListener',
  listener: {
    type: 'lifecycleEnd',
    handler: () => console.log('ABlyft finished its run'),
  },
});

Es gibt nur einen Handler-Slot. Wenn du einen zweiten lifecycleEnd-Listener registrierst, ersetzt er den ersten.

enableTrackingConsent

Speichert den Consent des Visitors (ablyft_tracking_consent mit Wert 1) im konfigurierten Storage. Daten, die bisher in einem temporären Storage gehalten wurden, werden ebenfalls in den konfigurierten Storage verschoben. Wird der Consent zum ersten Mal erteilt, initialisiert sich ABlyft mit reInit({ resetStates: true }) neu.

Rufe dies aus deinem Consent Manager auf. Siehe Consent Manager.

// Example: call when the visitor accepts statistics cookies
ablyft.push({ eventType: 'enableTrackingConsent' });

disableTrackingConsent

Speichert, dass der Visitor abgelehnt hat (ablyft_tracking_consent mit Wert 0), im konfigurierten Storage.

ablyft.push({ eventType: 'disableTrackingConsent' });

Um den aktuellen Zustand zu lesen, nutze ablyft.get('trackingConsentEnabled').

On this page