Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

vpaid-flash-client

Package Overview
Dependencies
Maintainers
4
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vpaid-flash-client

VPAID Flash for JS

  • 1.0.2
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
646
decreased by-3.44%
Maintainers
4
Weekly downloads
 
Created
Source

VPAIDFLASHClient

bitHound Score Code Climate Build Status devDependency Status Test Coverage

About

JS + Flash 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.

Because some of the ad's are in flash, this projects will allow to expose the api to be used by js.

JS is responsible of:

  • create a uniqueid for the vpaid and request swfobject to load the swf
  • to do the bridge between vpaid api between flash and js using ExternalInterface
  • for security reasons the swf will not be allowed to communicate with flash if not excuting in the server

Flash is responsible of:

  • load the ad Unit
  • expose ad Unit interface to outside
  • using the uniqueid to identify the swf

The goals of VPAIDFLASHClient 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

TODO

JS

The project uses:

Flash

Flash is compiled using Flex SDK.

Debug

  • when creating a VPAIDFLASHClient instance the last parameter is debug, if this flag is set to true, will create a visual textfield that allows to show errors
  • as well if the js+flash is working all errors catch by the VPAIDFlash.swf will be sent to js
  • other error's can be caugth with Flash debugger

Flash debugger

Allows to flash to throw errors in a popup like window. To install go to adobe support page and install the flash player with content debugger in the name for the correct OS. PS:

  • in Google Chrome the Flash debugger is not working (the last time I tried), I found an issue in chromium, so install in Firefox or other if not working for you in Google Chrome.

Running the project

  • install nodejs, bower and gulp
  • npm install will to install all dependencies
  • bower install will install swfobject, if you run npm install will execute as well bower install using postinstall
  • ./flexSDK.sh will install in vendor folder flex sdk that will allow to compile flash without needing flash, flash builder or flashDevelop
  • 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

Example of the usage

var flashVPaid = new VPAIDFLASHClient(element, flashVPAIDWrapperLoaded);
function flashVPAIDWrapperLoaded(err, result) {
    if (err) {
        //handle error here
        return;
    }

    flashVPaid.loadAdUnit('TestAd.swf', function (error, adUnit) {

        if (err) {
            //handle error here
            return;
        }

        adUnit.on('AdLoaded', function (err, result) {
            console.log('event:AdLoaded', err, result);
            startAd();
        });

        adUnit.on('AdStarted', function (err, result) {
            console.log('event:AdStarted', err, result);
            checkAdProperties();
        });

        adUnit.handshakeVersion('2.0', function (err, result) {
            initAd();
        });

        function initAd() {
            adUnit.initAd(0, 0, 'normal', -1, '', '', function (err) {
                console.log('initAd', err);
            });
        }

        function startAd() {
            adUnit.startAd(function (err, result) {
                console.log('startAd call', err, result);
            });
        }

        function checkAdProperties() {
            adUnit.getAdIcons(function (err, result) {
                console.log('getAdIcons', result);
            });
            adUnit.setAdVolume(10, function (err, result) {
                console.log('setAdVolume', result);
            });
            adUnit.getAdVolume(function (err, result) {
                console.log('getAdVolume', result);
            });
        }

    });
}

for the api of VPAIDFLASHClient check VPAIDFLASHClient.js, for adUnit api check IVPAIDAdUnit.js.

License

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

Copyright © 2015 MailOnline

Keywords

FAQs

Package last updated on 13 May 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc