Recall API

Recall API, गेम को साइन-इन करने के उनके मौजूदा तरीकों (उदाहरण के लिए, Google साइन-इन) के साथ, Play की गेम सेवाओं (PGS) का इस्तेमाल करने देता है. साथ ही, खिलाड़ियों की साइन-इन जानकारी को उनके सभी डिवाइसों पर आसानी से सिंक करता है. इससे, गेम छोड़ने वालों की संख्या कम करने और D1 को उपयोगकर्ता के बने रहने की दर बढ़ाने में मदद मिलती है. एपीआई, उपयोगकर्ता के Play की गेम सेवाओं (PGS) खाते और उसके इन-गेम खातों के बीच लिंक मैनेज करता है. इसके लिए, वह Google सर्वर के साथ रीकॉल टोकन सेव करता है. यहां एक उदाहरण दिया गया है, जिसमें बताया गया है कि Recall API को कैसे इस्तेमाल किया जा सकता है:

  1. कोई उपयोगकर्ता ऐसा गेम खेल रहा है जिसमें डेवलपर के पास एक आइडेंटिटी सिस्टम है, जो उपयोगकर्ता की प्रोग्रेस को ट्रैक करता है. साथ ही, उपयोगकर्ताओं को अपने गेम में लॉग करने के लिए, पुष्टि करने के दूसरे तरीकों के साथ-साथ PGS का इस्तेमाल करता है. इस उदाहरण में, उपयोगकर्ता को अपने PGS खाते Laura में लॉग इन किया जाता है और वह डेवलपर के Racer94 नाम के आइडेंटिटी सिस्टम से, गेम में खाता बनाती है. जैसे-जैसे उपयोगकर्ता गेम खेलते हैं, डेवलपर का गेम सर्वर उनकी प्रोग्रेस को सिंक करता रहता है.

    उपयोगकर्ता ने पीजीएस और गेम में मौजूद खाते से लॉग इन किया है

  2. इसके अलावा, डेवलपर Google पर रीकॉल टोकन सेव करता है. इसे उपयोगकर्ता के इन-गेम खाते के मुताबिक बनाया जाता है. Google, रीकॉल टोकन को उपयोगकर्ता की पीजीएस प्रोफ़ाइल में अपने-आप सेव करता है.

    गेम सर्वर, रीकॉल टोकन को Google सर्वर के साथ स्टोर करता है

  3. उपयोगकर्ता अब पहली बार Google Play Games on PC पर गेम खेलने का फ़ैसला करता है. उपयोगकर्ता अपने PGS खाते से अपने-आप साइन इन हो जाता है. साथ ही, गेम क्लाइंट यह देखता है कि इस PGS उपयोगकर्ता के लिए कोई प्रोग्रेस उपलब्ध है या नहीं. इसके बाद, गेम सर्वर Google से क्वेरी करके यह पता लगाता है कि इस PGS खाते का कोई टोकन है या नहीं. ऐसा इसलिए होता है, क्योंकि Google Recall टोकन वापस भेजता है. इस टोकन का इस्तेमाल, गेम सर्वर उपयोगकर्ता के खाते से जुड़े Racer94 को ढूंढने और उसकी प्रोग्रेस को पहले जैसा करने के लिए करता है. PGS से साइन इन करना एक मुश्किल अनुभव है, इसलिए ऐप्लिकेशन से उपयोगकर्ता की प्रोग्रेस को वापस लाया जा सकता है. इसके लिए, उपयोगकर्ता को उपयोगकर्ता नाम या पासवर्ड डालने की ज़रूरत नहीं होती. इसके अलावा, डेवलपर अपने मौजूदा आइडेंटिटी सिस्टम से PGS साइन-इन का इस्तेमाल कर सकता है. साथ ही, खिलाड़ी की प्रोग्रेस और अपने PGS खाते के लिंक को स्टोर करने के लिए Google पर भरोसा कर सकता है.

    गेम सर्वर, रीकॉल टोकन की मदद से प्रोग्रेस को पहले जैसा करता है

जैसा कि ऊपर दिए गए उदाहरण में दिखाया गया है, Recall API दो मुख्य कार्रवाइयां करते हैं:

  • जब कोई उपयोगकर्ता, गेम में मौजूद किसी खाते से लॉग इन करता है, तो Google को टोकन स्टोर करना.
  • किसी उपयोगकर्ता के लिए टोकन वापस पाना, ताकि उसके इन-गेम खातों को वापस पाया जा सके.

