prebid.js 8.3.0 → 8.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/33acrossBidAdapter.js +1 -1
- package/dist/33acrossIdSystem.js +1 -1
- package/dist/a1MediaRtdProvider.js +1 -0
- package/dist/adagioBidAdapter.js +1 -1
- package/dist/adbookpspBidAdapter.js +1 -1
- package/dist/adfBidAdapter.js +1 -1
- package/dist/adgenerationBidAdapter.js +1 -1
- package/dist/adkernelAdnBidAdapter.js +1 -1
- package/dist/adkernelBidAdapter.js +1 -1
- package/dist/admanBidAdapter.js +1 -1
- package/dist/admixerIdSystem.js +1 -1
- package/dist/adnuntiusBidAdapter.js +1 -1
- package/dist/adqueryBidAdapter.js +1 -1
- package/dist/adqueryIdSystem.js +1 -1
- package/dist/adrelevantisBidAdapter.js +1 -1
- package/dist/adtelligentIdSystem.js +1 -1
- package/dist/adtrgtmeBidAdapter.js +1 -1
- package/dist/adxcgBidAdapter.js +1 -1
- package/dist/adyoulikeBidAdapter.js +1 -1
- package/dist/ajaBidAdapter.js +1 -1
- package/dist/amxBidAdapter.js +1 -1
- package/dist/amxIdSystem.js +1 -1
- package/dist/appierAnalyticsAdapter.js +1 -1
- package/dist/appnexusBidAdapter.js +1 -1
- package/dist/asoBidAdapter.js +1 -1
- package/dist/axonixBidAdapter.js +1 -1
- package/dist/beachfrontBidAdapter.js +1 -1
- package/dist/bidglassBidAdapter.js +1 -1
- package/dist/big-richmediaBidAdapter.js +1 -1
- package/dist/brandmetricsRtdProvider.js +1 -1
- package/dist/bridBidAdapter.js +1 -1
- package/dist/bridgewellBidAdapter.js +1 -1
- package/dist/brightMountainMediaBidAdapter.js +1 -1
- package/dist/britepoolIdSystem.js +1 -1
- package/dist/carodaBidAdapter.js +1 -1
- package/dist/chtnwBidAdapter.js +1 -1
- package/dist/concertBidAdapter.js +1 -1
- package/dist/connectIdSystem.js +1 -1
- package/dist/connectadBidAdapter.js +1 -1
- package/dist/consentManagementGpp.js +1 -1
- package/dist/consumableBidAdapter.js +1 -1
- package/dist/conversantAnalyticsAdapter.js +1 -1
- package/dist/conversantBidAdapter.js +1 -1
- package/dist/craftBidAdapter.js +1 -1
- package/dist/criteoBidAdapter.js +1 -1
- package/dist/criteoIdSystem.js +1 -1
- package/dist/cwireBidAdapter.js +1 -1
- package/dist/czechAdIdSystem.js +1 -1
- package/dist/dacIdSystem.js +1 -1
- package/dist/deepintentDpesIdSystem.js +1 -1
- package/dist/dependencies.json +6 -0
- package/dist/dmdIdSystem.js +1 -1
- package/dist/dspxBidAdapter.js +1 -1
- package/dist/eplanningBidAdapter.js +1 -1
- package/dist/euidIdSystem.js +1 -1
- package/dist/fabrickIdSystem.js +1 -1
- package/dist/feedadBidAdapter.js +1 -1
- package/dist/finativeBidAdapter.js +1 -1
- package/dist/freewheel-sspBidAdapter.js +1 -1
- package/dist/ftrackIdSystem.js +1 -1
- package/dist/gdprEnforcement.js +1 -1
- package/dist/geolocationRtdProvider.js +1 -0
- package/dist/gmosspBidAdapter.js +1 -1
- package/dist/goldbachBidAdapter.js +1 -1
- package/dist/gravitoIdSystem.js +1 -1
- package/dist/greenbidsAnalyticsAdapter.js +1 -1
- package/dist/greenbidsRtdProvider.js +1 -1
- package/dist/gridBidAdapter.js +1 -1
- package/dist/growthCodeIdSystem.js +1 -1
- package/dist/gumgumBidAdapter.js +1 -1
- package/dist/h12mediaBidAdapter.js +1 -1
- package/dist/hadronIdSystem.js +1 -1
- package/dist/hypelabBidAdapter.js +1 -1
- package/dist/id5IdSystem.js +1 -1
- package/dist/identityLinkIdSystem.js +1 -1
- package/dist/idxIdSystem.js +1 -1
- package/dist/imdsBidAdapter.js +1 -1
- package/dist/improvedigitalBidAdapter.js +1 -1
- package/dist/imuIdSystem.js +1 -1
- package/dist/insticatorBidAdapter.js +1 -1
- package/dist/intentIqIdSystem.js +1 -1
- package/dist/invibesBidAdapter.js +1 -1
- package/dist/ixBidAdapter.js +1 -1
- package/dist/justIdSystem.js +1 -1
- package/dist/justpremiumBidAdapter.js +1 -1
- package/dist/kargoBidAdapter.js +1 -1
- package/dist/kinessoIdSystem.js +1 -1
- package/dist/konduitAnalyticsAdapter.js +1 -1
- package/dist/kueezBidAdapter.js +1 -1
- package/dist/kueezRtbBidAdapter.js +1 -1
- package/dist/kulturemediaBidAdapter.js +1 -1
- package/dist/lassoBidAdapter.js +1 -1
- package/dist/lifestreetBidAdapter.js +1 -1
- package/dist/liveIntentIdSystem.js +1 -1
- package/dist/logicadBidAdapter.js +1 -1
- package/dist/loglyliftBidAdapter.js +1 -1
- package/dist/lotamePanoramaIdSystem.js +1 -1
- package/dist/magniteAnalyticsAdapter.js +1 -1
- package/dist/malltvAnalyticsAdapter.js +1 -1
- package/dist/marsmediaBidAdapter.js +1 -1
- package/dist/mediafuseBidAdapter.js +1 -1
- package/dist/mediasquareBidAdapter.js +1 -1
- package/dist/merkleIdSystem.js +1 -1
- package/dist/mgidBidAdapter.js +1 -1
- package/dist/minutemediaBidAdapter.js +1 -1
- package/dist/minutemediaplusBidAdapter.js +1 -1
- package/dist/mwOpenLinkIdSystem.js +1 -1
- package/dist/naveggIdSystem.js +1 -1
- package/dist/netIdSystem.js +1 -1
- package/dist/nexx360BidAdapter.js +1 -1
- package/dist/not-for-prod/prebid.js +185 -182
- package/dist/novatiqIdSystem.js +1 -1
- package/dist/oguryBidAdapter.js +1 -1
- package/dist/oneKeyIdSystem.js +1 -1
- package/dist/onetagBidAdapter.js +1 -1
- package/dist/ooloAnalyticsAdapter.js +1 -1
- package/dist/optidigitalBidAdapter.js +1 -1
- package/dist/outbrainBidAdapter.js +1 -1
- package/dist/ozoneBidAdapter.js +1 -1
- package/dist/pairIdSystem.js +1 -1
- package/dist/parrableIdSystem.js +1 -1
- package/dist/pixfutureBidAdapter.js +1 -1
- package/dist/prebid-core.js +2 -2
- package/dist/publinkIdSystem.js +1 -1
- package/dist/pubmaticBidAdapter.js +1 -1
- package/dist/pubwiseAnalyticsAdapter.js +1 -1
- package/dist/pulsepointBidAdapter.js +1 -1
- package/dist/pxyzBidAdapter.js +1 -1
- package/dist/quantcastBidAdapter.js +1 -1
- package/dist/quantcastIdSystem.js +1 -1
- package/dist/readpeakBidAdapter.js +1 -1
- package/dist/relaidoBidAdapter.js +1 -1
- package/dist/retailspotBidAdapter.js +1 -1
- package/dist/rhythmoneBidAdapter.js +1 -1
- package/dist/riseBidAdapter.js +1 -1
- package/dist/rubiconBidAdapter.js +1 -1
- package/dist/seedingAllianceBidAdapter.js +1 -1
- package/dist/seedtagBidAdapter.js +1 -1
- package/dist/sharedIdSystem.js +1 -1
- package/dist/sharethroughAnalyticsAdapter.js +1 -1
- package/dist/sharethroughBidAdapter.js +1 -1
- package/dist/shinezBidAdapter.js +1 -1
- package/dist/silverpushBidAdapter.js +1 -1
- package/dist/smaatoBidAdapter.js +1 -1
- package/dist/smartadserverBidAdapter.js +1 -1
- package/dist/smartxBidAdapter.js +1 -1
- package/dist/smilewantedBidAdapter.js +1 -1
- package/dist/sonobiBidAdapter.js +1 -1
- package/dist/sovrnAnalyticsAdapter.js +1 -1
- package/dist/sovrnBidAdapter.js +1 -1
- package/dist/ssmasBidAdapter.js +1 -0
- package/dist/sspBCBidAdapter.js +1 -1
- package/dist/stroeerCoreBidAdapter.js +1 -1
- package/dist/stvBidAdapter.js +1 -1
- package/dist/sublimeBidAdapter.js +1 -1
- package/dist/tapadIdSystem.js +1 -1
- package/dist/targetVideoBidAdapter.js +1 -1
- package/dist/teadsBidAdapter.js +1 -1
- package/dist/tncIdSystem.js +1 -1
- package/dist/topicsFpdModule.js +1 -1
- package/dist/trionBidAdapter.js +1 -1
- package/dist/tripleliftBidAdapter.js +1 -1
- package/dist/ttdBidAdapter.js +1 -1
- package/dist/ucfunnelAnalyticsAdapter.js +1 -1
- package/dist/uid2IdSystem.js +1 -1
- package/dist/underdogmediaBidAdapter.js +1 -1
- package/dist/undertoneBidAdapter.js +1 -1
- package/dist/unifiedIdSystem.js +1 -1
- package/dist/userId.js +1 -1
- package/dist/utiqSystem.js +1 -1
- package/dist/verizonMediaIdSystem.js +1 -1
- package/dist/vidazooBidAdapter.js +1 -1
- package/dist/videobyteBidAdapter.js +1 -1
- package/dist/visxBidAdapter.js +1 -1
- package/dist/voxBidAdapter.js +1 -1
- package/dist/vrtcalBidAdapter.js +1 -1
- package/dist/vuukleBidAdapter.js +1 -1
- package/dist/widespaceBidAdapter.js +1 -1
- package/dist/winrBidAdapter.js +1 -1
- package/dist/yahoosspBidAdapter.js +1 -1
- package/dist/yandexBidAdapter.js +1 -1
- package/dist/yieldmoBidAdapter.js +1 -1
- package/dist/yieldoneAnalyticsAdapter.js +1 -1
- package/dist/zeotapIdPlusIdSystem.js +1 -1
- package/integrationExamples/gpt/adUnitFloors.html +0 -1
- package/integrationExamples/videoModule/jwplayer/bidMarkedAsUsed.html +1 -1
- package/integrationExamples/videoModule/jwplayer/eventListeners.html +2 -2
- package/integrationExamples/videoModule/jwplayer/eventsUI.html +1 -1
- package/integrationExamples/videoModule/jwplayer/gamAdServerMediation.html +1 -1
- package/integrationExamples/videoModule/jwplayer/mediaMetadata.html +1 -1
- package/integrationExamples/videoModule/jwplayer/playlist.html +1 -1
- package/integrationExamples/videoModule/videojs/bidMarkedAsUsed.html +1 -1
- package/integrationExamples/videoModule/videojs/bidRequestScheduling.html +1 -1
- package/integrationExamples/videoModule/videojs/eventListeners.html +1 -1
- package/integrationExamples/videoModule/videojs/eventsUI.html +1 -1
- package/integrationExamples/videoModule/videojs/gamAdServerMediation.html +1 -1
- package/integrationExamples/videoModule/videojs/mediaMetadata.html +1 -1
- package/integrationExamples/videoModule/videojs/playlist.html +1 -1
- package/modules/.submodules.json +1 -0
- package/modules/33acrossBidAdapter.js +24 -14
- package/modules/33acrossIdSystem.js +24 -4
- package/modules/a1MediaRtdProvider.js +92 -0
- package/modules/a1MediaRtdProvider.md +46 -0
- package/modules/adagioBidAdapter.js +0 -1
- package/modules/adfBidAdapter.js +4 -1
- package/modules/adkernelAdnBidAdapter.js +1 -1
- package/modules/adkernelBidAdapter.js +10 -3
- package/modules/admanBidAdapter.js +4 -0
- package/modules/admixerIdSystem.js +6 -0
- package/modules/adnuntiusBidAdapter.js +5 -13
- package/modules/adqueryIdSystem.js +6 -0
- package/modules/adtelligentIdSystem.js +6 -0
- package/modules/adyoulikeBidAdapter.js +6 -3
- package/modules/amxIdSystem.js +6 -0
- package/modules/beachfrontBidAdapter.js +32 -6
- package/modules/brandmetricsRtdProvider.js +36 -2
- package/modules/brandmetricsRtdProvider.md +17 -2
- package/modules/britepoolIdSystem.js +6 -0
- package/modules/connectIdSystem.js +6 -0
- package/modules/consentManagementGpp.js +10 -1
- package/modules/consumableBidAdapter.js +9 -1
- package/modules/criteoIdSystem.js +6 -0
- package/modules/czechAdIdSystem.js +6 -0
- package/modules/dacIdSystem.js +6 -0
- package/modules/deepintentDpesIdSystem.js +7 -2
- package/modules/dmdIdSystem.js +6 -0
- package/modules/euidIdSystem.js +9 -0
- package/modules/fabrickIdSystem.js +6 -0
- package/modules/ftrackIdSystem.js +16 -0
- package/modules/gdprEnforcement.js +27 -22
- package/modules/geolocationRtdProvider.js +65 -0
- package/modules/gravitoIdSystem.js +6 -0
- package/modules/greenbidsRtdProvider.js +1 -1
- package/modules/gridBidAdapter.js +19 -0
- package/modules/growthCodeIdSystem.js +20 -1
- package/modules/hadronIdSystem.js +6 -0
- package/modules/id5IdSystem.js +34 -8
- package/modules/identityLinkIdSystem.js +6 -0
- package/modules/idxIdSystem.js +6 -0
- package/modules/imdsBidAdapter.js +38 -14
- package/modules/imuIdSystem.js +10 -0
- package/modules/intentIqIdSystem.js +6 -0
- package/modules/invibesBidAdapter.js +5 -5
- package/modules/ixBidAdapter.js +56 -2
- package/modules/justIdSystem.js +6 -0
- package/modules/kargoBidAdapter.js +4 -0
- package/modules/kinessoIdSystem.js +7 -2
- package/modules/liveIntentIdSystem.js +53 -0
- package/modules/lotamePanoramaIdSystem.js +6 -0
- package/modules/merkleIdSystem.js +24 -0
- package/modules/minutemediaBidAdapter.js +17 -2
- package/modules/mwOpenLinkIdSystem.js +6 -0
- package/modules/naveggIdSystem.js +6 -0
- package/modules/netIdSystem.js +6 -0
- package/modules/novatiqIdSystem.js +12 -0
- package/modules/oguryBidAdapter.js +29 -16
- package/modules/oneKeyIdSystem.js +26 -0
- package/modules/ozoneBidAdapter.js +65 -18
- package/modules/ozoneBidAdapter.md +3 -1
- package/modules/pairIdSystem.js +6 -0
- package/modules/parrableIdSystem.js +38 -2
- package/modules/publinkIdSystem.js +7 -1
- package/modules/pubmaticBidAdapter.js +16 -1
- package/modules/pulsepointBidAdapter.js +63 -424
- package/modules/pulsepointBidAdapter.md +39 -45
- package/modules/quantcastIdSystem.js +6 -0
- package/modules/rubiconBidAdapter.js +9 -0
- package/modules/sharedIdSystem.js +7 -1
- package/modules/silverpushBidAdapter.js +2 -2
- package/modules/sovrnBidAdapter.js +5 -1
- package/modules/ssmasBidAdapter.js +126 -0
- package/modules/ssmasBidAdapter.md +35 -0
- package/modules/sspBCBidAdapter.js +36 -13
- package/modules/stroeerCoreBidAdapter.js +2 -3
- package/modules/tapadIdSystem.js +6 -0
- package/modules/teadsBidAdapter.js +2 -0
- package/modules/tncIdSystem.js +6 -0
- package/modules/topicsFpdModule.js +4 -1
- package/modules/topicsFpdModule.md +4 -0
- package/modules/tripleliftBidAdapter.js +5 -0
- package/modules/uid2IdSystem.js +14 -0
- package/modules/unifiedIdSystem.js +11 -0
- package/modules/userId/eids.js +6 -445
- package/modules/userId/index.js +38 -26
- package/modules/utiqSystem.js +9 -0
- package/modules/verizonMediaIdSystem.js +6 -0
- package/modules/vidazooBidAdapter.js +5 -7
- package/modules/voxBidAdapter.js +16 -5
- package/modules/vrtcalBidAdapter.js +10 -6
- package/modules/yahoosspBidAdapter.js +38 -33
- package/modules/yahoosspBidAdapter.md +96 -95
- package/modules/yandexBidAdapter.js +12 -15
- package/modules/zeotapIdPlusIdSystem.js +6 -0
- package/package.json +1 -1
- package/src/activities/redactor.js +1 -1
- package/src/adapters/bidderFactory.js +15 -6
- package/src/adloader.js +2 -1
- package/src/auction.js +24 -2
- package/src/constants.json +3 -1
- package/src/fpd/sua.js +8 -2
- package/test/spec/auctionmanager_spec.js +29 -1
- package/test/spec/fpd/enrichment_spec.js +7 -1
- package/test/spec/fpd/sua_spec.js +12 -0
- package/test/spec/modules/33acrossBidAdapter_spec.js +188 -35
- package/test/spec/modules/33acrossIdSystem_spec.js +122 -27
- package/test/spec/modules/a1MediaRtdProvider_spec.js +105 -0
- package/test/spec/modules/adagioBidAdapter_spec.js +0 -1
- package/test/spec/modules/adfBidAdapter_spec.js +47 -0
- package/test/spec/modules/adkernelAdnBidAdapter_spec.js +1 -2
- package/test/spec/modules/adkernelBidAdapter_spec.js +7 -2
- package/test/spec/modules/adnuntiusBidAdapter_spec.js +116 -64
- package/test/spec/modules/adyoulikeBidAdapter_spec.js +13 -24
- package/test/spec/modules/beachfrontBidAdapter_spec.js +35 -2
- package/test/spec/modules/brandmetricsRtdProvider_spec.js +69 -7
- package/test/spec/modules/consentManagementGpp_spec.js +16 -0
- package/test/spec/modules/consumableBidAdapter_spec.js +15 -0
- package/test/spec/modules/freewheel-sspBidAdapter_spec.js +5 -5
- package/test/spec/modules/gdprEnforcement_spec.js +43 -2
- package/test/spec/modules/geolocationRtdProvider_spec.js +119 -0
- package/test/spec/modules/greenbidsRtdProvider_spec.js +1 -1
- package/test/spec/modules/gridBidAdapter_spec.js +42 -0
- package/test/spec/modules/id5IdSystem_spec.js +18 -0
- package/test/spec/modules/imdsBidAdapter_spec.js +98 -17
- package/test/spec/modules/invibesBidAdapter_spec.js +123 -32
- package/test/spec/modules/ixBidAdapter_spec.js +95 -5
- package/test/spec/modules/kargoBidAdapter_spec.js +121 -106
- package/test/spec/modules/medianetBidAdapter_spec.js +117 -0
- package/test/spec/modules/minutemediaBidAdapter_spec.js +36 -5
- package/test/spec/modules/oguryBidAdapter_spec.js +208 -108
- package/test/spec/modules/outbrainBidAdapter_spec.js +3 -5
- package/test/spec/modules/ozoneBidAdapter_spec.js +27 -1
- package/test/spec/modules/prebidServerBidAdapter_spec.js +2 -20
- package/test/spec/modules/priceFloors_spec.js +14 -0
- package/test/spec/modules/pubmaticBidAdapter_spec.js +125 -373
- package/test/spec/modules/pulsepointBidAdapter_spec.js +225 -486
- package/test/spec/modules/rubiconBidAdapter_spec.js +220 -9
- package/test/spec/modules/smaatoBidAdapter_spec.js +4 -6
- package/test/spec/modules/sovrnBidAdapter_spec.js +24 -4
- package/test/spec/modules/ssmasBidAdapter_spec.js +244 -0
- package/test/spec/modules/sspBCBidAdapter_spec.js +18 -19
- package/test/spec/modules/stroeerCoreBidAdapter_spec.js +8 -5
- package/test/spec/modules/teadsBidAdapter_spec.js +70 -21
- package/test/spec/modules/topicsFpdModule_spec.js +10 -4
- package/test/spec/modules/tripleliftBidAdapter_spec.js +40 -0
- package/test/spec/modules/userId_spec.js +116 -7
- package/test/spec/modules/vidazooBidAdapter_spec.js +0 -5
- package/test/spec/modules/voxBidAdapter_spec.js +93 -0
- package/test/spec/modules/vrtcalBidAdapter_spec.js +12 -4
- package/test/spec/modules/xeBidAdapter_spec.js +366 -368
- package/test/spec/modules/yahoosspBidAdapter_spec.js +405 -330
- package/test/spec/modules/yandexBidAdapter_spec.js +21 -3
- package/test/spec/unit/core/bidderFactory_spec.js +61 -14
- package/integrationExamples/gpt/inskin_example.html +0 -100
- package/integrationExamples/gpt/pbjs_video_adUnit.html +0 -109
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
**Module Name**: PulsePoint Bidder Adapter
|
|
4
4
|
**Module Type**: Bidder Adapter
|
|
5
|
-
**Maintainer**: ExchangeTeam@pulsepoint.com
|
|
5
|
+
**Maintainer**: ExchangeTeam@pulsepoint.com
|
|
6
6
|
|
|
7
7
|
# Description
|
|
8
8
|
|
|
@@ -18,55 +18,49 @@ Please use ```pulsepoint``` as the bidder code.
|
|
|
18
18
|
sizes: [[300, 250]],
|
|
19
19
|
bids: [{
|
|
20
20
|
bidder: 'pulsepoint',
|
|
21
|
-
params: {
|
|
22
|
-
cf: '300X250',
|
|
21
|
+
params: {
|
|
23
22
|
cp: 512379,
|
|
24
23
|
ct: 486653
|
|
25
24
|
}
|
|
26
25
|
}]
|
|
27
26
|
},{
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
renderer: {
|
|
66
|
-
options: {
|
|
67
|
-
text: "PulsePoint Outstream"
|
|
68
|
-
}
|
|
69
|
-
}
|
|
27
|
+
code: 'native-1-slot',
|
|
28
|
+
mediaTypes: {
|
|
29
|
+
native: {
|
|
30
|
+
ortb: {
|
|
31
|
+
assets: [{
|
|
32
|
+
id: 1,
|
|
33
|
+
required: 1,
|
|
34
|
+
img: {
|
|
35
|
+
type: 3,
|
|
36
|
+
w: 150,
|
|
37
|
+
h: 50,
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
id: 2,
|
|
42
|
+
required: 1,
|
|
43
|
+
title: {
|
|
44
|
+
len: 80
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
id: 3,
|
|
49
|
+
required: 1,
|
|
50
|
+
data: {
|
|
51
|
+
type: 1
|
|
52
|
+
}
|
|
53
|
+
}]
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
bids: [{
|
|
58
|
+
bidder: 'pulsepoint',
|
|
59
|
+
params: {
|
|
60
|
+
cp: 512379,
|
|
61
|
+
ct: 694973
|
|
62
|
+
}
|
|
63
|
+
}]
|
|
70
64
|
},{
|
|
71
65
|
code: 'instream',
|
|
72
66
|
mediaTypes: {
|
|
@@ -200,6 +200,10 @@ export const converter = ortbConverter({
|
|
|
200
200
|
bidRequest.params.position === 'btf' && (imp.video.pos = 3);
|
|
201
201
|
delete imp.ext?.prebid?.storedrequest;
|
|
202
202
|
|
|
203
|
+
if (bidRequest.params.bidonmultiformat === true && bidRequestType.length > 1) {
|
|
204
|
+
deepSetValue(imp, 'ext.prebid.bidder.rubicon.formats', bidRequestType);
|
|
205
|
+
}
|
|
206
|
+
|
|
203
207
|
setBidFloors(bidRequest, imp);
|
|
204
208
|
|
|
205
209
|
return imp;
|
|
@@ -497,6 +501,11 @@ export const spec = {
|
|
|
497
501
|
data['rp_hard_floor'] = typeof floorInfo === 'object' && floorInfo.currency === 'USD' && !isNaN(parseInt(floorInfo.floor)) ? floorInfo.floor : undefined;
|
|
498
502
|
}
|
|
499
503
|
|
|
504
|
+
// Send multiformat data if requested
|
|
505
|
+
if (params.bidonmultiformat === true && deepAccess(bidRequest, 'mediaTypes') && Object.keys(bidRequest.mediaTypes).length > 1) {
|
|
506
|
+
data['p_formats'] = Object.keys(bidRequest.mediaTypes).join(',');
|
|
507
|
+
}
|
|
508
|
+
|
|
500
509
|
// add p_pos only if specified and valid
|
|
501
510
|
// For SRA we need to explicitly put empty semi colons so AE treats it as empty, instead of copying the latter value
|
|
502
511
|
let posMapping = {1: 'atf', 3: 'btf'};
|
|
@@ -13,7 +13,7 @@ import {VENDORLESS_GVLID} from '../src/consentHandler.js';
|
|
|
13
13
|
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
14
14
|
import {domainOverrideToRootDomain} from '../libraries/domainOverrideToRootDomain/index.js';
|
|
15
15
|
|
|
16
|
-
export const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: '
|
|
16
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: 'sharedId'});
|
|
17
17
|
const COOKIE = 'cookie';
|
|
18
18
|
const LOCAL_STORAGE = 'html5';
|
|
19
19
|
const OPTOUT_NAME = '_pubcid_optout';
|
|
@@ -174,6 +174,12 @@ export const sharedIdSystemSubmodule = {
|
|
|
174
174
|
},
|
|
175
175
|
|
|
176
176
|
domainOverride: domainOverrideToRootDomain(storage, 'sharedId'),
|
|
177
|
+
eids: {
|
|
178
|
+
'pubcid': {
|
|
179
|
+
source: 'pubcid.org',
|
|
180
|
+
atype: 1
|
|
181
|
+
},
|
|
182
|
+
}
|
|
177
183
|
};
|
|
178
184
|
|
|
179
185
|
submodule('userId', sharedIdSystemSubmodule);
|
|
@@ -12,7 +12,7 @@ const bidderConfig = 'sp_pb_ortb';
|
|
|
12
12
|
const bidderVersion = '1.0.0';
|
|
13
13
|
const DEFAULT_CURRENCY = 'USD';
|
|
14
14
|
|
|
15
|
-
export const REQUEST_URL = 'https://
|
|
15
|
+
export const REQUEST_URL = 'https://prebid.chocolateplatform.co/bidder/?identifier=prebidchoc';
|
|
16
16
|
export const SP_OUTSTREAM_PLAYER_URL = 'https://xaido.sgp1.cdn.digitaloceanspaces.com/prebid/spoutstream.min.js';
|
|
17
17
|
|
|
18
18
|
const VIDEO_ORTB_PARAMS = [
|
|
@@ -110,7 +110,7 @@ export const CONVERTER = ortbConverter({
|
|
|
110
110
|
bidResponse.meta.paf.content_id = utils.deepAccess(bid, 'ext.paf.content_id');
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
-
bidResponse = buildVideoVastResponse(bidResponse)
|
|
113
|
+
bidResponse = buildVideoVastResponse(bidResponse);
|
|
114
114
|
bidResponse = buildVideoOutstreamResponse(bidResponse, context)
|
|
115
115
|
|
|
116
116
|
return bidResponse;
|
|
@@ -248,7 +248,7 @@ export const spec = {
|
|
|
248
248
|
}
|
|
249
249
|
},
|
|
250
250
|
|
|
251
|
-
getUserSyncs: function(syncOptions, serverResponses, gdprConsent, uspConsent) {
|
|
251
|
+
getUserSyncs: function(syncOptions, serverResponses, gdprConsent, uspConsent, gppConsent) {
|
|
252
252
|
try {
|
|
253
253
|
const tracks = []
|
|
254
254
|
if (serverResponses && serverResponses.length !== 0) {
|
|
@@ -262,6 +262,10 @@ export const spec = {
|
|
|
262
262
|
if (uspConsent) {
|
|
263
263
|
params.push(['us_privacy', uspConsent]);
|
|
264
264
|
}
|
|
265
|
+
if (gppConsent) {
|
|
266
|
+
params.push(['gpp', gppConsent.gppString]);
|
|
267
|
+
params.push(['gpp_sid', gppConsent.applicableSections])
|
|
268
|
+
}
|
|
265
269
|
|
|
266
270
|
if (iidArr[0]) {
|
|
267
271
|
params.push(['informer', iidArr[0]]);
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { BANNER } from '../src/mediaTypes.js';
|
|
2
|
+
import { registerBidder } from '../src/adapters/bidderFactory.js';
|
|
3
|
+
import { triggerPixel, deepSetValue } from '../src/utils.js';
|
|
4
|
+
import { ortbConverter } from '../libraries/ortbConverter/converter.js';
|
|
5
|
+
import {config} from '../src/config.js';
|
|
6
|
+
|
|
7
|
+
export const SSMAS_CODE = 'ssmas';
|
|
8
|
+
const SSMAS_SERVER = 'ads.ssmas.com';
|
|
9
|
+
export const SSMAS_ENDPOINT = `http://${SSMAS_SERVER}/ortb`;
|
|
10
|
+
const SYNC_URL = `http://sync.ssmas.com/user_sync`;
|
|
11
|
+
export const SSMAS_REQUEST_METHOD = 'POST';
|
|
12
|
+
const GDPR_VENDOR_ID = 1183;
|
|
13
|
+
|
|
14
|
+
export const ssmasOrtbConverter = ortbConverter({
|
|
15
|
+
context: {
|
|
16
|
+
netRevenue: true,
|
|
17
|
+
ttl: 300,
|
|
18
|
+
mediaType: BANNER,
|
|
19
|
+
},
|
|
20
|
+
imp(buildImp, bidRequest, context) {
|
|
21
|
+
const imp = buildImp(bidRequest, context);
|
|
22
|
+
deepSetValue(imp, 'ext.placementId', bidRequest.params.placementId);
|
|
23
|
+
return imp;
|
|
24
|
+
},
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
export const spec = {
|
|
28
|
+
code: SSMAS_CODE,
|
|
29
|
+
supportedMediaTypes: [BANNER],
|
|
30
|
+
gvlid: GDPR_VENDOR_ID,
|
|
31
|
+
|
|
32
|
+
isBidRequestValid: (bid) => {
|
|
33
|
+
return !!bid.params.placementId && !!bid.bidId && bid.bidder === SSMAS_CODE;
|
|
34
|
+
},
|
|
35
|
+
|
|
36
|
+
buildRequests: (bidRequests, bidderRequest) => {
|
|
37
|
+
const data = ssmasOrtbConverter.toORTB({ bidRequests, bidderRequest });
|
|
38
|
+
|
|
39
|
+
const options = {
|
|
40
|
+
contentType: 'application/json',
|
|
41
|
+
withCredentials: false,
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
data.imp && data.imp.forEach(imp => {
|
|
45
|
+
if (imp.ext && imp.ext.placementId) {
|
|
46
|
+
imp.tagId = imp.ext.placementId;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
data.regs = data.regs || {};
|
|
51
|
+
data.regs.ext = data.regs.ext || {};
|
|
52
|
+
|
|
53
|
+
if (bidderRequest.gdprConsent) {
|
|
54
|
+
data.regs.ext.consent = bidderRequest.gdprConsent.consentString;
|
|
55
|
+
data.regs.ext.gdpr = bidderRequest.gdprConsent.gdprApplies ? 1 : 0;
|
|
56
|
+
}
|
|
57
|
+
if (bidderRequest.uspConsent) {
|
|
58
|
+
data.regs.ext.consent = bidderRequest.uspConsent.consentString;
|
|
59
|
+
data.regs.ext.ccpa = 1;
|
|
60
|
+
}
|
|
61
|
+
if (config.getConfig('coppa') === true) {
|
|
62
|
+
data.regs.coppa = 1;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return [
|
|
66
|
+
{
|
|
67
|
+
method: SSMAS_REQUEST_METHOD,
|
|
68
|
+
url: SSMAS_ENDPOINT,
|
|
69
|
+
data,
|
|
70
|
+
options,
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
},
|
|
74
|
+
|
|
75
|
+
interpretResponse: (serverResponse, bidRequest) => {
|
|
76
|
+
const bids = ssmasOrtbConverter.fromORTB({
|
|
77
|
+
response: serverResponse.body,
|
|
78
|
+
request: bidRequest.data,
|
|
79
|
+
}).bids;
|
|
80
|
+
|
|
81
|
+
return bids.filter((bid) => {
|
|
82
|
+
return bid.cpm > 0;
|
|
83
|
+
});
|
|
84
|
+
},
|
|
85
|
+
|
|
86
|
+
onBidWon: (bid) => {
|
|
87
|
+
if (bid.burl) {
|
|
88
|
+
triggerPixel(bid.burl);
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
|
|
92
|
+
getUserSyncs: (
|
|
93
|
+
syncOptions,
|
|
94
|
+
serverResponses,
|
|
95
|
+
gdprConsent,
|
|
96
|
+
uspConsent
|
|
97
|
+
) => {
|
|
98
|
+
const syncs = [];
|
|
99
|
+
|
|
100
|
+
let params = ['pbjs=1'];
|
|
101
|
+
|
|
102
|
+
if (gdprConsent) {
|
|
103
|
+
if (typeof gdprConsent.gdprApplies === 'boolean') {
|
|
104
|
+
params.push(`gdpr=${Boolean(gdprConsent.gdprApplies)}&gdpr_consent=${
|
|
105
|
+
gdprConsent.consentString
|
|
106
|
+
}`);
|
|
107
|
+
} else {
|
|
108
|
+
params.push(`gdpr_consent=${gdprConsent.consentString}`);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
if (uspConsent && uspConsent.consentString) {
|
|
113
|
+
params.push(`ccpa_consent=${uspConsent.consentString}`);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (syncOptions.pixelEnabled && serverResponses.length > 0) {
|
|
117
|
+
syncs.push({
|
|
118
|
+
type: 'image',
|
|
119
|
+
url: `${SYNC_URL}?${params.join('&')}`
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
return syncs;
|
|
123
|
+
},
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
registerBidder(spec);
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Overview
|
|
2
|
+
|
|
3
|
+
Module Name: SSMas Bidder Adapter
|
|
4
|
+
Module Type: Bidder Adapter
|
|
5
|
+
Maintainer: hzchen.work@gmail.com
|
|
6
|
+
|
|
7
|
+
# Description
|
|
8
|
+
|
|
9
|
+
Module that connects to Sem Seo & Mas header bidding endpoint to fetch bids.
|
|
10
|
+
Supports Banner
|
|
11
|
+
Supported currencies: EUR
|
|
12
|
+
|
|
13
|
+
Required parameters:
|
|
14
|
+
- placement id
|
|
15
|
+
|
|
16
|
+
# Test Parameters
|
|
17
|
+
```
|
|
18
|
+
var adUnits = [
|
|
19
|
+
// Banner adUnit
|
|
20
|
+
{
|
|
21
|
+
code: 'banner-div',
|
|
22
|
+
mediaTypes: {
|
|
23
|
+
banner: {
|
|
24
|
+
sizes: [[300, 250]]
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
bids: [{
|
|
28
|
+
bidder: 'ssmas',
|
|
29
|
+
params: {
|
|
30
|
+
placementId: "10336"
|
|
31
|
+
}
|
|
32
|
+
}]
|
|
33
|
+
}
|
|
34
|
+
];
|
|
35
|
+
```
|
|
@@ -12,13 +12,14 @@ const SYNC_URL = 'https://ssp.wp.pl/bidder/usersync';
|
|
|
12
12
|
const NOTIFY_URL = 'https://ssp.wp.pl/bidder/notify';
|
|
13
13
|
const GVLID = 676;
|
|
14
14
|
const TMAX = 450;
|
|
15
|
-
const BIDDER_VERSION = '5.
|
|
15
|
+
const BIDDER_VERSION = '5.9';
|
|
16
16
|
const DEFAULT_CURRENCY = 'PLN';
|
|
17
17
|
const W = window;
|
|
18
18
|
const { navigator } = W;
|
|
19
19
|
const oneCodeDetection = {};
|
|
20
20
|
const adUnitsCalled = {};
|
|
21
21
|
const adSizesCalled = {};
|
|
22
|
+
const bidderRequestsMap = {};
|
|
22
23
|
const pageView = {};
|
|
23
24
|
var consentApiVersion;
|
|
24
25
|
|
|
@@ -93,19 +94,17 @@ const getNotificationPayload = bidData => {
|
|
|
93
94
|
const bids = isArray(bidData) ? bidData : [bidData];
|
|
94
95
|
if (bids.length > 0) {
|
|
95
96
|
let result = {
|
|
96
|
-
requestId: undefined,
|
|
97
97
|
siteId: [],
|
|
98
98
|
slotId: [],
|
|
99
99
|
tagid: [],
|
|
100
100
|
}
|
|
101
101
|
bids.forEach(bid => {
|
|
102
|
-
const { adUnitCode,
|
|
102
|
+
const { adUnitCode, cpm, creativeId, meta, mediaType, params: bidParams, bidderRequestId, requestId, timeout } = bid;
|
|
103
103
|
const params = unpackParams(bidParams);
|
|
104
104
|
|
|
105
105
|
// basic notification data
|
|
106
106
|
const bidBasicData = {
|
|
107
|
-
|
|
108
|
-
requestId: auctionId || result.requestId,
|
|
107
|
+
requestId: bidderRequestId || bidderRequestsMap[requestId],
|
|
109
108
|
timeout: timeout || result.timeout,
|
|
110
109
|
pvid: pageView.id,
|
|
111
110
|
}
|
|
@@ -127,12 +126,14 @@ const getNotificationPayload = bidData => {
|
|
|
127
126
|
|
|
128
127
|
if (cpm) {
|
|
129
128
|
// non-empty bid data
|
|
129
|
+
const { advertiserDomains = [], networkName, pricepl } = meta;
|
|
130
130
|
const bidNonEmptyData = {
|
|
131
131
|
cpm,
|
|
132
|
-
cpmpl:
|
|
132
|
+
cpmpl: pricepl,
|
|
133
133
|
creativeId,
|
|
134
|
-
adomain:
|
|
135
|
-
|
|
134
|
+
adomain: advertiserDomains[0],
|
|
135
|
+
adtype: mediaType,
|
|
136
|
+
networkName,
|
|
136
137
|
}
|
|
137
138
|
result = { ...result, ...bidNonEmptyData }
|
|
138
139
|
}
|
|
@@ -447,10 +448,15 @@ var mapVideo = (slot, videoFromBid) => {
|
|
|
447
448
|
};
|
|
448
449
|
|
|
449
450
|
const mapImpression = slot => {
|
|
450
|
-
const { adUnitCode, bidId, params = {}, ortb2Imp = {} } = slot;
|
|
451
|
+
const { adUnitCode, bidderRequestId, bidId, params = {}, ortb2Imp = {} } = slot;
|
|
451
452
|
const { id, siteId, video } = params;
|
|
452
453
|
const { ext = {} } = ortb2Imp;
|
|
453
454
|
|
|
455
|
+
/*
|
|
456
|
+
store bidId <-> bidderRequestId mapping for bidWon notification
|
|
457
|
+
*/
|
|
458
|
+
bidderRequestsMap[bidId] = bidderRequestId;
|
|
459
|
+
|
|
454
460
|
/*
|
|
455
461
|
check max size for this imp, and check/store number this size was called (for current view)
|
|
456
462
|
send this info as ext.pbsize
|
|
@@ -494,15 +500,20 @@ const isNativeAd = bid => {
|
|
|
494
500
|
return bid.admNative || (bid.adm && bid.adm.match(xmlTester));
|
|
495
501
|
}
|
|
496
502
|
|
|
497
|
-
const parseNative = (nativeData) => {
|
|
503
|
+
const parseNative = (nativeData, adUnitCode) => {
|
|
498
504
|
const { link = {}, imptrackers: impressionTrackers, jstracker } = nativeData;
|
|
499
505
|
const { url: clickUrl, clicktrackers: clickTrackers = [] } = link;
|
|
506
|
+
const macroReplacer = tracker => tracker.replace(new RegExp('%native_dom_id%', 'g'), adUnitCode);
|
|
507
|
+
let javascriptTrackers = isArray(jstracker) ? jstracker : jstracker && [jstracker];
|
|
508
|
+
|
|
509
|
+
// replace known macros in js trackers
|
|
510
|
+
javascriptTrackers = javascriptTrackers && javascriptTrackers.map(macroReplacer);
|
|
500
511
|
|
|
501
512
|
const result = {
|
|
502
513
|
clickUrl,
|
|
503
514
|
clickTrackers,
|
|
504
515
|
impressionTrackers,
|
|
505
|
-
javascriptTrackers
|
|
516
|
+
javascriptTrackers,
|
|
506
517
|
};
|
|
507
518
|
|
|
508
519
|
nativeData.assets.forEach(asset => {
|
|
@@ -627,6 +638,8 @@ const spec = {
|
|
|
627
638
|
return true;
|
|
628
639
|
},
|
|
629
640
|
buildRequests(validBidRequests, bidderRequest) {
|
|
641
|
+
logWarn('DEBUG: buildRequests', bidderRequest.auctionId, bidderRequest.bidderRequestId);
|
|
642
|
+
|
|
630
643
|
// convert Native ORTB definition to old-style prebid native definition
|
|
631
644
|
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
|
|
632
645
|
|
|
@@ -644,7 +657,7 @@ const spec = {
|
|
|
644
657
|
const ref = bidderRequest.refererInfo.ref;
|
|
645
658
|
|
|
646
659
|
const payload = {
|
|
647
|
-
id: bidderRequest.
|
|
660
|
+
id: bidderRequest.bidderRequestId,
|
|
648
661
|
site: {
|
|
649
662
|
id: siteId ? `${siteId}` : undefined,
|
|
650
663
|
publisher: publisherId ? { id: publisherId } : undefined,
|
|
@@ -725,6 +738,7 @@ const spec = {
|
|
|
725
738
|
|
|
726
739
|
if (bidRequest && site.id && !strIncludes(site.id, 'bidid')) {
|
|
727
740
|
// found a matching request; add this bid
|
|
741
|
+
const { adUnitCode } = bidRequest;
|
|
728
742
|
|
|
729
743
|
// store site data for future notification
|
|
730
744
|
oneCodeDetection[bidId] = [site.id, site.slot];
|
|
@@ -760,7 +774,7 @@ const spec = {
|
|
|
760
774
|
// check native object
|
|
761
775
|
try {
|
|
762
776
|
const nativeData = serverBid.admNative || JSON.parse(serverBid.adm).native;
|
|
763
|
-
bid.native = parseNative(nativeData);
|
|
777
|
+
bid.native = parseNative(nativeData, adUnitCode);
|
|
764
778
|
bid.width = 1;
|
|
765
779
|
bid.height = 1;
|
|
766
780
|
} catch (err) {
|
|
@@ -807,6 +821,15 @@ const spec = {
|
|
|
807
821
|
}
|
|
808
822
|
},
|
|
809
823
|
|
|
824
|
+
onBidViewable(bid) {
|
|
825
|
+
const payload = getNotificationPayload(bid);
|
|
826
|
+
if (payload) {
|
|
827
|
+
payload.event = 'bidViewable';
|
|
828
|
+
sendNotification(payload);
|
|
829
|
+
return payload;
|
|
830
|
+
}
|
|
831
|
+
},
|
|
832
|
+
|
|
810
833
|
onBidWon(bid) {
|
|
811
834
|
const payload = getNotificationPayload(bid);
|
|
812
835
|
if (payload) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {buildUrl, deepAccess, getWindowSelf, getWindowTop, isEmpty, isStr, logWarn} from '../src/utils.js';
|
|
1
|
+
import { buildUrl, deepAccess, generateUUID, getWindowSelf, getWindowTop, isEmpty, isStr, logWarn } from '../src/utils.js';
|
|
2
2
|
import {registerBidder} from '../src/adapters/bidderFactory.js';
|
|
3
3
|
import {BANNER, VIDEO} from '../src/mediaTypes.js';
|
|
4
4
|
import {find} from '../src/polyfill.js';
|
|
@@ -50,8 +50,7 @@ export const spec = {
|
|
|
50
50
|
const refererInfo = bidderRequest.refererInfo;
|
|
51
51
|
|
|
52
52
|
const basePayload = {
|
|
53
|
-
|
|
54
|
-
id: bidderRequest.auctionId,
|
|
53
|
+
id: generateUUID(),
|
|
55
54
|
ref: refererInfo.ref,
|
|
56
55
|
ssl: isSecureWindow(),
|
|
57
56
|
mpa: isMainPageAccessible(),
|
package/modules/tapadIdSystem.js
CHANGED
|
@@ -220,6 +220,7 @@ function buildRequestObject(bid) {
|
|
|
220
220
|
let placementId = getValue(bid.params, 'placementId');
|
|
221
221
|
let pageId = getValue(bid.params, 'pageId');
|
|
222
222
|
const gpid = deepAccess(bid, 'ortb2Imp.ext.gpid');
|
|
223
|
+
const videoPlcmt = deepAccess(bid, 'mediaTypes.video.plcmt');
|
|
223
224
|
|
|
224
225
|
reqObj.sizes = getSizes(bid);
|
|
225
226
|
reqObj.bidId = getBidIdParameter('bidId', bid);
|
|
@@ -229,6 +230,7 @@ function buildRequestObject(bid) {
|
|
|
229
230
|
reqObj.adUnitCode = getBidIdParameter('adUnitCode', bid);
|
|
230
231
|
reqObj.transactionId = bid.ortb2Imp?.ext?.tid || '';
|
|
231
232
|
if (gpid) { reqObj.gpid = gpid; }
|
|
233
|
+
if (videoPlcmt) { reqObj.videoPlcmt = videoPlcmt; }
|
|
232
234
|
return reqObj;
|
|
233
235
|
}
|
|
234
236
|
|
package/modules/tncIdSystem.js
CHANGED
|
@@ -15,10 +15,13 @@ let LOAD_TOPICS_INITIALISE = false;
|
|
|
15
15
|
const HAS_DEVICE_ACCESS = hasDeviceAccess();
|
|
16
16
|
|
|
17
17
|
const bidderIframeList = {
|
|
18
|
-
maxTopicCaller:
|
|
18
|
+
maxTopicCaller: 2,
|
|
19
19
|
bidders: [{
|
|
20
20
|
bidder: 'pubmatic',
|
|
21
21
|
iframeURL: 'https://ads.pubmatic.com/AdServer/js/topics/topics_frame.html'
|
|
22
|
+
}, {
|
|
23
|
+
bidder: 'rtbhouse',
|
|
24
|
+
iframeURL: 'https://topics.authorizedvault.com/topicsapi.html'
|
|
22
25
|
}]
|
|
23
26
|
}
|
|
24
27
|
export const coreStorage = getCoreStorageManager(MODULE_NAME);
|
|
@@ -36,6 +36,10 @@ pbjs.setConfig({
|
|
|
36
36
|
bidder: 'pubmatic',
|
|
37
37
|
iframeURL: 'https://ads.pubmatic.com/AdServer/js/topics/topics_frame.html',
|
|
38
38
|
expiry: 7 // Configurable expiry days
|
|
39
|
+
},{
|
|
40
|
+
bidder: 'rtbhouse',
|
|
41
|
+
iframeURL: 'https://topics.authorizedvault.com/topicsapi.html',
|
|
42
|
+
expiry: 7 // Configurable expiry days
|
|
39
43
|
},{
|
|
40
44
|
bidder: 'rubicon',
|
|
41
45
|
iframeURL: 'https://rubicon.com:8080/topics/fpd/topic.html', // dummy URL
|
|
@@ -189,6 +189,11 @@ function _buildPostBody(bidRequests, bidderRequest) {
|
|
|
189
189
|
if (bidderRequest?.ortb2?.regs?.gpp) {
|
|
190
190
|
data.regs = Object.assign({}, bidderRequest.ortb2.regs);
|
|
191
191
|
}
|
|
192
|
+
|
|
193
|
+
if (bidderRequest?.ortb2) {
|
|
194
|
+
data.ext.ortb2 = Object.assign({}, bidderRequest.ortb2);
|
|
195
|
+
}
|
|
196
|
+
|
|
192
197
|
return data;
|
|
193
198
|
}
|
|
194
199
|
|
package/modules/uid2IdSystem.js
CHANGED
|
@@ -83,6 +83,20 @@ export const uid2IdSubmodule = {
|
|
|
83
83
|
_logInfo(`UID2 getId returned`, result);
|
|
84
84
|
return result;
|
|
85
85
|
},
|
|
86
|
+
eids: {
|
|
87
|
+
'uid2': {
|
|
88
|
+
source: 'uidapi.com',
|
|
89
|
+
atype: 3,
|
|
90
|
+
getValue: function(data) {
|
|
91
|
+
return data.id;
|
|
92
|
+
},
|
|
93
|
+
getUidExt: function(data) {
|
|
94
|
+
if (data.ext) {
|
|
95
|
+
return data.ext;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
},
|
|
86
100
|
};
|
|
87
101
|
|
|
88
102
|
function decodeImpl(value) {
|
|
@@ -67,6 +67,17 @@ export const unifiedIdSubmodule = {
|
|
|
67
67
|
ajax(url, callbacks, undefined, {method: 'GET', withCredentials: true});
|
|
68
68
|
};
|
|
69
69
|
return {callback: resp};
|
|
70
|
+
},
|
|
71
|
+
eids: {
|
|
72
|
+
'tdid': {
|
|
73
|
+
source: 'adserver.org',
|
|
74
|
+
atype: 1,
|
|
75
|
+
getUidExt: function() {
|
|
76
|
+
return {
|
|
77
|
+
rtiPartner: 'TDID'
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
},
|
|
70
81
|
}
|
|
71
82
|
};
|
|
72
83
|
|