Elephants and Analytics

"Elephant in the corner" is an English idiom for an obvious truth that is being ignored or goes unaddressed.
  • RSS
  • Home
  • Posts
  • Archives
  • About me
  • Suggest a topic
  • Consulting

Brightcove Video in SiteCatalyst 15

telleston | August 25, 2011

One of the things that stopped many companies from upgrading to SiteCatalyst v15 was the use of video.  Well that’s no longer the case, as v15 Video Measurement has now been fully released and is ready to go.

Video tagging changed from v14 to v15 and an updated way of measuring video was introduced, which required a few more things to be configured before it would actually work.  In my previous post Lights, Camera, Action…Video Measurement, I focused on how easy it was integrating the Brightcove platform for SiteCatalyst v14.

So, this is a functional post on how to integrate video measurement into SiteCatalyst 15, if you’re using the Brightcove platform.

Integrate and measure

There are still only really 10 steps involved:

  1. video_menuFrom your Omniture Reporting Suite admin, download the AppMeasurementExtension.swf file.
  2. Edit your report suite settings to enable video measurement (see below).
  3. Create a config file.
  4. Host the AppMeasurementExtension.swf file and the config file on your server.
  5. Update your crossdomain.xml file to allow brightcove.com.
  6. Upload your video to Brightcove.
  7. Add a setting for your AppMeasurementExtension to be called.
  8. Attach the video to a player and generate the website code.
  9. Add the code to your website.
  10. Play the video through your site and you’re done.

How easy could that be.  No flash programming.  No fuss.

New reports

The new set of video reports are fairly comprehensive.  You can also sub-relate by other eVars, and add in different success events so you can gauge how well they help in converting visitors.  Pathing on the video name also shows which videos they go through.

video_overview_report

subrelated_video_report

eVars, events and s.props

Video in v15 requires that you use a minimum of 4 events, 3 eVars, 1 optional s.prop (and a partridge in a pear tree).  While that sounds like a lot, they actually make much more sense than the old way of doing things.

So, your 3 eVars will be used for:

  • Video Name
  • Segment
  • Content Type

Your 4 events will be used for:

  • Video Time (in seconds) spent watching
  • Video Views
  • Video Completes (100% view)
  • Video Segment Views

It’s also a good idea to use an 3 additional events as well, to track percentage viewed:

  • 25% viewed
  • 50% viewed
  • 75% viewed

(Ok, so that’s actually 7 success events you need).

And your optional s.prop will be used for pathing between the different Videos.

Note: the Video Name eVar requires Full Sub Relations.  Now, on the face of it, that seems a bit weird given that all eVars are now fully-subrelatable. The reason for this is that if you’re running on v14 you can upgrade your video measurement now, while you’re waiting to upgrade to v15. Just note that with full-subs on the eVar, it won’t show up in the list.

Note: the Video Name sProp requires Pathing enabled before it becomes available in the dropdown too.

SiteCatalyst Video Management

In your report suite admin, after you’ve configured all of your eVars, events and s.props, select Edit to go to the new Video Management > Video Reporting section.

You’ll be presented with a list of requirements for Video.

new_video_setup_in_sitecatalyst

When you select the checkbox, the dropdown next to it will appear listing all available eVars, events etc.  The first one, Video Name, will only appear if Full Subs are enabled on the eVar.  You can actually select new eVars and events from the list and it will create them and rename them in your admin console…but, it won’t do the optional events at the bottom.

Once you’ve populated the list of required variables, you can add in the optional variables (s.prop and your 3 percentage viewed events).  The optional events get added at the bottom where it says “Include additional Event”.

Hit save and you’re ready to create your config file.

It’s also a good idea to write them down on a bit of paper, so when you create you’re config file, you’ve got a handy reference.

Ours are as follows:

Standard eVars:

  • Video Name = eVar50
  • Segment = eVar36
  • Content Type = eVar37

Standard events:

  • Video Time Played (in seconds) spent watching = event31
  • Video Views = event32
  • Video Completes (100% view) = event33
  • Video Segment Views = event34

Optional s.prop

  • Video Name = prop23

Percentage viewed events:

  • 25% viewed = event35
  • 50% viewed = event36
  • 75% viewed = event37

The main config file

If you’ve used Brightcove and SiteCatalyst before you’ll know that you create a config file with all of your SiteCatalyst variables declared in it, which is loaded into the AppMeasurementExtension file through the video player.  Easy enough to do.

Simply create a new XML file called config.xml and put it somewhere on your servers.

The file should contain the following:

