निजता और मैसेजिंग JavaScript एपीआई

परिचय

यह एपीआई ऐसे टूल उपलब्ध कराता है जिनकी मदद से निजता और मैसेजिंग टैब. इसकी मदद से, ये काम किए जा सकते हैं:

  • किसी उपयोगकर्ता के लिए, मैसेज सेवा को रोकें
  • किसी उपयोगकर्ता के विज्ञापन रोकने वाले स्टेटस के बारे में क्वेरी करते हैं
  • उपयोगकर्ता को सहमति रद्द करने की अनुमति दें (अगर लागू हो)

इंडस्ट्री स्टैंडर्ड के तहत, उपयोगकर्ता की सहमति लेने के लिए भी इन टूल का इस्तेमाल किया जा सकता है प्रोटोकॉल:

ऐसे मामलों में, सहमति की स्थिति को उन एपीआई के ज़रिए बताया जाता है.

आप उपयोगकर्ता मैसेज की इस सुविधा को अपनी साइट पर, कुछ मामलों में डिप्लॉय कर सकते हैं तरीके:

  1. ज़्यादातर मामलों में, आपको फिर से टैग करने की ज़रूरत नहीं होती - आपके मौजूदा Google पब्लिशर टैग करें या AdSense टैग डिप्लॉय करता है मिलते-जुलते प्रॉडक्ट पर उपयोगकर्ता के मैसेज पब्लिश होने के बाद.
  2. अगर विज्ञापन ब्लॉकिंग रिकवरी मैसेज का इस्तेमाल किया जा रहा है, तो आपको विज्ञापन जोड़ना होगा ब्लॉक करने का टैग साफ़ तौर पर बताया जा सकता है. विज्ञापन देखें मैनेजर और AdSense टैग करना निर्देश देखें.

googlefc ऐसा ग्लोबल नेमस्पेस है जिसे उपयोगकर्ता मैसेज सेवा इस्तेमाल करती है Window पर इसके एपीआई के लिए उपलब्ध है.

फ़ील्ड की खास जानकारी

नाम टाइप परिभाषा
googlefc.controlledMessagingFunction फ़ंक्शन(!ऑब्जेक्ट) यह एक फ़ंक्शन है, जो तय करता है कि किसी मैसेज का इस्तेमाल करना है या नहीं. यह सुविधा सभी तरह के मैसेज के साथ काम करती है.
googlefc.callbackQueue !अरे<!ऑब्जेक्ट<string, फ़ंक्शन()>> | !Array&lt;function()&gt; | !googlefc.CallbackQueue उपयोगकर्ता मैसेज सेवा क्वेरी को एसिंक्रोनस तरीके से लागू करने के लिए कॉलबैक क्यू का रेफ़रंस.
googlefc.CallbackQueue !Object कॉलबैक क्यू ऑब्जेक्ट का टाइप.
googlefc.AdBlockerStatusEnum !ऑब्जेक्ट<स्ट्रिंग, संख्या> उपयोगकर्ता के विज्ञापन रोकने वाले सॉफ़्टवेयर की स्थिति दिखाने वाली सूची.
googlefc.AllowAdsStatusEnum !ऑब्जेक्ट<स्ट्रिंग, संख्या> उपयोगकर्ता को विज्ञापन दिखाने की अनुमति की स्थिति दिखाने के लिए सूची.
googlefc.ccpa.InitialCcpaStatusEnum !ऑब्जेक्ट<स्ट्रिंग, संख्या> उपयोगकर्ता के शुरुआती सीपीआरए स्टेटस को दिखाने वाली सूची.
googlefc.ccpa.overrideDnsLink अनिर्धारित|बूलियन यह एक बूलियन है जिसे 'सही' पर सेट किया जा सकता है. इससे, पसंद के मुताबिक 'बेचने का तरीका न बेचें' लिंक का इस्तेमाल किया जा सकता है.

तरीके की खास जानकारी

नाम रिटर्न टाइप परिभाषा
googlefc.showRevocationMessage() तय नहीं है इससे, सहमति वाला रिकॉर्ड मिट जाता है. साथ ही, उपयोगकर्ता के लिए लागू सहमति जताने वाला मैसेज दिखाने के लिए, googlefc स्क्रिप्ट को फिर से लोड किया जाता है.
googlefc.getAdBlockerStatus() संख्या उपयोगकर्ता के विज्ञापन रोकने की स्थिति के आधार पर, AdBlockerStatusEnum में वैल्यू दिखाता है.
googlefc.getAllowAdsStatus() संख्या उपयोगकर्ता के विज्ञापन दिखाने की अनुमति की स्थिति के आधार पर, AllowAdsStatusEnum में वैल्यू दिखाता है.
googlefc.ccpa.getInitialCcpaStatus() संख्या उपयोगकर्ता के शुरुआती सीपीआरए स्थिति के आधार पर, InitialCcpaStatusEnum में वैल्यू दिखाता है.
googlefc.ccpa.openConfirmationDialog(function(boolean)) तय नहीं है अगर डिफ़ॉल्ट तौर पर, 'बेचने के लिए न करें' लिंक को बदल दिया गया है, तो सीपीआरए की पुष्टि करने वाला डायलॉग बॉक्स खुलता है.

अपनी साइट पर जांच और डीबग करना

निजता और मैसेज सेवा डीबग करने और जांच करने की सुविधा उपलब्ध कराती है. इससे आपको यह देखें कि आपके असल साइट.

ज़रूरी शर्तें:

  • जिन मैसेज की झलक आपको देखनी है वे उस साइट पर पब्लिश होने चाहिए इसके आधार पर जांच की जा रही है

नीचे दिए गए डीबग करने के यूआरएल का इस्तेमाल करके, अपनी साइट पर लाइव झलक देखी जा सकती है पैरामीटर:

डीबग पैरामीटर अनुमति वाली वैल्यू
fc alwaysshow (डीबग/झलक मोड को ट्रिगर करने के लिए)
fctype ab (विज्ञापन रोकने वाले मैसेज), ccpa (सीपीआरए से ऑप्ट-आउट करने वाले मैसेज), gdpr (जीडीपीआर के तहत, सहमति जताने वाले मैसेज), monetization (ऑफ़रवॉल मैसेज)

अपनी साइट पर झलक देखने के लिए इसका इस्तेमाल करने के कुछ उदाहरण (foo.com):

  • सीपीआरए मैसेज की जांच करें -- http://foo.com/?fc=alwaysshow&fctype=ccpa
  • जीडीपीआर मैसेज सेवा की जांच करें -- http://foo.com/?fc=alwaysshow&fctype=gdpr

फ़ील्ड: एक्सप्लेनेशंस और उदाहरण

googlefc.controlledMessagingFunction {function(!Object)}

यह एक ऐसा फ़ंक्शन है जो तय करता है कि मैसेज दिखाने चाहिए या नहीं. यह काम किया जा सकता है इसका इस्तेमाल पब्लिशर की तय की गई शर्तों पर मैसेज रेंडरिंग को रोकने के लिए किया जाता है, जैसे कि सदस्यता की स्थिति या पेज का यूआरएल.

जब आपने इससे पहले वाली विंडो पर googlefc.controlledMessagingFunction तय किया हो अन्य स्क्रिप्ट लोड हो रही हैं, आपके कॉल करने तक संदेश नहीं दिखाई देंगे message.proceed(boolean). message.proceed(true) को कॉल करने पर, ये काम किए जा सकते हैं: पहले की तरह आगे बढ़ें, जबकि message.proceed(false) को कॉल करने से कोई मैसेज नहीं भेजा जा सकता को नहीं दिखाया जा सकता.

उदाहरण: मान लें कि आपके पेज पर यह स्क्रिप्ट मौजूद है, जो एक एसिंक्रोनस के बारे में बताती है determineIfUserIsSubscriber() फ़ंक्शन, जो यह जांचता है कि लॉग-इन करने वाला उपयोगकर्ता सदस्य.

<head>
  <script>
    window.isSubscriber = undefined;
    function determineIfUserIsSubscriber() {
      if (isSubscriber !== undefined) {
        return isSubscriber;
      }
      return new Promise(resolve => {
        setTimeout(() => {
          // Change this to true if you want to test what subscribers would see.
          window.isSubscriber = false;
          resolve(window.isSubscriber);
        }, 1000);
      });
    }
  </script>
</head>

इस उदाहरण में बताया गया है कि सिर्फ़ इन्हें मैसेज दिखाने के लिए googlefc.controlledMessagingFunction वे लोग जो सदस्य नहीं हैं.

<head>
  <script>
    // Define googlefc and the controlled messaging function on the Window.
    window.googlefc = window.googlefc || {};
    googlefc.controlledMessagingFunction = async (message) => {
      // Determine if the user is a subscriber asynchronously.
      const isSubscriber = await determineIfUserIsSubscriber();

      if (isSubscriber) {
        // If the user is a subscriber, don't show any messages.
        message.proceed(false);
      } else {
        // Otherwise, show messages as usual.
        message.proceed(true);
      }
    }
  </script>
</head>

इस सुविधा का एक एक्सटेंशन भी है, जो पब्लिशर को Offerwall मैसेज ने बीटा वर्शन को बंद किया है, ताकि यह बताया जा सके कि सिर्फ़ Offerwall मैसेज को दबाया गया. यह सुविधा चालू होने पर, दूसरी तरह के मैसेज पर इसका कोई असर नहीं पड़ेगा.

Offerwall मैसेज को कंट्रोल करने के लिए, एक और message.proceed() के लिए पैरामीटर, googlefc.MessageTypeEnum प्रकार का Array.

उदाहरण: इस उदाहरण में googlefc.controlledMessagingFunction का इस्तेमाल करके सिर्फ़ सदस्यों के लिए Offerwall मैसेज को रोकें. अन्य सुविधाओं को दबाएं संदेश प्रकार:

<head>
  <script>
    // Define googlefc and the controlled messaging function on the Window.
    window.googlefc = window.googlefc || {};
    googlefc.controlledMessagingFunction = async (message) => {
     // Determine if the Offerwall should display or not.
     const shouldDisplayOfferwall = await determineIfUserIsSubscriber();
     const applicableMessageTypes = [];

     if (!shouldDisplayOfferwall) {
       // Do not show the Offerwall, but allow other message types to display.
       applicableMessageTypes.push(window.googlefc.MessageTypeEnum.OFFERWALL);
       message.proceed(false, applicableMessageTypes);
     } else {
       // Otherwise, show messages as usual.
       message.proceed(true);
     }
    }
  </script>
</head>

googlefc.callbackQueue {!Array<!Object<string, function()>> | !Array<function()> | !googlefc.CallbackQueue}

इसके एसिंक्रोनस निष्पादन के लिए वैश्विक कॉलबैक सूची का संदर्भ मैसेज करने के लिए इस्तेमाल किए जाने वाले कॉल. किसी भी फ़ंक्शन को शुरू करने के लिए, सिर्फ़ यह तरीका अपनाया जा सकता है: इसे callbackQueue में जोड़ा जा रहा है.

अलग-अलग तरह का डेटा अलग-अलग समय पर उपलब्ध होता है. इसलिए, फ़ंक्शन को मैप के रूप में जोड़ा जाना चाहिए, जिसमें नीचे दी गई स्ट्रिंग में कुंजी और फ़ंक्शन का इस्तेमाल करें.

इस्तेमाल की जा सकने वाली कुंजियां:

कुंजी का नाम इस्तेमाल संबंधित इंतज़ार का समय
CONSENT_API_READY CONSENT_API_READY कुंजी के साथ कॉलबैक लिस्ट में पुश किए गए फ़ंक्शन तब एक्ज़ीक्यूट किए जाते हैं, जब काम करने वाले सहमति फ़्रेमवर्क के लिए एपीआई तय किए जाते हैं और उन्हें कॉल किया जा सकता है. इसके बाद, बाद में जोड़े गए CONSENT_API_READY की मदद से बनाए गए फ़ंक्शन को लागू करना सिंक्रोनस होता है. फ़्रेमवर्क से जुड़ी खास जानकारी के लिए, IAB फ़्रेमवर्क पर सेक्शन देखें. कम
CONSENT_DATA_READY CONSENT_DATA_READY कुंजी के साथ कॉलबैक लिस्ट में पुश किए गए फ़ंक्शन तब लागू किए जाते हैं, जब इस्तेमाल किए जा सकने वाले सहमति फ़्रेमवर्क के तहत, उपयोगकर्ता की सहमति के बारे में जानकारी मिलती है. ऐसा तब किया जा सकता है, जब उपयोगकर्ता ने सहमति के मैसेज से इंटरैक्ट किया हो. इसके बाद, बाद में जोड़े गए CONSENT_DATA_READY की मदद से बनाए गए फ़ंक्शन को लागू करना सिंक्रोनस होता है. ज़्यादा
AD_BLOCK_DATA_READY AD_BLOCK_DATA_READY कुंजी वाली कॉलबैक सूची में पुश किए जाने वाले फ़ंक्शन, तब लागू किए जाते हैं, जब विज्ञापन रोकने वाला डेटा फ़्लो में उपलब्ध हो जाता है. इसके बाद, बाद में जोड़े गए AD_BLOCK_DATA_READY की मदद से बनाए गए फ़ंक्शन सिंक्रोनस होते हैं. ज़्यादा
INITIAL_CCPA_DATA_READY INITIAL_CCPA_DATA_READY के साथ कॉलबैक लिस्ट में पुश किए गए फ़ंक्शन तब लागू किए जाते हैं, जब फ़्लो में सीपीआरए डेटा उपलब्ध हो जाता है. ध्यान रखें कि सीपीआरए डेटा के लिए अनुरोध, सीधे US Privacy API (__uspapi) को कॉल करके किया जाना चाहिए. मध्यम

