Standard Digital Creative Specs Doc

Creative sizes:

120x600 - Skyscraper

160x600 – Super Skyscraper

728x90 - Leaderboard

468x60 - Banner

300x250 – MPU

234x60 – Half Banner

180x150 - Button

Flash Guidelines:

File should not exceed 30k

Has a backup .gif image

Creative MUST contain an invisible button that covers the entire ad unit that contains the action script: on (release) { getURL(clickTAG): }

HTML:

Code must not exceed 3k

No more than 2 images

Form tag in the HTML code MUST include “get” in the method

CGI’s referenced in the HTML code MUST BE active

For any flash ads (.swf files) this is how our click tags work:

on (release) {
getURL (clickTAG, "_blank");
}

Newer versions of Flash (Flash 7 or higher) are case sensitive and require that we enter a ClickTag variable that matches the exact same case as the ClickTag variable coded in the creative. If they don't match exactly, the creative may not click through properly, so therefore we would like confirm that your variable is clickTag.

DoubleClick Flash and Adserving Guidelines

Preface

This document is intended for Flash developers who are building advertising elements that will be delivered through ad servers. Although the concepts presented are relatively simple, a basic familiarity with Flash construction using layers, buttons, and the Actions Window is assumed. If those topics are unfamiliar, please refer to the Macromedia Rich Media Advertising Topic Center located at: http://www.macromedia.com/resources/richmedia/tracking/

Considerations

Some forethought should be given during the design and development phase of a Flash creative about the actual implementation process. Such considerations include:

What area is meant to be clickable

How many destination URL’s will be used

How to handle non-Flash users

Are there embedded movies

Is the ad dependent on external movie loads

Clickable Areas

Smooth animations, clean graphics, and multi-dimensional areas may be the benefits of using Flash, but the benefit to Advertisers is a user that clicks through. Since ad servers have proprietary tracking and reporting mechanisms, it is necessary to utilize a sufficiently generic methodology that will allow an ad server to append it’s tracking to a .swf file.

Although Flash MX has made text linking with URL’s much more user-friendly, for the purpose of ad-serving all text should be converted to a button using the “Convert to Symbol” option. Likewise, any other graphics or mask layers that are intended to be clickable should be converted to a button.

A mouse action can now be assigned to the button. It is imperative that URLs not be hardcoded into the creative, since an ad server will be unable to modify an exported .swf file. However, by utilizing the getURL () action for the button, Flash is able to reference the destination URL from it’s HTML wrapper, where an ad server can freely interact with the content. DoubleClick specifies this URL by the variable name “clickTag”. Be sure to follow the spelling exactly, as JavaScript is case-sensitive.

After highlighting the button to be clicked, open the Actions Window, and select the getURL method for the button. Under the options portion of the Actions Window, specify “clickTag” for the URL, and check the “Expression” box next to it. This designates clickTag as a variable name and not a text string, so that Flash will interpret the URL properly. Set the dropdown box for “Window” to “_blank”. DroubleClick utilizes iframes for ad serving, and this value will spawn a new browser window for the click instead of altering the content inside the iframe.

Multiple Destinations

If the creative contains several areas that are clickable but point to the same destination, the clickTag variable can be reused. However, if each clickable area needs to be tracked separately, or if the creative contains unique destinations for each button, then the clickTag variable needs to be unique as well. This can be accomplished by placing an integer at the end of each clickTag that will increment for each corresponding area. Thus, if there are three clickable areas, there will be three unique clickTag values: clickTag1, clickTag2, and clickTag3.

During the ad creation process within Doubleclick, each of these destinations are created and assigned their respective destinations. They are then automatically added to the flash HTML wrapper and given tracking codes.

Non-Flash Content

Although Flash plugins are nearly ubiquitous, there will undoubtedly be platform combinations that are inhospitable towards towards Flash creatives. Standard gifs of the same size and message are a mandatory deliverable as alternate content for browsers with incompatible plugins, or don’t support javascript and/or iframes.

Embedded Movies

If a portion of the Flash creative contains an animation that is compiled into separate movie, and this animation contains a clickable area, it will follow a slightly different syntax in the getURL method. In order for the animation to reference the click-through, it must trace the hierarchy up through the parent creative and out to the html wrapper. This is achieved by appending “_parent.” or “_root.” to the variable “clickTag”, as in: getURL(_parent.clickTag) or getURL(_root.clickTag).

Security Issues

With the distribution of the Flash 6/MX plug-in, Macromedia instituted a security policy known as a “sandbox”. The intention is to prevent unwanted or malicious code from attaching itself to a flash file. The requirement is that all dependent pieces of a creative must originate from the same domain.

