bannerbot-service v1.0.2
Bannerbot analytics
According to general rules TCF v2 is a string that contains consents from user.
Be default Bannerbots won't request ads until a valid TC string is received. Or/And we get a consent from any CMP that present on the page.
Any CMP vendor selections in your IAB TCF v2.0 registered CMP will override Ad Technology Provider selections in the EU User Consent Controls. This includes if you have selected to serve non-personalized ads for all EEA users via the EU User Consent Controls.
There is also option for url based gdpr={0,1}and gdpr_consent={tc string}. You can also optionally pass addtl_consent={ac string}.
More information about how things are working inside a TCModel via https://github.com/InteractiveAdvertisingBureau/iabtcf-es/tree/master/modules/core
Example CMP script to test Bannerbots
<script id="Cookiebot" src="https://consent.cookiebot.com/uc.js" data-framework="IAB" data-cbid="7f01389e-5c72-43e0-a955-aa28ee641083" data-blockingmode="auto" type="text/javascript"></script>
TCFv2 workflow
https://github.com/prebid/Prebid.js/issues/4801
Why TCF
Due to EU laws TCFv2 is a part of GDPR that every company in EU should follow. Because our bannerbots collect some pesonal information or/and some metrics we need to use latest standard called TCFv2 TCFv2 TCFv1
Consent Management Provider (CMP)
Ask your website visitors for consent for GDPR/Cookies.
Leadoo Vendor ID
Leadoo has applied and recieved a vendor Id so it's a part of IAB registry as known vendor.
#LEADOO_VENDOR_ID = 994
There is 2 types of consents :
consents = [1, 2, 3, 4, 5 ,6, 9]
legitimate_interest = [6, 7, 8, 10]
You can check what they are means in http://iabtcf.com/#/encode
Explain how the banner loading works with the TCF v2 from high level (to better explain in what order we do things)
TCF Script
It's a part of bannerbot analytics service that provide script that reacts to user consents according it's TCString
that was provided by CMP.
To build TCF script simple go to ./TCF
npm install
npm run build
and copy file from dist (that can made automaticly by setting out dir)./src/lib/utils/TCF.js
Analytics script
Simple ES5 script that provide and API for bannerbots to collect metrics, it's protected by simple signature that generates automaticly each time script was requested to prevent statistics abuse.
./src/lib/utils/track.js
How it works
- Initial loading.
- Fetching scripts.
- Any error proceed to next step.
- TCF check for CMP. If it's not present we ignore GDPR. (GDPR=0)
- Any error proceed to next step.
- Do we have all needed permissions ? (consents and legitimate_interest are passed)
- We have permissions move to loading bannerbot.
- Any error proceed to next step.
- Load bannerbot.
- Track stats.
Configuration
ENVIRONMENT=development
APP_VERSION=0.0.1
SERVICE_NAME=BannerBotService
PUBLIC_URL=http://localhost:10500
DB_CONNECTION=mysql://root:root@db:3306/leadgen_bannerbot?multipleStatements=true
LEADGEN_DB=mysql://root:root@db:3306/leadgen_staging?multipleStatements=true
AUTH_TOKEN=ONLY_ONE_CAN_SEE
SIGNATURE_SALT=salt
SIGNATURE_PASSWORD=MyPassword!
CLIENT_IP_XFF=none // for production should be first
PORT=10500
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago