package
{
import flash.events.Event;
public class VPAIDEvent extends Event
{
public static const AdLoaded : String = "AdLoaded";
public static const AdStarted : String = "AdStarted";
public static const AdStopped : String = "AdStopped";
public static const AdLinearChange : String = "AdLinearChange";
public static const AdExpandedChange : String = "AdExpandedChange";
public static const AdRemainingTimeChange : String= "AdRemainingTimeChange";
public static const AdVolumeChange : String = "AdVolumeChange";
public static const AdImpression : String = "AdImpression";
public static const AdVideoStart : String = "AdVideoStart";
public static const AdVideoFirstQuartile : String= "AdVideoFirstQuartile";
public static const AdVideoMidpoint : String = "AdVideoMidpoint";
public static const AdVideoThirdQuartile : String= "AdVideoThirdQuartile";
public static const AdVideoComplete : String = "AdVideoComplete";
public static const AdClickThru : String = "AdClickThru";
public static const AdUserAcceptInvitation : String= "AdUserAcceptInvitation";
public static const AdUserMinimize : String = "AdUserMinimize";
public static const AdUserClose : String = "AdUserClose";
public static const AdPaused : String = "AdPaused";
public static const AdPlaying : String = "AdPlaying";
public static const AdLog : String = "AdLog";
public static const AdError : String = "AdError";
private var _data:Object;
public function VPAIDEvent(type:String, data:Object=null, bubbles:Boolean=false,
cancelable:Boolean=false) {
IAB Video Player-Ad Interface Definition (VPAID)
super(type, bubbles, cancelable);
_data = data;
}
public function get data():Object {
return _data;
}
}
}
// sample ad dispatch call from a function within ad’s VPAID class
dispatchEvent(new VPAIDEvent(VPAIDEvent.AdStarted));
dispatchEvent(new VPAIDEvent(VPAIDEvent.AdClickThru,
{url:myurl,id:myid,playerHandles:true}));
The player uses addEventListener with a handler function that that receives a * typed
parameter that will be the custom event. To continue the above example:
public function onAdClickThru(event:*) : void
{
trace(“Ad url is: “ + event.data.url);
}
_VPAID.addEventListener(VPAIDEvent.AdClickThru, onAdClickThru);