googlefc.CallbackQueue {!Object}

तरीके की खास जानकारी:

नाम टाइप पैरामीटर रिटर्न टाइप भूमिका
push(data) संख्या data: कुंजी के साथ डेटा के रूप में एक की-वैल्यू पेयर उपलब्धता टाइप और वैल्यू को JavaScript फ़ंक्शन के तौर पर लागू करना होता है. डेटा की उपलब्धता के लिए स्वीकार की जाने वाली कुंजियां CONSENT_API_READY हैं, CONSENT_DATA_READY, AD_BLOCK_DATA_READY, और INITIAL_CCPA_DATA_READY. अब तक जोड़े गए निर्देशों की संख्या. यह अरे की मौजूदा लंबाई दिखाता है. पास किए गए फ़ंक्शन को एक्ज़ीक्यूट करता है, जिस क्रम में डेटा उपलब्ध है, फिर उस क्रम में जिसमें ये फ़ंक्शन जोड़े जाते हैं सूची.

उदाहरण:

<script>
  // Make sure that the properties exist on the window.
  window.googlefc = window.googlefc || {};
  window.googlefc.ccpa = window.googlefc.ccpa || {}
  window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];

  // Queue the callback on the callbackQueue.
  googlefc.callbackQueue.push({
    'AD_BLOCK_DATA_READY':
    () => {
      if (googlefc.getAdBlockerStatus() == googlefc.AdBlockerStatusEnum.NO_AD_BLOCKER) {
        // Handle a non-ad blocking user.
      }
    }
  });
</script>

googlefc.AdBlockerStatusEnum {!Object<string, number>}

यह उपयोगकर्ता की विज्ञापन रोकने की अलग-अलग स्थितियों को दिखाता है. अलग-अलग राज्य हैं:

googlefc.AdBlockerStatusEnum = {
  // Something failed, in an unknown state.
  UNKNOWN: 0,
  // The user was running an extension level ad blocker.
  EXTENSION_AD_BLOCKER: 1,
  // The user was running a network level ad blocker.
  NETWORK_LEVEL_AD_BLOCKER: 2,
  // The user was not blocking ads.
  NO_AD_BLOCKER: 3,
};

googlefc.AllowAdsStatusEnum {!Object<string, number>}

यह उपयोगकर्ता की विज्ञापन रोकने की सुविधा को अनुमति देने वाली अलग-अलग स्थितियों को दिखाता है. वह अलग राज्य हैं:

googlefc.AllowAdsStatusEnum = {
  // Something failed, in an unknown state.
  UNKNOWN: 0,
  // User is currently using an ad blocker, was never using an ad blocker, or
  // allowed ads, but not because they saw the Privacy & messaging message.
  ADS_NOT_ALLOWED: 1,
  // User is no longer using an ad blocker after seeing the ad blocking message.
  ADS_ALLOWED: 2,
};

googlefc.ccpa.InitialCcpaStatusEnum{!Object<string, number>}

यह उपयोगकर्ता की विज्ञापन रोकने की सुविधा को अनुमति देने वाली अलग-अलग स्थितियों को दिखाता है. वह अलग राज्य हैं:

googlefc.ccpa.InitialCcpaStatusEnum = {
  // Something failed, in an unknown state.
  UNKNOWN: 0,
  // CPRA does not apply to this user.
  CCPA_DOES_NOT_APPLY: 1,
  // CPPA applies to this user, and the user has not opted out yet.
  NOT_OPTED_OUT: 2,
  // CPPA applies to this user, and the user has opted out.
  OPTED_OUT: 3,
};

googlefc.ccpa.overrideDnsLink{undefined|boolean}

