# Poool

A cookie wall is a mechanism that allows you to block the access to certain contents or services in your website or app if the user has not given their consent for cookies. It works by asking the user to accept cookies, and therefore receive ads, as a condition to be able to access certain pages or articles on your site.

This is really useful, especially for publishers, as it helps you not only improve your consent rate, but also improve your monetization if your main source of revenue is the use of targeted ads.

In order to be compliant and make sure users can give their consent freely, the cookie wall has to include one other alternative besides cookie consent so that the user can choose between the two to access the content.

### Our Poool integration

Our integration with Poool's cookie wall solution allows you to block your user’s access to some of your content if they have not given consent on the Didomi CMP.&#x20;

{% hint style="warning" %}
**This integration is available for web only!**
{% endhint %}

**How does our Poool integration work?**

* When users first arrive on your website, **Didomi's consent notice** will be displayed. At that point, users will be able to either accept or refuse consent for cookies.&#x20;
* When users who have not given consent arrive at certain articles that have been blocked with the **Poool cookie wall**, they will have to accept cookies or another alternative to access the content.&#x20;

Some of the alternatives to cookie consent can be subscribing, watching an ad, creating an account or answering a survey.&#x20;

Here is an example of what a cookie wall might look like:&#x20;

<figure><img src="https://support.didomi.io/hs-fs/hubfs/undefined-Apr-28-2021-04-07-08-86-PM.jpeg?width=332&#x26;name=undefined-Apr-28-2021-04-07-08-86-PM.jpeg" alt=""><figcaption></figcaption></figure>

### Add Poool to your Didomi CMP

In order to use our Poool integration, you have to add Poool as a vendor in your consent notice.&#x20;

1. Go to your consent notice in the Didomi console.
2. Click on the third step **VENDORS\&PURPOSES**.&#x20;
3. Add the vendor "Poool" to your notice.&#x20;

<img src="/files/iddx1OLPhK1kuIUEwaiD" alt="" width="563">

### **Set up Poool**

1. Add this code to your Poool configuration and click on **Scenarios**:

Poool Legacy

```
poool("event", "onConsent", function() {
    var didomi_purposes_array = ['_s', 'select_basic_ads', 'create_ads_profile', 'select_personalized_ads', 'create_content_profile', 'select_personalized_content', 'measure_ad_performance', 'measure_content_performance', 'market_research', 'improve_products', 'geolocation_data', 'device_characteristics'];
return new Promise((resolve, reject) => {
  window.Didomi.on('notice.clickagree', function () {
  resolve(true);
  });
  window.Didomi.on('notice.disagree', function () {
  reject(false);
  });
  window.Didomi.on('preferences.clickagreetoall', function () {
  resolve(true);
  });
  window.Didomi.on('preferences.clickdisagreetoall', function () {
    reject(false);
  });
  window.Didomi.on('preferences.clicksavechoices', function(){
    var purposes_array = window.Didomi.getRequiredPurposeIds();
    
    var user_status = window.Didomi.getUserStatus();
    
    var purposes_filtered = purposes_array.filter(function(e) { return this.indexOf(e) >= 0;}, didomi_purposes_array);
    
    var user_status_filtered = user_status.purposes.consent.enabled.filter(function(e) { return this.indexOf(e) >= 0;}, didomi_purposes_array);
    
    if(purposes_filtered.length === user_status_filtered.length){
      resolve(true);
    } else {
      reject(false);
    }
  });
  window.Didomi.notice.show();
});
});
```

New Poool SDK

