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

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

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

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

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

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

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

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

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

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

सिग्नल <code" dir="ltr" translate="no">"type" वैल्यू</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;