Video Custom Cue Tracker: BrightCove Extension documentation
Each Launch property needs the following extensions installed and configured in the Extension screen:
- Adobe Analytics
- Experience Cloud Visitor ID Service
- Core extensions installed
Per https://studio.support.brightcove.com/publish/choosing-correct-embed-code.html , use the "In-Page embed code (Advanced)" code snippet in the HTML of each Web page where a video player is to render. See also: https://studio.support.brightcove.com/players/generating-player-embed-code.html
While this extension version 1.1.0 supports embedding multiple BrightCove videos on a single Web page, be sure that the id property within the advanced embed tags, if they exist, have different values, like: player1 , player2 , and so on.
On pages with multiple videos, note that each video uses the same configuration set in the Launch rule executing on that page. For example, if you create a rule with an event that triggers on a video that is 50% complete, each video on the page triggers the rule at the 50% cue point.
There are seven data elements available within the extension, none of which require configuration.
- Playhead Position: This data element records the place, in seconds, of the playhead position on the video timeline, when it is called upon within a Launch Rule.
- Video Account ID: This data element records the ID of the Brightcove account that published the video.
- Video Duration: This data element records the total duration, in seconds, of the video content. Additionally, a Calculated Metric can be created within Analytics to convert the number in seconds, to minutes or hours.
- Video Ad Support: This data elements specifies whether ads are supported within the video or not.
- Video ID: This data element specifies the BrightCove ID associated with the video.
- Video Name: This data element specifies the descriptive, or friendly name of the video.
- Video Tags: This data element specifies the tags associated with the video.
There are seven events available within the extension, only Custom Cue Point Tracking requires configuration.
- Custom Cue Point Tracking: This event triggers when the video reaches the specified video threshold percentage. For example, if a video is 60 seconds and the specified cue point is 50%, the event triggers at the 30 second mark. Please note that this event triggers every time this cue point is reached. For example, if the user reaches the 50% mark, seeks the video before the 50% mark then reaches the 50% mark again, the trigger will fire again.
- Video Completed: This event triggers when a video fully-completes.
- Video Loaded Meta Data: This event is fired when the player has received initial duration and dimension information.
- Video Pause: This event triggers when the video is paused.
- Video Resume: This event triggers when the video content is resumed after a pause event.
- Video Screen Change: The event triggers when the video switches in or out of full screen mode.
- Video Start: This event triggers when video content starts for the first time.
There will be one Launch Rule for every Video Event (the seven events listed above). Create a specific Launch rule for each event you want to track. In other words, if you don't want to track Video Pause, don't create a rule for it.
The rules have three actions:
- Set the Adobe Analytics variables. (Create Data Elements for all or some of the Data Elements listed above.)
- Send the Adobe Analytics beacon.
- Clear the Adobe Analytics variables.
Example Launch Rule for "Video Start"
The following Video Extension objects are to be included:
- "Video Start": This event causes the rule to fire when the visitor starts playing a BrightCove video.
- In an Analytics "Set Variables" action, set:
- The event for Video Start (example: event17)
- A prop/eVar for the Video Name Data Element (example: eVar10)
- A prop/eVar for the Video Duration Data Element (example: eVar11)
- A prop/eVar for for the Current Video Place Data Element (example: eVar12)
- The Analytics "Send Beacon" action ( s.tl )
- The Analytics "Clear Variables" action
var r = ; r.push( \_satellite.getVar( 'Video ID' ) ); r.push( \_satellite.getVar( 'Video Name' ) ); r.push( \_satellite.getVar( 'Video Duraction' ) ); return r.join('|');