Companion ads for preroll for Brightcove videos - google-dfp

I have a companion ad of 300X250 scheduled to be playing with a certain preroll ad through dfp. When the brightcove video is played, the preroll starts and it should be displaying the companion ad in the neighboring div as well but it isn't doing so currently.
I have tried using the gpt calls for companion cube ads as detailed here https://developers.google.com/interactive-media-ads/docs/companions/companions-gpt as well as using the brightcove 'bcsyncroadblock' callback function as detailed here http://support.brightcove.com/en/video-cloud/docs/working-vast-20-external-companion-ads but haven't been able to get the companion ads to load.
Would appreciate inputs from anyone who has encountered/resolved a similar issue.

The IMA libraries do handle all the companion interactions. If you're using IMA3 as the ad source for an ad-enabled Video Cloud player, the first link you used would be the best resource. I was able to get this working by following that procedure:
https://developers.google.com/interactive-media-ads/docs/companions/companions-gpt
In the Advertising Module of Video Cloud, I set the ad server URL and chose DFP IMA3 as the ad source.
Next, I copied the Javascript publishing code for the player and video from the Media Module's Quick Publish feature.
I then pasted that player code into the of the page code from Example 2, above the for the companions.
To rule out an issue with ad trafficking, I would start out with DFP's Sample ad tag as I did. A sample is available from the DFP VAST inspector:
https://developers.google.com/interactive-media-ads/docs/vastinspector_dual
Currently the sample ad tag provided is below, you can add this as your test player's Ad Server URL in Video Cloud Studio:
http://pubads.g.doubleclick.net/gampad/ads?sz=400x300&iu=%2F6062%2Fiab_vast_samples&ciu_szs=300x250%2C728x90&gdfp_req=1&env=vp&output=xml_vast2&unviewed_position_start=1&url=[referrer_url]&correlator=[timestamp]&cust_params=iab_vast_samples%3Dlinear
If the above test works but your ads aren't, you may need to review what size ad slots you are using and need, and get a bit more into the Google code.
The VAST companions roadblock feature is not active in the case of IMA ad source, so those instructions won't work.

Related

Interstitial ads with Google ad manager

Since Google ad manager (former dfp) does no longer support synchronous tags, how should I run interstitial (or expandable) ads?
I've tried a template from richmediagallery (Manzoni Intro Fullscreen) but it does not work even if I set it up with defineOutOfPageSlot. The iframe, inside which the ad is displayed, is always 1x1px, and it never exapnds to full screen. The template works only when displayed stand alone and not from dfp.
Enabler.requestFullscreenExpand() inside the ad has no effect on the parenting iframe.
How do I force iframe to expand?

How to set up avatar for google group?

We are using Google Groups for managing access to our Google resources like GDocs, GDrive, Youtube videos etc. It works great, but we would like to set up avatars for them. Currently it looks ugly:
So, how can I change default pics for my groups? I was trying to find this feature in GGroups UI or support pages - no result.
As of Sept 2021 it's not possible for a Google Group to have an avatar. It only shows a generic photo.
Please go here to request the feature: https://www.googlecloudcommunity.com/gc/Feature-Ideas/cmp-p/grouphub%3Aworkspace-ideas-group

SoundCloud API Streaming fail blank page

There seems to be a silent fail when trying to stream tracks from an account.
Example:
API Gee console:
https://api.soundcloud.com/tracks/#####.json?consumer_key=###
Response: 200
Streamable: true
API Console Stream URL:
https://api.soundcloud.com/tracks/#####/stream?consumer_key=###
404 not found - (Blank white page no error in browser)
Track set to public and API streamable - All tracks on account, which were streaming as normal until the end of last week.
The consumer key works for tracks by other users, so it could be linked to this account directly?
For those coming here for an answer to this problem, it is a known bug when a song reports streamable: true yet results in a blank white page in browser when trying to stream. The bug is in the streamable boolean being false.
Email response from SoundCloud on this issue:
The developers have let me know that the problems you are having is
due to issues with RTMP.
Currently certain content on SoundCloud is using a secure streaming
method called RTMP.
To explain RTMP, even if a track is set to public and streamable by
the artist, if the artist is under a major label, this label can
further control those streaming permissions. So, it looks like it
should stream correctly, however it doesn't.
This particular bug that you have highlighted is more complicated than
originally thought, and as only a handful of tracks are affected we
unfortunately don't have the resources to dedicate a team entirely to
this project as of right now.
So unfortunately you'll just have to deal with/work around this issue.
I've noticed that i get blank page for stream url of tracks which are in "wav" format:
<original-format>wav</original-format>
other formats were working fine.
Not sure what track you're trying to stream. Some tracks are set by the artist to not be streamed.
You got the format for the url correct. Try this url with your own consumer key:
http://api.soundcloud.com/tracks/32476280/stream?consumer_key=[###]
After being in touch with the support team at SoundCloud, they provided the following:
The problems you are having is due to the content and rights holders.
To explain, profile admins have the ability to change settings as they
like, so if the tracks have stopped playing, it's likely that they
have disabled apps on the track or content. This means that the rights
holders, that own all of this content, have turned this setting off,
and we don't have control over it or the ability to enable it again.
They managed to get my "API permissions extended" because the rights holders own the SoundCloud account in question. It seems there was just a mistake somewhere along the way with denying streaming.
You'll need to log an issue with SoundCloud support if you have a similar problem.