Compiling all flash elements into a single creative is the simplest method for compliance with this policy. However, if a creative is sufficiently complex that a loadMovie() method is necessary to meet publisher filesize requirements, there are steps to circumvent this policy.

In order to serve movies with multiple elements over a third-party ad server, all pieces must be uploaded into the ad server, and references to those elements within the original flash file must contain the directory path specified by the ad server. Clickable elements in the currently running timeline can append “_root.” to the clickTag variable (identical to the method discussed previously), whereas embedded and externally loaded movies will require “_parent.” appended to it’s variable references.

These elements are then served into an embedded iframe, thus complying with the same domain requirement. Please contact an DoubleClick Technical Specialist for details about the upload process, directory names, and implementation details.

Macromedia has suggested another precaution regarding the “sandbox” security model. In order to prevent malicious use of the “javascript:” href tag, Macromedia suggests adding an Action Script test to determine if the clickTag variable starts with the phrase “http:” rather than “javascript:”. By placing a conditional test before the use of getURL, this situation can be avoided:

on(release) { if (clickTag.substr(0,5) == "http:''){ getURL(clickTag, "_blank"); } } DoubleClick’ use of iframes makes this a highly unlikely scenario, but this information is provided for clients who have specific security concerns.

How to Code Click Tags in Flash

It is beneficial to make sure your click tag is embedded within a button upon release. It is highly recommended to use the on(release) action. Other actions have been known to be blocked by various toolbars.

Your click tag should look something like this : getURL (_level0.clickTag, “_blank”)

It is beneficial to add the “_level.” , in front of “clickTag” because often times DoubleClick will not recognize the clickTag unless it is brought to a Parent level in the Flash.

Macromedia/Adobe Flash Trafficking Guide (DFA)

Summary:

On January 11, 2001, Macromedia (now known as Adobe) announced a method to track clicks on Flash ads with the use of variables. Previously, the click tracking string had to be embedded into the Flash movie (swf file).

The method shown at, http://www.macromedia.com/resources/richmedia/tracking/adserving_guide/, illustrates using variables to pass the click tracking string into Flash movies. If the files adhere to the method shown on the site, the same set of files can be reused for multiple campaigns, different sites, and different ad serving networks.

Please note that some sites have specific Flash requirements. In these instances, the site's requirements should be followed instead of the DART requirements. If you have questions as to whether to follow a site's requirements or DARTs requirements, please contact your Technical Account Manager.

This document describes the method in general and also provides information specific to implementing this method with DoubleClick DART ad serving technology (ie Flash Rich Media templates).

Discussion:

SWF Movie Requirements (for the Flash developer)

Please note that for some sites, the site's specifications may be more stringent and should be followed instead of the below information.

For the most part, the movie is made just like any other Flash movie. Any SWF file specifications provided by the site still apply. Any animation or ActionScript that you would normally use can be used with this method. The main difference is in the settings for click through (getURL) actions.

DART swf file requirements (summary):

Flash version	6 or higher is highly recommended
filenames	All lower case characters without ampersands, asterisks, slashes, spaces, or question marks.
maximum file size	39,000 bytes (However sites might restrict the file to a smaller size. DART may also restrict the filesize. Check with your Technical Account Manager.) For additional options, such as Motif or allowing larger filesizes, contact your Technical Account Manager or Account Management team as there are associated costs and setup involved with these options.
getURL actions	In general: The URL should be _root.clickTag or _level0.clickTag (depending upon the preference of the creative team) The URL is set for an expression. The target window is set to "_blank". Advertiser URL is typically passed into flash and not hard-coded In some versions of Flash (7 and higher) the variable is case-sensitive, DCLK specifically uses clickTag

There are some special situations that have different requirements. Some examples of these situations are:

Clicking on the Flash creative launches a pop-up window

Using FSCommands to communicate between the browser and the Flash creative

Sending variables from the Flash creative to the click through URL

Please reference the list of Related Articles for these special situations.

DART swf file requirements (details):

Flash version

Due to recent newer versions being released and the need to support variables, it is highly recommended that you use Flash 6. Older versions can be used (Flash 4 and Flash 5) but they are no longer recommended as most users have the Flash 6 or higher plugin installed.

Filenames

Because the creatives are served over the Internet, certain characters should not be in the filename. These characters cause problems when the creative is served over the Internet. These characters include:

ampersands	&
asterisks	*
slashes	\ or /
spaces
question marks	?
pound	#

Additionally, to be safe, all the characters in the filename should be in lower case.

Maximum file size

DART for Advertisers has a file limit of 39,000 bytes (39KB), unless the Network limit has been increased. Each file should be less than 39,000 bytes. A large movie can be split into multiple 39,000 byte files. However, the ActionScript code in the movies needs to pass on click tracking variables. Please contact DART Support for more information. Additionally, DART may impose file size upload restrictions. If you need to confirm your filesize upload limit or need to modify it, check with your Technical Account Manager. This includes increasing your filesize limit or requesting that your Network be Motif enabled. One last thing to consider is that a publisher/site may have additional requirements and those may take precedence to the DART Network settings (i.e. the site may require filesizes of no more than 15,000 bytes)

GetURL actions

As mentioned previously, DART uses the variable clickTag and it should be placed in the ActionScript code exactly as listed for the URL in a getURL action. As recommended in Macromedia's Rich media Tracking Kit, clickTag can be used for both the click tracking string and the URL together. The HTML and sniffer code will have both clickTag and the URL. As a result, this variable will be used in place of an actual URL in Flash and should be listed as either "_root.clickTag" (without the quotes) or "_level0.clickTag" (without the quotes). The _root or _level0 part is included for 'pathing' purposes - to ensure that Flash can properly locate the variable. To learn more about variables and their paths refer to:

http://www.macromedia.com/support/flash/ts/documents/varpath.htm

There are a few ways to define the clickable action. One is to use as a function inside a Frame, another is to use the getURL in a Button action directly. Below are a couple of rough examples of this coding.
Defined as a Button Action, assigned to a Button Object in Flash -
on (release) {
getURL (_level0.clickTag, "_blank");
}

Defined as a Function call in a Frame Action, assigned to a named Object/Button (buttonClip) inside the Flash -
buttonClip.onRelease = function () {
getURL (_level0.clickTag, "_blank");
};
Most rich media advertising is served through a separate frame, an iframe, or via JavaScript, allowing a site to rotate ads. Because of this, it is recommended that you define a target window for the click through URL - usually set to be "_blank". This will open a new browser window. If you define this a "_top" or something else, the landing page may load inside the current browser window or one of the Frames/IFrames defined in the current view. If the target window is set incorrectly, the advertiser's site might appear in the wrong window. Please note that if you leave the target statement undeclared, the landing page will open in the current frame or browser window, by default.

When the click through occurs, the browser will first contact the ad server to count the click and then go to the advertiser's site. If you need to passing variables to the advertiser's site, it is recommended to use the GET method, which essentially appends these variables and values as a query string to the end of the click thru URL. If the advertiser's servers cannot use the GET method for variables, please see KB 1692 for the POST method workaround for Flash (also listed in the Related Articles section at right).

Implementing the ad in DART (for the DART trafficker)
DoubleClick recommends using the predefined Rich Media Templates whenever possible. These have been extensively tested and remove the 'human error' element from the trafficking process. In addition, most of the Templates include additional code that handles items such as the EOLAS patch for Internet Explorer, as well as allowing for items such as Survey tag code. The Templates most used are:
Banner Creative (Flash)
This template is the most used template and generally considered for simple Flash banners with GIF backup.
Banner Creative (Flash) - In Page Multiples - BETA
This is a newer template, that allows for passing multiple click throughs as well as multiple child movies. It uses FlashVars to pass these values as variables so that character limits are not a consideration.
If there is a situation where one of the standard Templates cannot be used or if there is a particular business reason for not using a Template, you can certainly use HTML sniffer code. It is highly recommended that this be created by your creative team and tested fully before being placed inside DART. Once the code has been tested, you copy and paste the HTML code into the Rich Media Code window inside the Creative Load section. There will likely need to be some adjustments made to make sure the code works with DART. Items to be considered:
- make sure the variable clickTag is being used and passed to the Flash file
- the location of any filenames will have to be adjusted to refer to the location on the DART Media Servers, the macro for our Media Servers is %h and this will automatically call the most appropriate server for the user. For example:
before:
var myswf = "myfile.swf"
after:
var myswf = "%h/123456/myfile.swf" (where 123456 would represent your Advertiser ID)
- the click string macro (%c) is appended before the URL and the URL is encoded
before:
clickTag = http://www.myurl.com/;
after:
clickTag = "%chttp%3A%2F%2Fwww%2Emyurl%2Ecom%2F
If you need further assistance with uploading and modifying your own sniffer code in DART, please consult with your Technical Account Manager.

Additional Resources:

See the list of Related Articles. In addition, please see the Macromedia/Adobe webpage - http://www.adobe.com/