डिफ़ॉल्ट न बेचें लिंक को छिपाने के लिए इस फ़ील्ड को 'सही' पर सेट करें और कस्टम 'बिक्री न करें' लिंक.

उदाहरण:

<script>
  // Make sure that the properties exist on the window.
  window.googlefc = window.googlefc || {};
  window.googlefc.ccpa = window.googlefc.ccpa || {}
  // Signals that the default DNS link will be overridden.
  googlefc.ccpa.overrideDnsLink = true;
</script>

तरीके: एक्सप्लेनेशंस और उदाहरण

googlefc.getConsentStatus(): {number}


googlefc.getConsentedProviderIds(): {!Array<string>}

  1. यह अब कॉल किए जाने पर हमेशा एक खाली सूची दिखाता है.

googlefc.showRevocationMessage(): {undefined}

सहमति के मौजूदा रिकॉर्ड को हटाता है और सहमति जताने वाला मैसेज दिखाता है इस उपयोगकर्ता पर लागू होता है. इस फ़ंक्शन के लिए इस कुंजी को तय किया जाना चाहिए CONSENT_DATA_READY.

उदाहरण:

<button type="button" onclick="googlefc.callbackQueue.push({'CONSENT_DATA_READY': () => googlefc.showRevocationMessage()});">
  Click here to revoke
</button>

googlefc.getAdBlockerStatus(): {number}

विज्ञापन रोकने की स्थिति के आधार पर, AdBlockerStatusEnum में वैल्यू दिखाता है उपयोगकर्ता पर लागू होता है. इस फ़ंक्शन के लिए इस कुंजी को तय किया जाना चाहिए AD_BLOCK_DATA_READY.

उदाहरण:

<script>
  // Make sure that the properties exist on the window.
  window.googlefc = window.googlefc || {};
  window.googlefc.ccpa = window.googlefc.ccpa || {}
  window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];

  // Queue the callback on the callbackQueue.
  googlefc.callbackQueue.push({
    'AD_BLOCK_DATA_READY':
    () => {
      switch (googlefc.getAdBlockerStatus()) {
          case googlefc.AdBlockerStatusEnum.EXTENSION_LEVEL_AD_BLOCKER:
          case googlefc.AdBlockerStatusEnum.NETWORK_LEVEL_AD_BLOCKER:
            // Insert handling for cases where the user is blocking ads.
            break;
          case googlefc.AdBlockerStatusEnum.NO_AD_BLOCKER:
            // Insert handling for cases where the user is not blocking ads.
            break;
          case googlefc.AdBlockerStatusEnum.UNKNOWN:
            // Insert handling for unknown cases.
            break;
      }
    }
  });
</script>

googlefc.getAllowAdsStatus(): {number}

विज्ञापनों को अनुमति मिलने की स्थिति के आधार पर, AllowAdsStatusEnum में वैल्यू दिखाता है उपयोगकर्ता है. इस फ़ंक्शन के लिए इस कुंजी को तय किया जाना चाहिए AD_BLOCK_DATA_READY.

उदाहरण:

<script>
  // Make sure that the properties exist on the window.
  window.googlefc = window.googlefc || {};
  window.googlefc.ccpa = window.googlefc.ccpa || {}
  window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];

  // Queue the callback on the callbackQueue.
  googlefc.callbackQueue.push({
    'AD_BLOCK_DATA_READY':
    () => {
      switch (googlefc.getAllowAdsStatus()) {
        case googlefc.AllowAdsStatusEnum.ADS_NOT_ALLOWED:
          // Insert handling for cases where the user has not allowed ads.
          // The user may have never been an ad blocker.
          break;
        case googlefc.AllowAdsStatusEnum.ADS_ALLOWED:
          // Insert handling for cases where the user saw the ad blocking
          // message and allowed ads on the site.
          break;
        case googlefc.AllowAdsStatusEnum.UNKNOWN:
          // Insert handling for unknown cases.
          break;
      }
    }
  });
</script>

googlefc.ccpa.getInitialCcpaStatus(): {number}

इसकी सीपीआरए स्थिति के आधार पर, InitialCcpaStatusEnum में वैल्यू दिखाता है उपयोगकर्ता है. इस फ़ंक्शन के लिए इस कुंजी को तय किया जाना चाहिए INITIAL_CCPA_DATA_READY. ध्यान दें कि बाद में सीपीआरए डेटा के लिए किसी भी अनुरोध में सीधे US Privacy API (__uspapi) पर कॉल करके पाएं.

