Google Wallet Passes एपीआई की मदद से, पार्टनर Google Wallet में रोटेटिंग बारकोड सेव कर सकते हैं. ये बारकोड कुछ समय के लिए ही मान्य होते हैं. इनसे बारकोड का स्क्रीनशॉट लेने की संभावना कम हो जाती है. डिवाइस पर बारकोड, आरएफ़सी 6238 के मुताबिक जनरेट होते हैं और पार्टनर ने सीक्रेट कुंजी दी होती है. हालांकि, अगर कोई पार्टनर खुद बारकोड जनरेट करता है, तो Google एक एपीआई उपलब्ध कराता है. इससे, Google पर बारकोड को एक साथ अपलोड किया जा सकता है. इसके बाद, ये बारकोड लोगों के फ़ोन में भेज दिए जाएंगे, जहां वे कुछ समय के लिए, रोटेटिंग बारकोड की तरह काम करेंगे. हम इस समाधान को, पार्टनर के जनरेट किए गए रोटेटिंग बारकोड कहते हैं.
पार्टनर का जनरेट किया गया रोटेटिंग बारकोड एपीआई
पार्टनर के जनरेट किए गए रोटेटिंग बारकोड, एक ही RottingBarcode
ऑब्जेक्ट का इस्तेमाल करके बनाए जाते हैं. सिर्फ़ टाइप ज़रूरी है. हालांकि, हमारा सुझाव है कि आप बारकोड का एक छोटा, स्टार्टर
सेट (~10 मिनट की कीमत वाला) बनाएं और उसे
initialRotatingBarcodeValues
में भेजें. पार्टनर की यह ज़िम्मेदारी है कि उपयोगकर्ता के लिए हमेशा एक मान्य बारकोड तैयार रहे. साथ ही, initialRotatingBarcodeValues
बाद के बैच अपलोड कॉल को एसिंक्रोनस होने देता है.
rotatingBarcode { initialRotatingBarcodeValues: object (RotatingBarcodeValues), type: enum (BarcodeType), }
फ़ील्ड | ब्यौरा |
---|---|
initialRotatingBarcodeValues |
बारकोड में कोड में बदली जाने वाली वैल्यू. कम से कम एक वैल्यू डालना ज़रूरी है. ये शुरुआती बारकोड, उपयोगकर्ता को पहली बार पास मिलने और दूसरा बैच अपलोड कॉल करने के बीच के अंतर को कम करने के लिए बनाए जाते हैं. |
type |
ज़रूरी है. इस बारकोड का टाइप. स्वीकार की जाने वाली वैल्यू ये हैं:
|
फ़ील्ड | ब्यौरा |
---|---|
startDateTime |
वह तारीख/समय जहां से पहला बारकोड मान्य है. बारकोड को यह ऑफ़सेट के साथ, ISO 8601 वाले बढ़ाए गए फ़ॉर्मैट की तारीख/समय है. |
values[] |
बारकोड में कोड में बदली जाने वाली वैल्यू. कम से कम एक वैल्यू डालना ज़रूरी है. वैल्यू की कोई तय सीमा नहीं होती है. हालांकि, ध्यान रखें कि अनुरोध के मुख्य हिस्से का साइज़ 5 एमबी से ज़्यादा नहीं हो सकता. |
periodMillis |
हर बारकोड के मान्य रहने की अवधि. |
बारकोड की वैल्यू अपडेट करने वाले बैच
रोटेशनबारकोड ऑब्जेक्ट बनाने के बाद, हमारा सुझाव है कि उपयोगकर्ता के पास की समयसीमा खत्म होने तक, हर दिन एक दिन का बारकोड अपलोड करें. ऐसा करने के लिए, यहां दिए गए REST API एंडपॉइंट का इस्तेमाल करें.
तरीका: transitobject.uploadroatebarcodevalues
दिए गए ऑब्जेक्ट आईडी से रेफ़र किए गए ट्रांज़िट ऑब्जेक्ट पर, बारकोड की वैल्यू अपलोड करता है.
एचटीटीपी अनुरोध
POST
https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc
eId}/uploadRotatingBarcodeValues
पाथ के पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
resourceId |
किसी ऑब्जेक्ट के लिए यूनीक आइडेंटिफ़ायर. |
अनुरोध का मुख्य भाग
अनुरोध के मुख्य हिस्से (जिसका साइज़ पांच एमबी से ज़्यादा नहीं हो सकता) में RotatingBarcodeValues का एक इंस्टेंस मौजूद होता है.
तरीका: ट्रांज़िटobject.downloadroatebarcodevalues
दिए गए ऑब्जेक्ट आईडी से रेफ़र किए गए ट्रांज़िट ऑब्जेक्ट के लिए, बारकोड की वैल्यू डाउनलोड करता है. यह तरीका तब काम आता है, जब पार्टनर सबसे नए बैच की पुष्टि करना चाहते हों.
एचटीटीपी अनुरोध
GET
https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do
wnloadRotatingBarcodeValues?alt=media
पाथ के पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
resourceId |
किसी ऑब्जेक्ट के लिए यूनीक आइडेंटिफ़ायर. |