<config>
<account>your-rsid</account>
<debugTracking>true</debugTracking>
<visitorNamespace>your-namespace</visitorNamespace>
<trackingServer>your-tracking-server</trackingServer>
<media>
<autoTrack>true</autoTrack>
<trackMilestones>25,50,75,100</trackMilestones>
<trackVars>events,eVar50,eVar36,eVar37</trackVars>
<trackEvents>
event31,event32,event33,event34,event35,event36,event37
</trackEvents>
<segmentByMilestones>true</segmentByMilestones>
<trackUsingContextData>true</trackUsingContextData>
<contextDataMapping>
<a.media.name>eVar50,prop23</a.media.name>
<a.media.segment>eVar36</a.media.segment>
<a.contentType>eVar37</a.contentType>
<a.media.timePlayed>event31</a.media.timePlayed>
<a.media.view>event32</a.media.view>
<a.media.segmentView>event34</a.media.segmentView>
<a.media.milestones>
<item name="25">event35</item>
<item name="50">event36</item>
<item name="75">event37</item>
<item name="100">event33</item>
</a.media.milestones>
</contextDataMapping>
</media>
</config>

As you’ll immediately notice, the config.xml file got a whole lot longer than the original.

The context data mapping section describes each variable and the name.  I found it easier to make a list of the names and values, write them down, then check them against my config when I’d finished, just to make sure everything was in the right spot.

Notice that event33 (our Video Complete event) is matched against the item.name=”100”.

AppMeasurementExtension

The next part is downloading the latest AppMeasurementExtension.swf file from your code repository inside  SiteCatalyst.  Once you’ve downloaded it, you need to upload it onto your server somewhere.

Brightcove

When you’ve uploaded your video to Brightcove, you edit/create a new player to include a custom plugin.

brightcove_player_settings

The plugin needs to know where the App Extension and Config file is.  This demo is located at:

http://www.elephantsandanalytics.com.au/omniture/
AppMeasurementExtension.swf
?s.configURL=www.elephantsandanalytics.com.au/config.xml

Note that this is all on one line.

And that’s pretty much it.  Again, how easy was that.

Now when you browse the video, and use something like Fiddler or WASP, you’ll see a number of new calls being made to the Adobe Omniture servers, at the beginning of the video play, during the plays and at the end.

Happy video’ing.

Related Posts

  • Time spent by Traffic Source
  • Flowplayer and SiteCatalyst v15
  • Success Event Pathing
  • What are our members doing?
  • Hello 15!
  • Elusive engagement – Part II – Visitor scoring
  • Deeper internal search insights that’ll help with content needs
  • Moving beyond business-based segmentation
  • Migration frustration – SiteCatalyst 15
  • New products announced at Adobe Omniture Summit 2011
Tim Elleston is Director at Digital Balance. You can follow him on Twitter at http://twitter.com/timelleston. Please feel free to use the comment facility below.
Categories
SiteCatalyst
Tags
appmeasurementextension, Brightcove, video, video integration, video measurement
Comments rss
Comments rss
Trackback
Trackback

« What are our members doing? Search & Promote the implementation, part 1 »

15 responses

Toby | August 29, 2011

Hi Tim,

Nice post. We are currently looking at this atmo. Two questions come to mind;

1) From your understanding, what are the options as you understand it using the method above for setting when the players sends Omniture server calls?

In our applications, we need to control costs around tracking long form videos with pre-, mid- and post-roll ads and would prefer only to send through data at the start of each ad or content segment. Our current Sc14 tracking implementation had to be custom created in order to achieve this. I’m wondering if Sc15 standard tracking will achieve this.

2) Will the above method also cater for the HTML5 players that Brightcove can auto-deploy using their client-aware smart player switching, or would we have to code a separate js-based tracking solution for these?

Happy for you to say ‘don’t know’ to either, and I’ll take up the questions with Omniture ClientCare

Cheers,
Toby

Jai | September 9, 2011

Hi Tim,

This is a very clean blog post. I got the url from a webinar hosted by Semphonic. I have the same question as Toby about HTML5 players. Since swf method will not work for HTML5 players, do you have any tips on video tracking with HTML5 players?

THanks
Jai

Tim Elleston | September 18, 2011

Hi Toby and Jai. You both raise good questions and to be honest, I don’t have an answer to that at the moment. If I get some spare time, I’ll check into it though and post back something if I find a solution.

Patrick Brown | February 14, 2012

Hey Tim,

Great post, but there are some errors in your XML file. If the node names aren’t capitalized properly the tracking won’t work.

For example, the following XML nodes should be mixed case:

debugTracking
visitorNamespace
trackingServer
Media
autoTrack
trackMilestones
trackVars
trackEvents
segmentByMilestones
trackUsingContextData
contextDataMapping

Tim Elleston | February 14, 2012

You’re absolutely right Patrick – my error in the post. The actual config file does have the correct capitalisation – thanks for pointing that out and I’ll update it shortly.
Cheers
Tim

