-
Notifications
You must be signed in to change notification settings - Fork 1
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
PTOW-2: Update the pubx analytics adapter. #5
PTOW-2: Update the pubx analytics adapter. #5
Conversation
…populate imp-level `ext.tid` (prebid#9726) * RTBHouse Bid Adapter: add global vendor list id * structured user agent - browsers.brands * fix lint errors * Added sda into rtbhouse adapter * spreading ortb2: user & site props * examples reverted * init version * using mergedeep * removed wrong imp array augm.; slot imp augm. with addtl check * [SUA] merging ortb2.device into request * fledge auctionConfig adapted to our bid response structure * new bidder response structure for fledge * make sure bidderRequest has proper flag turned on * fledge endpoint hardcoded; code cleanups * remove obsolete function * obsolete function removed * [RTB House] Process FLEDGE request/response (#4) * [SDA & SUA] refactor using mergedeep * [FLEDGE] fledge auctionConfig adapted to our bid response structure * [FLEDGE] new bidder response structure for fledge * [FLEDGE] make sure bidderRequest has proper flag turned on * [FLEDGE] fledge endpoint hardcoded; code cleanups * [FLEDGE] remove obsolete functions * fixed lint errors * fledge test suites; adapter: delete imp.ext.ae when no fledge (#5) * RTBHouse Bid Adapter: use auctionId for source.tid * RTBHouse bid adapter: fixed source.tid tests * Imp level transaction id + mapSource fix * lint: removed obsolete whitespaces * RTBHouse Bid Adapter: change `source.tid` to contain `auctionId` and populate imp-level `ext.tid` (#8) * RTBHouse Bid Adapter: use auctionId for source.tid * Imp level transaction id + mapSource fix * lint: removed obsolete whitespaces --------- Co-authored-by: Leandro Otani <[email protected]> Co-authored-by: rtbh-lotani <[email protected]> Co-authored-by: Tomasz Swirski <[email protected]>
* Flipp Bid Adapter: initial release * Added flippBidAdapter * OFF-372 Support DTX/Hero in flippBidAdapter (#2) * support creativeType * OFF-422 flippBidAdapter handle AdTypes --------- Co-authored-by: Jairo Panduro <[email protected]> * OFF-465 Add getUserKey logic to prebid.js adapter (#3) * Support cookie sync and uid * address pr feedback * remove redundant check * OFF-500 Support "startCompact" param for Prebid.JS #4 * set startCompact default value (#5) * fix docs * use client bidding endpoint * update unit testing endpoint --------- Co-authored-by: Jairo Panduro <[email protected]>
prebid#10628) * Flipp Bid Adapter: initial release * Added flippBidAdapter * OFF-372 Support DTX/Hero in flippBidAdapter (#2) * support creativeType * OFF-422 flippBidAdapter handle AdTypes --------- Co-authored-by: Jairo Panduro <[email protected]> * OFF-465 Add getUserKey logic to prebid.js adapter (#3) * Support cookie sync and uid * address pr feedback * remove redundant check * OFF-500 Support "startCompact" param for Prebid.JS #4 * set startCompact default value (#5) * fix docs * use client bidding endpoint * update unit testing endpoint * OFF-876 [Prebid Adapter] Check userKey for empty string (#6) * add more checks to userKey * update document * add uuid format statement * modify docs --------- Co-authored-by: Jairo Panduro <[email protected]>
* Flipp Bid Adapter: initial release * Added flippBidAdapter * OFF-372 Support DTX/Hero in flippBidAdapter (#2) * support creativeType * OFF-422 flippBidAdapter handle AdTypes --------- Co-authored-by: Jairo Panduro <[email protected]> * OFF-465 Add getUserKey logic to prebid.js adapter (#3) * Support cookie sync and uid * address pr feedback * remove redundant check * OFF-500 Support "startCompact" param for Prebid.JS #4 * set startCompact default value (#5) * fix docs * use client bidding endpoint * update unit testing endpoint * OFF-876 [Prebid Adapter] Check userKey for empty string (#6) * add more checks to userKey * update document * add uuid format statement * modify docs * fix network id --------- Co-authored-by: Jairo Panduro <[email protected]>
// (and so no chance of a win) send the auction | ||
case CONSTANTS.EVENTS.AUCTION_END: | ||
Object.assign( | ||
auctionCache[args.auctionId].floorDetail, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
check for floorData exists from any of the bids
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done; we now check each ad unit for an appropriate bid payload and take the first configured floor data (so incorrect ad unit setups are avoided)
modules/pubxaiAnalyticsAdapter.js
Outdated
auctionCache[args.auctionId].floorDetail, | ||
deepAccess(args, 'adUnits.0.bids.0.floorData') | ||
); | ||
auctionCache[args.auctionId].pageDetail.adUnits = args.adUnitCodes; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we can remove this duplicate data and keep the adunits in auctionDetail
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done, the lambda endpoint that processes this data doesn't explicitly require it, and can construct it from elsewhere in the payload
// send the prebid winning bid back to pubx | ||
case CONSTANTS.EVENTS.BID_WON: | ||
const winningBid = extractBid(args); | ||
const floorDetail = auctionCache[winningBid.auctionId].floorDetail; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this can happen before auctionEnd as well, so better to get it the same way we get it in auctionEnd or save it during the auctionInit itself.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After double checking the code, it is technically possible for a publisher to operate such that they render the first bid that is returned by prebid, without waiting for any other bids to be returned, or for the end of the auction. This would be a publisher error, and would take quite a substantial amount of work for a publisher to do. (If you look at src/Prebid.js, src/auction.js and src/adRendering.js, you'll see that before prebid will render an ad, it expects to have accepted a suitable bid request for the ad slot, which in turn is managed by the auction_init event and registered as a callback in the running auction itself. As far as i can tell, there are no hooks available to "cancel" the running auction and interject a winning bid callback before the auction has ended, without implicitly ending the auction as a side effect of running the bidwon callback.)
Without operating in a malicious way, this case is "impossible", and so after discussion with PHN i've left this logic as-is.
modules/pubxaiAnalyticsAdapter.js
Outdated
const gptSlot = getGptSlotForAdUnitCode(bid); | ||
if (gptSlot) { | ||
return Object.fromEntires( | ||
gptSlot.getTargetingKeys().map((key) => [key, gptSlot.getTargeting(key)]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
filter for relevant pubx and hb_pb keys only here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done; we are now including only the "winning bid" hb_ keys, plus anything starting with "pubx-"
modules/pubxaiAnalyticsAdapter.js
Outdated
const payload = new Blob([JSON.stringify(data)], { | ||
type: 'text/json', | ||
}); | ||
navigator.sendBeacon(pubxaiAnalyticsRequestUrl, payload); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
instead of sending the data for every auction, we can batch the data and call it once it exceeds certain size.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the lambda function which receives this data is not ready to handle batch data, and beacons are not designed for batching, rather they are designed for very small payloads as the browser session "unloads". Additionally, this method of sending data via beacon is consistent with other approaches in pubx:
https://github.com/Pubx-ai/stream/pull/6/files
So, i have made no changes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@nathan-pubx beacon supports payload upto 64KB. Even in the existing code base we batch and send logs when visibility change event is triggered(i.e when user leaves page) and not for every auction. lets add batching to this PR right away. In the mean time this PR gets approved in prebid, we will be updating the lambda's to support this.
if (hasBrowserSupport()) {
document.addEventListener("visibilitychange", () => {
if (document.visibilityState === "hidden") {
pushLogs(aucErrorLogs, ERROR_LOG_API);
pushLogs(pageErrorLogs, ERROR_LOG_API);
pushLogs(aucEventLogs, EVENT_LOG_API);
}
});
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tej656 (and @pnhegde , since you also asked a question about batching data)
I assume/hope this is in reference to this, more recent, pull request, for remote logging in the stream repo?
In which case, i've pushed review actions to implement similar behaviour, plus an additional test to check the batching logic. It's worth noting explicitly (although i'm sure you're aware) that the batch behaviour is not yet supported by the lambda function which is expected to process the payload. Additionally, I haven't changed the payload at all, so it can definitely be further optimised for smaller data transfer and marginally reduced cost. Let me know if you'd like me to make additional changes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@nathan-pubx Thanks. We have an update for the lambda to handle the batched data already.
@nathan-pubx The above list of comments are from a PR review call we conducted last week and includes suggestion from all of us. Let me know if you want to connect over a call and discuss further. Also, I would like to extend the requirements to include another field in the captured data which gives consent info. Probably we can make use of this - |
Done, but please check that you're happy with the payload. Additionally, i've added changes to address https://pubai.atlassian.net/browse/PUB-2160 |
@tej656 @nathan-pubx Is the beacon batching the data and making the request? Looks like it's not. Should we add |
* PE-87: Implement Prebid Adapter (#1) * PE-87: implement BT Bid Adapter * PE-87: rework adapter to use ortbConverter lib, make requested changes * PE-87: update imports * PE-110: Add user sync logic to the Prebid Adapter (#3) * PE-110: add user sync logic * PE-110: update userSync url * PE-110: check if iframe is enabled before setting params * PE-111: BT Prebid Adapter can request AA ads or regular ads (#2) * PE-120: Send Prebid Bidder info to BT Server (#4) * PE-120: add btBidderCode to the bid object * PE-120: use single quotes for logs string * PE-123: Add More Metadata in site.ext.blockthrough (#5) * PE-123: send additional meta data * PE-123: send auctionID under imp.ext.prebid.blockthrough * PE-123: use ortb2 config to set site.ext params * PE-123: sent auctionId in ext.prebid.blockthrough.auctionID * PE-123: update logs for bidderConfig setup * PE-000: check if blockthrough is defined (#6) * PE-87: remove BT specific logic (#7) * Implement Blockthrough Prebid Adapter * PE-87: Implement Prebid Adapter - misc fixes (#9) * PE-87: rename test file, add bidder config * PE-87: increase ttl * PE-000: fix test * BP-74: Change the way we enable debug (#10) * BP-79: Send GPID as a part of `imp[].ext` (#11) * BP-79: send gpid in imp.ext * BP-79: add optional operator * BP-90: Update Cookie Sync Logic (#12) * BP-90: pass bidder to cookie sync * BP-90: update sync logic, fix typo * BP-90: use const for syncs variable * BP-55: Re-add endpoint URLs (#13) * BP-91: Add prebid JS version to auction request (#14)
* create setupadBidAdapter * add setupadBidAdapter * update setupadBidAdapter * update metrics collection * update analytics collection * update getUserSyncs * add setupadAnalyticsAdapter.js * test setupadAnalyticsAdapter * remove test: 1 * add GVLID && bug fixes && test updates * remove setupadAnalyticsAdapter * add userID module handling * add GVLID && bug fixes && test updates * remove setupadAnalyticsAdapter * add userID module handling * clean up && seat bugfix * clean up logs * add userID module handling * update md && clean up * Send setupad only on bidRequested * Fix bidResponse and bidWon responses * Improve bidResponse and bidWon logic * Revert changes to specific files * Remove test parameter * Fix multiple bidResponse and bidTimeout calls to getPixelUrl * eslint errors fixes(brackets added) * Add extra checks for events * Fix BIDDER_CODE const * update reporting endpoint * update setupadBidAdapter_spec.js REPORT_ENDPOINT * update readme * Revert "Merge branch 'prebid:master' into setupad-adapter" This reverts commit 1c14dbe, reversing changes made to 7fe9ea5. * Revert "Revert "Merge branch 'prebid:master' into setupad-adapter"" This reverts commit a34e3e4. * # This is a combination of 20 commits. # This is the 1st commit message: add setupadBidAdapter # This is the commit message #2: update setupadBidAdapter # This is the commit message #3: update metrics collection # This is the commit message #4: update analytics collection # This is the commit message #5: update getUserSyncs # This is the commit message #6: add setupadAnalyticsAdapter.js # This is the commit message #7: test setupadAnalyticsAdapter # This is the commit message #8: remove test: 1 # This is the commit message #9: add GVLID && bug fixes && test updates # This is the commit message #10: remove setupadAnalyticsAdapter # This is the commit message #11: add userID module handling # This is the commit message #12: clean up && seat bugfix # This is the commit message #13: add userID module handling # This is the commit message #14: add GVLID && bug fixes && test updates # This is the commit message #15: remove setupadAnalyticsAdapter # This is the commit message #16: add userID module handling # This is the commit message #17: clean up logs # This is the commit message #18: update md && clean up # This is the commit message #19: Send setupad only on bidRequested # This is the commit message #20: Fix bidResponse and bidWon responses * # This is a combination of 22 commits.tree 8abae7e6dffc9a21ad11770713ba485fc610028a parent cecfce3 author pavel <[email protected]> 1706627437 +0200 committer pavel <[email protected]> 1706627437 +0200 gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEqGYI3KX/FkbObQG8FABtd4pCs/AFAmW5EW0ACgkQFABtd4pC s/CK3w//WWJSFUlycnnNKTV2XfdcBjooOeZZvjpXVthwr09CCC4uO//kw4bPluhn f5fcVFdXzrY1AZ6ch8Wo3msX/Pkso014jIGd5aIWcHpNYFtffACwH/40Y8AcJNZd bsOZxVK0awPTz/RihC5eY+0J3cP+iFWP/FlYJoHEQIBXq/Eg6mWoAhxwpL/JvxbY QbLFWsRn2ckQ6ftOZgm3/jh8VLaG1zWbWImlWEs5Zel+CorJBTniTj58VbApelYD TFMgbSR2I4NGVaqNIrHePnSMsDATxalQ2nZPwY6raKCHWIbvoUPIn/OpDMMbKgC7 nCwounNmObxFVoj3xusAZppzHpKPasY8xKWb2Kr7zfhZArsOMC6B7fYqQNK0cWG3 8RR/10oheJD9M2kRlfLiqnRv7ExY08SQ/ZMo9LA8BeRUGBXhh6++8FKhKIHvX1gL k1R5W6c+NNWP+PDFsmrFpMn+LpYdl84I7yfYK5dHuw80od7f1wuAVYpswi6Cziy9 /KY6/rfENvUrGTmWSh5GdDBel89ACCfFkasIKB92xhzKTfjzF/DXkc8XQZOMbt1j CsILgWMNfLPMo4Dlgdx/tYCSLLBNEtZ1/hhUcFQ3+0TzLf0GtMkvMnlBnDinqe1n 1P30fQ2I5W5NJKDPrCOnRymI6QOAPFXtMF11R81mbB9H8asft/E= =oJtZ -----END PGP SIGNATURE----- bugfixes # This is the commit message #22: Remove test parameter * # This is a combination of 26 commits. parent cecfce3 author pavel <[email protected]> 1706627437 +0200 committer pavel <[email protected]> 1706627437 +0200 gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEqGYI3KX/FkbObQG8FABtd4pCs/AFAmW5EW0ACgkQFABtd4pC s/CK3w//WWJSFUlycnnNKTV2XfdcBjooOeZZvjpXVthwr09CCC4uO//kw4bPluhn f5fcVFdXzrY1AZ6ch8Wo3msX/Pkso014jIGd5aIWcHpNYFtffACwH/40Y8AcJNZd bsOZxVK0awPTz/RihC5eY+0J3cP+iFWP/FlYJoHEQIBXq/Eg6mWoAhxwpL/JvxbY QbLFWsRn2ckQ6ftOZgm3/jh8VLaG1zWbWImlWEs5Zel+CorJBTniTj58VbApelYD TFMgbSR2I4NGVaqNIrHePnSMsDATxalQ2nZPwY6raKCHWIbvoUPIn/OpDMMbKgC7 nCwounNmObxFVoj3xusAZppzHpKPasY8xKWb2Kr7zfhZArsOMC6B7fYqQNK0cWG3 8RR/10oheJD9M2kRlfLiqnRv7ExY08SQ/ZMo9LA8BeRUGBXhh6++8FKhKIHvX1gL k1R5W6c+NNWP+PDFsmrFpMn+LpYdl84I7yfYK5dHuw80od7f1wuAVYpswi6Cziy9 /KY6/rfENvUrGTmWSh5GdDBel89ACCfFkasIKB92xhzKTfjzF/DXkc8XQZOMbt1j CsILgWMNfLPMo4Dlgdx/tYCSLLBNEtZ1/hhUcFQ3+0TzLf0GtMkvMnlBnDinqe1n 1P30fQ2I5W5NJKDPrCOnRymI6QOAPFXtMF11R81mbB9H8asft/E= =oJtZ -----END PGP SIGNATURE----- bugfixes # This is the commit message #22: Remove test parameter # This is the commit message #23: Fix multiple bidResponse and bidTimeout calls to getPixelUrl # This is the commit message #25: eslint errors fixes(brackets added) # This is the commit message #26: Add extra checks for events * parent 75178b9 author pavel <[email protected]> 1706627694 +0200 committer pavel <[email protected]> 1706627694 +0200 gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEqGYI3KX/FkbObQG8FABtd4pCs/AFAmW5Em4ACgkQFABtd4pC s/BBUQ/+NXyHoxPM185YJLG9M1ySC/5vTT9W5mfwQ93cVDLCeuGnpsnmi4S21NuQ b7gSeokFjwztvVOUmh/xqMp4lTsvL53TUd00b1k4KGVSqgcF00Foit5g8fOGLYsI DAoqphYV6MWjpAun+II+ELY8QUkHR1cjTc7PEGtmf+8RnptGVdyJ6C9Ab8u9TQTY Apj5Srhfo3Tl8S+WScOxwwB/uqEJR4fhIrJyzFzdLDEb2olSPyrQUs87vQXlhEnK buPEg2F5JsRH6sw11Xp3TFNSZGxNnBSlTh9dixou5md4yRCv5a2TMef667N0BVDp lGgc7mCrRKXyqzphmmeHudiscEGFjtUPObXoHutSVw22wdARFCTpNFKBLLFn4v8o Zv1OvFdNprvHsoeW0HVlZdU7OKnDTRrko6DHk2AahxojjvAFEWuDsGYZNjhdQwRR lK1zm+SFQnKI0Eojd+f84fvKod9geGs640jyH/x5R4eYm4yjZb8SkRtd3cca88wS OuGq9LIkbU428b46l7VnDwudldTXPUU8eKfUtFRjdGtIWH9I3tK6TsRoCfTcXkv0 smxYiiU1XHjAkkPFWQWEeFdfZ071snFKVWouU0AoKiq+PdRoS8+3AJqIQUjlA2sH AybnSkv9KxY/Rs1bnvMubsQm1GF66qVrbxBU6FILBv1JZYwj4yA= =Gbog -----END PGP SIGNATURE----- bugfixes update setupadBidAdapter_spec.js REPORT_ENDPOINT update readme Revert "Merge branch 'prebid:master' into setupad-adapter" This reverts commit 1c14dbe, reversing changes made to 7fe9ea5. Revert "Revert "Merge branch 'prebid:master' into setupad-adapter"" This reverts commit a34e3e4. * change double quote to single quote --------- Co-authored-by: pavel <[email protected]> Co-authored-by: Elgars Grodnis <[email protected]> * bugfix setupadBidAdapter remove getAdEl, spelling correction * add onBidWon event onBidWon event handling moved from custom to native onBidWon method * minor bugfixes && remove funk getSiteObj && getDeviceObj --------- Co-authored-by: pavel <[email protected]> Co-authored-by: Elgars Grodnis <[email protected]>
@nathan-pubx Would you mind raising this PR again? I made some mistakes while merging and reverted. Now can't see the the updates anywhere. |
* Flipp Bid Adapter: initial release * Added flippBidAdapter * OFF-372 Support DTX/Hero in flippBidAdapter (#2) * support creativeType * OFF-422 flippBidAdapter handle AdTypes --------- Co-authored-by: Jairo Panduro <[email protected]> * OFF-465 Add getUserKey logic to prebid.js adapter (#3) * Support cookie sync and uid * address pr feedback * remove redundant check * OFF-500 Support "startCompact" param for Prebid.JS #4 * set startCompact default value (#5) * fix docs * use client bidding endpoint * update unit testing endpoint * OFF-876 [Prebid Adapter] Check userKey for empty string (#6) * add more checks to userKey * update document * add uuid format statement * modify docs * fix network id * use compactHeight and standardHeight in customData (#7) * OFF-1455 [Prebid.js] height should use the compactHeight and standardHeight fields in decisions response (#8) * Flipp Bid Adapter: initial release * Added flippBidAdapter * OFF-372 Support DTX/Hero in flippBidAdapter (#2) * support creativeType * OFF-422 flippBidAdapter handle AdTypes --------- Co-authored-by: Jairo Panduro <[email protected]> * OFF-465 Add getUserKey logic to prebid.js adapter (#3) * Support cookie sync and uid * address pr feedback * remove redundant check * OFF-500 Support "startCompact" param for Prebid.JS #4 * set startCompact default value (#5) * fix docs * use client bidding endpoint * update unit testing endpoint * OFF-876 [Prebid Adapter] Check userKey for empty string (#6) * add more checks to userKey * update document * add uuid format statement * modify docs * fix network id * use compactHeight and standardHeight in customData --------- Co-authored-by: Jairo Panduro <[email protected]> * Update flippBidAdapter.js * use compactHeight and standardHeight in customData (#7) * update docs * fix unit test --------- Co-authored-by: Jairo Panduro <[email protected]>
* upgrade prebid js * added conversantBidAdapter * added criteoBidAdapter, tripleliftBidAdapter, pulsepointBidAdapter * adtelligent bid adapter * remove oneVideoBidAdapter from modules.json * added yieldmo bid adapter * build:connatix script * removed flocIdSystem & TrustxBidAdapter from modules.json * added aniview bid adapter * moved line * added nextMillennium adapter to modules.json * newline at the end of the file * added new adapters * added minutemedia adapter * added richaudience adapter * Revert "added richaudience adapter" This reverts commit d87cb0d. * Revert "added minutemedia adapter" This reverts commit ac53dff. * Added Permutive RTD module * comma * [feat] add sharethroughBidAdapter * Add consentManagementGpp module * fix gpp signal (#5) * remove gpp module because no need to support it yet * LiveRamp submodule identityLink * added sonobi bid adapter * upgrade to prebid 8.17.0 * added pgamsspBidAdapter because its alias was removed from adtelligentBidAdapter in 8.x.0 * added ozone as Connatix bidder partner * added showheroes adapter * added seedtag bid adaptor * added minutemedia * removed duplicated minute media * added sovrn bid adapter * fix: add consentManagementGpp module * added new build and gannet adapters * renamed build command * added specific modules for gannett * added kueezRtb bid adaptor * added video media type support for connatix bid adapter * added all the recommended params to video media type mock * improved validateVideo function * impreoved validateVideo function once again:) * removed redundant checks in bid request validation * clarified test it statement * improved unit tests * updated validateVideo function * removed modules.json * removed connatix build script --------- Co-authored-by: Rares Mihai Preda <[email protected]> Co-authored-by: Darian <[email protected]> Co-authored-by: alexandru.calauz <[email protected]> Co-authored-by: cosminser <[email protected]> Co-authored-by: Gaina Dan <[email protected]> Co-authored-by: Cristi Silav <[email protected]> Co-authored-by: mariusszabo <[email protected]> Co-authored-by: Marius Szabo <[email protected]> Co-authored-by: Octavia Suceava <[email protected]> Co-authored-by: Marius Potor <[email protected]>
* fix(greenbids,analytics): send cpm on any valid bid (#5) * fix(greenbids,analytics): cpm not passed * bump version number * fix unit tests
Ticket: PTOW-2
Task: update the pubx analytics adapter, to make use of more modern approaches and to consume more data.
Implements:
Not implemented: