पीपीएस की मदद से विज्ञापन कैंपेन को बेहतर बनाना

प्लैटफ़ॉर्म चुनें: HTML5 Android iOS tvOS

विज्ञापन दिखाने के अनुरोधों में, ऑडियंस और संदर्भ के हिसाब से डेटा को पब्लिशर से मिले सिग्नल (पीपीएस) के तौर पर भेजा जा सकता है. पीपीएस की मदद से, उपयोगकर्ता के डेटा का इस्तेमाल करके, प्रोग्राम के हिसाब से कमाई करने की सुविधा को बेहतर बनाया जा सकता है. इसके लिए, आपको स्टैंडर्ड टैक्सनॉमी का इस्तेमाल करके, सभी लेन-देन के टाइप में बिड करने वालों को अपनी ऑडियंस की विशेषताओं के बारे में बताना होगा. इसके लिए, आपको यूज़र आइडेंटिफ़ायर शेयर करने की ज़रूरत नहीं है. आपकी ऑडियंस की विशेषताओं में, व्यवहार और दिलचस्पी पर आधारित डेटा (IAB ऑडियंस टैक्सनॉमी 1.1) और कॉन्टेक्स्ट के हिसाब से उपलब्ध डेटा (IAB कॉन्टेंट टैक्सनॉमी 2.2) शामिल हो सकता है. पब्लिशर से मिले स्ट्रक्चर्ड सिग्नल भी भेजे जा सकते हैं. इन्हें Google तय करता है. साथ ही, अन्य सिग्नल भेजने की अनुमति भी देता है.

उपयोगकर्ता के सिग्नल का JSON बनाना

टॉप लेवल पर, एक की-वैल्यू पेयर वाला JSON ऑब्जेक्ट बनाएं. कुंजी PublisherProvidedTaxonomySignals होनी चाहिए और इसकी वैल्यू, ऑब्जेक्ट का कलेक्शन होनी चाहिए. अरे में मौजूद हर ऑब्जेक्ट में दो की-वैल्यू पेयर होने चाहिए:

  • taxonomy कुंजी, जो इन वैल्यू को स्वीकार करती है. ये वैल्यू, IAB की इन सार्वजनिक शर्तों के साथ मैप की जाती हैं:

    • IAB_AUDIENCE_1_1, ऑडियंस टैक्सनॉमी 1.1 के लिए
    • कॉन्टेंट टैक्सनॉमी 2.2 के लिए IAB_CONTENT_2_2
  • values कुंजी, जिसमें स्ट्रिंग टैक्सोनॉमी वैल्यू का संबंधित कलेक्शन होता है.

स्ट्रक्चर्ड सिग्नल अरे बनाना

स्ट्रक्चर्ड सिग्नल के लिए, PublisherProvidedStructuredSignals कुंजी जोड़ें. साथ ही, ऑब्जेक्ट के कलेक्शन की वैल्यू जोड़ें. सिग्नल की मुख्य वैल्यू की इस सूची के आधार पर ऑब्जेक्ट बनाएं:

स्ट्रक्चर्ड सिग्नल टेबल के व्यू को टॉगल करना

सिग्नल <code" dir="ltr" translate="no">"type" Value</code"> "single_value" के लिए इस्तेमाल की जा सकने वाली वैल्यू "values" की संभावित वैल्यू
ऑडियो फ़ीड टाइप "audio_feed"
  • "af_1": संगीत
  • "af_2": ब्रॉडकास्ट
  • "af_3": पॉडकास्ट
लागू नहीं
सामग्री रेटिंग "content_rating"
  • "cr_1": G
  • "cr_2": PG
  • "cr_3": T
  • "cr_4": MA
लागू नहीं
कॉन्टेंट डिलीवरी "delivery" लागू नहीं
  • "cd_1": स्ट्रीमिंग
  • "cd_2": प्रोग्रेसिव
  • "cd_3": डाउनलोड करें
प्रोडक्शन क्वालिटी "prodq"
  • "pq_1": प्रोफ़ेशनल तरीके से बनाया गया कॉन्टेंट
  • "pq_2": प्रोस्यूमर
  • "pq_3": यूज़र जनरेटेड कॉन्टेंट (यूजीसी)
लागू नहीं

नीचे दिया गया उदाहरण देखें. इसमें कैटगरी के सिग्नल के लिए, IAB_AUDIENCE_1_1 और IAB_CONTENT_2_2 का इस्तेमाल किया गया है. साथ ही, इसमें स्ट्रक्चर्ड सिग्नल भी शामिल हैं.

const userSignals = {
  "PublisherProvidedTaxonomySignals": [{
     "taxonomy": "IAB_AUDIENCE_1_1",
     "values": ["6", "284"]
     // '6' = 'Demographic | Age Range | 30-34'
     // '284' = 'Interest | Business and Finance |  Mergers and Acquisitions'
  },
  {
     "taxonomy": "IAB_CONTENT_2_2",
     "values": ["49", "138"]
     // '49' = 'Books and Literature | Poetry'
     // '138' = 'Education | College Education | College Planning'
  }],
  "PublisherProvidedStructuredSignals": [{
      "type": "audio_feed",
      "single_value": "af_1",
    },
    {
      "type": "delivery",
      "values": ["cd_1", "cd_3"],
    },
  ],
};

विज्ञापन दिखाने के अनुरोध को कॉन्फ़िगर करना

AdsRequest के साथ पीपीएस भेजने के लिए, यह तरीका अपनाएं:

  • उपयोगकर्ता की दिलचस्पी, व्यवहार या संदर्भ से जुड़े डेटा के साथ JSON स्ट्रिंग बनाएं.
  • ऊपर दी गई JSON स्ट्रिंग से, Base64-कोड में बदली गई ASCII स्ट्रिंग बनाएं.
  • &ppsj= पैरामीटर का इस्तेमाल करके, एन्कोड की गई स्ट्रिंग को अपने विज्ञापन टैग यूआरएल में जोड़ें.
JSONObject userSignalsObject = new JSONObject();
JSONArray userSignalsArray = new JSONArray();
JSONObject audienceTaxonomyObject = new JSONObject();
JSONArray valuesArray = new JSONArray();
valuesArray.put("1");
valuesArray.put("284");
try {
  audienceTaxonomyObject.put("taxonomy", "IAB_AUDIENCE_1_1");
  audienceTaxonomyObject.put("values", valuesArray);
} catch (JSONException e) {
  e.printStackTrace();
}

userSignalsArray.put(audienceTaxonomyObject);

try {
  userSignalsObject.put("PublisherProvidedTaxonomySignals", userSignalsArray);
} catch (JSONException e) {
  e.printStackTrace();
}

String userSignals = userSignalsObject.toString();

byte[] userSignalsByte=new byte[0];
try {
  userSignalsByte = userSignals.getBytes(StandardCharsets.UTF_8);
  String encodedBas64Signals = android.util.Base64.encodeToString(
    userSignalsByte,
    android.util.Base64.URL_SAFE);
  encodedSignals = URLEncoder.encode(encodedBas64Signals, "UTF-8");
} catch (java.io.UnsupportedEncodingException error) {
  Log.w("Sample app", error);
}

String finalAdTag = sampleAdTag + "&ppsj=" + encodedSignals;