Double-click ad unit lookup for div failed (DFP error)?

Just added double-click DFP ads to a friend's site. Realized that only one of four ads are appearing. Although the status of all 4 ads are "active", 3 are not appearing.
I ran the DFP debugger and got this output:
Ad unit lookup for div div-gpt-ad-1327994622973-0 failed.
Div div-gpt-ad-1327994622973-0 is not mapped to a known ad unit.
It doesn't appear to be a javascript issue, but the code for these ads was taken directly from the "generated tags" and these units are active. This occurs in multiple browsers.
Could this be a caching issue? How can a cache buster be implemented for ads only? Thanks.
Google doesn't seem to have extensive documentation on the causes, but when you have more than one DFP ad on the same page, you MUST modify the code in your <head> and avoid using the individual code generator with each ad unit because it will alter the ad IDs each time.
Easy Steps
under inventory select "generate tags" under the left column nav
you will now see a list of ad units
select ALL ad units and generate all at once
copy the head code into the head area of the page
copy the body code for each ad into the proper area of the page.
Important Notes
Include all ads in both <body> and <head>
Generate all ad tags at once, not individually

How does facebook's Share a link feature work?

I'm trying to implement a feature like that where a user inputs a url and when displaying that url I want to have a custom display (an embed object if it's a video from youtube, a thumbnail if it's an image link, title and excerpt of body if it's a normal link).
How can such a feature be realized?
There is a new idea called oEmbed that a few sites support (Flickr, Vimeo and a few others) that addresses this problem. oEmbed site
Otherwise, just check the site against a list of ones you pick and then pull out the relevant bits to construct an embed link.
I liked the idea of oEmbed a lot but unfortunately it doesn't has that much adoption yet.
oohEmbed tries to solve this issue by building oEmbed for many websites.
For the feature to work, it needs the server's interaction where I believe the following scenario is how it works
Assume that we have the site humanzz.com and that it provides such feature
A user enters a url on the humanzz.com's webpage and presses a button like facebooks' preview button
An AJAX call is made to a dedicated page on humanzz.com
humanzz.com does calls the remote website and gets its data
The AJAX call now returns the page's data (oEmbed JSON object)
This involves so much server's overhead.
I really wanted to do it using JavaScript as the server's role was only to bypass "Same Origin Policy"'s restrictions.
oohEmbed allows bypassing the server's step by specifying a callback parameter to oohEmbed so that the JSON object returned is passed to a callback function on your page.
An example illustrating this is as follows
Add a script tag dynamically to your page
< script type="text/javascript" src="http://oohembed.com/oohembed/?url=http%3A//www.amazon.com/Myths-Innovation-Scott-Berkun/dp/0596527055/&callback=myCallBack">< /script>
This would result in executing myCallback(oEmbedJSONObject) which is great.
The problem with that solution is you still have to have a fallback for websites that don't have oEmbed representations.
For the embedded things, I have been using auto_html ( https://github.com/dejan/auto_html) with great success (vimeo, youtube, images) and even added soundcloud myself. But I am still looking for a "thumbnail" generation with an image and text facebook-like.
I guess you have to construct it by yourself by manually parsing the kind of URL you get.
If it is an image url, well then you just have to rescale it and in case the user clicks on it, then handle that by opening the original one somehow.
If it is a link to some youtube video, then you have to take a look at how the embedding of Youtube videos works. You can just copy the code that is provided by Youtube itself, and then exchange the parts with the URL to the video with the URL you got from your user.
I did never implement something like that, but I assume it should work somehow like this.