Migrating from Milestone to Custom Link migrating-from-milestone-to-custom-link

Overview overview

The core concepts of video measurement are the same for Milestone and Custom Link tracking, which is taking video player events and mapping them to analytics methods, while also grabbing player metadata and values and mapping them to analytics variables. The Custom Link approach should be considered as a slimming down and simplifying of both the implementation and the data collected. With the Custom Link solution, no variables or methods are pre-defined for video measurement, it requires a full custom set-up. It should be possible to update the player event code to point to the custom link tracking calls for basic player events such as start and complete. See Custom Link implementation guide for more details.

The following tables provide translations between the Milestone solution and the Custom Link solution.

Migration guide migration-guide

Video Variable Reference

Milestone Metric
Variable Type
Custom Link
Content
eVar
Default expiration: Visit
Define your own eVar.
Content Type
eVar
Default expiration: Page view
Define your own eVar.
Content Time Spent
Event
Type: Counter
Define your own event.
Video Initiates
Event
Type: Counter
Define your own event.
Video Completes
Event
Type: Counter
Define your own event.

Media Module variables

Milestone
Milestone Syntax
Custom Link
Custom Link Syntax
Media.trackUsingContextData
s.Media.trackUsingContextData
= true;
linkTrackVars
s.linkTrackVars
= 'events,
contextData.video.name’;
s.contextData["video.name"]
= mediaName;
Media.contextDataMapping
s.Media.contextDataMapping = {
"a.media.name":"eVar2,prop2",
"a.media.segment":"eVar3",
"a.contentType":"eVar1",
"a.media.timePlayed":"event3",
"a.media.view":"event1",
"a.media.segmentView":"event2",
"a.media.complete":"event7",
"a.media.milestones": {
25:"event4",
50:"event5",
75:"event6"
}
};
N/A
Mapping context data to eVars, props, and events is now completed through processing rules.
Media.trackVars
s.Media.trackVars =
"events,
prop2,
eVar1,
eVar2,
eVar3";
linkTrackVars
s.linkTrackVars
= 'events,
prop10,
eVar10,
eVar12,
eVar13,
eVar15,
contextData.
video.name,
contextData.
video.view';
Media.trackEvents
s.Media.trackEvents =
"event1,
event2,
event3,
event4,
event5,
event6,
event7"
linkTrackEvents
s.linkTrackEvents
= 'event2';

Optional variables

Milestone
Milestone Syntax
Custom Link
Custom Link Syntax
Media.autoTrack
s.Media.autoTrack
= true;
N/A
Not available.
Media.autoTrackNetStreams
s.Media.
autoTrackNetStreams
= true
N/A
Not available.
Media.completeByCloseOffset
s.Media.
completeByCloseOffset
= true
N/A
Not available.
Media.completeCloseOffsetThreshold
s.Media.
completeCloseOffsetThreshold
= 1
N/A
Not available.
Media.playerName
s.Media.playerName
= "Custom Player Name"
Set eVar or context data variable in link call.
s.contextData['video.player']
= "CustomPlayer Name";
Media.trackSeconds
s.Media.
trackSeconds
= 15
N/A
Not available.
Media.trackMilestones
s.Media.
trackMilestones
= "25,50,75";
N/A
Not available.
Media.trackOffsetMilestones
s.Media.
trackOffsetMilestones
= "20,40,60";
N/A
Not available.
Media.segmentByMilestones
s.Media.segmentByMilestones
= true;
N/A
Not available.
Media.segmentByOffsetMilestones
s.Media.
segmentByOffsetMilestones
= true;
N/A
Not available.

Ad tracking variables

Milestone
Milestone Syntax
Custom Link
Custom Link Syntax
Media.adTrackSeconds
s.Media.
adTrackSeconds
= 15
N/A
Not available.
Media.adTrackMilestones
s.Media.
adTrackMilestones
= "25,50,75";
N/A
Not available.
Media.adTrackOffsetMilestones
s.Media.
adTrackOffsetMilestones
= "20,40,60";
N/A
Not available.
Media.adSegmentByMilestones
s.Media.
adSegmentByMilestones
= true;
N/A
Not available.
Media.adSegmentByOffsetMilestones
s.Media.
adSegmentByOffsetMilestones
= true;
N/A
Not available.

Media Module methods

Milestone
Milestone Syntax
Custom Link
Custom Link Syntax
Media.open
s.Media.open(
mediaName,
mediaLength,
mediaPlayerName)
s.tl()
s.linkTrackVars
= 'events,
prop10,
eVar10,
eVar12,
eVar15,
contextData.video.name,
contextData.video.view';
s.linkTrackEvents
= 'event2';
s.prop10
= mediaName;
s.eVar10
= mediaName;
s.eVar12
= "video";
s.eVar15
= mediaPlayerName;
s.events
= 'event2';
s.contextData['video.name']
= mediaName;
s.contextData['video.view']
= 'true';
s.tl(this,'o','Video Start');
mediaName
mediaName: (required) The name of the video as you want it to appear in video reports.
Set eVar or context data variable in link call.
s.prop10 = mediaName;
s.eVar10 = mediaName;
s.contextData['video.name']
= mediaName;
mediaLength
mediaLength: (required) The length of the video in seconds.
Set eVar or context data variable in link call.
s.contextData['video.length']
= "90";
mediaPlayerName
mediaPlayerName: (required) The name of the media player used to view the video, as you want it to appear in video reports.
Set eVar or context data variable in link call.
s.contextData['video.player']
= "CustomPlayer Name";
Media.openAd
s.Media.openAd(
name,
length,
playerName,
parentName,
parentPod,
parentPodPosition,
CPM)
N/A
Not available.
name
name: (required) The name or ID of the ad.
N/A
Not available.
length
length: (required) The length of the ad.
N/A
Not available.
playerName
playerName: (required) The name of the media player used to view the ad.
N/A
Not available.
parentName
parentName: The name or ID of the primary content where the ad is embedded.
N/A
Not available.
parentPod
parentPod: The position in the primary content the ad was played.
N/A
Not available.
parentPodPosition
parentPodPosition: The position within the pod where the ad is played.
N/A
Not available.
CPM
CPM: The CPM or encrypted CPM (prefixed with a “~”) that applies to this playback.
N/A
Not available.
Media.click
s.Media.click(name, offset)
s.tl()
Use a custom link analytics call to track clicks.
Media.close
s.Media.close(mediaName)
N/A
Not available.
Media.complete
s.Media.complete(
name,
offset)
s.tl()
s.linkTrackVars
= 'events,
prop10,
eVar10,
eVar12,
eVar15,
contextData.video.name,
contextData.video.complete';
s.linkTrackEvents
= 'event3';
s.prop10
= mediaName;
s.eVar10
= mediaName;
s.eVar12
= "video";
s.eVar15
= mediaPlayerName;
s.events
= 'event3';
s.contextData['video.name']
= mediaName;
s.contextData['video.complete']
= 'true';
s.tl(this,'o','Video Complete');
Media.play
s.Media.play(
name,
offset,
segmentNum,
segment,
segmentLength)
N/A
Not available.
Media.stop
s.Media.stop(
mediaName,
mediaOffset)
N/A
Not available.
Media.monitor
s.Media.monitor(s, media)
Set eVar or context data variable in link call.
s.linkTrackVars
= 'events,
prop10,
eVar10,
eVar12,
eVar15,
contextData.
video.name,
contextData.
video.view';
s.linkTrackEvents = 'event2';
Media.track
s.Media.track(
mediaName)
N/A
Not available.
recommendation-more-help
c8eee520-cef5-4f8c-a38a-d4952cfae4eb