michauwilliam
michauwilliam

Reputation: 845

Create VAST Wrapper fallback outside of the player configuration

I'm trying to accomplish the use case described in the VAST 3.0 documentation:

"For example, a Wrapper may redirect the video player to a network for the Ad. If the target network has no ads to offer, if may redirect to yet another network for the Ad."

Basically I have two VAST Wrapper elements, I would like to create a single XML that would:

  1. Call the first wrapper, if there is an ad returned then play it and proceed to the video content.
  2. If the first wrapper has not returned an ad, then try the second one, play ad (if available) and proceed to the video content.

pseudo code:

result = ad1.play()
if result != 'success':
  ad2.play()
video.play()

I was really hoping that the fallbackOnNoAd attribute on the Wrapper element will help me accomplish this, but so far my testing in Google's VAST Inspector reveals that this attribute has no effect. Things I have already tried:

<VAST version="3.0">
   <Ad id="1">
       <Wrapper>
           <VASTAdTagURI>first-wrapper-url</VASTAdTagURI>
       </Wrapper>
   </Ad>
   <Ad id="2">
       <Wrapper>
           <VASTAdTagURI>second-wrapper-url</VASTAdTagURI>
       </Wrapper>
   </Ad>
</VAST>

This results in the correct behaviour, but only if the first wrapper always fails, if it does not, then both ads are played. I would think that adding fallbackOnNoAd="false" to the first Wrapper will block the second from playing (regardless of what happend to the first), but it has no effect.

Another thing I tried is creating an Ad Pod of length 1, and putting the second ad as a stand alone. This part of the documentation made it sound like "if the ad from the pod fails, a stand alone ad will be picked":

"Stand-­‐alone ads may be provided as a secondary choice when the Ad Pod cannot play or when a particular Ad in the Pod cannot play."

<VAST version="3.0">
   <Ad id="1" sequence="1">
       <Wrapper>
           <VASTAdTagURI>first-wrapper-url</VASTAdTagURI>
       </Wrapper>
   </Ad>
   <Ad id="2">
       <Wrapper>
           <VASTAdTagURI>second-wrapper-url</VASTAdTagURI>
       </Wrapper>
   </Ad>
</VAST>

The result is the first ad playing, if correct response is returned, and no ad playing if the response is invalid.

This seems like it would be a pretty common use case, in fact I know that certain players like JWPlayer support it through their own configuration. Does anybody ever accomplished this?

Upvotes: 1

Views: 1499

Answers (1)

Vladislav Radev
Vladislav Radev

Reputation: 11

Your first example should work with Google IMA.

Check this out https://support.google.com/dfp_premium/answer/3007370?hl=en

Upvotes: 1

Related Questions