npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

vpaid-flash-client

v1.0.2

Published

VPAID Flash for JS

Downloads

2,861

Readme

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