Conviva Analytics Plugin

Use the Player V4 Conviva analytics plugins (conviva-core-sdk.min.js and conviva.min.js) to track Conviva analytics for Ooyala Player V4.

Run-time Flow During Playback

During playback, a playback event triggers notification about the event to Conviva Analytics.

Supported Players

The Conviva plugin supports integrating Conviva with the Ooyala HTML5 web player versions 4.12.6 and above. The Conviva plugin works with all Player V4 video plugins.


If you want to track bitrate information for analytics purposes, you must use one of the following video plugins:
  • Bitmovin plugin for DASH and HLS (bit_wrapper.min.js) (except HLS HTML5 in Safari)
  • Akamai HD video plugin for Akamai packaged HDS (akamaiHD_flash.min.js)
    Note: The Akamai HD Video Plugin for Akamai Packaged HDS for Player V4 has been deprecated and is scheduled to be disabled. For details and alternatives, see the OVP Release Notes.
  • OSMF Flash plugin for HDS (osmf_flash.min.js)
    Note: The OSMF Flash Video Plugin for HDS for Player V4 has been deprecated and is scheduled to be disabled. For details and alternatives, see the OVP Release Notes.
The HLS and MP4 Main video plugin (main_html5.min.js) does not report bitrate information.


Prior to using the Conviva plugin, you must contact your Conviva representative and request the following account information:
  • your Conviva customerKey
  • the gatewayUrl to use for your account
You will need to specify these values when you embed Player V4 on a web page.

Where to Find the Plugins

The latest version of the plugins are posted in the following path, where LATEST_PLAYER_VERSION is the latest player version (4.12.6 and above):

Integration Steps

To integrate using the Conviva plugins for Player V4:

Step 1: Download and Host the Latest Conviva Plugins

Note: This applies only if you are self-hosting player resources, as described in Hosting Player V4 Resources.
  1. Download the latest version of the following plugins, where LATEST_PLAYER_VERSION is the latest player version (4.12.6 and above).
  2. If you are self-hosting player resources, host the Conviva plugin as described in Hosting Player V4 Resources.

Step 2: Add Conviva Integration on the Web Page

Add the following scripts to the page on which you load the player. Be sure to load these plugins after you load core.min.js.
<script src="url_where_hosted/conviva-core-sdk.min.js"></script>
<script src="url_where_hosted/conviva.min.js"></script>
Note: You must load conviva-core-sdk.min.js before conviva.min.js.

Step 3: Create the Player Using the Create Function

Use the Player V4 OO.Player.create function to create the player. For information on the create function, see

Step 4: Specify Page-level Parameters for the Conviva Plugin

Specify the following page-level parameters.
Parameter Type Description
gatewayUrl String URL used to report player statistics to Conviva Analytics. Issued by Conviva.
customerKey String Customer key associated with your Conviva account. Issued by Conviva.
applicationName String Name of the application to report to Conviva.
customMetadata String Custom metadata to report to Conviva. List of key/value pairs that you define. Examples:
  • user statistics the site can track (age, gender, etc.)
  • other metadata (such as site category)
Custom metadata is passed through to Conviva.


     <title>Conviva Analytics Plugin Example</title>
     <!-- V4 JS core is required. Plugins such as skin, discovery and advertising need to be loaded separately -->
     <script src= "url_where_hosted/core.min.js" ></script>
     <script src= "url_where_hosted/html5-skin.min.js" ></script>
     <link rel= "stylesheet" href= "url_where_hosted/html5-skin.min.css" />
     <!-- A Video Plugin is required. This example shows the Main Video Plugin -->
     <script src= "url_where_hosted/main_html5.min.js" ></script>
     <!-- Analytics Plugins -->
     <script src= "url_where_hosted/conviva.min.js" ></script>
     <div id= "container" style= "width:640px; height:360px;" ></div>
         var playerParam = {
             "pcode" :  "YOUR_PCODE" ,
             "playerBrandingId" :  "YOUR_PLAYER_ID" ,
             "skin" : {
                 // Config contains the configuration setting for the player skin.
                 // Change to your local config when necessary.
                 "config" :  "url_where_hosted/skin.json"
                "gatewayUrl": "",
                "customerKey": "abcde12345customerkey",
                "applicationName": "testAppName",
                "customMetadata": {"testKey": "testValue", "account":"myAccount", "test":"true"}
         OO.ready( function () {
             window.pp = OO.Player.create( "container" ,  "YOUR_ASSET_ID" , playerParam);