उदाहरण:

<script>
  // Make sure that the properties exist on the window.
  window.googlefc = window.googlefc || {};
  window.googlefc.ccpa = window.googlefc.ccpa || {}
  window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];

  // Queue the callback on the callbackQueue.
  googlefc.callbackQueue.push({
    'INITIAL_CCPA_DATA_READY':
    () => {
      switch (googlefc.ccpa.getInitialCcpaStatus()) {
        case googlefc.ccpa.InitialCcpaStatusEnum.CCPA_DOES_NOT_APPLY:
          // Insert handling for cases where the user is not CPRA eligible.
          break;
        case googlefc.ccpa.InitialCcpaStatusEnum.NOT_OPTED_OUT:
          // Insert handling for cases where the user is CPRA eligible and has
          // not opted out.
          break;
        case googlefc.ccpa.InitialCcpaStatusEnum.OPTED_OUT:
          // Insert handling for cases where the user is CPRA eligible and has
          // opted out.
          break;
      }
    }
  });
</script>

googlefc.ccpa.openConfirmationDialog(function(boolean)): {undefined}

इससे सीपीआरए की पुष्टि करने वाला डायलॉग बॉक्स खुलता है. ऐसा तब होता है, जब 'बिक्री न करें' लिंक, डिफ़ॉल्ट तौर पर सेट हो ओवरराइड किया गया. पुष्टि करने वाले डायलॉग के साथ उपयोगकर्ता के इंटरैक्ट करने के बाद, यह जानकारी दी जाएगी अगर उपयोगकर्ता ऑप्ट-आउट करने का फ़ैसला करता है, तो कॉलबैक फ़ंक्शन को true के साथ कॉल किया जाता है और अगर ऐसा नहीं है, तो false.

उदाहरण:

<script>
// This callback will be called with the user CPRA decision.
const ccpaCompletionCallback = (userOptedOut) => {
  // Insert handling for user opt-out status here.
}
// Invoke the CPRA confirmation dialog when the user clicks the link.
document.getElementById("your-custom-ccpa-do-not-sell-link").addEventListener(
  "click", () => googlefc.ccpa.openConfirmationDialog(ccpaCompletionCallback));
</script>

अगर जीडीपीआर के तहत सहमति लेने के लिए, Google के सहमति मैनेजमेंट प्लैटफ़ॉर्म का इस्तेमाल किया जा रहा है आपको IAB टीसीएफ़ v2 फ़्रेमवर्क के तहत, एपीआई.

आप CONSENT_API_READY का इस्तेमाल कर सकते हैं यह पक्का करने के लिए कि कॉलबैक क्यू की सुविधा का इस्तेमाल सिर्फ़ तब किया जाए, जब पेज पर, IAB टीसीएफ़ v2 एपीआई की जानकारी दी गई है. इसका इस्तेमाल साथ-साथ किया जाना चाहिए के साथ 'addEventListener' IAB टीसीएफ़ v2 एपीआई का निर्देश दिया था.

उदाहरण:

<script>
  // Make sure that the properties exist on the window.
  window.googlefc = window.googlefc || {};
  window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];

  // Queue the callback using the CONSENT_API_READY key on the callbackQueue.
  window.googlefc.callbackQueue.push({
    'CONSENT_API_READY':
    () => __tcfapi('addEventListener', 2.2, (data, success) => {
      // Do something with consent data value; this callback may be invoked
      // multiple times as user completes consent flow.
    })
  });
</script>

आप CONSENT_DATA_READY का इस्तेमाल कर सकते हैं कॉलबैक क्यू बटन, ताकि यह पक्का किया जा सके कि संबंधित कॉलबैक को चालू किया गया है सिर्फ़ तब, जब IAB टीसीएफ़ v2 एपीआई का इस्तेमाल करके उपयोगकर्ता की सहमति इकट्ठा की जाती है और उसे ऐक्सेस किया जा सकता है. इसका इस्तेमाल 'addEventListener' कमांड - आपके दिए गए कॉलबैक को पहली बार शुरू करने पर दिया गया डेटा उपयोगकर्ता की सहमति के विकल्प शामिल होंगे (जब तक कि टीसीएफ़ का 2 वर्शन लागू होता है उपयोगकर्ता). ध्यान दें कि टीसीएफ़ का 2.2 वर्शन रिलीज़ होने के बाद, 'getTCData' आदेश अब बहिष्कृत कर दिया गया है.

