इस विषय में, डेवलपर से जुड़ी रीयल-टाइम सूचनाओं के टाइप की सूची दी गई है. साथ ही, इनके बारे में जानकारी भी दी गई है. ये सूचनाएं, आपको Google Play से मिल सकती हैं.
एन्कोडिंग
Cloud Pub/Sub के किसी विषय पर की गई हर पब्लिश में, एक ऐसा डेटा फ़ील्ड होता है जिसे base64 में एन्कोड किया गया हो.
{
"message": {
"attributes": {
"key": "value"
},
"data": "eyAidmVyc2lvbiI6IHN0cmluZywgInBhY2thZ2VOYW1lIjogc3RyaW5nLCAiZXZlbnRUaW1lTWlsbGlzIjogbG9uZywgIm9uZVRpbWVQcm9kdWN0Tm90aWZpY2F0aW9uIjogT25lVGltZVByb2R1Y3ROb3RpZmljYXRpb24sICJzdWJzY3JpcHRpb25Ob3RpZmljYXRpb24iOiBTdWJzY3JpcHRpb25Ob3RpZmljYXRpb24sICJ0ZXN0Tm90aWZpY2F0aW9uIjogVGVzdE5vdGlmaWNhdGlvbiB9",
"messageId": "136969346945"
},
"subscription": "projects/myproject/subscriptions/mysubscription"
}
Base64 में एन्कोड किए गए डेटा फ़ील्ड को डिकोड करने के बाद, DeveloperNotification
में ये फ़ील्ड शामिल होते हैं:
{
"version": string,
"packageName": string,
"eventTimeMillis": long,
"oneTimeProductNotification": OneTimeProductNotification,
"subscriptionNotification": SubscriptionNotification,
"voidedPurchaseNotification": VoidedPurchaseNotification,
"testNotification": TestNotification
}
इन फ़ील्ड के बारे में नीचे दी गई टेबल में बताया गया है.
प्रॉपर्टी का नाम | वैल्यू | ब्यौरा |
वर्शन | स्ट्रिंग | इस सूचना का वर्शन. शुरुआत में, यह "1.0" होता है. यह वर्शन, अन्य वर्शन फ़ील्ड से अलग होता है. |
packageName | स्ट्रिंग | उस ऐप्लिकेशन का पैकेज नाम जिससे यह सूचना जुड़ी है (उदाहरण के लिए, `com.some.thing`). |
eventTimeMillis | लंबा | इवेंट होने का टाइमस्टैंप, जिसे Epoch के बाद के मिलीसेकंड में दिखाया जाता है. |
subscriptionNotification | SubscriptionNotification | अगर यह फ़ील्ड मौजूद है, तो यह सूचना किसी सदस्यता से जुड़ी है. साथ ही, इस फ़ील्ड में सदस्यता से जुड़ी ज़्यादा जानकारी होती है. ध्यान दें कि यह फ़ील्ड, oneTimeProductNotification, voidedPurchaseNotification, और testNotification के साथ काम नहीं करता. |
oneTimeProductNotification | OneTimeProductNotification | अगर यह फ़ील्ड मौजूद है, तो यह सूचना एक बार की गई खरीदारी से जुड़ी है. साथ ही, इस फ़ील्ड में खरीदारी से जुड़ी ज़्यादा जानकारी होती है. ध्यान दें कि यह फ़ील्ड, subscriptionNotification, voidedPurchaseNotification, और testNotification के साथ काम नहीं करता. |
voidedPurchaseNotification | VoidedPurchaseNotification | अगर यह फ़ील्ड मौजूद है, तो यह सूचना रद्द की गई खरीदारी से जुड़ी है. साथ ही, इस फ़ील्ड में रद्द की गई खरीदारी से जुड़ी ज़्यादा जानकारी होती है. ध्यान दें कि यह फ़ील्ड, एक बार की जाने वाली प्रॉडक्ट सूचना, सदस्यता की सूचना, और जांच की सूचना के साथ काम नहीं करता. |
testNotification | TestNotification | अगर यह फ़ील्ड मौजूद है, तो यह सूचना किसी टेस्ट पब्लिश से जुड़ी है. ये सिर्फ़ Google Play डेवलपर कंसोल के ज़रिए भेजे जाते हैं. ध्यान दें कि यह फ़ील्ड, oneTimeProductNotification, subscriptionNotification, और voidedPurchaseNotification के साथ काम नहीं करता. |
SubscriptionNotification
SubscriptionNotification
में ये फ़ील्ड शामिल होते हैं:
{
"version": string,
"notificationType": int,
"purchaseToken": string
}
प्रॉपर्टी का नाम | वैल्यू | ब्यौरा |
वर्शन | स्ट्रिंग | इस सूचना का वर्शन. शुरुआत में, यह "1.0" होता है. यह वर्शन, अन्य वर्शन फ़ील्ड से अलग होता है. |
notificationType | आईएनटी | किसी सदस्यता के लिए notificationType की ये वैल्यू हो सकती हैं:
|
purchaseToken | स्ट्रिंग | सदस्यता खरीदने पर, उपयोगकर्ता के डिवाइस को दिया गया टोकन. |
उदाहरण
नई सदस्यता खरीदने की सूचना का उदाहरण यहां दिया गया है:
{
"version":"1.0",
"packageName":"com.some.thing",
"eventTimeMillis":"1503349566168",
"subscriptionNotification":
{
"version":"1.0",
"notificationType":4,
"purchaseToken":"PURCHASE_TOKEN"
}
}
OneTimeProductNotification
OneTimeProductNotification
में ये फ़ील्ड शामिल होते हैं:
{
"version": string,
"notificationType": int,
"purchaseToken": string,
"sku": string
}
प्रॉपर्टी का नाम | वैल्यू | ब्यौरा |
वर्शन | स्ट्रिंग | इस सूचना का वर्शन. शुरुआत में, यह "1.0" होगा. यह वर्शन, अन्य वर्शन फ़ील्ड से अलग होता है. |
notificationType | आईएनटी | सूचना का टाइप. इसमें ये वैल्यू हो सकती हैं:
|
purchaseToken | स्ट्रिंग | खरीदारी के समय, उपयोगकर्ता के डिवाइस को दिया गया टोकन. |
sku | स्ट्रिंग | खरीदा गया वन-टाइम प्रॉडक्ट आईडी (उदाहरण के लिए, "sword_001") |
उदाहरण
यहां एक बार की जाने वाली नई खरीदारी की सूचना का उदाहरण दिया गया है:
{
"version":"1.0",
"packageName":"com.some.thing",
"eventTimeMillis":"1503349566168",
"oneTimeProductNotification":
{
"version":"1.0",
"notificationType":1,
"purchaseToken":"PURCHASE_TOKEN",
"sku":"my.sku"
}
}
VoidedPurchaseNotification
VoidedPurchaseNotification
में ये फ़ील्ड शामिल होते हैं:
प्रॉपर्टी का नाम |
वैल्यू |
ब्यौरा |
|
|
रद्द की गई खरीदारी से जुड़ा टोकन. जब कोई नई खरीदारी होती है, तो यह जानकारी डेवलपर को दी जाती है. |
|
|
रद्द किए गए लेन-देन से जुड़ा ऑर्डर का यूनीक आईडी. एक बार की जाने वाली खरीदारी के लिए, यह खरीदारी के लिए जनरेट किया गया एकमात्र ऑर्डर आईडी दिखाता है. अपने-आप रिन्यू होने वाली सदस्यताओं के लिए, हर रिन्यूअल ट्रांज़ैक्शन के लिए एक नया ऑर्डर आईडी जनरेट होता है. |
|
|
रद्द की गई खरीदारी के लिए
|
|
|
रद्द की गई खरीदारी के लिए
ध्यान दें कि एक से ज़्यादा प्रॉडक्ट की खरीदारी के लिए, बचे हुए प्रॉडक्ट का रिफ़ंड मिलने पर, |
उदाहरण
रद्द की गई नई खरीदारी की सूचना का उदाहरण यहां दिया गया है:
{
"version":"1.0",
"packageName":"com.some.app",
"eventTimeMillis":"1503349566168",
"voidedPurchaseNotification":
{
"purchaseToken":"PURCHASE_TOKEN",
"orderId":"GS.0000-0000-0000",
"productType":1
"refundType":1
}
}
VoidedPurchaseNotification का इस्तेमाल करना
जब आपके आरटीडीएन क्लाइंट को VoidedPurchaseNotification
मिलता है, तो इस जानकारी पर ध्यान दें:
packageName
: इससे ऐप्लिकेशन की पहचान की जाती है.eventTimeMillis
: इससे डेवलपर को पता चलता है कि स्टेटस में बदलाव कब हुआ.purchaseToken
: प्रॉडक्ट खरीदने पर, उपयोगकर्ता के डिवाइस को दिया गया टोकन.orderId
: इससे रद्द किए गए लेन-देन से जुड़े ऑर्डर की पहचान की जाती है.productType
: इससे पता चलता है कि रद्द की गई खरीदारी, इन-ऐप्लिकेशन खरीदारी थी या सदस्यता.refundType
: इससे आपको उस रिफ़ंड के बारे में पता चलता है जिसकी वजह से खरीदारी रद्द हुई.
अगर एनटाइटलमेंट में बदलाव करने के लिए, आपको सिर्फ़ सही खरीदारी और ऑर्डर ढूंढना है, तो आपके पास इस समय ज़रूरी सारी जानकारी है. रद्द की गई खरीदारी के बारे में ज़्यादा जानकारी पाने का तरीका जानने के लिए, Google Play पर रद्द की गई खरीदारी का एपीआई देखें. यह एक पुल मॉडल है, जो किसी तय टाइमस्टैंप के बीच रद्द की गई खरीदारी के बारे में ज़्यादा जानकारी देता है.
एक से ज़्यादा प्रॉडक्ट की खरीदारी में से कुछ प्रॉडक्ट रद्द किए जाने पर, purchases.products
से मिले refundableQuantity
फ़ील्ड में, खरीदे गए उन प्रॉडक्ट की संख्या दिखती है जिन्हें रद्द नहीं किया गया है.
TestNotification
TestNotification
में ये फ़ील्ड शामिल होते हैं:
{
"version": string
}
प्रॉपर्टी का नाम | वैल्यू | ब्यौरा |
वर्शन | स्ट्रिंग | इस सूचना का वर्शन. शुरुआत में, यह "1.0" होता है. यह वर्शन, अन्य वर्शन फ़ील्ड से अलग होता है. |
उदाहरण
जांच के लिए भेजी गई सूचना का उदाहरण यहां दिया गया है:
{
"version":"1.0",
"packageName":"com.some.thing",
"eventTimeMillis":"1503350156918",
"testNotification":
{
"version":"1.0"
}
}