1.0.2 • Published 3 years ago

bannerbot-service v1.0.2

Weekly downloads
-
License
ISC
Repository
gitlab
Last release
3 years ago

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

diagram

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  
1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago

1.0.2-rc.1

3 years ago

1.0.1-rc.1

3 years ago

1.0.1-rc.2

3 years ago

1.0.0-rc.14

3 years ago

1.0.0-rc.13

3 years ago

1.0.0-rc.12

3 years ago

1.0.0-rc.11

3 years ago

1.0.0-rc.10

3 years ago

1.0.0-rc.9

3 years ago

1.0.0-rc.8

3 years ago

1.0.0-rc.7

3 years ago

1.0.0-rc.6

3 years ago

1.0.0-rc.5

3 years ago

1.0.0-rc.4

3 years ago

1.0.0-rc.3

3 years ago

1.0.0-rc.2

3 years ago

1.0.0-rc.1

3 years ago