Configure DDX with Personalization

Configure Digital Data Exchange (DDX) with Acoustic Personalization.

Prerequisites

  • Ensure that you have DDX configured and enabled on your MPA channel. Also ensure that tagging is configured in DDX. For more information about DDX, see the DDX knowledge center

  • It is expected that a pageview event is triggered for every page on page load.

  • Ensure that Digital Analytics is registered as an endpoint in Acoustic Exchange and Capture. For more information, see Registering tagging libraries in Acoustic Exchange

  • Ensure that you have the channel tenant ID that was generated when you registered the channel with Acoustic Personalization. For more information, see Creating channel

  • Digital Data Exchange (DDX) configuration with Acoustic Personalization is currently supported for Multi-Page Applications (MPA) only.

📘

Tip

If you need to assistance for enabling the realtime collector for Digital Analytics events, contact Acoustic Personalization Support.

Step 1: Get the Acoustic Exchange Capture Enablement Key

In Acoustic Exchange, navigate to Exchange Capture from the Tools menu.
Click Enablement Key icon, and copy the two lines of code that contain the enablement key.
You need to add this key to your MPA channel, as described in the next step.

Step 2: Add the tracking code to your MPA

In case of Multi-Page Application, add the following code at the beginning of HEAD tag of each HTML page. This code snippet enables Digital Analytics to track the visitor behavior on your channel.

📘

Note

If Digital Analytics is already configured for your channel, the following code would already be present in your channel page and only needs to be updated as required. Add the code if the code is not present in your channel pages.
If you already have a channel with DDX configured without Acoustic Exchange, then you must remove the code that links eluminate.js and cmSetClientID, as the same connection is performed via Acoustic Exchange.

<script>
         var channelID = "<<Channel Tenant ID>>";
         var DA_Id = "<<DA ID>>"; 
         var ubxEvents = [];		
         var identifiersMapperArray = [];   
   
<script type="text/javascript" src="//lib-us-3.brilliantcollector.com/common/ubxCapture.js">
  </script>
<script> ubxCapture.setTenantID("WRTP","<<channel tenant ID>>");
               ubxCapture.setTenantID("DA","<<DA ID>>");
</script>
<script type="text/javascript"> ubxCapture.setID("<<UBX Capture Enablement Key>>"); 
</script>

Next, in case of Single-Page Application, add the following code in the BODY tag of index.html page. In case of Multi-Page Application, add the following code in the BODY tag of each HTML page.

<script>
ibm_ubx.registerCallback("WRTP", function (eventPayload) {
                if(eventPayload) {
                    ubxEvents.push(eventPayload);
                }
            }); 
</script>

Step 3: DDX configuration

  1. Log in to DDX.
  2. Go to Assets > Code Snippets.
  3. Create a new code snippet, with name, for example: rtpIntegrationSnippet.
    Add the following code to the snippet:
cm_ATEnabled = true;
    _cmPartnerUtils.setContactRule({
    cid: DA_Id,
    version: 1,
    partners: [{
    pid: 9999,
    type: 'S',
 url: 'https://cdn-personalization-us-1.goacoustic.com/acoustic/prod/pznda/pzn2da.js',
 surl: 'https://cdn-personalization-us-1.goacoustic.com/acoustic/prod/pznda/pzn2da.js',
    key: 'WRTP'
    }],
    tags: [ 
	    [1, 2, 3, 4, 5, 6, 7, 8, 14, 15]
     ],
    segmentRules: [],
    segments: [],
    usesNewRepeat: false
    });
  1. Click Save.
  2. Go to Assets > Page Groups.
  3. Go to Page Group > Code Snippets.
  4. Select your code snippet from Available code snippets and add it to Selected Code Snippets.
  5. Click Save.

Step 4: Deploy on DDX

Deploy your code snippet in DDX. For more information, see the DDX knowledge center.

MPA configuration

Channel tenant ID helps to identify your channel (website), hence this ID must be passed as an extra field for every event. You can choose the index location for channel tenant ID, from the 15 available indexes. For every event, ensure that the channel tenant ID is sent using the attributes.extraFields at appropriate index.
For Example:

digitalData.page = { attributes : { extraFields :  "<<Channel Tenant Id>>" + "-_-ExtraField2-_-ExtraField3-_--_--_--_--_--_--_--_--_--_--_--_-" } }

Also, ensure that the same index is used for every event, and the same index value is also configured in the DA Extra Field Index field of Acoustic Exchange Capture.

Add personalization code to the index.html file of your MPA. For more information, see Zone configuration for MPA