Prebid не распознает CMP

Я пытаюсь настроить Prebid для отправки значения согласия GDPR поставщикам общих служб. Я реализовал CMP, но в консоли я вижу, что Prebid просто игнорирует его

ВНИМАНИЕ: CMP не найден. Возобновление аукциона без согласия данных согласно config. не определено

Я понятия не имею, почему Prebid не распознает CMP, он совместим с IAB, поэтому все должно быть в порядке. Есть идеи, где я ошибся?

Изменить: проблема в том, что я реализовал установку с prebid.org на мой сайт

        pbjs.que.push(function() {
          pbjs.setConfig({
      consentManagement: {
        cmpApi: 'iab',
        timeout: 5000,
        allowAuctionWithoutConsent: true
      }
    }); 

Также внесены изменения в файл prebid.js, который теперь содержит адаптер AgreementManagement.

script type = "text / javascript" src = "http://testowa.epizy.com/prebid2.9.0.js" async>

Я создал cmp digi-trust из https://github.com/adform/cmp а также внедрил его на своем сайте.

Все выглядит хорошо, CMP работает нормально, я получаю согласие и вижу его в своей консоли. Однако Prebid не видит, что существует CMP, и он выдает предупреждение с информацией, о которой я упоминал ранее.

Поэтому, несмотря на то, что я получаю согласие и вижу cookie-файл, запрос объявления обойдется без него, потому что prebid его не распознает.

Мне нужно это согласие на отправку запроса на объявление в SSP.

Надеюсь, мне стало немного легче понять, в чем моя проблема. Я мог бы предоставить тестовую страницу, если это необходимо.

0 ответов

По какой-то причине он не распознает файл cookie, возможное исправление - просто отправить файл cookie как статический:

{
  cmpApi: 'static',
  timeout: 5000,
  allowAuctionWithoutConsent: true,
  consentData: {
    getConsentData: {
      gdprApplies: true,
      hasGlobalScope: false,
      consentData: 'COOKIE CONTENT'
    },
    getVendorConsents: {
      metadata: 'COOKIE CONTENT',
      gdprApplies: true
    }
  }
}

Таким образом вы отправите весь файл cookie, чтобы он работал, но обратите внимание, что вам нужны все атрибуты, о которых я упоминал выше (проблемы с предварительными ставками, не связанные с этим). На всякий случай убедитесь, что вы проверили cookie.

Похоже, вы не реализовали функцию заглушки __cmp. Вот что должно произойти на вашей странице:

  • Определите функцию window.__ cmp () (встроенную или синхронно)
  • Асинхронно загрузите CMP (cmp.bundle.js), который заменяет window.__ cmp () фактическим CMP.
  • Асинхронная загрузка Prebid

Prebid.js вызывает __cmp (). Ping(), чтобы узнать, загружен ли настоящий __cmp (). Если __cmp () вообще не существует, он просто предполагает, что вы не реализовали CMP, и проводит аукцион.

Ознакомьтесь с главой "Сценарий установки" документации DigiTrust CMP. Требуемый код также находится здесь:https://github.com/digi-trust/cmp/blob/master/src/docs/lib/stub.js

У меня такая же проблема. У меня все заработало, когда я загрузил сценарий CMP синхронно перед библиотекой prebid.js с включенным модулем управления согласием.

также изменено: allowAuctionWithoutConsent: false

Другие вопросы по тегам