-
Notifications
You must be signed in to change notification settings - Fork 2k
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
QuantcastId : Add support for firing pixel in quantcastIdSystem submodule #7107
Merged
Merged
Changes from 14 commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
7df1c4b
add code for firing pixel without measure
05ec12c
add more unit tests
8439525
correct gdpr logic; don't fire when no consent
7ba5778
add clientId check
17a4058
address more pr comments
35a9e38
add glvid
b31c0f9
remove et / tzo
7a94f13
rename vars; update ccpa check
22f2532
move to protocol relative url
b03709b
refactor code
09680be
Merge pull request #3 from sachinsurfs/prebid-without-measure_
sachinsurfs 279e959
fix lint error
9200bb0
fix unit test for IE compatibility
ed83b37
Create quantcastIdSystem.md
sachinsurfs bf2571e
address pr comments
16c06a7
Merge branch 'master' of https://github.com/sachinsurfs/Prebid.js
706b135
Update quantcastIdSystem.md
sachinsurfs File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
#### Overview | ||
|
||
``` | ||
Module Name: Quantcast Id System | ||
Module Type: Id System | ||
Maintainer: asig@quantcast.com | ||
``` | ||
|
||
#### Description | ||
|
||
The Prebid Quantcast ID module stores a Quantcast ID in a first party cookie. The ID is then made available in the bid request. The ID from the cookie added in the bidstream allows Quantcast to more accurately bid on publisher inventories without third party cookies, which can result in better monetization across publisher sites from Quantcast. And, it’s free to use! For easier integration, you can work with one of our SSP partners, like PubMatic, who can facilitate the legal process as well as the software integration for you. | ||
|
||
Add it to your Prebid.js package with: | ||
|
||
`gulp build --modules=userId,quantcastIdSystem` | ||
|
||
Quantcast’s privacy policies for the services rendered can be found at | ||
https://www.quantcast.com/privacy/ | ||
|
||
Publishers deploying the module are responsible for ensuring legally required notices and choices for users. | ||
|
||
The Quantcast ID module will only perform any action and return an ID in situations where: | ||
1. the publisher has not set a ‘coppa' flag on the prebid configuration on their site (see [pbjs.setConfig.coppa](https://docs.prebid.org/dev-docs/publisher-api-reference/setConfig.html#setConfig-coppa)) | ||
2. there is not a IAB us-privacy string indicating the digital property has provided user notice and the user has made a choice to opt out of sale | ||
3. if GDPR applies, an IAB TCF v2 string exists indicating that Quantcast does not have consent for purpose 1 (cookies, device identifiers, or other information can be stored or accessed on your device for the purposes presented to you), or an established legal basis (by default legitimate interest) for purpose 10 (your data can be used to improve existing systems and software, and to develop new products). | ||
|
||
#### Quantcast ID Configuration | ||
|
||
| Param under userSync.userIds[] | Scope | Type | Description | Example | | ||
| --- | --- | --- | --- | --- | | ||
| name | Required | String | `"quantcastId"` | `"quantcastId"` | | ||
| params | Optional | Object | Details for Quantcast initialization. | | | ||
| params.ClientID | Optional | String | Optional parameter for Quantcast prebid managed service partners. Reach out to Quantcast for ClientID if you are not an existing Quantcast prebid managed service partner: quantcast-idsupport@quantcast.com | | | ||
ncolletti marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
|
||
#### Quantcast ID Example | ||
|
||
```js | ||
pbjs.setConfig({ | ||
userSync: { | ||
userIds: [{ | ||
name: "quantcastId" | ||
}] | ||
} | ||
}); | ||
``` |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
Should the firePixel callback within the load event be within the else block of the document.readyState? May help to prevent rare cases where both can fire as readyState is marked 'complete' right before the window 'load' event fires.
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.
Like you mentioned, it is pretty rare since they ideally must happen at the same time. Regardless, I added an else block to be safe.