我正在尝试使用CPM调整,以创造一个公平的竞争环境之间我的标题竞标伙伴,其中一些提供净出价和一些在总出价。
我已经按照Prebid网站上的文档进行了设置,但我认为它不起作用。
当我使用pbjs_debug=true URL参数并查看控制台时,我看不到正在调整出价的证据。
我是不是设置错了?或者有没有更好的方法来验证黑石物理服务器是否在调整?
<script>
var PREBID_TIMEOUT = 1500;
var adUnits = [{
code: 'div-gpt-ad-1487305430432-0',
mediaTypes: {
banner: {
sizes: [[300, 250]],
},
},
bids: [
{
/* **snip** */
}],
}];
var pbjs = pbjs || {};
pbjs.que = pbjs.que || [];
</script>
<!-- Prebid Config Section END -->
<!-- Prebid Boilerplate Section START. No Need to Edit. -->
<script type="text/javascript" src="/js/prebid.1.20.0.js" async></script>
<script>
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
googletag.cmd.push(function() {
googletag.pubads().disableInitialLoad();
});
pbjs.bidderSettings = [
{
districtm: {
bidCpmAdjustment: function(bidCpm) {
return bidCpm * 0.85;
},
},
}];
pbjs.que.push(function() {
pbjs.addAdUnits(adUnits);
// pbjs.setPriceGranularity('low');
const customConfigObject = {
'buckets': [{
'precision': 2, //default is 2 if omitted - means 2.1234 rounded to 2 decimal places = 2.12
'min': 0,
'max': 14,
'increment': 0.01,
}],
};
//set custom config objec
pbjs.setConfig({ priceGranularity: customConfigObject });
pbjs.requestBids({
bidsBackHandler: sendAdserverRequest,
});
});
function sendAdserverRequest() {
if (pbjs.adserverRequestSent) {
return;
}
pbjs.adserverRequestSent = true;
googletag.cmd.push(function() {
pbjs.que.push(function() {
pbjs.setTargetingForGPTAsync();
googletag.pubads().refresh();
});
});
}
setTimeout(function() {
sendAdserverRequest();
}, PREBID_TIMEOUT);
</script>发布于 2018-09-27 15:31:45
在控制台上运行以下代码:
pbjs.bidderSettings.{{bidder_code}}.bidCpmAdjustment(100)
在你的例子中,bidder_code可以是'districtm‘。这将返回85,也就是85%。
您还可以通过运行以下命令在投标响应中进行验证:pbjs.getBidResponses()
在这里,如果特定投标人的netRevenue调整不是100%,则可以看到bidder为false。
https://stackoverflow.com/questions/52283759
复制相似问题