रीकॉल टोकन के अलावा, Recall API को एक स्थिर आइडेंटिफ़ायर की ज़रूरत होती है, जो गेम में मौजूद खाते से मेल खाता हो. इसे persona कहा जाता है, ताकि एलिमेंट की सीमाओं को लागू किया जा सके. पर्सोना को एक ऐसा लेबल माना जा सकता है जो डेवलपर के आइडेंटिटी सिस्टम में, उपयोगकर्ता के इन-गेम खाते को दिखाता है. साथ ही, रीकॉल टोकन को एक कुंजी के तौर पर भी दिखाया जाता है. इसका इस्तेमाल, उपयोगकर्ता के इन-गेम खाते को गेम में वापस लाने के लिए किया जाता है. पर्सोना और टोकन की वैल्यू का इस्तेमाल, अलग-अलग पीजीएस प्रोजेक्ट में नहीं किया जा सकता. हालांकि, समय के साथ Recall टोकन बदले जा सकते हैं, लेकिन उपयोगकर्ता के इन-गेम खाते के मुताबिक पर्सोना स्थिर होना चाहिए.

एलिमेंट की संख्या के नियम

Recall API, पीजीएस प्रोफ़ाइल और इन-गेम खातों के बीच 1:1 का संबंध लागू करता है (इसे एलिमेंटलिटी के नियम कहा जाता है), जहां एक पर्सोना को सिर्फ़ एक पीजीएस प्रोफ़ाइल से और एक पीजीएस प्रोफ़ाइल को सिर्फ़ एक पर्सोना से लिंक किया जा सकता है. पर्सोना का इस्तेमाल इन-गेम खाते के लिए, स्थायी आइडेंटिफ़ायर के तौर पर किया जाता है. ऐसा इसलिए, क्योंकि समय के साथ Recall टोकन बदल सकते हैं.

पीजीएस प्रोफ़ाइल से जुड़े पर्सोना में समय के साथ बदलाव भी हो सकता है, क्योंकि गेम में मौजूद अलग-अलग खाते, PGS प्रोफ़ाइल से जुड़े होते हैं.

रीकॉल टोकन को सेव करने और वापस पाने के बारे में ज़्यादा जानकारी वाला टेक्निकल फ़्लो

इस सेक्शन में, रीकॉल टोकन को सेव करने और वापस पाने के दौरान, गेम क्लाइंट, गेम सर्वर, और Google के सर्वर के बीच तकनीकी फ़्लो के बारे में बताया गया है:

पहला चरण: PGS उपयोगकर्ता में साइन इन करना और सेशन आईडी पाना

गेम, PGS SDK टूल शुरू करता है और उपयोगकर्ता को PGS में साइन इन करने की कोशिश करता है.

उपयोगकर्ता, पीजीएस से साइन इन करता है

यह मानते हुए कि उपयोगकर्ता ने साइन इन किया है, गेम क्लाइंट पर गेम SDK से सेशन आईडी का अनुरोध करें और Google के OAuth बैकएंड से, OAuth 2.0 टोकन के लिए अनुरोध करें. सेशन आईडी और OAuth 2.0 टोकन का इस्तेमाल, Google गेम बैकएंड से संपर्क करने के लिए किया जाता है.

डेवलपर, सेशन आईडी का अनुरोध करता है

दूसरा चरण: किसी भी उपलब्ध रीकॉल टोकन को वापस पाना

PGS उपयोगकर्ता के खाते से जुड़े किसी भी रीकॉल टोकन का अनुरोध करें. अगर कोई टोकन मौजूद है, तो तीसरे चरण पर जाएं और प्रोग्रेस को पहले जैसा करें. अगर यह एक नया उपयोगकर्ता है और उसके पास कोई टोकन मौजूद नहीं है, तो तीसरे चरण पर जाएं और नया टोकन सेव करें.

डेवलपर को रीकॉल टोकन
वापस मिल जाता है,

तीसरे चरण का पहला हिस्सा: अगर टोकन मौजूद है, तो प्रोग्रेस को पहले जैसा करें

अगर कोई टोकन मौजूद है, तो टोकन को वापस पाएं और डिक्रिप्ट करें. साथ ही, उपयोगकर्ता का डेटा वापस लाएं.

डेवलपर, रीकॉल टोकन से डेटा को
वापस लाता है

तीसरे चरण का दूसरा हिस्सा: अगर कोई टोकन मौजूद नहीं है, तो टोकन सेव करें

कोई टोकन मौजूद नहीं है. इसलिए, किसी प्रोग्रेस को वापस नहीं लाया जाता. उपयोगकर्ता, डेवलपर के आइडेंटिटी सिस्टम से साइन इन करता है या कोई खाता मौजूद न होने पर, नया खाता बना देता है.

उपयोगकर्ता अपने इन-गेम
खाते से साइन इन करता है

एन्क्रिप्ट (सुरक्षित) किया गया रीकॉल टोकन बनाएं. यह टोकन, उपयोगकर्ता के इन-गेम खाते को कोड में बदलता है. साथ ही, उसे सेशन आईडी और OAuth 2.0 टोकन के साथ Google को भेजता है. इस स्थिति में, Google भेजे गए Recall टोकन और खिलाड़ी के PGS खाते के बीच एक असोसिएशन बनाता है.

डेवलपर स्टोर वाला रीकॉल टोकन

अगले चरण

अपने क्लाइंट और गेम सर्वर के साथ Recall API को इंटिग्रेट करने के लिए, लागू करने की इस गाइड को देखें.