<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://nielsentest.mywikis.net/w/index.php?action=history&amp;feed=atom&amp;title=DCR_Video_Browser_Bundled_SDK</id>
	<title>DCR Video Browser Bundled SDK - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://nielsentest.mywikis.net/w/index.php?action=history&amp;feed=atom&amp;title=DCR_Video_Browser_Bundled_SDK"/>
	<link rel="alternate" type="text/html" href="https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;action=history"/>
	<updated>2026-04-05T11:36:12Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.5</generator>
	<entry>
		<id>https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3799&amp;oldid=prev</id>
		<title>ColinBrown at 21:10, 29 May 2019</title>
		<link rel="alternate" type="text/html" href="https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3799&amp;oldid=prev"/>
		<updated>2019-05-29T21:10:03Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:10, 29 May 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l284&quot;&gt;Line 284:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 284:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; '''length''' &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; '''length''' &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; length of content in seconds &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; length of content in seconds &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;seconds&amp;lt;/code&amp;gt; (&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;86400 &lt;/del&gt;for live stream) &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;seconds&amp;lt;/code&amp;gt; (&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;0 &lt;/ins&gt;for live stream) &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; Yes&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; Yes&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l637&quot;&gt;Line 637:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 637:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; '''length''' &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; '''length''' &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; length of content in seconds &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; length of content in seconds &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;seconds&amp;lt;/code&amp;gt; (&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;86400 &lt;/del&gt;for live stream) &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;seconds&amp;lt;/code&amp;gt; (&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;0 &lt;/ins&gt;for live stream) &amp;lt;/td&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; Yes&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;td&amp;gt; Yes&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l687&quot;&gt;Line 687:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 687:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;quot;content&amp;quot;:{&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;quot;content&amp;quot;:{&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &amp;quot;type&amp;quot;:&amp;quot;content&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &amp;quot;type&amp;quot;:&amp;quot;content&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &amp;quot;length&amp;quot;:&amp;quot;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;86400&lt;/del&gt;&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &amp;quot;length&amp;quot;:&amp;quot;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;0&lt;/ins&gt;&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &amp;quot;adModel&amp;quot;:&amp;quot;1&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &amp;quot;adModel&amp;quot;:&amp;quot;1&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &amp;quot;adloadtype&amp;quot;:&amp;quot;1&amp;quot;},&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &amp;quot;adloadtype&amp;quot;:&amp;quot;1&amp;quot;},&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>ColinBrown</name></author>
	</entry>
	<entry>
		<id>https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3539&amp;oldid=prev</id>
		<title>Admin3 at 19:14, 13 March 2019</title>
		<link rel="alternate" type="text/html" href="https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3539&amp;oldid=prev"/>
		<updated>2019-03-13T19:14:00Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:14, 13 March 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l757&quot;&gt;Line 757:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 757:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;var nSdkInstance = NOLBUNDLE.nlsQ(&amp;quot;XXXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX&amp;quot;, &amp;quot;nlsnInstance&amp;quot;, { &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;outout&lt;/del&gt;: &amp;quot;false&amp;quot;});&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;var nSdkInstance = NOLBUNDLE.nlsQ(&amp;quot;XXXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX&amp;quot;, &amp;quot;nlsnInstance&amp;quot;, { &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;optout&lt;/ins&gt;: &amp;quot;false&amp;quot;});&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin3</name></author>
	</entry>
	<entry>
		<id>https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3538&amp;oldid=prev</id>
		<title>Admin3 at 19:13, 13 March 2019</title>
		<link rel="alternate" type="text/html" href="https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3538&amp;oldid=prev"/>
		<updated>2019-03-13T19:13:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:13, 13 March 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l134&quot;&gt;Line 134:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 134:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;var nSdkInstance = NOLBUNDLE.nlsQ(&amp;quot;XXXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX&amp;quot;, &amp;quot;nlsnInstance&amp;quot;, {&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;var nSdkInstance = NOLBUNDLE.nlsQ(&amp;quot;XXXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX&amp;quot;, &amp;quot;nlsnInstance&amp;quot;, {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   nol_sdkDebug: &amp;quot;debug&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   nol_sdkDebug: &amp;quot;debug&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;outout&lt;/del&gt;: &amp;quot;false&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;optout&lt;/ins&gt;: &amp;quot;false&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;});&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;});&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/script&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/script&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin3</name></author>
	</entry>
	<entry>
		<id>https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3408&amp;oldid=prev</id>
		<title>Admin3 at 23:16, 11 February 2019</title>
		<link rel="alternate" type="text/html" href="https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3408&amp;oldid=prev"/>
		<updated>2019-02-11T23:16:08Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;amp;diff=3408&amp;amp;oldid=3296&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Admin3</name></author>
	</entry>
	<entry>
		<id>https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3296&amp;oldid=prev</id>
		<title>Admin3: Created page with &quot;{{Breadcrumb|}} {{Breadcrumb|Digital}} {{Breadcrumb|DCR &amp; DTVR}}  {{CurrentBreadcrumb}} Category:Digital == Overview == The Nielsen SDK is one of multiple framework SDKs t...&quot;</title>
		<link rel="alternate" type="text/html" href="https://nielsentest.mywikis.net/w/index.php?title=DCR_Video_Browser_Bundled_SDK&amp;diff=3296&amp;oldid=prev"/>
		<updated>2019-01-23T19:57:44Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{Breadcrumb|}} {{Breadcrumb|Digital}} {{Breadcrumb|DCR &amp;amp; DTVR}}  {{CurrentBreadcrumb}} &lt;a href=&quot;/wiki/Category:Digital&quot; title=&quot;Category:Digital&quot;&gt;Category:Digital&lt;/a&gt; == Overview == The Nielsen SDK is one of multiple framework SDKs t...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Breadcrumb|}} {{Breadcrumb|Digital}} {{Breadcrumb|DCR &amp;amp; DTVR}}  {{CurrentBreadcrumb}}&lt;br /&gt;
