Prebid.js: Prebid waiting 10 seconds to hold auction with IAB CMP stub

Created on 29 May 2018  路  5Comments  路  Source: prebid/Prebid.js

BUG

Description


The IAB CMP Stub is causing prebid to wait for the default timeout until loading ads

Steps to reproduce


Attach the IAB CMP Stub onto the page and then load prebid and there is no CMP showing for a non-EU reader. The auction is not being held until the default timeout is reached.

Test page

Expected results

If the reader is not within the EU and GDPR doesn't apply then the auction should be held immediately with no timeout.

Actual results

The auction is being suspended until the timeout is reached for CMP being detected on the page.

Platform details


Prebid 1.11.0
Chrome V: 66.0.3359.139/ OSX 10.13.4
npm: 4.3.0

Other information

Most helpful comment

If you don't load the CMP you should just set the timeout value in consent management to 0. Prebid doesn't have a way to detect a non EU user.

All 5 comments

If you don't load the CMP you should just set the timeout value in consent management to 0. Prebid doesn't have a way to detect a non EU user.

@mkendall07 They should be able to get it from the __cmp interface on the getConsentData method, which returns a "VendorConsentData" object which has a "gdprApplies" flag on it. if VendorConsentData.gdprApplies == false they know that GDPR doesn't apply to this user.

@mkendall07 I'd say publishers should just omit setting consentManagement on pbjs config in this case. Or build a pbjs package without ConsentManagement module included.

@chrispaterson CMP stub doesn't have VendorConsentData method, and instead just queues commands until CMP is loaded: https://github.com/InteractiveAdvertisingBureau/GDPR-Transparency-and-Consent-Framework/blob/master/CMP%20JS%20API%20v1.1%20Final.md#CMP-stub-sample:

__cmp.a.push([].slice.apply(b));

@tpottersovrn
The problem is that you are attaching the stub cmp function to the page. I guess I didn't read the description carefully enough the first time. You should not load the stub for the CMP if you don't expect the CMP to load or prevent it's loading. The presence of the stub is what prevents Prebid.js from making it's call and waiting for the CMP to load.

Discussed this with Sovrn folks, they are going to attempt to solve using the CMP's gdprApplies flag.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

marvinferreira picture marvinferreira  路  6Comments

mthazin picture mthazin  路  6Comments

dugwood picture dugwood  路  4Comments

aneuway2 picture aneuway2  路  8Comments

pm-harshad-mane picture pm-harshad-mane  路  5Comments