Set up PB for SpotX mediation (Web Player)

Configure your Player Bidding implementation with SpotX mediation.


Player Bidding (PB) connects your digital video inventory directly to advertising demand sources, increasing competition for your inventory to boost your ad yield. By configuring the advertising object of the player, you can access the benefits of player bidding. You can use either a cloud-hosted or self-hosted player.

🚧

  • Due to the potential impact on performance and user experience, while the player is waiting for the bidding process to complete, the playAd() method is not supported when using Player Bidding.

  • If you have configured advertising settings for your player in your JWP dashboard, changes made to the player's advertising object override any dashboard advertising settings. To maintain any dashboard advertising settings, be sure to include all existing dashboard advertising configurations within the advertising object.

πŸ”‘

If you are not a developer or do not have developer resources, you can also set up Player Bidding through your JWP dashboard.



Implementation

The following steps and code example explain how to enable Player Bidding for SpotX:

  1. Be sure that you have satisfied all the requirements for PB.
  2. Within setup() of an embedded cloud-hosted or self-hosted JWP web player, add an advertising object that defines VAST ads will be served.

    πŸ“˜

    Be sure to replace {id} with a randomly-generated, eight-character, alpha-numeric value. This enables you to run reports for this advertising setup.

    "advertising": {
        "client": "vast",
        "adscheduleid": "{id}",
    }
    

  1. Add the schedule object. At the minimum, you must assign an ad tag to the tag property and assign pre to the offset property.
    The ad tag is used as a fallback tag. PB supports configuring offset for mid-roll and post-roll breaks. Since the auction happens before video playback begins and bids may not be valid when a mid-roll or post-roll ad break occurs, we recommend configuring offset for pre-roll ad breaks.

    "schedule": [{
        "offset": "pre",
        "tag": "{fallback_ad_tag_url}"
    }]
    

  1. Add the bids object for an ad partner. Be sure to replace {channel_id} with the value provided by your SpotX representative.

    "bids": {
        "bidders": [{
            "id": "{channel_id}",
            "name": "SpotX"
        }]
    }
    

  1. (Optional) Within the bidders object, add optionalParams to append custom parameters to the bid request. Be sure to consult with your SpotX representative to discuss your goals prior to implementing custom parameters.
    "optionalParams": {
        "custom": {
            "name": "{custom_parameter_name}",
            "value": "{custom_parameter_value}"
        }
    }
    


Full code sample

// Instantiate the player
jwplayer("myElement").setup({
    // Define the playlist or video.
    "playlist": "{playlist_url or video_url}",
    "advertising": {
        // Define the ad client: googima or vast
        "client": "vast",
        "adscheduleid": "{id}",
        /* Set the ad to play as a preroll.
           Define a fallback ad tag.
        */
        "schedule": [{
            "offset": "pre",
            "tag": "{fallback_ad_tag_url}"
        }],
        "bids": {
            // Configure the ad partners
            "bidders": [{
                "id": "{channel_id}",
                "name": "SpotX",
                "optionalParams": {
                    "custom": {
                        "name": "{custom_parameter_name}",
                        "value": "{custom_parameter_value}"
                    }
                }
            }]
        }
    }
});


Additional settings

After implementing the basic PB setup, you can customize your implementation with any of these additional properties.


advertising

For explanations of each property listed below, see: advertising.


advertising.bids

For an explanation of the property listed below, see: advertising.bids.


advertising.bids.settings

For explanations of each property listed below, see: advertising.bids.settings.

  • bidTimeout
  • floorPriceCurrency

advertising.companiondiv

For explanations of each property listed below, see: advertising.companiondiv.

  • height
  • id
  • width

advertising.rules

For explanations of each property listed below, see: advertising.rules.

  • startOn
  • startOnSeek
  • timeBetweenAds

advertising.schedule

For explanations of each property listed below, see: advertising.schedule.

  • customParams
  • type

autoPause

For explanations of each property listed below, see: autoPause.

  • pauseAds
  • viewability

intl.{lang}.advertising

For explanations of each property listed below, see: intl.{lang}.advertising.

  • admessage
  • cuetext
  • loadingAd
  • skipmessage
  • skiptext