जगह की जानकारी अपने-आप पूरी करने की सुविधा, बिलिंग के मकसद से उपयोगकर्ता की ऑटोकंप्लीट की गई खोज के क्वेरी और चुनने के चरणों को अलग-अलग सेशन में ग्रुप करने के लिए, सेशन टोकन का इस्तेमाल करती है. सेशन तब शुरू होता है, जब उपयोगकर्ता कोई क्वेरी टाइप करना शुरू करता है. यह तब खत्म होता है, जब वह कोई जगह चुनता है और जगह की जानकारी के लिए कॉल करता है. हर सेशन में, ऑटोमैटिक तरीके से पूरी होने वाली कई क्वेरी हो सकती हैं. इसके बाद, एक जगह चुनी जा सकती है. किसी सेशन में हर अनुरोध के लिए इस्तेमाल की गई एपीआई कुंजी, एक ही Google Cloud Console प्रोजेक्ट से जुड़ी होनी चाहिए. सेशन खत्म होने के बाद, टोकन अमान्य हो जाता है. इसलिए, आपके ऐप्लिकेशन को हर सेशन के लिए नया टोकन जनरेट करना होगा. अगर sessiontoken
पैरामीटर को शामिल नहीं किया जाता है या किसी सेशन टोकन का फिर से इस्तेमाल किया जाता है, तो सेशन के लिए उसी तरह शुल्क लिया जाता है जैसे कोई सेशन टोकन न दिया गया हो. हर अनुरोध के लिए अलग से शुल्क लिया जाता है.
हमारा सुझाव है कि आप इन दिशा-निर्देशों का पालन करें:
- ऑटोमैटिक भरने की सुविधा वाले सभी सेशन के लिए, सेशन टोकन का इस्तेमाल करें.
- हर सेशन के लिए नया टोकन जनरेट करें.
- पक्का करें कि किसी सेशन में जगह की जानकारी के लिए ऑटोकंप्लीट और जगह की जानकारी के सभी अनुरोधों के लिए इस्तेमाल की गई एपीआई कुंजी, एक ही Google Cloud कंसोल प्रोजेक्ट से जुड़ी हो.
- हर नए सेशन के लिए, एक यूनीक सेशन टोकन पास करना न भूलें. एक से ज़्यादा सेशन के लिए एक ही टोकन का इस्तेमाल करने पर, हर अनुरोध के लिए अलग से बिलिंग की जाएगी.
आपके पास अनुरोध से, अपने-आप पूरा होने वाले सेशन का टोकन हटाने का विकल्प होता है. अगर सेशन टोकन को शामिल नहीं किया जाता है, तो हर अनुरोध के लिए अलग से शुल्क लिया जाता है. इससे अपने-आप पूरा होने की सुविधा - हर अनुरोध के लिए SKU ट्रिगर होता है. अगर किसी सेशन टोकन का फिर से इस्तेमाल किया जाता है, तो सेशन को अमान्य माना जाता है. साथ ही, अनुरोधों के लिए शुल्क उसी तरह लिया जाता है जैसे कोई सेशन टोकन न दिया गया हो.
उदाहरण
जब उपयोगकर्ता कोई क्वेरी टाइप करता है, तो हर कुछ समय के बाद (हर वर्ण के बाद नहीं) ऑटोकंप्लीट का अनुरोध किया जाता है. साथ ही, संभावित नतीजों की सूची दिखाई जाती है. जब उपयोगकर्ता नतीजों की सूची से कोई विकल्प चुनता है, तो उसे एक अनुरोध माना जाता है. साथ ही, खोज के दौरान किए गए सभी अनुरोधों को एक साथ जोड़कर, उन्हें एक अनुरोध के तौर पर गिना जाता है. अगर उपयोगकर्ता कोई जगह चुनता है, तो खोज क्वेरी के लिए कोई शुल्क नहीं लिया जाता. सिर्फ़ जगह के डेटा के अनुरोध के लिए शुल्क लिया जाता है. अगर उपयोगकर्ता सेशन शुरू होने के कुछ मिनटों के अंदर कोई विकल्प नहीं चुनता है, तो सिर्फ़ खोज क्वेरी के लिए शुल्क लिया जाता है.
आइए, किसी ऐप्लिकेशन के नज़रिए से इवेंट के इस फ़्लो की जांच करें.
- कोई उपयोगकर्ता "पेरिस, फ़्रांस" खोजने के लिए क्वेरी टाइप करना शुरू करता है.
- उपयोगकर्ता के इनपुट का पता चलने पर, ऐप्लिकेशन एक नया सेशन टोकन, "टोकन A" बनाता है.
- उपयोगकर्ता कुछ लिखते ही, एपीआई कुछ अक्षरों के बाद अपने-आप भरने की सुविधा का अनुरोध करता है. साथ ही, हर अक्षर के लिए संभावित नतीजों की एक नई सूची दिखाता है:
"P"
"Par"
"Paris,"
"Paris, Fr"
- जब उपयोगकर्ता कोई विकल्प चुनता है, तो:
- क्वेरी से मिले सभी अनुरोधों को एक ग्रुप में रखा जाता है और "टोकन A" से दिखाए गए सेशन में, एक अनुरोध के तौर पर जोड़ा जाता है.
- उपयोगकर्ता के चुने गए विकल्प को जगह की जानकारी के अनुरोध के तौर पर गिना जाता है और "टोकन A" से दिखाए गए सेशन में जोड़ा जाता है.
- सेशन खत्म हो जाता है और ऐप्लिकेशन, "टोकन A" को खारिज कर देता है.
ऑटोकंप्लीट के अनुरोधों के लिए बिलिंग के तरीके के बारे में ज़्यादा जानने के लिए, इस्तेमाल और बिलिंग देखें.
सेशन टोकन बनाना
आपके पास प्रोग्राम के हिसाब से, अपनी पसंद के हिसाब से सेशन टोकन बनाने का विकल्प है. हमारा सुझाव है कि आप सेशन टोकन के लिए, वर्शन 4 UUID का इस्तेमाल करें.