उदाहरण:

<script>
  // Make sure that the properties exist on the window.
  window.googlefc = window.googlefc || {};
  window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];

  // Queue the callback using the CONSENT_DATA_READY key on the callbackQueue.
  window.googlefc.callbackQueue.push({
    'CONSENT_DATA_READY':
    () => __tcfapi('addEventListener', 2.2, (data, success) => {
      // Do something with consent data value; this callback may be invoked
      // multiple times if user consent selections change.
    })
  });
</script>

सीपीआरए के लिए IAB GPP फ़्रेमवर्क के साथ, Google के सहमति मैनेजमेंट प्लैटफ़ॉर्म का इस्तेमाल करना

अगर सीपीआरए से ऑप्ट-आउट करने के लिए, Google के सहमति मैनेजमेंट प्लैटफ़ॉर्म का इस्तेमाल किया जा रहा है आपको IAB GPP फ़्रेमवर्क के तहत IAB GPP फ़्रेमवर्क का उपयोग करना होगा, एपीआई.

सीपीआरए कानून से ऑप्ट आउट करने की वजह से, इनमें से किसी एक विकल्प का इस्तेमाल किया जा सकता है CONSENT_API_READY या CONSENT_DATA_READY कॉलबैक सूची कुंजी, ताकि यह पक्का किया जा सके कि IAB GPP API को कॉल करने की सुविधा और सहमति से जुड़ा डेटा वापस मिल रहा है या नहीं उस समय कॉलबैक शुरू होते हैं.

<script>
  // Make sure that the properties exist on the window.
  window.googlefc = window.googlefc || {};
  window.googlefc.ccpa = window.googlefc.ccpa || {}
  window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];

  // Queue the callback on the callbackQueue.
  window.googlefc.callbackQueue.push({
    'CONSENT_DATA_READY':
    () => __uspapi('getUSPData', 1, (data, success) => {
      // Do something with consent data value.
    })
  });
</script>

सीपीआरए के लिए IAB GPP फ़्रेमवर्क के साथ, पसंद के मुताबिक 'बिक्री न करें' लिंक के साथ, Google के सहमति मैनेजमेंट प्लैटफ़ॉर्म का इस्तेमाल करना

अगर सीपीआरए से ऑप्ट-आउट करने के लिए, Google के सहमति मैनेजमेंट प्लैटफ़ॉर्म का इस्तेमाल किया जा रहा है IAB GPP फ़्रेमवर्क के तहत, googlefc.ccpa.overrideDnsLink फ़्लैग को true पर सेट करके.

<script>
  // Make sure that the properties exist on the window.
  window.googlefc = window.googlefc || {};
  window.googlefc.ccpa = window.googlefc.ccpa || {}
  window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];

  // Signals that the default DNS link will be overridden.
  window.googlefc.ccpa.overrideDnsLink = true;

  // Register the callback for the initial CPRA data.
  window.googlefc.callbackQueue.push({
      'INITIAL_CCPA_DATA_READY': () => {
        if (googlefc.ccpa.getInitialCcpaStatus() ===
            googlefc.ccpa.InitialCcpaStatusEnum.NOT_OPTED_OUT) {
          // TODO: Display custom CPRA Do Not Sell link here.
        }
      }
    });
</script>

इससे यह पक्का होता है कि डिफ़ॉल्ट तौर पर 'बिक्री न करें' लिंक रेंडर नहीं होगा. ध्यान दें कि 'बिक्री न करें' लिंक को रेंडर करने की ज़िम्मेदारी आपकी है, ताकि सीपीआरए के मुताबिक होना चाहिए. इसके बाद, आपको उपयोगकर्ता इंटरैक्शन को अपने कस्टम 'न करें' के साथ मैनेज करना होगा सीपीआरए की पुष्टि करने वाले डायलॉग को शुरू करके लिंक बेचें.

<script>
// This callback will be called with the user CPRA decision.
const ccpaCompletionCallback = (userOptedOut) => {
  if (userOptedOut) {
    // TODO: Hide custom CPRA Do Not Sell link here.
  }
}
// Invoke the CPRA confirmation dialog when the user clicks the link.
document.getElementById("your-custom-ccpa-do-not-sell-link").addEventListener(
  "click", () => googlefc.ccpa.openConfirmationDialog(ccpaCompletionCallback));
</script>