Ad Framework... not playing my ads?

I have DFP set up, and use the following code to request ads from it:


        m.ad_iface = Roku_Ads()
        url_transfer = CreateObject("roUrlTransfer")
        custom_criteria = "sport=" + episode.sport_title.Replace("'", "") + "&category=" + episode.category_name + "&device=roku&device_category=ott"
        m.ad_iface.setAdUrl("http://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=" + m.dfp_ad_tag + "&impl=s&gdfp_req=1&env=vp&output=xml_vast3&unviewed_position_start=1&cust_params=" + url_transfer.Escape(custom_criteria) + "&correlator=ROKU_ADS_TIMESTAMP")
        adPods = m.ad_iface.getAds()
        print m.ad_iface.getAdUrl()
        should_play_content = m.ad_iface.showAds(adPods)

If I curl that url, i get a valid vast3 response with my ad… but when I actually run the code, i get an ad that is not mine. It’s a PBS promo… what’s going on here?

Sounds like it’s playing a Roku ad. Have you called setAdPrefs() to set “useRokuAdsAsFallback” to false (by default, it’ll failover to playing a Roku ad if the VAST doesn’t return an ad). That’d be the first thing I’d try to see if it’s failing for some reason.

Okay, that fixed the fallback, but i’m still not sure why my preroll isn’t rolling.