Phil Almeida | March 10, 2012

We have just gone through this exercise on one of our players to test it before moving ahead with a wide spread roll-out.

What is unfortunate about this is that, rather than feeding the Brightcove Video Name into whatever prop/evar represents the Video Name in the Sitecatalyst reporting, what gets passed is the Brightcove Video ID prefaced with the Brightcove API version, like this:

Video by Player
1 Brightcove 3:1323832461001
2 Brightcove 3:1402642239001
3 Brightcove 3:1350747819001
4 Brightcove 3:1313014035001
5 Brightcove 3:1395327953001

This is not particularly useful to anyone. Even if they had a way to correlate the video ID to an actual video name this greatly limits the usability of this information to end users.

If you know of a way to change this, one that does not involve uploading classifications, but rather adjusts things so that what gets passed initially is the Brightcove Video Name and The actual player name instead, it would be really great to see a follow-up post from you on that.

Tim Elleston | March 26, 2012

Phil, unfortunately, there isn’t a way I know of that passes the friendly name of the video through. That’s definitely a pain as you need to use classifications to get reports nice. It would be great if more people approach Brightcove to enable this though.

Phil Almeida | March 30, 2012

It’s a social world we are living in.

http://www.facebook.com/Brightcove

If you would like to see this change put into action then you can ‘like’ the comment which now appears on their Facebook wall or add your own.

P.

Pavan Prasad | May 2, 2012

We are also facing the same issue of Video Name not getting populated. The AppMeasurementExtension.swf needs to modified to facilitate this.

Secondly, you will need to ensure that you are providing the correct value for visitorNamespace and trackingServer if you are not using the normal Brightcove analytics engine.

Pav.

Sunghee | June 1, 2012

Hi,

is there any reason using below for Video Complete event, when I saw the implementation guide, there is a tag for Video Complete event like event33 ?

Notice that event33 (our Video Complete event) is matched against the item.name=”100”.

Sam G. Daniel | July 14, 2012

@Tim,

Did you find a way to track videos for HTML5 players?

Sam

Tim Elleston | July 16, 2012

Hi Sam, no unfortunately I’ve not had the time yet to play with the HTML5 player. If I do though, I’ll post something here.

John Mark Thrasher | August 2, 2012

Is it possible to set the account (reporting suite ID) dynamically? I need to use the same video player on multiple sites, each with its own SiteCatalyst reporting suite ID. I’d hate to have to create separate players for each site, when the only difference is the account variable.

Tim Elleston | August 2, 2012

Good question John. I’ve not tried that, but, as the report suite id is effectively hard-coded into the config.xml, it would certainly make changing it dynamically a problem. Have you tried raising that request through Client Care to see what they say?

Nick Breen | October 5, 2012

What reference have you used to construct your config.xml document?

Leave a comment

You can use these tags : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Adobe Certified Expert - Omniture Implementation
Adobe Customer Advisory Board

Come and see us…

Come take a look at what we're up to at digital balance

Join the elephants email list

Sign up to receive emails about new posts



* = required field
unsubscribe from list

powered by MailChimp!

Suggest a topic

If you'd like me to write about something specific, let me know

Search

Analytics

  • Brightcove
  • Omniture
  • Omniture Blogs
  • The Omni Man Blog
  • WebAnalyticsLand

General Links

  • Murdoch University

Recent Posts

  • Discover v3 – it’s the new black
  • The Google sampling effect
  • Time spent by Traffic Source
  • Flowplayer and SiteCatalyst v15
  • Test&Target versus Google Website Optimizer

Categories

  • Basic metrics (3)
  • Discover (5)
  • SAINT (2)
  • Search&Promote (3)
  • SiteCatalyst (33)
  • Strategies (10)
  • Test&Target (3)

Tags

basic metrics behavioural targeting bounce rate Brightcove campaigns campaign stacking content relevance Conversions Data warehouse Discover engagement evars fundamental metrics getPreviousValue plugin implementation internal search keywords measurement strategy measuring engagement Omniture optimisation optimization page views pathing props saint Search Segmentation seo SiteCatalyst Strategies strategy targeting content Test&Target Testing time on site value video visitor engagement visitor ID visitor interaction visitors visitor scoring visits web analytics strategy

RSS Our thoughts at Digital Balance

  • Has Google shot themselves in the foot?
  • Action is the antidote to fear
  • What is it that makes a good digital team great?
  • What to do when inspiration doesn’t strike
  • Is your kitchen humming along?
  • I didn’t listen to my own advice
  • I didn’t mean to get distracted
  • 5 simple steps to make it count
  • how to make sure everyone is created equal in an agency relationship
  • It took a rush of Coldplay’s blood to the head get me started
rss