Ad Plugin Configuration Integration Player settings Labels Formats' options Publisher's settings Modules' settings VPAID options RTB options Integration You can customize Equativ's plugin to fit your needs by supplying a configuration file in JSON format. Simply, add a configuration section to the main object passed at registration: sas.video.register({ id: 'myContainer', adData: {...}, configuration: 'url_to_config_file.json', ... }); Alternatively, you can pass a javascript object to this method: sas.video.register({ id: 'myContainer', adData: {...}, configuration: { publisher: { forceSkipDelay: true, skipDelay: 5 } }, ... }); Creating your own configuration is optional. If a parameter is missing in your configuration file, the default value will be taken from the embedded default configuration. Required settings for the loading of the configuration file Equativ's plugin will try to load your file with AJAX. To ensure the plugin can read the file content, make sure that your response contains CORS headers as follows: Access-Control-Allow-Origin: http://yourdomain.com* Access-Control-Allow-Credentials: true *yourdomain.com - your domain, where Equativ's plugin is integrated Note: Sending CORS headers is not needed in case your configuration are directly passed as an array of objects or in case the configuration-file is loaded from the domain of your website (where Equativ's plugin is integrated). Player settings The configuration file is divided into sections, the player settings being one of them. Here are the options included in the player section: Name Type Default value Description scaleMode String "SCALE_MODE_LETTERBOX" Scale modes. Available values are: "SCALE_MODE_LETTERBOX", "SCALE_MODE_ZOOM", "SCALE_MODE_STRETCH". Important: when using this property with Equativ's HTML5 Embedded Ad Manager, there are some VPAID compatible players that do not allow to implement such changes to a video (e.g., Google Interactive Media Ads SDK). controlBarMode String "CONTROL_BAR_MODE_FLOATING" Control bar modes. Values are: "CONTROL_BAR_MODE_STACKED", "CONTROL_BAR_MODE_FLOATING". enablePause Boolean false Show or hide the pause button. enableFullscreen Boolean true Show or hide the fullscreen / exit fullscreen buttons. enableSound Boolean true Show or hide the mute / unmute buttons. enableCountdownVideo Boolean true Show or hide the countdown before the end of the linear break.Note: the duration of the countdown can change, including increase, if an ad is skipped or a passback is used. enableCountdownSkip Boolean true Show or hide the countdown before the current ad can be skipped. autoHideControls Boolean true Enable / disable the auto-hide behavior of the controlbar for "CONTROL_BAR_MODE_FLOATING" or "CONTROL_BAR_MODE_FLOATING_CONDENSED". Sample for the configuration JSON-file: { "player": { "scaleMode": "SCALE_MODE_ZOOM", "enableSound": false, "enableCountdownSkip": false } } Labels All labels within the plugin are included in the "labels" section of the configuration object. Each label is defined by its key. There is a key for each supported language. All the labels can include a {0} tag. If applicable, it will be automatically replaced by a duration in seconds. Name Description lbl_countdown_skip Countdown message before skip button is available lbl_countdown_break_preroll Text message to notify the user when the ad break will finish for preroll break lbl_countdown_break_midroll Text message to notify the user when the ad break will finish for midroll break lbl_countdown_break_postroll Text message to notify the user when the ad break will finish for postroll break lbl_skip_vpaid Text explaining that the VPAID ad can now be skipped lbl_more Text message displayed on the button used to activate the clickthrough option in HTML5 mode on mobile devices Sample for the configuration JSON-file: { "labels": { "lbl_countdown_skip": { "FR": "Vous pourrez passer cette publicité dans {0} secondes", "EN": "You can skip this ad in {0} seconds" } } } Format options These options are related to a dedicated format. Overlay options Name Type Default value Description hideDuringPause Boolean true Hide / show overlays when content player is paused resize Boolean true Resize or not the overlays, in fullscreen mode Sample of the configuration JSON file: { "overlays": { "resize": true } } Companion options Name Type Default value Description slot String "myDivId" ID of the default <div> where the companion should be displayed by default, if no slot is provided in VAST tag remove Boolean true Indicates if a companion should be removed from its container at the end of the associated linear ad Sample for the configuration JSON file: { "companions": { "slot": "myDefaultDivID" } } Banner options The video plugin is capable of requesting banner ad when pausing the main video content. The corresponding configuration keys must be set in the dedicated banner object of sasVideoData. Name Type Default value Description sas_format_banners Number none ID of a banner format defined in Manage. sas_target_banners String none Keyword targeting used along with the banner adcall made for sas_format_banners. Sample for the configuration JSON file: { "banner": { "sas_format_banners": '1234', "sas_target_banners": 'key=value', }, } Publisher settings These options are related to the publisher. They are part of the "publisher" section. Name Type Default value Description activeControlsForEmbededAdManager Boolean true Indicates if controls are displayed for the Embedded Ad Manager allowConditionalAd Boolean true Indicates if conditional ads can be run. The default value is true, which means conditional ads are accepted. If it is set to false, then any ad flagged as conditional according to the VAST standard will be discarded; the plugin will try to load a passback ad instead, if available in the ad response Note: this feature is available since VAST 4.0 bumperDuration Number 0 Defines the amount of time (in seconds) a bumper is shown; bumpers announce the beginning/end of an ad break bumperPreAdUrl String Used to add an image URL shown before an ad break to announce the beginning of the ad break bumperPostAdUrl String Used to add an image URL shown after an ad break to announce the end of the ad break checkUniversalAdId Boolean false Indicates if UniversalAdId should be taken into account, when the plugin selects ads to display. If enabled, the publisher rejects ads with 'unknown' or undefined UniversalAdId on his network. If the plugin receives such an ad, it will discard it, report an error, and replace it by a passback ad if available. Also, with this feature, an ad with the same UniversalAdId will never be displayed in an ad pod more than once. Ads with the same UniversalAdId will also be discarded and replaced by a passback ad if available. The default value is false, which means that this option is not active. Note: This feature is available since VAST 4.0 With VAST 4.2 we now allow multiple UniversalAdID elements to be passed in a VAST response. In case of muliple UniversalAdID the plugin will check all ids in regards to prior declared conditions. countdownTimeFormat String "mm:ss" Format of the time till the end of the ad break displayed when the ad is playing. Available values: mm:ss, ss. Default format is mm:ss enableAdPauseOnWindowChange Boolean true Enables linear breaks to be paused when the user switches the tab/window. The playback will automatically resume as soon as the page has focus again. Note: This functionality is not supported if the player is inside a cross domain iframe. For security reasons, it is not possible to use this option. enableMobileClickThroughButton Boolean false Enables "More info" button instead of the whole video screen for ClickThrough functionality on mobile devices forceSkipDelay Boolean false Indicates if the skipOffset attribute from the VAST document should be ignored and the skipDelay parameter used instead. html5SeamlessFullscreen Boolean false Indicates if a seamless fullscreen experience between ads and content can be ensured. If not, midrolls will not be displayed. integralAdScienceAnId Number -1 Dedicated ID (ad-network-id) used in the Video Ad Network Solution (VANS) provided by Integral Ad Science (IAS). This ID is used when integrating the Integral Campaign Monitoring (CM) solution dedicated to publishers. loadHlsJsLibrary Boolean false Indicates if the HLS.js library should be loaded on the browsers with no support of HLS type of ad media files. muteAdsAtStartup Boolean false Indicates if prerolls should be muted at start. Note: this property is used only for preroll ad breaks. For other ad breaks (midroll, postroll) the ad is played with the same volume as the volume of the content player. numberOfPassbackAds Number -1 Number of passback ads requested from the ad server. A value of -1 will result in building ad call URLs without the pb parameter. Equativ's delivery engine will deliver 4 passback ads by default (if enough ads are available on the placement). A value of 0 will disable the passback feature: ad call URLs will contain &pb=0. Using a positive value of 3, for example, will result in building ad call URLs with &pb=3. The delivery engine will try to deliver 3 passback ads. Note: This feature is available since VAST 3.0 numMaxRedirect Number 5 Max. number of wrapper calls the plugin can do for one ad. The numMaxRedirect is used to avoid endless loops for wrapper calls. omitCredentials Boolean true In case of CORS issue during vast loading, the plugin will call fetch method a second time, but with different setting of credential. The first call always has credential flag set to "include", if it fails, then the second call will have credential set to "omit". If you wanna make calls only with flag "include" please set this parameter to false. pauseMainContentUntilVASTIsLoaded Boolean true This parameter defines if the main player should be paused until the ad break data is loaded and ready to be displayed. With this parameter, playback of midrolls will start at the defined time even if the loading of the ad lasts too long. protocol String "get" Defines the ad call type that can be get (by default) or post. replayAd Boolean true Indicates, if an ad should be displayed when the main content is played again. requestTimeout Number 3 Timeout (in seconds) that is used for a single request. It should always be lower than the totalTimeout schain String The SupplyChain Object parameter which lists all parties who are selling or reselling the ad opportunity. See this page for more information. skipDelay Number 10 Duration (in seconds), after which a linear ad can be skipped when forceSkipDelay is set to true. Set its value to -1 to make an ad unskippable. totalTimeout Number 8 The users should see every ad in the ad pod within the total timeout second(s). For the first ad in an ad pod, counting starts at the same time as the loading of the VAST and the first ad should fire its impression in less than totalTimeout second(s). For subsequent ads in an ad pod, measuring starts when the previous ad was completed (or when it was skipped); the current ad should fire its impression in less than totalTimeout second(s) unmuteOnMouseOver Boolean false Indicates if ads should be unmuted while playing when the cursor is over the screen. visibilityThresholdForPlayback Number -1 Indicates the minimum percentage of the player's screen (surface) which must be visible to enable playing of the ad. The ad is paused if the visible percentage is less than defined in visibilityThresholdForPlayback. It must be a number between 0 and 100. To disable this option, set -1 for visibilityThresholdForPlayback visibilityThresholdForUnmute Number -1 Indicates the minimum percentage of the player's screen (surface) which must be visible to enable sound for the ad. The ad is muted if the visible percentage is less than defined in visibilityThresholdForUnmute. It must be a number between 0 and 100. To disable this option, set -1 for visibilityThresholdForUnmute enableSSAR Boolean false Indicates if Server-Side Ad Rules should be used for this configuration. Please refer to the Ad Rules documentation for more information. vpaidFirst Boolean false Prioritize VPAID creatives over other media files. To force Vpaid creative selection set up this property to true. Sample for the configuration JSON file: { "publisher": { "enableSSAR": true, "forceSkipDelay": true, "schain": "1.0,1!exchange1.com,1234,1,publisher,publisher.com", "skipDelay": 5 } } Modules' options These options are related to the external modules (e.g., ID5 UID module). They are included in the "modules" section Each module has a similar general structure that looks like the following: "moduleName": { "useModule": true, "config": { // a list of the dedicated module's parameters } }, In case a module object is not added or the value of its "useModule" parameter is falsy, the module won't be used in the plugin. If there are no required module's parameters the "config" object is optional as well. Here is the list of the supported at this moment modules: Module name Description id5 ID5 Universal ID module. The full list of the module's parameters can be found here. Sample of the configuration JSON file: { "modules": { "id5": { "useModule": true, "config": { "pd": "MT1iNTBjYTA4MjcxNzk1YThlN2U0MDEyODEzZjIzZDUwNTE5M2Q3NWMwZjJlMmJiOTliYWE2M2FhODIyZjY2ZWQzJjU9bSVDMyVCNmxsZXIlMjZmcmFuJUMzJUE3b2lz" } } } } VPAID options These options only apply to VPAID creatives. They are included in the "vpaid" section Name Type Default value Description enableCountdownVideo Boolean true Show or hide the countdown before the end of the linear break enableSkip Boolean true Display or hide a skip button in the interface enableSkipLabel Boolean true Show or hide the label indicating that the creative is currently skippable. handleSkipOffset Boolean false If the value is set to true, then we handle skip functionality for vpaid creative in the same way as for regural linear ad. If the vpaid creative is not skippable after defined skipOffset, then the Plugin will call stopAd method instead of skipAd method. It will force vpaid creative to be ended. Be aware, that in that case skip event won't be reported. loadTimeout Number 3 Timeout duration (in seconds) for loading the VPAID creative initTimeout Number 3 Timeout duration (in seconds) for initialization of the VPAID creative generalTimeout Number 3 Timeout duration (in seconds) for general actions on the VPAID creative (start, stop) totalTimeout Number 5 Total timeout duration (in seconds) for loading, initialization and start of the VPAID creative Sample of the configuration JSON file: { "vpaid": { "enableCountdownVideo": false, "enableSkipLabel": false, "loadTimeout": 5 } } RTB options These options only apply for RTB+ Video insertions. They are meant to better qualify the bid requests sent to buyers, and so improve valuation of the inventory. Some of these parameters are automatically generated by our video plugin (type of ad break, video player dimensions, ...). Some other parameters are configuration settings, they are listed below. Name Type Description vdmin Number The minimum duration (in seconds) for the programmatically requested video creatives. By default, this parameter is not passed in the VAST request nor in the bid requests. Enable it by setting a positive value, which must be greater than 1. vdmax Number The maximum duration (in seconds) for the programmatically requested video creatives. By default, this parameter is not passed in the VAST request nor in the bid requests. Enable it by setting a positive value. vbrmin Number The minimum bitrate (in Kbps) for the programmatically requested video creatives. By default, this parameter is not passed in the VAST request nor in the bid requests. Enable it by setting a positive value. vbrmax Number The maximum bitrate (in Kbps) for the programmatically requested video creatives. By default, this parameter is not passed in the VAST request nor in the bid requests. Enable it by setting a positive value. vpmt Number The playback method of the video player. By default, this parameter is not passed in the VAST request nor in the bid requests. Enable it by setting it with one of the following values: -1: This is the default value. It disables passing the vpmt parameter in the ad call 1: Autoplay (sound on) 2: Autoplay (sound off) 3: Click to play 4: Play on mouse-over pgDomain String The decoded URL of the web page where the RTB+ Video insertions will be displayed. Sample of the configuration JSON file: { "rtb": { "vdmin": 5, "vdmax": 15, "vpmt": 1, "pgDomain": "http://www.somepublisherwebsite.com/some/page", } }