[[Category:Digital]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
The Nielsen SDK is one of multiple framework SDKs that Nielsen provides to enable measuring linear (live) and on-demand TV viewing using TVs, mobile devices, etc.&lt;br /&gt;
The App SDK is the framework for mobile application developers to integrate Nielsen Measurement into their media player applications. It supports a variety of Nielsen Measurement Products like Digital in TV Ratings, Digital Content Ratings ([[DCR &amp;amp; DTVR]]), [[Digital Ad Ratings]] (DAR), [[Digital Audio]]. Nielsen SDKs are also equipped to measure static content and can track key life cycle events of an application like:&lt;br /&gt;
*Application launch events and how long app was running&lt;br /&gt;
*Time of viewing a sub section / page in the application.&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
To start using the Simplified SDK for Browser, you will need an '''Appid.'''  This is a Unique ID assigned to the player/site and configured by product.&lt;br /&gt;
If you do not have an AppID , please contact our SDK sales support team.&lt;br /&gt;
Refer to [[Digital Measurement Onboarding]] guide for information on how to get a Nielsen App SDK and appid.&lt;br /&gt;
&lt;br /&gt;
== Simplified SDK API ==&lt;br /&gt;
As part of making the SDK more user friendly and reduce the number of app integration touch points, Nielsen has designed a simple interface to pass metadata to the sdk while reducing the number of API calls.  The new &amp;lt;code&amp;gt; trackevent() &amp;lt;/code&amp;gt; API has been implemented as a wrapper for the existing SDK and will be responsible for handling new API calls, performing validation, and translation of new API calls to the existing Nielsen App SDK API methods.  Applications which are already integrated with the existing SDK API, are unaffected by this new API.&lt;br /&gt;
[[File:SimplifiedAPI_vs_StandardAPI_New.jpg|2048px|link=http://dayrhesdkp001z.enterprisenet.org/w/images/9/91/SimplifiedAPI_vs_StandardAPI_New.jpg]]&lt;br /&gt;
[http://dayrhesdkp001z.enterprisenet.org/w/images/9/91/SimplifiedAPI_vs_StandardAPI_New.jpg Click here to zoom in on image]&lt;br /&gt;
== Manages the order of metadata (ad vs content and playheads) ==&lt;br /&gt;
Existing API has a number of methods used for reporting player and application state changes to the SDK. Order of calls is important for the SDK in the existing API. In the new enhanced API all these calls will be replaced with one API call that will get one dictionary object with many key-value pairs, where any value could be another complex dictionary object. All the data provided in the existing API in separate calls will be provided in one single call. SDK will analyse the data received in the dictionary object, compare it with the data received previously and generate a sequence of calls for the existing API.&lt;br /&gt;
== Everything passed via trackevent() ==&lt;br /&gt;
The New API method supports the following event types:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Key&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|'''playhead'''||&lt;br /&gt;
It is used to pass content, ad or static metadata, the current playhead value, UNIX timestamp or id3 payload, ott information to the SDK.&lt;br /&gt;
|-&lt;br /&gt;
|'''pause'''||&lt;br /&gt;
This event should be passed when the&lt;br /&gt;
content playback is paused.  &lt;br /&gt;
|-&lt;br /&gt;
|'''complete'''||&lt;br /&gt;
It is called when session is completed or ends.&lt;br /&gt;
|-&lt;br /&gt;
|'''adStop'''||&lt;br /&gt;
Should be called at the end of each ad. This event type is required to handle the case when advertisements could not be distinguished, as its assetId is the same.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
To get started, an App ID is needed. The App ID is a unique ID assigned to the player/site/app. This will be provided upon starting the integration.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;'PXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Configure SDK ==&lt;br /&gt;
There are two steps required for configuring the SDK:&lt;br /&gt;
* Add Static Queue Snippet&lt;br /&gt;
* Create SDK Instance&lt;br /&gt;
=== Add Static Queue Snippet ===&lt;br /&gt;
Add the following script tag to the website:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
        /***************** Static Queue Snippet *********************/&lt;br /&gt;
 ! function(t, n) {&lt;br /&gt;
            t[n] = t[n] || {&lt;br /&gt;
                nlsQ: function(e, c, o, r, s, i) {&lt;br /&gt;
                    return s = t.document,&lt;br /&gt;
                        r = s.createElement(&amp;quot;script&amp;quot;),&lt;br /&gt;
                        r.async = 1,&lt;br /&gt;
                        r.src = (&amp;quot;http:&amp;quot; === t.location.protocol ? &amp;quot;http:&amp;quot; : &amp;quot;https:&amp;quot;) + &amp;quot;//cdn-gl.imrworldwide.com/conf/&amp;quot; + e + &amp;quot;.js#name=&amp;quot; + c + &amp;quot;&amp;amp;ns=&amp;quot; + n, i = s.getElementsByTagName(&amp;quot;script&amp;quot;)[0], i.parentNode.insertBefore(r, i),&lt;br /&gt;
                        t[n][c] = t[n][c] || {&lt;br /&gt;
                            g: o || {},&lt;br /&gt;
                            ggPM: function(e, o, r, s, i) {&lt;br /&gt;
                                (t[n][c].q = t[n][c].q || []).push([e, o, r, s, i])&lt;br /&gt;
                            },&lt;br /&gt;
                            trackEvent: function(e) {&lt;br /&gt;
                                (t[n][c].te = t[n][c].te || []).push(e)&lt;br /&gt;
                            }&lt;br /&gt;
                        }, t[n][c] }}&lt;br /&gt;
             } (window,&amp;quot;NOLBUNDLE&amp;quot;);&lt;br /&gt;
&amp;lt;/script&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The static queue snippet allows the SDK APIs to be called while the actual SDK and configuration file are still being downloaded. As the queue can capture all API calls before the download completes, there is no wait time. Once the SDK is available, the API calls will transition from directing to the queue to the SDK seamlessly.&lt;br /&gt;
&lt;br /&gt;
=== Create SDK Instance ===&lt;br /&gt;
To initialize the SDK, create an SDK instance by making the initialization call:&lt;br /&gt;
&lt;br /&gt;
'''Initialization API Call'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;NOLBUNDLE.nlsQ(&amp;quot;&amp;lt;apid&amp;gt;&amp;quot;, &amp;quot;&amp;lt;instanceName&amp;gt;&amp;quot;,{nol_sdkDebug: &amp;quot;debug&amp;quot;})&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When creating an instance, pass the following three variables:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Parameter !! Description !! Values&lt;br /&gt;
|-&lt;br /&gt;
| apid || Unique ID assigned to player/site. || &amp;lt;code&amp;gt;PXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| instanceName || Name of SDK instance || Any string value&lt;br /&gt;
|-&lt;br /&gt;
| nol_sdkDebug: &amp;quot;debug&amp;quot; || Enables Nielsen console logging. Only required for testing || &amp;lt;code&amp;gt;{nol_sdkDebug: &amp;quot;debug&amp;quot;}&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Example SDK Initialization'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;var nSdkInstance = NOLBUNDLE.nlsQ(&amp;quot;XXXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX&amp;quot;, &amp;quot;nlsnInstance&amp;quot;, {nol_sdkDebug: &amp;quot;debug&amp;quot;});&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When the initialization call is made, a unique static configuration file, &amp;lt;code&amp;gt;&amp;lt;apid&amp;gt;.js&amp;lt;/code&amp;gt;, will be downloaded based on the apid and will be cached on the user’s browser.&lt;br /&gt;
&lt;br /&gt;
Once the configuration is downloaded, the SDK itself will be downloaded and initialized. All SDK modules are included in one file: &amp;quot;nlsSDK600.bundle.min.js&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
'''Example SDK Configuration'''&lt;br /&gt;
&lt;br /&gt;
The configuration should include the Static Queue Snippet and an SDK Instance for an unique App ID as shown in the example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
  /***************** Static Queue Snippet *********************/ &lt;br /&gt;
  ! function(t, n) {&lt;br /&gt;
    t[n] = t[n] || {&lt;br /&gt;
      nlsQ: function(e, c, o, r, s, i) {&lt;br /&gt;
        return s = t.document,&lt;br /&gt;
          r = s.createElement(&amp;quot;script&amp;quot;),&lt;br /&gt;
          r.async = 1,&lt;br /&gt;
          r.src = (&amp;quot;http:&amp;quot; === t.location.protocol ? &amp;quot;http:&amp;quot; : &amp;quot;https:&amp;quot;) + &amp;quot;//cdn-gl.imrworldwide.com/conf/&amp;quot; + e + &amp;quot;.js#name=&amp;quot; + c + &amp;quot;&amp;amp;ns=&amp;quot; + n, i = s.getElementsByTagName(&amp;quot;script&amp;quot;)[0], i.parentNode.insertBefore(r, i),&lt;br /&gt;
          t[n][c] = t[n][c] || {&lt;br /&gt;
            g: o || {},&lt;br /&gt;
            ggPM: function(e, o, r, s, i) {(t[n][c].q = t[n][c].q || []).push([e, o, r, s, i])},&lt;br /&gt;
            trackEvent: function(e) {(t[n][c].te = t[n][c].te || []).push(e)}&lt;br /&gt;
          }, t[n][c]      }    }  }&lt;br /&gt;
(window, &amp;quot;NOLBUNDLE&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  // Created SDK Instance&lt;br /&gt;
  var nSdkInstance = NOLBUNDLE.nlsQ(&amp;quot;XXXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX&amp;quot;,&amp;quot;nlsnInstance&amp;quot;, {nol_sdkDebug: &amp;quot;debug&amp;quot;});&lt;br /&gt;
&amp;lt;/script&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Simplified API Syntax ==&lt;br /&gt;
The existing API has a number of methods used for reporting player and application state changes to the SDK. The order of calls is important for the SDK in the existing API. In the new simplified API, all these calls will be replaced with one API call that will get one dictionary object with many key-value pairs, where any value could be another complex dictionary object. All the data provided in the older API in separate calls will be provided in one single call. &lt;br /&gt;
 &lt;br /&gt;
Main API call for the new NielsenEventTracker API:&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt; nSdkInstance.trackEvent({metadata})&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Handling JSON Metadata ===&lt;br /&gt;
Parameter “data” is a JSON object with many key-value pairs that holds all information required by SDK.&lt;br /&gt;
&lt;br /&gt;
Format of input object is the following:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot;&amp;gt;&lt;br /&gt;
{ &lt;br /&gt;
 &amp;quot;event&amp;quot;: &amp;lt;event identifier&amp;gt;,&lt;br /&gt;
 &amp;quot;type&amp;quot;: &amp;lt;type of metadata&amp;gt;,&lt;br /&gt;
 &amp;quot;metadata&amp;quot;:{ &lt;br /&gt;
   &amp;quot;content&amp;quot;: &amp;lt;content metadata object&amp;gt;,&lt;br /&gt;
   &amp;quot;ad&amp;quot;: &amp;lt;ad metadata object&amp;gt;,&lt;br /&gt;
   &amp;quot;static&amp;quot;: &amp;lt;static metadata object&amp;gt;&lt;br /&gt;
 },&lt;br /&gt;
 &amp;quot;playheadPosition&amp;quot;:&amp;lt;playhead value | UNIX timestamp (seconds since Jan-1-1970 UTC) &amp;gt;,&lt;br /&gt;
 &amp;quot;id3Data&amp;quot;: &amp;lt;id3 payload&amp;gt;,&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Event Types ===&lt;br /&gt;
The New API method supports the following event types:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Key&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|'''playhead'''||&lt;br /&gt;
It is used to pass content, ad or static metadata, the current playhead value, Unix timestamp or id3 payload, ott information to the SDK.&lt;br /&gt;
|-&lt;br /&gt;
|'''pause'''||&lt;br /&gt;
This event should be used when&lt;br /&gt;
content playback is paused. &amp;lt;br &amp;gt; (Pause is detected by SDK automatically when the time gap between commands is more than 30 minutes.)&lt;br /&gt;
|-&lt;br /&gt;
|'''complete'''||&lt;br /&gt;
It is called when session is completed or ends.&lt;br /&gt;
|-&lt;br /&gt;
|'''adStop'''||&lt;br /&gt;
Should be called at the end of each ad. This event type is required to handle the case when advertisements could not be distinguished, as its assetId is the same.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
DCR and DTVR require various levels of data.  Please select the TAB of the product you are interested in reviewing.&lt;br /&gt;
{{DCRDTVRTabs&lt;br /&gt;
|DCR=&lt;br /&gt;
=== Digital Content Ratings===&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;  Parameter&lt;br /&gt;
&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; &amp;lt;b&amp;gt;Description&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; &amp;lt;b&amp;gt;Supported values&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; &amp;lt;b&amp;gt;Example&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;event&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Event identifier&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt; String:&lt;br /&gt;
playhead,pause,complete,&lt;br /&gt;
adStop&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&amp;quot;event&amp;quot;:&amp;quot;playhead&amp;quot;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;type&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Determines the metadata object &lt;br /&gt;
that should be used for crediting.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt; String:&amp;lt;br /&amp;gt;&lt;br /&gt;
content,&lt;br /&gt;
ad,&lt;br /&gt;
static&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&amp;quot;type&amp;quot;:&amp;quot;content&amp;quot;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;metadata&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Object that holds metadata values of specific types&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt; Detailed in tables below&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;Object&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;metadata&amp;quot;:{ &lt;br /&gt;
   &amp;quot;content&amp;quot;: &amp;lt;content metadata object&amp;gt;,&lt;br /&gt;
   &amp;quot;ad&amp;quot;: &amp;lt;ad metadata object&amp;gt;,&lt;br /&gt;
   &amp;quot;static&amp;quot;: &amp;lt;static metadata object&amp;gt;&lt;br /&gt;
 },&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;playheadPosition&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Playhead value in seconds or Unix timestamp&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;String&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Position value is Unix timestamp:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;quot;playheadPosition&amp;quot;:&amp;quot;1543437655&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;Position value is playhead:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;quot;playheadPosition&amp;quot;:&amp;quot;10&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
=== Content Metadata ===&lt;br /&gt;
Content metadata sent for every playheadposition update.&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; Keys &amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; Description &amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; Example &amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; Required&lt;br /&gt;
&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;'''assetName''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; name of program (100 character limit) &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;&amp;quot;MyTest789&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''assetid''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; unique ID assigned to asset &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; custom &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''length''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; length of content in seconds &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;seconds&amp;lt;/code&amp;gt; (86400 for live stream) &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''program''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;name of program (100 character limit) &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; custom &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''segB''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; custom segment B +&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; custom &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''segC''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; custom segment C +&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; custom &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''title''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;name of program (100 character limit) &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; custom &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;'''type'''&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;'content', 'ad', 'static'&amp;lt;/code&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt; 'content'&amp;lt;/code&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;'''section''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Unique Value assigned to page/site section &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; HomePage &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''airdate''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; the airdate in the linear TV ++&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; YYYYMMDD HH24:MI:SS &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''isfullepisode''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; full episode flag &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;&amp;quot;y&amp;quot;&amp;lt;/code&amp;gt;- full episode, &amp;lt;code&amp;gt;&amp;quot;n&amp;quot;&amp;lt;/code&amp;gt;- non full episode &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''crossId1'''	&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; standard episode ID	&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; custom	&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; ✓&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''crossId2	'''&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; content originator (only required for distributors)	&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Nielsen provided	&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;adloadtype&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; linear vs dynamic ad model&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; 1=Linear&lt;br /&gt;
2=Dynamic Ads&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;custom&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
+ '''Custom segments''' (segB and segC) can be used to aggregate video and/or static content within a single Brand to receive more granular reports within a brand.&amp;lt;br&amp;gt;&lt;br /&gt;
++ Acceptable '''Air Date''' Formats:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot;&amp;gt;&lt;br /&gt;
YYYYMMDD HH24:MI:SS&lt;br /&gt;
YYYYMMDDHH24MISS&lt;br /&gt;
YYYY-MM-DDTHH:MI:SS&lt;br /&gt;
YYYY-MM-DDHH:MI:SS &lt;br /&gt;
YYYYMMDDHH:MI:SS&lt;br /&gt;
MM-DD-YYYY&lt;br /&gt;
YYYYMMDD HH:MI:SS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
For USA all times should be EST, for all other countries Local Time.&lt;br /&gt;
Below is a sample event for DCR. If no ad or static values, these can be left as blank/null.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot;&amp;gt;&lt;br /&gt;
{ &lt;br /&gt;
&amp;quot;event&amp;quot;: &amp;quot;playhead&amp;quot;,&lt;br /&gt;
&amp;quot;type&amp;quot;: &amp;quot;content&amp;quot;,&lt;br /&gt;
&amp;quot;metadata&amp;quot;: { &lt;br /&gt;
  &amp;quot;content&amp;quot;:{&lt;br /&gt;
    &amp;quot;assetName&amp;quot;:&amp;quot;Big Buck Bunny&amp;quot;,&lt;br /&gt;
    &amp;quot;assetid&amp;quot;:&amp;quot;B66473&amp;quot;,&lt;br /&gt;
    &amp;quot;length&amp;quot;:&amp;quot;3600&amp;quot;,&lt;br /&gt;
    &amp;quot;program&amp;quot;:&amp;quot;MyProgram&amp;quot;,&lt;br /&gt;
    &amp;quot;segB&amp;quot;:&amp;quot;CustomSegmentValueB&amp;quot;,&lt;br /&gt;
    &amp;quot;segC&amp;quot;:&amp;quot;segmentC&amp;quot;,&lt;br /&gt;
    &amp;quot;title&amp;quot;:&amp;quot;S2,E3&amp;quot;,&lt;br /&gt;
    &amp;quot;type&amp;quot;:&amp;quot;content&amp;quot;,&lt;br /&gt;
    &amp;quot;section&amp;quot;:&amp;quot;cloudApi_app&amp;quot;,&lt;br /&gt;
    &amp;quot;airdate&amp;quot;:&amp;quot;20180120 10:00:00&amp;quot;,&lt;br /&gt;
    &amp;quot;isfullepisode&amp;quot;:&amp;quot;y&amp;quot;,&lt;br /&gt;
    &amp;quot;crossId1&amp;quot;:&amp;quot;Standard Episode ID&amp;quot;,&lt;br /&gt;
    &amp;quot;crossId2&amp;quot; :&amp;quot;Content Originator&amp;quot;,&lt;br /&gt;
    &amp;quot;adloadtype&amp;quot;:&amp;quot;2&amp;quot;},&lt;br /&gt;
&amp;quot;ad&amp;quot;: {},&lt;br /&gt;
&amp;quot;static&amp;quot;: {}&lt;br /&gt;
},&lt;br /&gt;
&amp;quot;playheadPosition&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|DTVR=&lt;br /&gt;
=== Digital TV Ratings info ===&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;  Parameter&lt;br /&gt;
&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; &amp;lt;b&amp;gt;Description&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; &amp;lt;b&amp;gt;Supported values&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; &amp;lt;b&amp;gt;Example&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;event&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Event identifier&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt; String:&lt;br /&gt;
playhead,pause,complete,&lt;br /&gt;
adStop&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&amp;quot;event&amp;quot;:&amp;quot;playhead&amp;quot;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;type&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Determines the metadata object that should be used for crediting.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt; String:&amp;lt;br /&amp;gt;&lt;br /&gt;
content,&lt;br /&gt;
ad,&lt;br /&gt;
static&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&amp;quot;type&amp;quot;:&amp;quot;content&amp;quot;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;adModel&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; linear vs dynamic ad model&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; 1=Linear&lt;br /&gt;
2=Dynamic Ads&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;custom&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;channelName&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Any string representing the.channel/stream&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;Object&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;custom&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;playheadPosition&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Playhead value in seconds or Unix timestamp&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;String&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Position value is Unix timestamp:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;quot;playheadPosition&amp;quot;:&amp;quot;1543437655&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;Position value is playhead:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;quot;playheadPosition&amp;quot;:&amp;quot;10&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;id3Data&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Nielsen ID3 payload string&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;Object&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;&lt;br /&gt;
id3Data: www.nielsen.com/065H2g6E7ZyQ5UdmMAbbpg&lt;br /&gt;
==/_EMc37zfVgq_8KB7baUYfg==/ADQCAmgV1Xyvnynyg60&lt;br /&gt;
kZO_Ejkcn2KLSrTzyJpZZ-QeRn8GpMGTWI7-HrEKzghxyzC&lt;br /&gt;
yBEoIDv2kA2g1QJmeYOl5GnwfrLDVK2bNLTbQxr1z9VBfxa&lt;br /&gt;
hBcQP5tqbjhyMzdVqrMKuvvJO1jhtSXa9AroChb11ZUnG1W&lt;br /&gt;
VJx2O4M=/33648/22847/00&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
Below is a sample event for DTVR.  If no ad or static values, these can be left as blank/null.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot;&amp;gt;&lt;br /&gt;
{ &lt;br /&gt;
&amp;quot;event&amp;quot;: &amp;quot;playhead&amp;quot;,&lt;br /&gt;
&amp;quot;type&amp;quot;: &amp;quot;content&amp;quot;,&lt;br /&gt;
&amp;quot;metadata&amp;quot;: { &lt;br /&gt;
  &amp;quot;content&amp;quot;:{&lt;br /&gt;
    &amp;quot;adModel&amp;quot;:&amp;quot;1&amp;quot;,&lt;br /&gt;
    &amp;quot;channelname&amp;quot;:&amp;quot;channel1&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
&amp;quot;ad&amp;quot;: {},&lt;br /&gt;
&amp;quot;static&amp;quot;: {}&lt;br /&gt;
},&lt;br /&gt;
&amp;quot;playheadPosition&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
&amp;quot;id3Data&amp;quot;: &amp;quot;www.nielsen.com/065H2g6E7ZyQ5UdmMAbbpg==/_&lt;br /&gt;
EMc37zfVgq_8KB7baUYfg==/ADQCAmgV1Xyvnynyg60kZO_Ejkcn&lt;br /&gt;
2KLSrTzyJpZZ-QeRn8GpMGTWI7-HrEKzghxyzCyBEoIDv2kA2g1Q&lt;br /&gt;
JmeYOl5GnwfrLDVK2bNLTbQxr1z9VBfxahBcQP5tqbjhyMzdVqrMK&lt;br /&gt;
uvvJO1jhtSXa9AroChb11ZUnG1WVJx2O4M=/33648/22847/00&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|DCRDTVR=&lt;br /&gt;
=== Applies to DCR and DTVR ===&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;  Parameter&lt;br /&gt;
&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; &amp;lt;b&amp;gt;Description&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; &amp;lt;b&amp;gt;Supported values&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; &amp;lt;b&amp;gt;Example&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;event&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Event identifier&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt; String:&lt;br /&gt;
playhead,&lt;br /&gt;
pause,&lt;br /&gt;
complete,&lt;br /&gt;
adStop&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&amp;quot;event&amp;quot;:&amp;quot;playhead&amp;quot;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;type&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Determines the metadata object that should be used for crediting.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt; String:&amp;lt;br /&amp;gt;&lt;br /&gt;
content,&lt;br /&gt;
ad,&lt;br /&gt;
static&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&amp;quot;type&amp;quot;:&amp;quot;content&amp;quot;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;metadata&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Object that holds metadata values of specific types&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt; Detailed in tables below&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;Object&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;metadata&amp;quot;:{ &lt;br /&gt;
   &amp;quot;content&amp;quot;: &amp;lt;content metadata object&amp;gt;,&lt;br /&gt;
   &amp;quot;ad&amp;quot;: &amp;lt;ad metadata object&amp;gt;,&lt;br /&gt;
   &amp;quot;static&amp;quot;: &amp;lt;static metadata object&amp;gt;&lt;br /&gt;
 },&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;playheadPosition&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Playhead value in seconds or Unix timestamp&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;String&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Position value is Unix timestamp:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;quot;playheadPosition&amp;quot;:&amp;quot;1543437655&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;Position value is playhead:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;quot;playheadPosition&amp;quot;:&amp;quot;10&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;id3Data&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Nielsen ID3 payload string&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;Object&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;&lt;br /&gt;
id3Data: www.nielsen.com/065H2g6E7ZyQ5UdmMAbbpg&lt;br /&gt;
==/_EMc37zfVgq_8KB7baUYfg==/ADQCAmgV1Xyvnynyg60&lt;br /&gt;
kZO_Ejkcn2KLSrTzyJpZZ-QeRn8GpMGTWI7-HrEKzghxyzC&lt;br /&gt;
yBEoIDv2kA2g1QJmeYOl5GnwfrLDVK2bNLTbQxr1z9VBfxa&lt;br /&gt;
hBcQP5tqbjhyMzdVqrMKuvvJO1jhtSXa9AroChb11ZUnG1W&lt;br /&gt;
VJx2O4M=/33648/22847/00&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;ottData&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Object that holds ott information&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;Object&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&lt;br /&gt;
ottData:{&lt;br /&gt;
ottStatus:1,&lt;br /&gt;
ottType:casting,&lt;br /&gt;
ottDevice:chromecast,&lt;br /&gt;
ottDeviceName:Google ChromeCast,&lt;br /&gt;
ottDeviceID:1234,&lt;br /&gt;
ottDeviceModel:ChromeCast,&lt;br /&gt;
ottDeviceVersion:1.0.0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
=== Content Metadata ===&lt;br /&gt;
Content metadata sent for every playheadposition update.&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; Keys &amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; Description &amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; Example &amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt; Required&lt;br /&gt;
&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; '''length''' &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; length of content in seconds &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt;seconds&amp;lt;/code&amp;gt; (86400 for live stream) &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;'''type'''&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;'content', 'ad', 'static'&amp;lt;/code&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;code&amp;gt; 'content'&amp;lt;/code&amp;gt; &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; Yes&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;adModel&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; linear vs dynamic ad model&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; 1=Linear&lt;br /&gt;
2=Dynamic Ads&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;custom&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; &amp;lt;b&amp;gt;adloadtype&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; DCR Ad Model&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt; 1=Linear&lt;br /&gt;
2=Dynamic Ads&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;custom&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
+ '''Custom segments''' (segB and segC) can be used to aggregate video and/or static content within a single Brand to receive more granular reports within a brand.&amp;lt;br&amp;gt;&lt;br /&gt;
++ Acceptable '''Air Date''' Formats:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot;&amp;gt;&lt;br /&gt;
YYYYMMDD HH24:MI:SS&lt;br /&gt;
YYYYMMDDHH24MISS&lt;br /&gt;
YYYY-MM-DDTHH:MI:SS&lt;br /&gt;
YYYY-MM-DDHH:MI:SS &lt;br /&gt;
YYYYMMDDHH:MI:SS&lt;br /&gt;
MM-DD-YYYY&lt;br /&gt;
YYYYMMDD HH:MI:SS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Below is a sample event for DCR/DTVR joint integration. If no ad or static values, these can be left as blank/null.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot;&amp;gt;&lt;br /&gt;
{ &lt;br /&gt;
&amp;quot;event&amp;quot;: &amp;quot;playhead&amp;quot;,&lt;br /&gt;
&amp;quot;type&amp;quot;: &amp;quot;content&amp;quot;,&lt;br /&gt;
&amp;quot;metadata&amp;quot;: { &lt;br /&gt;
  &amp;quot;content&amp;quot;:{&lt;br /&gt;
    &amp;quot;type&amp;quot;:&amp;quot;content&amp;quot;,&lt;br /&gt;
    &amp;quot;length&amp;quot;:&amp;quot;86400&amp;quot;,&lt;br /&gt;
    &amp;quot;adModel&amp;quot;:&amp;quot;1&amp;quot;,&lt;br /&gt;
    &amp;quot;adloadtype&amp;quot;:&amp;quot;1&amp;quot;},&lt;br /&gt;
  &amp;quot;ad&amp;quot;: {},&lt;br /&gt;
  &amp;quot;static&amp;quot;: {}&lt;br /&gt;
},&lt;br /&gt;
&amp;quot;playheadPosition&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
&amp;quot;id3Data&amp;quot;: &amp;quot;www.nielsen.com/065H2g6E7ZyQ5UdmMAbbpg==/_&lt;br /&gt;
EMc37zfVgq_8KB7baUYfg==/ADQCAmgV1Xyvnynyg60kZO_Ejkcn&lt;br /&gt;
2KLSrTzyJpZZ-QeRn8GpMGTWI7-HrEKzghxyzCyBEoIDv2kA2g1Q&lt;br /&gt;
JmeYOl5GnwfrLDVK2bNLTbQxr1z9VBfxahBcQP5tqbjhyMzdVqrMK&lt;br /&gt;
uvvJO1jhtSXa9AroChb11ZUnG1WVJx2O4M=/33648/22847/00&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Ad Metadata ===&lt;br /&gt;
The ad metadata (if applicable) should be passed for each individual ad, if ads are available during or before the stream begins.&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Keys	!! Description	!! Values	!! Example&lt;br /&gt;
|-&lt;br /&gt;
| assetid ||	unique ID assigned to ad	|| custom &amp;lt;br&amp;gt;(no [[Special Characters]])	|| &amp;lt;code&amp;gt;'AD1234'&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| title || unique name assigned to ad || custom ||&amp;lt;code&amp;gt;'ADtitle'&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|adldx || Ad Index (*See Note below*) || custom || &amp;lt;code&amp;gt; &amp;quot;66478364&amp;quot; &amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| type	|| type of ad	|| 'preroll', 'midroll', or 'postroll' || &amp;lt;code&amp;gt;'preroll'&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|length || length of ad || In Seconds ||&amp;lt;code&amp;gt; '20' &amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
=== Ad Metadata Sample ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;json&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;ad&amp;quot;: {&lt;br /&gt;
    &amp;quot;assetid&amp;quot;:&amp;quot;AD12345&amp;quot;,&lt;br /&gt;
    &amp;quot;title&amp;quot;:&amp;quot;ADTestTitle&amp;quot;,&lt;br /&gt;
    &amp;quot;adldx&amp;quot;:&amp;quot;1&amp;quot;,&lt;br /&gt;
    &amp;quot;type&amp;quot;:&amp;quot;preroll&amp;quot;,&lt;br /&gt;
    &amp;quot;length&amp;quot;:&amp;quot;20&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Managing Ads ===&lt;br /&gt;
If there is an Ad block within the playing content (such as a midroll) you need to:&lt;br /&gt;
* Reset the playhead position to 0 for each ad.&lt;br /&gt;
* Call the '''adStop''' event at the end of each ad or increment the adldx&lt;br /&gt;
&lt;br /&gt;
The Simplified SDK will can automatically detect the change from ad to content, or even ad to ad if the assetID changes; however, there could be situations where the same ad is played back to back.  You can either increment/change the '''adldx value''', and/or call adStop at the end of each Ad.&lt;br /&gt;
&lt;br /&gt;
Sometimes it is not possible for integrators to provide different assetId value for individual ads in a sequence of ads. Taking this into account the Nielsen Simplified API will support a new parameter for ad metadata: '''adIdx.''' This parameter is just an index of an individual ad in a sequence of ads. Once the next ad is started the '''adIdx''' parameter should be changed and provided as part of ad metadata.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;swift&amp;quot;&amp;gt;&lt;br /&gt;
            // Example of passing both values&lt;br /&gt;
            self.data.updateValue(&amp;quot;adStop&amp;quot;, forKey: &amp;quot;event&amp;quot;)&lt;br /&gt;
            self.data.updateValue(&amp;quot;223&amp;quot;, forKey: &amp;quot;adldx&amp;quot;)&lt;br /&gt;
            self.nielsenEventTracker.trackEvent(data)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opt-Out ==&lt;br /&gt;
The site must provide a means for the user to opt-out of, or opt back into, Nielsen Measurement. A user can opt-out if they would prefer not to participate in any Nielsen online measurement research. To implement the opt-out option, include the following two items in your privacy policy&lt;br /&gt;
* A notice that the player includes proprietary measurement software that allows users to contribute to market research (such as Nielsen TV Ratings)&lt;br /&gt;
* A link to the Nielsen Digital Measurement Privacy Policy at http://priv-policy.imrworldwide.com/priv/browser/us/en/optout.html&lt;br /&gt;
On the Nielsen Digital Measurement Privacy Policy page, users can click Choices to read more detailed information about the measurement software, learn about their options with regard to Nielsen measurement, and, if they do not want to participate in Nielsen online measurement, click a link to receive an opt-out cookie.&lt;br /&gt;
&lt;br /&gt;
The following paragraph is a template for an opt-out statement, the properties may feature Nielsen proprietary measurement software, which will allow users to contribute to market research, such as Nielsen TV Ratings. To learn more about the information that Nielsen software may collect and your choices with regard to it, please see the Nielsen Digital Measurement Privacy Policy at http://priv-policy.imrworldwide.com/priv/browser/us/en/optout.html.&lt;br /&gt;
&lt;br /&gt;
=== Opt Back In ===&lt;br /&gt;
&lt;br /&gt;
Once users have opted-out, they can choose to opt back into Nielsen Measurement at anytime by selecting the opt back in link on the Nielsen Digital Privacy Policy page. When a user selects the link, their opt-out cookie will be deleted and they will be able to be measured.&lt;br /&gt;
&lt;br /&gt;
== Going Live ==&lt;br /&gt;
Once the DCR Tracking Code is added to Instant Articles, Nielsen will validate the implementation. Following Nielsen testing, users need to make a couple of updates to the initialization call to ensure that the site is being measured properly.&lt;br /&gt;
# '''App ID''': Ensure that correct &amp;lt;apid&amp;gt; is used during initialization&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;'PXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
# '''Debug Logging''': Disable logging by deleting &amp;lt;code&amp;gt;{nol_sdkDebug: 'DEBUG'}&amp;lt;/code&amp;gt; from initialization call.&lt;br /&gt;
#* '''Example Production Initialization Call''' - Refer to the production initialization call below:&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;var nSdkInstance = NOLBUNDLE.nlsQ(&amp;quot;PXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX&amp;quot;, &amp;quot;nlsnInstance&amp;quot;);&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sample Code ==&lt;br /&gt;
This code is for example purposes only to demonstrate a very simple video implementation, with a single preroll and single content block.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=javascript&amp;gt;&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
// Setup videojs sample player&lt;br /&gt;
var nielsenid = document.getElementById(&amp;quot;my-sdkplayer&amp;quot;);&lt;br /&gt;
var coolPlayer = videojs('my-sdkplayer', {&lt;br /&gt;
    controls: true,&lt;br /&gt;
    autoplay: true,&lt;br /&gt;
    preload: 'auto',&lt;br /&gt;
});&lt;br /&gt;
var prevPos = null;&lt;br /&gt;
&lt;br /&gt;
coolPlayer.preroll({&lt;br /&gt;
    src: {&lt;br /&gt;
        src: &amp;quot;assets/CleaningCrew.mp4&amp;quot;,&lt;br /&gt;
        type: &amp;quot;video/mp4&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    href: &amp;quot;http://videojs.com&amp;quot;,&lt;br /&gt;
    adsOptions: {&lt;br /&gt;
        debug: true&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
videojs('my-sdkplayer').ready(function() {&lt;br /&gt;
    // EXAMPLE: Start playing the video.&lt;br /&gt;
&lt;br /&gt;
    coolPlayer.play();&lt;br /&gt;
    var obj = {&lt;br /&gt;
        event: 'playhead', // playhead,pause,complete,adstop&lt;br /&gt;
        type: 'content',&lt;br /&gt;
        playheadPosition: '0',&lt;br /&gt;
        metadata: {&lt;br /&gt;
            content: {&lt;br /&gt;
                type: 'content',&lt;br /&gt;
                assetid: 'VID98-2B88',&lt;br /&gt;
                program: 'Put a programname here ',&lt;br /&gt;
                section: 'section name here'&lt;br /&gt;
                title: 'S01E02',&lt;br /&gt;
                length: '180',&lt;br /&gt;
                airdate: '20190101 10:01:00',&lt;br /&gt;
                isfullepisode: 'y',&lt;br /&gt;
                crossId1: 'Standard Episode ID',&lt;br /&gt;
                crossID2: 'Content Originator',&lt;br /&gt;
                adloadtype: '2'&lt;br /&gt;
            },&lt;br /&gt;
            ad: {},&lt;br /&gt;
            static: {}&lt;br /&gt;
        }&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    coolPlayer.on('timeupdate', function() {&lt;br /&gt;
        var getcurrentTime = coolPlayer.currentTime();&lt;br /&gt;
        var intPlayedTime = parseInt(getcurrentTime, 10);&lt;br /&gt;
        if (intPlayedTime &amp;gt; 0 &amp;amp;&amp;amp; intPlayedTime !== prevPos) {&lt;br /&gt;
            // check for playhead change so it's only called once per second &lt;br /&gt;
            console.log('PLAYHEAD EVENT **************************************************************');&lt;br /&gt;
            obj.event = 'playhead';&lt;br /&gt;
            obj.type = 'content';&lt;br /&gt;
            obj.metadata.ad = {};&lt;br /&gt;
            prevPos = intPlayedTime;&lt;br /&gt;
            obj.playheadPosition = Math.round(getcurrentTime);&lt;br /&gt;
            nSdkInstance.trackEvent(obj);&lt;br /&gt;
        }&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    this.on('adstart', function() {&lt;br /&gt;
        console.log('ADSTART EVENT **************************************************************');&lt;br /&gt;
        obj.type = 'ad';&lt;br /&gt;
        obj.metadata.ad = {&lt;br /&gt;
            type: 'preroll',&lt;br /&gt;
            assetid: 'AD9455',&lt;br /&gt;
            adldx: '1',&lt;br /&gt;
            program: 'Cant Skip Campaign',&lt;br /&gt;
            title: 'Cleaning Crew',&lt;br /&gt;
            length: '36',&lt;br /&gt;
        };&lt;br /&gt;
        nSdkInstance.trackEvent(obj);&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    this.on('contentresumed', function() {&lt;br /&gt;
        console.log('CONTENT RESUMED EVENT **************************************************************');&lt;br /&gt;
        obj.type = 'content';&lt;br /&gt;
        obj.event = 'playhead';&lt;br /&gt;
        obj.metadata.ad = {};&lt;br /&gt;
        nSdkInstance.trackEvent(obj);&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    this.on('pause', function() {&lt;br /&gt;
        console.log('PAUSE EVENT **************************************************************');&lt;br /&gt;
        obj.event = 'pause';&lt;br /&gt;
        obj.playheadPosition = Math.round(coolPlayer.currentTime());&lt;br /&gt;
        nSdkInstance.trackEvent(obj);&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    this.on('adtimeupdate', function() {&lt;br /&gt;
        var getcurrentTime = coolPlayer.currentTime();&lt;br /&gt;
        var intPlayedTime = parseInt(getcurrentTime, 10);&lt;br /&gt;
        if (intPlayedTime &amp;gt; 0 &amp;amp;&amp;amp; intPlayedTime !== prevPos) {&lt;br /&gt;
            // check for playhead change so it's only called once per second &lt;br /&gt;
            console.log('AD PLAYHEAD EVENT **************************************************************');&lt;br /&gt;
            console.log(Math.round(getcurrentTime));&lt;br /&gt;
            prevPos = intPlayedTime;&lt;br /&gt;
            obj.playheadPosition = Math.round(getcurrentTime);&lt;br /&gt;
            nSdkInstance.trackEvent(obj);&lt;br /&gt;
        };&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    this.on('adend', function() {&lt;br /&gt;
        console.log('AD STOP EVENT **************************************************************');&lt;br /&gt;
        obj.event = 'adstop';&lt;br /&gt;
        nSdkInstance.trackEvent(obj);&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    this.on('ended', function() {&lt;br /&gt;
        console.log('COMPLETE EVENT **************************************************************');&lt;br /&gt;
        obj.event = 'complete';&lt;br /&gt;
        nSdkInstance.trackEvent(obj);&lt;br /&gt;
    });&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
                &amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin3</name></author>
	</entry>
</feed>