Skip to content

MailOnline/VPAIDHTML5Client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

74908bf · Oct 26, 2016
Oct 25, 2016
Jul 9, 2015
Oct 26, 2016
Feb 5, 2016
Jul 2, 2015
Jun 4, 2015
Jul 8, 2015
Jun 30, 2015
Jun 4, 2015
Feb 2, 2016
Jun 4, 2015
Jul 23, 2015
May 12, 2016
Jan 26, 2016
Jan 26, 2016
May 12, 2016

Repository files navigation

VPAIDHTML5Client

bitHound Score Code Climate Test Coverage Build Status devDependency Status

About

JS iframe wrapper for VPAID.

VPAID or Video Player Ad-Serving Interface Definition, establishes a common interface between video players and ad units, enabling a rich interactive in-stream ad experience.

The goals of VPAIDHTML5Client are:

  • common interface for VPAID in different technologies HTML5 and FLASH.
  • handle how to load the VPAID adUnit
  • be a simple and "stupid" implementation of VPAID

check videosjs-vast-vpaid if you need VPAID in videojs

JS

The project uses:

TODO

  • test how will work with a real ad in the demo and test
  • try to use the slot element inside the iframe to see if the ad's will not mess the css of the page
  • validate better if the postmessage and iframe works across browsers

Running the project

  • install nodejs and gulp
  • npm install to install all dependencies
  • gulp serve or npm start to start build script and a demo page should be open in default browser
  • gulp to watch, bundle and run tests
  • npm test or gulp test:ci task used by the server
  • gulp deploy:demo task used to update githubpage with demo and bin

Example of the usage

var vpaid = new VPAIDHTML5Client(el, video, {});
vpaid.loadAdUnit('vpaidAdURL.js', onLoad);

function onLoad(err, adUnit) {
    if (err) return;

    adUnit.subscribe('AdLoaded', onInit);
    adUnit.subscribe('AdStarted', onStart);

    adUnit.handshakeVersion('2.0', onHandShake);

    function onHandShake(error, result) {
        adUnit.initAd(480, 360, 'normal', -1, {AdParameters: currentAd.adParameters}, {});
    }

    function onInit() {
        adUnit.startAd();
    }

    function onStart() {
        console.log('-> AdStarted');
    }

}

License

licensed under the MIT License, Version 2.0. View the license file

Copyright © 2015 MailOnline