DCR Static Lite Browser SDK: Difference between revisions
From Engineering Client Portal
No edit summary |
(removed dcr-cert) |
||
Line 20: | Line 20: | ||
To start using the Browser SDK, the following details are required: | To start using the Browser SDK, the following details are required: | ||
* '''App ID (apid):''' Unique ID assigned to the player/site and configured by product. | * '''App ID (apid):''' Unique ID assigned to the player/site and configured by product. | ||
* '''sfcode:''' Unique identifier for the environment that the SDK should point to. | * '''sfcode:''' Unique identifier for the environment that the SDK should point to. Use the sfcode of "dcr". | ||
If you do not have any of these pre-requisites or if you have any questions, please contact our SDK sales support team. | If you do not have any of these pre-requisites or if you have any questions, please contact our SDK sales support team. | ||
Revision as of 21:47, 20 June 2017
Overview
DCR Static Lite <Page Measurement> allows clients to measure the time spent by users on static content (in focus). Unlike Video measurement, the Static Lite <Page Measurement> does not require a configuration file.
- The cadence of the View and Duration pings for DCR Static Lite is same as Video content. (View ping when content is loaded completely and Duration ping every 5 minutes following that).
- View ping gets triggered when content is loaded completely and Duration ping every 5 minutes following that irrespective of the page being in focus (duration is calculated by c27 param for the amount of time user is on the page)
DCR Static Lite <Page Measurement> is a compact version of DCR Static <Page Measurement> with the following primary differences.
Static <Page Measurement> | Static Lite <Page Measurement> |
---|---|
Requires a configuration file. | Does not require a configuration file. |
Duration ping cadence is every 30 minutes. | Duration ping cadence is every 5 minutes. |
Prerequisites
To start using the Browser SDK, the following details are required:
- App ID (apid): Unique ID assigned to the player/site and configured by product.
- sfcode: Unique identifier for the environment that the SDK should point to. Use the sfcode of "dcr".
If you do not have any of these pre-requisites or if you have any questions, please contact our SDK sales support team.
DCR Static Lite Implementation
To implement DCR Static Lite <Page Measurement>, only a single script tag reference is required on the page. Static Lite will automatically initialize and handle pings once the page loads completely.
Append the parameters as hashbang URL parameters, starting with a hash (#) in place of a query string (?).
- The use of hashbang parameters provides the ability for the browser to cache DCR static script file as hashbang parameters are not sent to the server when requesting for the file.
Below is an example of a DCR static <script> tag.
with HTTPS URL
<script async src="https://seccdn-gl.imrworldwide.com/novms/js/2/nlsDcrLite510.min.js#nol_sfcode=dcr-cert&nol_ci=AB-XXXXXX&nol_apid=TXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX&nol_assetname=My_assetname&nol_apn=My_AppName&nol_ad=0&nol_vc=b02&nol_devid=XXXX-XXXX-XXXX&nol_segA=NA&nol_segB=NA&nol_segC=NA"></script>
with HTTP URL
<script async src="http://cdn-gl.imrworldwide.com/novms/js/2/nlsDcrLite510.min.js#nol_sfcode=dcr-cert&nol_ci=AB-XXXXXX&nol_apid=TXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX&nol_assetname=My_assetname&nol_apn=My_AppName&nol_ad=0&nol_vc=b02&nol_devid=XXXX-XXXX-XXXX&nol_segA=NA&nol_segB=NA&nol_segC=NA"></script>
Performance Tip
It is recommended to include the "async" attribute in the script tag to asynchronously load the script and allow the DOM to continue processing. This provides a non-blocking loading of DCR static, providing better page load performance and minimal affects to additional scripts or page processing.
Tag Parameters
The parameters for the script tag are defined below. These parameters will automatically be loaded into DCR Static Lite once the page is loaded completely. These are the only parameters supported by the tag.
Parameter Definition
Parameter | Description | Required? | Specified by | Example |
---|---|---|---|---|
nol_sfcode | Location of collection environment. During testing, all traffic should be directed to “dcr-cert”. | Yes | Nielsen | dcr-cert |
nol_ci | Brand level aggregation | Yes | Nielsen | My_ClientID |
nol_apid | UniqueID assigned to player/site. | Yes | Nielsen | TXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX |
nol_assetname | Unique ID assigned to content | Yes | Client | My_assetname |
nol_apn | User-defined string value for describing the player/site. | Yes | Client | My_AppName |
nol_vc | Sub-brand level aggregation | Yes | Client | vcID |
nol_apv | Version of the app build | Yes | Client | 1.0 |
nol_segA | Segment A. (defaults to NA) | No | Client | NA |
nol_segB | Segment B. (defaults to NA) | No | Client | NA |
nol_segC | Segment C. (defaults to NA) | No | Client | NA |
nol_cref1 | Standard episode ID. This is a custom parameter | No | Client | Reference11 |
nol_cref2 | Content originator (required only for distributors). This is a custom parameter | No | Client | Reference 22 |
nol_ad | Access method (defaults to 0) | No | Client | 0 for browser, 1 for app |
nol_devid | Device id. Defaults to blank if not provided. | No | Client | myDeviceID |
Advanced Tag Implementation
DCR Static Lite ensures that clients have a prior knowledge of the values for the parameters, they also offer the option of dynamically binding these parameters to the script tag.
Below is an example of how to bind Dynamic Parameters to the script tag.
In the HTML <head> section of each page, add the script snippet as shown below.
Note: This tagging is an alternative way of dynamically passing parameters to Static Lite in replacement of the standard <script> tag implementation.
<script type= "text/javascript" async>
var _nolParams =
{
nol_sfcode: 'dcr',
nol_ci: 'My_ClientID',
nol_apid: 'PXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX',
nol_apn: 'My_AppName',
nol_vc: 'My_vcID',
nol_devid: 'My deviceID',
nol_segA: 'NA',
nol_segB: 'NA',
nol_segC: 'NA',
nol_assetname: 'My_assetname'
};
/* This function dynamically builds the script tag and injects it into the page */
(function (params)
{
var url = 'https://cdn-gl.imrworldwide.com/novms/js/2/nlsDcrLite510.min.js'; // Only for HTTPS URLs
var url = 'http://cdn-gl.imrworldwide.com/novms/js/2/nlsDcrLite510.min.js'; // Only for HTTP URLs
var query = [];
for (var param in params)
{
query.push(param + '=' + params[param]);
}// for
url + = query.join('&');
var script = window.document.createElement("script");
script.async = true;
script.src = url;
window.document.getElementsByTagName('head')[0].appendChild(script);
})(_nolParams);
</script>
Nielsen Measurement Opt-Out Implementation
- As a global information and measurement leader, we are committed to protecting the privacy and security of the data we collect, process and use. Our digital measurement products are not used to identify the consumer in any way, but they help us and our clients measure and analyze how consumers engage with media across online, mobile and emerging technologies, and offer insights into consumer behavior.
- When the user wants to opt in or opt out of Nielsen measurement, a new dynamic page (with content similar to http://secure-us.imrworldwide.com/nielsen_app_optout.html should be displayed.
- For more details, refer to Browser SDK API Reference - Browser Opt-Out Implementation and Nielsen Digital Privacy.
Pre-Certification Checklists
After the website is ready to be sent for Nielsen Certification, please go through the Pre-Certification Checklist and ensure the webpage behaves as expected, before submitting to Nielsen.