Website tracker SDK | copernica.trigger()

Deze functie kan gebruikt worden om een event te triggeren, waardoor je bijbehorende opvolgacties uit kan voeren. Normaal gesproken worden events automatisch aangemaakt (bijvoorbeeld bij een pageview, klik of bounce), maar je kunt dit ook programmatisch vanuit de SDK doen:

copernica.trigger(event_name, parameters);

Deze functie is vooral handig voor events die traditioneel niet door Copernica zelf worden getriggerd. Zoals events dat een gebruiker een pagina op je website bezoekt, een product in zijn winkelwagen stopt, zich aanmeldt bij jouw website, enzovoort. Met deze functie kun je dit soort gebeurtenissen doorsturen naar Copernica, en met opvolgacties actie op ondernemen.

Parameters

De naam van het event is een string, en de parameters moeten een object zijn met alle eigenschappen van het event. Welke eigenschappen dat precies zijn, is afhankelijk van het type event. Je kunt in dit overzicht van de events een event selecteren om te zien welke parameters vereist zijn. Je kunt daarnaast ook altijd aanvullende eigenschappen meegeven die je kunt uitlezen en gebruiken in opvolgacties, maar die geen betekenis hebben voor Copernica.

Hieronder is een voorbeeld van de parameters:

// vertel copernica dat iemand zich op de website heeft aangemeld, het veld "email"
// is verplicht bij "user-register" events.
const promise = copernica.trigger('user-register', {
    email:      'gebruiker@domein.nl',
    firstname:  'gebruiker',
    info:       'meer informatie dat je in je opvolgactie wilt gebruiken',
    extra:      'nog wat extra info',
});

Return value

De functie geeft een javascript promise terug waarmee je toegang hebt tot een result object met een status code. Errors hebben soms ook een 'message' waarin je kan zien wat er fout is gegaan:

copernica.trigger(eventname, parameters).then(succes => {

    // laat de code van de succes zien
    console.log('succes', succes.code);
}, error => {

    // een error heeft ook een message zodat je weet wat er fout is gegaan 
    console.log('error', error.code, error.message);
});

Voorbeelden

In dit voorbeeld laten we zien hoe je met een simpel registratieformulier een 'gebruiker geregistreerd'-event kan triggeren aan de hand van deze functie:

// titel van het registratieformulier
<h2>Registratieformulier</h2>

// e-mailveld van het formulier
<div>
    <label for="email">E-mail:</label>
    <input type="email" id="email" required>
</div>

// de knop om het formulier mee te verwerken en de gebruiker te registreren
<div>
    <button onclick="registreerGebruiker()">Registreren</button>
</div>

// in deze script-tag zet je jouw javascript code
<script>

    // deze functie zorgt ervoor dat gebruikers daadwerkelijk
    // worden geregistreerd
    function registreerGebruiker() {

        // haal het ingevulde e-mailadres op uit het e-mailveld
        const email = document.getElementById('email').value;

        // we willen een 'gebruiker geregistreerd'-event triggeren
        const event = 'user-register';

        // trigger het 'gebruiker geregistreerd'-event met het e-mailadres
        // van het formulier
        copernica.trigger(event, {
            email:  email,
        });
    }
</script>