```
// Didomi
window.gdprAppliesGlobally=true;(function(){function a(e){if(!window.frames[e]){if(document.body&&document.body.firstChild){var t=document.body;var n=document.createElement("iframe");n.style.display="none";n.name=e;n.title=e;t.insertBefore(n,t.firstChild)}
else{setTimeout(function(){a(e)},5)}}}function e(n,r,o,c,s){function e(e,t,n,a){if(typeof n!=="function"){return}if(!window[r]){window[r]=[]}var i=false;if(s){i=s(e,t,n)}if(!i){window[r].push({command:e,parameter:t,callback:n,version:a})}}e.stub=true;function t(a){if(!window[n]||window[n].stub!==true){return}if(!a.data){return}
var i=typeof a.data==="string";var e;try{e=i?JSON.parse(a.data):a.data}catch(t){return}if(e[o]){var r=e[o];window[n](r.command,r.parameter,function(e,t){var n={};n[c]={returnValue:e,success:t,callId:r.callId};a.source.postMessage(i?JSON.stringify(n):n,"*")},r.version)}}
if(typeof window[n]!=="function"){window[n]=e;if(window.addEventListener){window.addEventListener("message",t,false)}else{window.attachEvent("onmessage",t)}}}e("__tcfapi","__tcfapiBuffer","__tcfapiCall","__tcfapiReturn");a("__tcfapiLocator");(function(e){
var t=document.createElement("script");t.id="spcloader";t.type="text/javascript";t.async=true;t.src="https://sdk.privacy-center.org/"+e+"/loader.js?target="+document.location.hostname;t.charset="utf-8";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(t,n)})("3fedda31-0761-475a-827a-477efe391786")})();

window.didomiOnReady = window.didomiOnReady || [];
window.didomiEventListeners = window.didomiEventListeners || [];
var didomi_purposes_array = ['_s', 'select_basic_ads', 'create_ads_profile', 'select_personalized_ads', 'create_content_profile', 'select_personalized_content', 'measure_ad_performance', 'measure_content_performance', 'market_research', 'improve_products', 'geolocation_data', 'device_characteristics'];


// Ici votre configuration Access 


const access = Access.init('XXXX-XXXX-XXXX-XXXX');
access.config('locale', 'en', true);

access.config({
  debug: true,
  context: 'cookie-wall',
  default_widget: 'gift',
  app_name: 'Poool',
});

access.on('identityAvailable', event => {
  console.log(event);
});
// Fin de votre configuration Access

 
access.on('consent', () => {
  return new Promise((resolve, reject) => {
    window.Didomi.on('notice.clickagree', function () {
      resolve(true);
    });
    window.Didomi.on('notice.disagree', function () {
      reject(false);
    });
    window.Didomi.on('notice.clickdisagree', function () {
      reject(false);
    });
    window.Didomi.on('preferences.clickagreetoall', function () {
      resolve(true);
    });
    window.Didomi.on('preferences.clickdisagreetoall', function () {
      reject(false);
    });
    window.Didomi.on('preferences.clicksavechoices', function(){
      var purposes_array = window.Didomi.getRequiredPurposeIds();
      var user_status = window.Didomi.getUserStatus();
      var purposes_filtered = purposes_array.filter(function(e) {
        return this.indexOf(e) >= 0;
      }, didomi_purposes_array);
      var user_status_filtered = user_status.purposes.consent.enabled.filter(function(e) { 
        return this.indexOf(e) >= 0;
      }, didomi_purposes_array);
    
      if(purposes_filtered.length === user_status_filtered.length){
        resolve(true);
      } else {
        reject(false);
      }
    });
    
    window.Didomi.notice.show();
  }); 
});

var didomiDismissed = false;

window.didomiEventListeners.push({
  event: 'notice.hidden',
  listener: function () {
    window.didomiOnReady.push(function (Didomi) {
      if (didomiDismissed) {
        return;
      }
      
      didomiDismissed = true;

      access.config('cookies_enabled', Didomi.getUserConsentStatusForVendor('c:poool-VyhCit7N'));
      access.createPaywall({ pageType: 'premium' });
    });
  },
});

window.didomiOnReady.push(function (Didomi) {
  var consent = Didomi.getUserConsentStatusForVendor('c:poool-VyhCit7N');

  if (consent) {
    access.config('cookies_enabled', true);
    access.createPaywall({ pageType: 'premium' });
  } else {  
    window.Didomi.notice.show();
  }
});
```

1. &#x20;Choose in which context you want to implement the cookie wall.
2. Click on the **\[ ⠇]**  in the top right corner of the chosen context, as shown in the image: <br>

   <figure><img src="https://support.didomi.io/hs-fs/hubfs/undefined-Apr-28-2021-04-07-09-05-PM.png?width=407&#x26;name=undefined-Apr-28-2021-04-07-09-05-PM.png" alt="" width="563"><figcaption></figcaption></figure>
3. Click on **Privacy**.<br>

   <figure><img src="https://lh5.googleusercontent.com/76b06sCKlNQaL7fvPLvmA7V1X7kWXnNp3RlROoZQOc03B43GzsB8y7_LeHovGIi051zihxvA9Jwly5UOvbmTVOz1KcjicPsZIvOtn9ldPbhHVJxZlUpMJPvViJqafEvHyUMPNx4" alt="" width="375"><figcaption></figcaption></figure>
4. Click on the toggle **Allow asking for consent through a cookie wall** to activate the cookie wall. <br>

   <figure><img src="https://support.didomi.io/hs-fs/hubfs/undefined-Apr-28-2021-04-07-09-19-PM.png?width=461&#x26;name=undefined-Apr-28-2021-04-07-09-19-PM.png" alt=""><figcaption></figcaption></figure>
5. You can then configure the alternative you want to offer on your cookie wall
6. Click on **Update.**
7. To delete a cookie wall that you do not want to use anymore, just click on the toggle **Allow asking for consent through a cookie wall** to disable it.
8. Then, click on **Update**.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.didomi.io/integrations/paywall/poool.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
