Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge master #13

Merged
merged 466 commits into from
Jul 12, 2023
Merged
Changes from 1 commit
Commits
Show all changes
466 commits
Select commit Hold shift + click to select a range
c878dc2
MinuteMediaPlus Bid Adapter: Pass gpid to server. (#9830)
saar120 Apr 19, 2023
452f026
IX Bid Adapter: Support for Ad unit specific First Party Data (#9821)
shahinrahbariasl Apr 19, 2023
a28b607
KueezRtb Bid Adapter: Pass gpid to server. (#9831)
saar120 Apr 19, 2023
467f78f
Adnuntius Bid Adapter: Europe endpoint (#9829)
mikael-lundin Apr 19, 2023
c191573
TheMediaGrid: make gridNMBidAdater as alias for gridBidAdapter (#9832)
TheMediaGrid Apr 19, 2023
a539646
pairId userId submodule: initial commit for pairId submodule (#9662)
congdu-kun Apr 19, 2023
ad7d898
Build Process: Disallow it.skip (#9799)
patmmccann Apr 19, 2023
dcc99b3
Pair ID system: fix storageManager invocation (#9833)
dgirardi Apr 19, 2023
b8c1c95
Yieldmo Adapter: Send GPP data in bid request. (#9460)
desidiver Apr 19, 2023
343fa89
Bidwatch Analytics Adapter: add of the referer for bid won (#9818)
alaincajuste-msq Apr 19, 2023
e810189
Mediasquare Bid Adapter: add of the referer for onBidWon (#9817)
alaincajuste-msq Apr 20, 2023
1fc1ec3
vidoomy adapter: sync url changed (#9834)
nisart007 Apr 20, 2023
de22826
Support VIDEO feature flag in AppNexus bid adapter (#9653)
mbcrute Apr 20, 2023
55b2e08
ortbConverter: support video.plcmt (#9840)
bwschmidt Apr 21, 2023
608deda
Documentation: Add FLEDGE aka Protected Audience API examples (#9839)
laurb9 Apr 21, 2023
9c3196f
Core: fix spurious warnings on `mergeConfig` (#9704)
dgirardi Apr 21, 2023
24da871
Prebid 7.46.0 release
prebidjs-release Apr 21, 2023
21b9bbe
Increment version to 7.47.0-pre
prebidjs-release Apr 21, 2023
dc7b3c6
vidoomy adapter: added block module (#9825)
nimasrn Apr 24, 2023
ecbb223
Sending empty array instead of string. (#9846)
desidiver Apr 24, 2023
5ffd88a
RTB house Bid Adapter: fix encoding bug for bid response for native a…
kmrnpu Apr 25, 2023
cff4364
Missena Bid Adapter: fix alias (#9849)
pdamoc Apr 25, 2023
d0bb0f5
add EMTV adapter (#9783)
EngageMediaHB Apr 25, 2023
bff1f41
Criteo Id Module: ensure all kind of privacy strings are sent to back…
leonardlabat Apr 26, 2023
3430e8d
NextMillennium Bd Adapter : add gvlid (#9858)
JacobKlein26 Apr 27, 2023
51884fe
Prebid 7.47.0 release
prebidjs-release Apr 27, 2023
50fda60
Increment version to 7.48.0-pre
prebidjs-release Apr 27, 2023
a6d0b30
Adrino Bid Adapter: banner support added (#9860)
tmielcarz Apr 27, 2023
3f51102
Criteo Bid Adapter: Map native assets to slot.ext.assets (#9851)
vraybaud Apr 27, 2023
22ff9c2
Realvu analytics adapter: fix test failures on Edge (#9857)
dgirardi Apr 27, 2023
1ac3572
ORTB2 bcat & badv support + ORTB2 tests (#9871)
piotrj-rtbh Apr 28, 2023
0cf7c75
AdMatic Bid Adapter: added Video / Banner params (#9856)
fatihkaya84 May 1, 2023
48cd245
Triplelift Bid Adapter: copying ad unit impression data (#9865)
patrickloughrey May 1, 2023
e0e77cf
Multiple modules: do not use bidderTimeout as TTL (#9880)
dgirardi May 1, 2023
2edd264
Grid Bid Adapter: add support for video.plcmt (#9763)
patmmccann May 1, 2023
962d816
Revert "Grid Bid Adapter: add support for video.plcmt (#9763)" (#9882)
patmmccann May 1, 2023
ffb76a7
UPDATE setOrtb user ids to avoid passing an empty array when no user …
ialex May 1, 2023
7d61a53
Sovrn Bid Adapter: add gpp support (#9811)
smounitz May 1, 2023
cb2536b
Triplelift Bid Adapter: relax check on consentString before appending…
nllerandi3lift May 1, 2023
e77512d
Yahoo connect id storage fixes. (#9854)
radubarbos May 2, 2023
16d8639
Remove syncstore from adapter (#9890)
thomasdseao May 2, 2023
af44f4b
Adloox server video: mock out blob URLs in tests (#9881)
dgirardi May 2, 2023
f076c8b
Relevant Digital Bid Adapter: initial release (#9685)
samuel-palmer-relevant-digital May 3, 2023
16fe0cf
Greenbids RTD provider (#9848)
jbogp May 4, 2023
27c817e
Bump engine.io and socket.io (#9903)
dependabot[bot] May 4, 2023
0ac5d66
support VIDEO feature flag in TTD bid adapter (#9878)
mbcrute May 4, 2023
045b5d2
FreeWheel SSP Bid Adapter: add GPP support (#9859)
xwang202 May 4, 2023
b5cfcd9
Prebid 7.48.0 release
prebidjs-release May 4, 2023
bc665aa
Increment version to 7.49.0-pre
prebidjs-release May 4, 2023
879e5c4
Prebid Core: Functionality to Optionally Defer Billing for an Ad (#9640)
jlquaccia May 5, 2023
71a5e21
MgidAdapter: change user sync get parameters (#9891)
Gaudeamus May 6, 2023
88095ca
Rise Bid Adapter: support Coppa param (#9837)
YakirLavi May 6, 2023
d5bfdee
Bidder Settings: Support for option to apply adapter bid adjustment t…
jlquaccia May 6, 2023
45867d4
PBjs Core : filter bidders from config when not server-side (#9632)
May 6, 2023
ea889fe
MinuteMedia Bid Adapter: Support Coppa param (#9838)
YakirLavi May 6, 2023
386c95a
ttd bid adapter: pass on all of user/app/ortb2imp for first party dat…
khang-vu-ttd May 6, 2023
c43a0e4
AIDEM Bidder Adapter: added arbitrary ext field to win notice (#9906)
Wazabit May 6, 2023
ce01d89
YieldlabBidAdapter updated native asset mapping (#9895)
nkloeber May 6, 2023
122f67d
Update index.js (#9913)
patmmccann May 8, 2023
b6d949f
fix for #8421, Update ad generation adapter 1.5.0 (#9911)
banakemi May 8, 2023
9f1dd22
PubmaticAnalyticsAdapter - Passing GPT slot name for "au" field. (#9912)
kapil-tuptewar May 8, 2023
ca2f974
Retailspot Bid Adapter : initial release (#9824)
rs-guian May 8, 2023
fbfb4c7
Vidazoo Bid Adapter: allow all id systems (#9910)
saar120 May 9, 2023
a222952
Admixer Bid Adapter: add alias handlers (#9931)
AdmixerTech May 10, 2023
bc6aa84
IX Bid Adapter : fix missing IX First Party Data (#9920)
shahinrahbariasl May 10, 2023
36ccf08
Update nexx360BidAdapter.js (#9938)
gchicoye May 11, 2023
b5a9556
KueezRtb Bid Adapter: added support for all user id systems. (#9926)
saar120 May 11, 2023
facd0b7
MinuteMediaPlus Bid Adapter: added support for all user id systems. (…
saar120 May 11, 2023
2abfd46
Prebid 7.49.0 release
prebidjs-release May 11, 2023
8fe7115
Increment version to 7.50.0-pre
prebidjs-release May 11, 2023
5db8560
includes a type property to all events (#9771)
karimMourra May 12, 2023
6d0e991
added projectagora as an alias for appnexus (#9944)
mariosk5 May 12, 2023
81fcd91
TheMediaGrid: added video.plcmt support (#9941)
TheMediaGrid May 12, 2023
6b3ad92
MASS module: fix tests (#9939)
dgirardi May 12, 2023
1a69318
be sure that bidResponse contains width and height (#9929)
musikele May 12, 2023
887c7d4
Beop Bid Adapter : fix gdpr applies (#9945)
sebrobert May 15, 2023
a2411cc
Magnite Analytics: Utilize perfMetrics (#9925)
robertrmartinez May 15, 2023
ba6a97f
Rubicon Bid Adapter : access x_source.tid from ortb2 object (#9940)
spotxslagle May 15, 2023
7ca9878
Criteo: Add mapping for bid.meta.networkName (#9930)
Pgb-Criteo May 15, 2023
2f078e0
warns when plcmt is missing (#9937)
karimMourra May 15, 2023
a773c4f
Silverpush Bid Adapter : initial release (#9844)
prebid-sp May 15, 2023
38cf634
Criteo Bid Adapter: add eids to bid request sent to bidder (#9949)
leonardlabat May 15, 2023
3de4b67
fix(permutiveRtd): remove ozone map and set site ext (#9628)
AntonioGargaro May 15, 2023
1e25e29
Revert "Rubicon Bid Adapter : access x_source.tid from ortb2 object (…
robertrmartinez May 15, 2023
667bbda
RubiconBidAdapter: sync parseSize algorithm for isBidRequestValid and…
musikele May 16, 2023
92daa81
Yahoo SSP adapter support for extra site publisher info. (#9921)
radubarbos May 17, 2023
eeab092
Criteo Bid Adapter: add support for imp.rwdd (#9964)
Pgb-Criteo May 17, 2023
3cdbd1d
confiant Rtd Provider : add message type check (#9950)
denys-berzoy-confiant May 17, 2023
a205c6c
Add mobile client hint 33x adapter (#9958)
anthonyjl92 May 17, 2023
4b62ff5
eps_aliasing - adding in aliases for epsilon (formerly conversant) fo…
AaronColbyPrice May 17, 2023
4d998de
Underdog Media Bid Adapter: Update ttl & referer information (#9826)
kevpark02 May 17, 2023
425cc56
LiveIntent UserId module: add support for distributorId configuration…
3link May 17, 2023
ed726c7
Docs Integration Examples : add Events UI page for Video Module (#9934)
karimMourra May 18, 2023
7224457
Prebid 7.50.0 release
prebidjs-release May 18, 2023
343605d
Increment version to 7.51.0-pre
prebidjs-release May 18, 2023
18f9774
GumGum Bid Adapter : Id5 integration suppress link type for ttd (#9924)
MartinGumGum May 18, 2023
4d9b28c
PBS Bid Adapter: add context to emitted seatnonbid event (#9804)
spotxslagle May 18, 2023
c43648b
Criteo bid adapter: Add video outstream renderer (#9955)
vraybaud May 19, 2023
69c8db8
add SSP Copper6 alias adapter (#9972)
GeneGenie May 19, 2023
73a1a72
Criteo Bid Adapter: add support for video.plcmt (#9975)
Pgb-Criteo May 19, 2023
f0e7488
PubMatic Bid Adapter: Added support for video.plcmt (#9979)
pm-azhar-mulla May 22, 2023
1a5ad0c
FreeWheel SSP Adapter: add support for video.plcmt (#9978)
xwang202 May 22, 2023
be23ae2
Adnuntius Bid Adaptor: Handling deals better (#9943)
antosarho May 22, 2023
5ac6dcc
Core: fix in ortb -> legacy native asset conversion (#9923)
dgirardi May 22, 2023
bfe4538
RTB House Bid Adapter: docs update - FLEDGE support (#9986)
piotrj-rtbh May 23, 2023
8e3c263
AdHash Bid Adapter: changes to support preroll videos (#9870)
wyand-sp May 23, 2023
c6fa40b
Bump socket.io-parser from 4.2.1 to 4.2.3 (#9992)
dependabot[bot] May 24, 2023
ce9c164
clean.io RTD Module: Use loadExternalScript function instead of inser…
eugen-tikhonov May 24, 2023
892013b
Rise Bid Adapter: support sua and plcmt params. (#9996)
YakirLavi May 24, 2023
c59dd06
Adman Adapter: remove useless parameter (#9967)
SmartyAdman May 25, 2023
ab941a4
Adrino Bid Adapter: pass adUnitCode to adserver (#9993)
tmielcarz May 25, 2023
c42cd5e
Adkernel Bid Adapter: add didnadisplay alias (#10000)
ckbo3hrk May 25, 2023
8b7bab1
MinuteMedia Bid Adapter: support sua and plcmt params (#9997)
YakirLavi May 25, 2023
60aca0d
Adquery Bid Adapter : added bid request: version and bidPageUrl (#9946)
adquery May 25, 2023
ebbe85c
Appnexus Bid Adapter: added uol as an alias (#10002)
uoladtech May 25, 2023
e2f5858
Prebid 7.51.0 release
prebidjs-release May 25, 2023
e626784
Increment version to 7.52.0-pre
prebidjs-release May 25, 2023
5199712
Pair Id System: less noisy errors (#9998)
patmmccann May 26, 2023
f7a64c6
Zeta Global SSP Bid Adapter: Added support for video.plcmt (#10009)
abermanov-zeta May 30, 2023
fc6bced
Criteo Adapter: Add support of bcat/badv/bapp (#10013)
dzhang-criteo May 30, 2023
7cbedf0
Smartadserver Bid Adapter: support GPID (#10004)
krzysztofequativ May 30, 2023
68d572e
chore: update default video placement value [PB-1560] (#9948)
ccorbo May 30, 2023
4a3d5a7
ShareThrough Bid Adapter : fix playerSize (#10011)
ReinoutStevens May 30, 2023
122d624
GrowthCode RTD : initial release (#9852)
southern-growthcode May 30, 2023
62200e3
Stv Bid Adapter: add schain support (#10010)
theo-stv May 31, 2023
d1b228c
fix module type (#10019)
ChrisHuie May 31, 2023
8b0ff01
Update ad generation adapter 1.6.0: update userSync (#9984)
banakemi May 31, 2023
e24dc79
Connect id : storage duration updates and no longer require puid or h…
radubarbos Jun 1, 2023
d0c1d08
Oxxion Analytics Adapter : initial adapter release (#9682)
matthieularere-msq Jun 1, 2023
992f129
Undertone Bid Adapter : added GPP and video placements (#10016)
idanbotbol Jun 1, 2023
805c038
Adriver Id System: add cfa param to url (#10024)
Spolete Jun 1, 2023
77f0959
Core: fix `markWinningBidAsUsed` to set bid as winning and not just r…
dgirardi Jun 1, 2023
9c1a5e6
Yahoo bid adapter: User sync pixels, consent signals update (#10028)
slimkrazy Jun 1, 2023
129f6f6
Yahoo ConnectId - gpp consent module usage. (#10022)
radubarbos Jun 1, 2023
0a7ca9f
Core & Multiple modules: activity controls (#9802)
dgirardi Jun 1, 2023
d5f8189
Yahoo ConnectId - fixed tests. (#10033)
radubarbos Jun 1, 2023
c7da448
Prebid 7.52.0 release
prebidjs-release Jun 1, 2023
0f4b665
Increment version to 7.53.0-pre
prebidjs-release Jun 1, 2023
27ea1ad
airgridRtdProvider: use provided tag insertion method `loadExternalSc…
naripok Jun 1, 2023
382599e
Schain module: do not share schain objects across different bid reque…
dgirardi Jun 1, 2023
a2bb2cb
UID2 & EUID Modules: Add support for EUID and prefer localStorage for…
lionell-pack-ttd Jun 2, 2023
48dd8e1
Criteo Bid Adapter : Bump fastbid version to 136 (#9973)
vraybaud Jun 2, 2023
d4a1f4f
ID5 User Id module - get whole ext object from server response (#10036)
abazylewicz-id5 Jun 2, 2023
d71feb8
update greenbids analytics endpoint (#10037)
jbogp Jun 2, 2023
01381e1
AdagioBidAdapter: change outstream renderer (#10035)
osazos Jun 2, 2023
27458d1
ZetaGlobalSsp Bid Adapter : process array of sizes (#10039)
asurovenko-zeta Jun 2, 2023
831ede9
change session_id fallback to bidderRequestId (#10047)
lasloche Jun 5, 2023
ed8f78a
Logicad Bid Adapter: Add topics and uach support (#10045)
logicad Jun 5, 2023
c7cd524
Update nexx360BidAdapter.js (#10042)
gchicoye Jun 6, 2023
fe63033
Add GVL ID for pairId userId submodule. (#10053)
congdu-kun Jun 6, 2023
54578ce
Richaudience Bid Adapter : add compability with GPID (#9928)
richaudience Jun 6, 2023
f33256b
Eskimi Bid Adapter: Added support for video (#9985)
myDisconnect Jun 6, 2023
68d4150
Update adkernelBidAdapter.js (#10056)
rrochwick Jun 6, 2023
c2900ea
feat: pass video.plcmt [PB-1736] (#10058)
ccorbo Jun 6, 2023
4d02dd1
Sirdata RTD Module : bidder specific handling removal (#9970)
nouchy Jun 6, 2023
1a0db49
1plus x RTD Adapter: remove bidder specific handling enforcement (DC …
bwhisp Jun 6, 2023
2cbfc44
Add: Viously GVL ID (#10061)
geoffray-viously Jun 7, 2023
a2dd7ad
Criteo Bid Adapter: Pass outstream video renderer method (#10054)
vraybaud Jun 7, 2023
d435b4e
Add new alias - Apester (#10057)
apykhteyev Jun 7, 2023
c6c9321
Mediasquare Bid Adapter: handle context for video bids (#10055)
matthieularere-msq Jun 7, 2023
6fc73a3
YieldlabBidAdapter updated native asset mapping (#9989)
nkloeber Jun 7, 2023
a262b64
StroeerCore Bid Adapter: add price floor support (#9962)
philipwatson Jun 7, 2023
a3e932c
beOp BidAdapter: FirstPartyData management and ingest Permutive segme…
sebrobert Jun 7, 2023
254f098
Conceptx Bid Adapter : initial release (#9835)
cpcpn-emil Jun 7, 2023
bdd56a7
FreePass User ID Module : initial release (#9814)
czarpino Jun 7, 2023
88e09c7
Mediasquare Bid Adapter: Avoid to run bidwon event on video impressio…
matthieularere-msq Jun 7, 2023
ebd801c
add tmax to sovrnBidAdapter (#10059)
ikagotso Jun 7, 2023
cfe7b5c
ZetaGlobalSspBidAdapter: change logic around mediaType (#10074)
asurovenko-zeta Jun 8, 2023
d3b7900
Weborama RTD Module : start Bidder specific handling removal (#10005)
peczenyj Jun 8, 2023
053ab07
Add bidgency alias (#10077)
adserver-online Jun 8, 2023
33a011d
Prebid 7.53.0 release
prebidjs-release Jun 8, 2023
6293cd6
Increment version to 7.54.0-pre
prebidjs-release Jun 8, 2023
0ab31c4
videojsVideoProvider: use contrib-ads event names (#10081)
dgirardi Jun 9, 2023
222c702
AdHash Bidder Adapter: update for brand safety (#10087)
wyand-sp Jun 12, 2023
e887d85
PubMatic Analytics Adapter : Added extra fields in tracker for analyt…
pm-priyanka-deshmane Jun 12, 2023
41ee11b
Oxxion Rtd Module: listen onBidResponseEvent instead of onAuctionEndE…
matthieularere-msq Jun 12, 2023
e19b800
HypeLab Bid Adapter: Initial Release (#10003)
wengzilla Jun 14, 2023
384e818
Teads Bid Adapter:Remove auctionId from since it is not used anymore …
github-ishara-chan-tung Jun 14, 2023
a7f5cfb
Added GPP support (#10094)
vrtcal-dev Jun 14, 2023
148184c
Update topicsFpdModule.js (#9990)
patmmccann Jun 14, 2023
97d2f34
Prebid 7.54.0 release
prebidjs-release Jun 14, 2023
357d78d
Increment version to 7.54.1-pre
prebidjs-release Jun 14, 2023
df66cdb
Prebid 8: initial release (#10071)
patmmccann Jun 14, 2023
72c239b
Prebid 8.0.0 release
prebidjs-release Jun 14, 2023
8c39bab
Increment version to 8.1.0-pre
prebidjs-release Jun 14, 2023
1e82414
Colossus Bid Adapter: gpp support (#10096)
Jun 14, 2023
9f0c393
new adapter - MgidX (#10015)
xmgiddev Jun 16, 2023
640eb2f
Bedigital Bid Adapter : change bid url, passed additional params to t…
beglobal2022 Jun 16, 2023
8337584
Greenbids Analytics Adapter : fix double sampling (#10091)
jbogp Jun 16, 2023
a5be17f
Sharethrough bid adapter: Populate meta fields when present in bid re…
maxime-dupuis Jun 16, 2023
36a2915
Update freepass IdSystem contact email (#10112)
czarpino Jun 19, 2023
025a227
IIQ Identity module sending more fpid metadata (#10111)
JulianRSL Jun 19, 2023
23e97b4
Bidwatch Analytics Adapter: fix video bid stringify (#10067)
matthieularere-msq Jun 19, 2023
6027de5
KiviAds Bid Adapter : initial release (#10073)
KiviAds Jun 19, 2023
a35cda0
PubMatic Bid Adapter - Fledge Support (Added support for sending AE:1…
pm-nitin-nimbalkar Jun 19, 2023
b49fb5b
Sonobi - Updated outstream size to use the video player size instead …
JonGoSonobi Jun 20, 2023
a532286
RTB House Bid Adapter: fledgeConfig default values (#10116)
piotrj-rtbh Jun 21, 2023
26142f2
ConceptX Bid Adapter : defensive bug fix (#10127)
cpcpn-emil Jun 21, 2023
5bfac11
FreePass Bid Adapter : initial release (#9827)
czarpino Jun 21, 2023
39cc772
TheMediaGrid: fix creativeId value (#10130)
TheMediaGrid Jun 21, 2023
4e3dbea
Rubicon Bid Adapter: GPP support (#10132)
spotxslagle Jun 22, 2023
72d8754
Remove entirely the notion of 'auction_id' as we do not do anything w…
sebrobert Jun 22, 2023
5cf1ae4
Oxxion Analytics Adapter: fix video bid stringify (#10119)
matthieularere-msq Jun 22, 2023
c292fa3
IX Bid Adapter: Multiformat Support (#10101)
ccorbo Jun 22, 2023
0464848
AMX RTB: remove use of auctionId (#10052)
nickjacob Jun 22, 2023
c1adfc1
Prebid 8.1.0 release
prebidjs-release Jun 22, 2023
b94285d
Increment version to 8.2.0-pre
prebidjs-release Jun 22, 2023
4f8c5f4
Brid Bid Adapter: Initial adapter release (#9800)
grajzer Jun 22, 2023
7e6f45b
Adman Adapter: add transactionID (#10078)
SmartyAdman Jun 23, 2023
7cf3088
make is-docker work again #10066 (#10137)
laurb9 Jun 23, 2023
1016e89
Distinguish ids from multiple providers (#9896)
3link Jun 23, 2023
7373d43
Triplelift Bid Adapter: support for Fledge and GPP signals (#10142)
patrickloughrey Jun 23, 2023
40f7375
Intentiq id module: cookie enabled param conflict resolution (#10145)
JulianRSL Jun 26, 2023
8f075c4
Mediasquare Bid Adapter: add increment and code refactory (#10115)
matthieularere-msq Jun 27, 2023
5e22f2f
GPP: usnat support (#10117)
dgirardi Jun 27, 2023
6faa2a3
Oxxion Rtd Module: add bid filtering (#10100)
matthieularere-msq Jun 27, 2023
4d524b5
Prebid 8.2.0 release
prebidjs-release Jun 27, 2023
a288b33
Increment version to 8.3.0-pre
prebidjs-release Jun 27, 2023
dd34342
Vidazoo Bid Adapter: support for multiple bids on single request (#10…
saar120 Jun 28, 2023
ac1e62e
Sovrn Bid Adapter: add transaction id support (#10156)
dmitrybor Jun 28, 2023
b5a8d52
Trafficgate Bid Adapter: move to OpenRTB Converter (#10007)
vlaktion Jun 28, 2023
8864ae4
add gpp support on Smartyads adapter (#10163)
rishko00 Jun 29, 2023
cc1abfb
beOpBidAdapter : Addition of bpsegs attribute to request payload from…
sebrobert Jun 29, 2023
17dafea
Cadent Aperture MX Bid Adapter: Change contact email address (#11) (#…
EMXDigital Jul 5, 2023
20f40a5
Livewrapped Analytics Adapter : collect the same data for timeouts an…
msmeza Jul 5, 2023
eb18f80
Adtelligent adds GPP support (#10179)
GeneGenie Jul 5, 2023
6537343
IX Bid Adapter: Add 33Across to EID allowlist (#10182)
amykwyang Jul 6, 2023
f3245b6
Adagio Bid Adapter : add new boolean params (#10168)
soupape34 Jul 6, 2023
bf1c860
Holid Bid Adapter: Add new fields to bid request, fix auctionId leak …
kdesput Jul 6, 2023
b380fe2
Mediago / Discovery Bid Adapter : update param tagid (#10151)
BaronJHYu Jul 6, 2023
e7ac1b9
Prebid 8.3.0 release
prebidjs-release Jul 6, 2023
22b9c70
Increment version to 8.4.0-pre
prebidjs-release Jul 6, 2023
bdd0f9d
SharedId: use `sharedId` instead of `pubCommonId` for accessing stora…
dgirardi Jul 7, 2023
7cf0274
Vox Bid Addapter: add schain, floors, userid support (#10109)
hybrid-ai Jul 10, 2023
b735f0b
PulsePoint Bid Adapter: deals support and refactoring to use ortbConv…
anand-venkatraman Jul 10, 2023
e43ed0e
userId Module: Update GAM APIs for eids (#10172)
dlackty Jul 10, 2023
dcbebef
Sovrn Bid adapter: add GPP support for user sync (#10198)
dmitrybor Jul 10, 2023
38aacce
Yahoo Bid Adapter: Rebrand from to Yahoo Advertising (#10125)
slimkrazy Jul 10, 2023
b38612f
PubMatic Bid Adapter : add GPP support (#10165)
pm-nitin-shirsat Jul 10, 2023
908872d
MinuteMedia Bid Adapter: support missing params and tests (#10195)
YakirLavi Jul 10, 2023
a8d844b
TheMediaGrid: support on data deletion request (#10095)
TheMediaGrid Jul 10, 2023
822c09e
Topics Fpd Module: Add RtbHouse topics network (#10107)
piwanczak Jul 10, 2023
ecc0a37
Bump semver from 5.7.1 to 5.7.2 (#10205)
dependabot[bot] Jul 11, 2023
adfe8a7
AdagioBidAdapter: remove useless `id` in adRequest (#10207)
osazos Jul 11, 2023
7e11273
gpdrEnforcement : add purpose 4 check for `transmitUfpd` (#10199)
dgirardi Jul 11, 2023
a3c7884
StroeerCore Bid Adapter: use a random UUID for the request id (#10206)
philipwatson Jul 11, 2023
83b35f5
feat: signal imp.displaymanager [PB-551] (#10131)
ccorbo Jul 11, 2023
b849605
Support billable events (#10148)
johanbrandmetrics Jul 11, 2023
f77b6fd
Delete inskin_example.html (#10218)
patmmccann Jul 11, 2023
ab56b25
Adman Bid Adapter : additional content object handle (#10204)
SmartyAdman Jul 11, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
AdagioBidAdapter: change outstream renderer (prebid#10035)
  • Loading branch information
osazos authored Jun 2, 2023

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
commit 01381e1944376928757df5e0f44c3390e4c48583
110 changes: 86 additions & 24 deletions modules/adagioBidAdapter.js
Original file line number Diff line number Diff line change
@@ -44,7 +44,11 @@ const ADAGIO_TAG_URL = 'https://script.4dex.io/localstore.js';
const ADAGIO_LOCALSTORAGE_KEY = 'adagioScript';
const GVLID = 617;
export const storage = getStorageManager({bidderCode: BIDDER_CODE});
export const RENDERER_URL = 'https://script.4dex.io/outstream-player.js';

const BB_PUBLICATION = 'adagio';
const BB_RENDERER_DEFAULT = 'renderer';
export const BB_RENDERER_URL = `https://${BB_PUBLICATION}.bbvms.com/r/$RENDERER.js`;

const MAX_SESS_DURATION = 30 * 60 * 1000;
const ADAGIO_PUBKEY = 'AL16XT44Sfp+8SHVF1UdC7hydPSMVLMhsYknKDdwqq+0ToDSJrP0+Qh0ki9JJI2uYm/6VEYo8TJED9WfMkiJ4vf02CW3RvSWwc35bif2SK1L8Nn/GfFYr/2/GG/Rm0vUsv+vBHky6nuuYls20Og0HDhMgaOlXoQ/cxMuiy5QSktp';
const ADAGIO_PUBKEY_E = 65537;
@@ -62,7 +66,7 @@ export const ORTB_VIDEO_PARAMS = {
'startdelay': (value) => isInteger(value),
'placement': (value) => isInteger(value),
'linearity': (value) => isInteger(value),
'skip': (value) => isInteger(value),
'skip': (value) => [1, 0].includes(value),
'skipmin': (value) => isInteger(value),
'skipafter': (value) => isInteger(value),
'sequence': (value) => isInteger(value),
@@ -443,16 +447,6 @@ function _buildVideoBidRequest(bidRequest) {
});
}

function _renderer(bid) {
bid.renderer.push(() => {
if (typeof window.ADAGIO.outstreamPlayer === 'function') {
window.ADAGIO.outstreamPlayer(bid);
} else {
logError(`${LOG_PREFIX} Adagio outstream player is not defined`);
}
});
}

function _parseNativeBidResponse(bid) {
if (!bid.admNative || !Array.isArray(bid.admNative.assets)) {
logError(`${LOG_PREFIX} Invalid native response`);
@@ -881,6 +875,77 @@ function storeRequestInAdagioNS(bidRequest) {
};
}

// See https://support.bluebillywig.com/developers/vast-renderer/
const OUTSTREAM_RENDERER = {
bootstrapPlayer: function(bid) {
const rendererCode = bid.outstreamRendererCode;

const config = {
code: bid.adUnitCode,
};

if (bid.vastXml) {
config.vastXml = bid.vastXml;
} else if (bid.vastUrl) {
config.vastUrl = bid.vastUrl;
}

if (!bid.vastXml && !bid.vastUrl) {
logError(`${LOG_PREFIX} no vastXml or vastUrl on bid`);
return;
}

if (!window.bluebillywig || !window.bluebillywig.renderers || !window.bluebillywig.renderers.length) {
logError(`${LOG_PREFIX} no BlueBillywig renderers found!`);
return;
}

const rendererId = this.getRendererId(BB_PUBLICATION, rendererCode);

const override = {}
if (bid.skipOffset) {
override.skipOffset = bid.skipOffset.toString()
}

const renderer = window.bluebillywig.renderers.find(bbr => bbr._id === rendererId);
if (!renderer) {
logError(`${LOG_PREFIX} couldn't find a renderer with ID ${rendererId}`);
return;
}

const el = document.getElementById(bid.adUnitCode);

renderer.bootstrap(config, el, override);
},
newRenderer: function(adUnitCode, rendererCode) {
const rendererUrl = BB_RENDERER_URL.replace('$RENDERER', rendererCode);

const renderer = Renderer.install({
url: rendererUrl,
loaded: false,
adUnitCode
});

try {
renderer.setRender(this.outstreamRender);
} catch (err) {
logError(`${LOG_PREFIX} error trying to setRender`, err);
}

return renderer;
},
outstreamRender: function(bid) {
bid.renderer.push(() => {
OUTSTREAM_RENDERER.bootstrapPlayer(bid)
});
},
getRendererId: function(publication, renderer) {
// By convention, the RENDERER_ID is always the publication name (adagio) and the ad unit code (eg. renderer)
// joined together by a dash. It's used to identify the correct renderer instance on the page in case there's multiple.
return `${publication}-${renderer}`;
}
};

export const spec = {
code: BIDDER_CODE,
gvlid: GVLID,
@@ -1110,21 +1175,18 @@ export const spec = {
const mediaTypeContext = deepAccess(bidReq, 'mediaTypes.video.context');
// Adagio SSP returns a `vastXml` only. No `vastUrl` nor `videoCacheKey`.
if (!bidObj.vastUrl && bidObj.vastXml) {
bidObj.vastUrl = 'data:text/xml;charset=utf-8;base64,' + btoa(bidObj.vastXml.replace(/\\"/g, '"'));
bidObj.vastUrl = 'data:text/xml;charset=utf-8;base64,' + window.btoa(bidObj.vastXml.replace(/\\"/g, '"'));
}

if (mediaTypeContext === OUTSTREAM) {
bidObj.renderer = Renderer.install({
id: bidObj.requestId,
adUnitCode: bidObj.adUnitCode,
url: bidObj.urlRenderer || RENDERER_URL,
config: {
...deepAccess(bidReq, 'mediaTypes.video'),
...deepAccess(bidObj, 'outstream', {})
}
});

bidObj.renderer.setRender(_renderer);
bidObj.outstreamRendererCode = deepAccess(bidReq, 'params.rendererCode', BB_RENDERER_DEFAULT)

if (deepAccess(bidReq, 'mediaTypes.video.skip')) {
const skipOffset = deepAccess(bidReq, 'mediaTypes.video.skipafter', 5) // default 5s.
bidObj.skipOffset = skipOffset
}

bidObj.renderer = OUTSTREAM_RENDERER.newRenderer(bidObj.adUnitCode, bidObj.outstreamRendererCode);
}
}

63 changes: 46 additions & 17 deletions test/spec/modules/adagioBidAdapter_spec.js
Original file line number Diff line number Diff line change
@@ -9,7 +9,7 @@ import {
spec,
ENDPOINT,
VERSION,
RENDERER_URL,
BB_RENDERER_URL,
GlobalExchange
} from '../../../modules/adagioBidAdapter.js';
import { loadExternalScript } from '../../../src/adloader.js';
@@ -76,6 +76,7 @@ describe('Adagio bid adapter', () => {
let adagioMock;
let utilsMock;
let sandbox;
let fakeRenderer;

const fixtures = {
getElementById(width, height, x, y) {
@@ -1000,42 +1001,70 @@ describe('Adagio bid adapter', () => {
context: 'outstream',
playerSize: [[300, 250]],
mimes: ['video/mp4'],
skip: true
skip: 1,
skipafter: 3
};

const serverResponseWithOutstream = utils.deepClone(serverResponse);
serverResponseWithOutstream.body.bids[0].vastXml = '<VAST version="4.0"><Ad></Ad></VAST>';
serverResponseWithOutstream.body.bids[0].mediaType = 'video';
serverResponseWithOutstream.body.bids[0].outstream = {
bvwUrl: 'https://foo.baz',
impUrl: 'https://foo.bar'
};

it('should set a renderer in video outstream context', function() {
const defaultRendererUrl = BB_RENDERER_URL.replace('$RENDERER', 'renderer');

it('should set related properties for video outstream context', function() {
const bidResponse = spec.interpretResponse(serverResponseWithOutstream, bidRequestWithOutstream)[0];
expect(bidResponse).to.have.any.keys('outstream', 'renderer', 'mediaType');
expect(bidResponse).to.have.any.keys('renderer', 'mediaType');
expect(bidResponse.renderer).to.be.a('object');
expect(bidResponse.renderer.url).to.equal(RENDERER_URL);
expect(bidResponse.renderer.config.bvwUrl).to.be.ok;
expect(bidResponse.renderer.config.impUrl).to.be.ok;
expect(bidResponse.renderer.url).to.equal(defaultRendererUrl);
expect(bidResponse.renderer.loaded).to.not.be.ok;
expect(bidResponse.width).to.equal(300);
expect(bidResponse.height).to.equal(250);
expect(bidResponse.vastUrl).to.match(/^data:text\/xml;/)
});

it('should execute Adagio outstreamPlayer if defined', function() {
window.ADAGIO.outstreamPlayer = sinon.stub();
it('should execute Blue Billywig VAST Renderer bootstrap if defined', function() {
window.bluebillywig = {
renderers: [{ bootstrap: sinon.stub(), _id: 'adagio-renderer' }]
};

const bidResponse = spec.interpretResponse(serverResponseWithOutstream, bidRequestWithOutstream)[0];
executeRenderer(bidResponse.renderer, bidResponse)
sinon.assert.calledOnce(window.bluebillywig.renderers[0].bootstrap);

delete window.bluebillywig;
});

it('Should logError if response does not have a vastXml or vastUrl', function() {
utilsMock.expects('logError').withExactArgs('Adagio: no vastXml or vastUrl on bid').once();

const localServerResponseWithOutstream = utils.deepClone(serverResponse);
localServerResponseWithOutstream.body.bids[0].mediaType = 'video';

const bidResponse = spec.interpretResponse(localServerResponseWithOutstream, bidRequestWithOutstream)[0];
executeRenderer(bidResponse.renderer, bidResponse)

utilsMock.verify();
})

it('should logError if Blue Billywig API is not defined', function() {
utilsMock.expects('logError').withExactArgs('Adagio: no BlueBillywig renderers found!').once();

const bidResponse = spec.interpretResponse(serverResponseWithOutstream, bidRequestWithOutstream)[0];
executeRenderer(bidResponse.renderer, bidResponse)
sinon.assert.calledOnce(window.ADAGIO.outstreamPlayer);
delete window.ADAGIO.outstreamPlayer;

utilsMock.verify();
});

it('should logError if Adagio outstreamPlayer is not defined', function() {
it('should logError if correct renderer is not defined', function() {
window.bluebillywig = { renderers: [ { _id: 'adagio-another_renderer' } ] };

utilsMock.expects('logError').withExactArgs('Adagio: couldn\'t find a renderer with ID adagio-renderer').once();

const bidResponse = spec.interpretResponse(serverResponseWithOutstream, bidRequestWithOutstream)[0];
executeRenderer(bidResponse.renderer, bidResponse)
utilsMock.expects('logError').withExactArgs('Adagio: Adagio outstream player is not defined').once();

delete window.bluebillywig;
utilsMock.verify();
});
});