Passer au contenu principal
Les segments disponibles dans votre DMP sont mis a disposition par Piwik Pro Audiences via une REST-API. Dans votre compte Kameleoon, cliquez sur Admin > Projects.

Global custom script

Pour inserer le global custom script :
  • Cliquez sur Configuration > General.
L’insert Global custom script reliera Kameleoon a Matomo. Tout code JavaScript que vous ajoutez dans cet insert sera execute chaque fois que la page se charge. Cette fonctionnalite est generalement utilisee pour ajouter du code de suivi complexe ou une integration a d’autres solutions.
Copiez et collez le code ci-dessous dans la section Global script :
const getPiwikProSegments = (visitorID) => {
        const clientID = 'Replace this with your client_id from generated credentials';
        const websiteID = 'Replace this with your project_id';
        const xhr = new XMLHttpRequest();
        xhr.onload = function run() {
            if (this.status === 200) {
                Kameleoon.API.Data.setCustomData(
                    'Piwik Pro segments',
                    JSON.parse(xhr.response)
                );
            }
        };
        xhr.open('GET', https://customers.kameleoon.com/kameleoon/piwik/user/${visitorID}?id=${clientID}&website_id=${websiteID}, true);
        xhr.send();
    };

    Kameleoon.API.Core.runWhenConditionTrue(() => typeof _paq !== 'undefined', () => {
        _paq.push([function init() {
            getPiwikProSegments(this.getVisitorId());
        }]);
    });
Cliquez sur Validate pour appliquer les changements a votre configuration.

Custom data

Vous devez ensuite creer une nouvelle custom data. Vous aurez besoin de : Utilisez la methode d’acquisition Activation API Method. Ce code doit etre place dans la section Save the values for the targeting condition associated with the custom data point de la custom data (n’oubliez pas d’ajouter vos client_id et website_id).
  let segmentPW = [];
     const clientID = 'Replace this with your client_id from generated credentials';
     const websiteID = 'Replace this with you website_id';
 

     const xhr = new XMLHttpRequest();
     xhr.onreadystatechange = function check() {
         if (this.readyState === 4) segmentPW = JSON.parse(xhr.response);
     };
     xhr.open('GET', [https://customers.kameleoon.com/kameleoon/piwik/segments/?id=${clientID}&website_id=${websiteID}](https://customers.kameleoon.com/kameleoon/piwik/segments/?id=$%7BclientID%7D&website_id=$%7BwebsiteID%7D), false);
     xhr.send();
     return segmentPW; 
Vous remarquerez que dans ce code, nous appelons un Webservice Kameleoon (https://customers.kameleoon.com/kameleoon/piwik/), qui utilise l’API Piwik Pro pour obtenir tous les segments. Cet appel est necessaire pour contourner les problemes liees a la politique CORS. La custom data doit etre definie sur les types list of et strings ; le scope est Page.

External Segment Sync for Server-side

Si vous souhaitez utiliser les donnees de segments Matomo avec l’un de nos SDK, vous devrez suivre les directives fournies dans la documentation de chaque SDK et utiliser la methode getRemoteData().