Google मोबाइल डेटा प्लान शेयर करने वाला एपीआई

वजह

Google मोबाइल डेटा प्लान शेयर करने वाले एपीआई का इस्तेमाल करके, ऑपरेटर उपयोगकर्ता और उपयोगकर्ता की पहचान से जुड़े डेटा को GTAF के साथ शेयर कर सकता है. इसकी पहचान उपयोगकर्ता कुंजी से की जाती है. इस पेज पर, हम उस तरीके के बारे में बताते हैं जिससे इन अपडेट को GTAF में और Google के ऐप्लिकेशन में पुश किया जा सकता है. एपीआई फ़िलहाल डीपीए को Google पर डेटा प्लान की स्थिति भेजने की अनुमति देता है, ताकि Google क्लाइंट इसका इस्तेमाल कर सके.

पुष्टि करना

GTAF के सभी डेटा प्लान शेयर करने वाले एपीआई अनुरोधों की पुष्टि, Google Cloud OAuth2 सर्वर में करके की जानी चाहिए. अनुरोधों को एक ऐसे सेवा खाते के तौर पर प्रमाणित किया जाना चाहिए जिसे डीपीए के प्रतिनिधित्व वाले ASN के ISP पोर्टल में अनुमति दी गई हो. Google Cloud सेवा खातों के साथ OAuth इस्तेमाल करने का तरीका जानने के लिए, सेवा के खातों के लिए Google Cloud OAuth 2.0 देखें.

डेटा प्लान से जुड़े अपडेट

फ़िलहाल, Google मोबाइल डेटा प्लान शेयर करने वाले एपीआई का इस्तेमाल करके, उपयोगकर्ता उपयोगकर्ता के डेटा प्लान से जुड़े अपडेट शेयर कर सकता है:

  • डेटा प्लान की स्थिति: यह उपयोगकर्ता के डेटा प्लान की मौजूदा स्थिति को कैप्चर करती है. उदाहरण के लिए, अगर किसी उपयोगकर्ता का डेटा खत्म हो जाता है, तो ऑपरेटर डेटा प्लान की स्थिति में बदलाव को GTAF पर भेज सकता है. इसका इस्तेमाल GTAF, उपयोगकर्ता को प्लान की स्थिति सूचना भेजने के लिए कर सकता है.

एपीआई की जानकारी

तीसरी इमेज. GTAF-DPA इंटरैक्शन, जब DPA, GTAF के साथ डेटा प्लान की स्थिति शेयर करता है.

ऐप्लिकेशन को GTAF के साथ शेयर किए गए डेटा प्लान की स्थिति की जानकारी, इन दो में से किसी एक तरीके से मिल सकती है:

  1. ईयू (यूरोपीय संघ) डेटा प्लान की स्थिति की जानकारी के लिए GTAF को कॉल करता है:
    1. ऑपरेटर's DPA डेटा प्लान शेयर करने वाले एपीआई का इस्तेमाल करके उपयोगकर्ता के डेटा प्लान की स्थिति को GTAF पर भेजता है. GTAF, प्लान की स्थिति और इससे जुड़ी उपयोगकर्ता कुंजी को ऑपरेटर के खत्म होने के समय तक सेव करके रखता है.
    2. UE पर चलने वाले Google ऐप्लिकेशन में, Google के पास मौजूद एपीआई का इस्तेमाल करके, डेटा प्लान की स्थिति की जानकारी का अनुरोध किया जाता है. ऐप्लिकेशन में अपने अनुरोध में उपयोगकर्ता कुंजी शामिल है.
    3. अगर ऐप्लिकेशन, कैश मेमोरी में सेव किए गए डेटा प्लान की स्थिति का इस्तेमाल कर सकता है, तो GTAF, उपयोगकर्ता के डेटा प्लान का स्टेटस देखने के लिए, उपयोगकर्ता कुंजी का इस्तेमाल करता है. फिर GTAF, ऐप्लिकेशन को यह स्थिति दिखाता है.
  2. GTAF, यूईए में डेटा प्लान की स्थिति की जानकारी भेजता है:
    1. जब लागू होता है, तो ऑपरेटर से मिलने वाले डेटा प्लान की स्थिति सीधे यूईए में भेज दी जाती है. खास तौर पर, पुश प्लान की स्थिति का इस्तेमाल, 'Google Play सेवाएं' में मोबाइल डेटा प्लान मॉड्यूल के डिवाइस की कैश मेमोरी को अपडेट करने के लिए किया जाता है.

डेटा प्लान का स्टेटस शेयर करना

डीपीए एक मौजूदा प्लान की स्थिति एंट्री बनाने और अपडेट करने के लिए, एचटीटीपीएस पोस्ट का इस्तेमाल करता है. इससे उपयोगकर्ता का क्लाइंट पर इस्तेमाल किया जा सकता है. फ़िलहाल, GTAF के पास मान्य मोबाइल आइडेंटिफ़ायर के तौर पर, mobiledataplan और youtube के साथ काम करने का विकल्प है. यहां YouTube क्लाइंट के लिए, GTAF के साथ 12345 और उपयोगकर्ता कुंजी वाले abcdef को शेयर करने वाले प्लान की जानकारी देने वाले ऑपरेटर के लिए एक उदाहरण दिया गया है:

POST https://mobiledataplansharing.googleapis.com/v1/operators/12345/clients/youtube/users/abcdef/planStatus

अनुरोध का मुख्य हिस्सा, PlanStatus का एक उदाहरण है.

{
  "plans": [{
    "planName": "ACME1",
    "planId": "1",
    "planCategory": "PREPAID",
    "expirationTime": "2017-01-29T01:00:03.14159Z", // req.
    "planModules": [{
      "moduleName": "Giga Plan", // req.
      "trafficCategories": ["GENERIC"],
      "expirationTime": "2017-01-29T01:00:03.14159Z", // req.
      "overUsagePolicy": "BLOCKED",
      "maxRateKbps": "1500",
      "description": "1GB for a month", // req.
      "coarseBalanceLevel": "HIGH_QUOTA"
    }]
  }],
  "planInfoPerClient": {
    "youtube": {
      "rateLimitedStreaming": {
        "maxMediaRateKbps": 569
      }
    }
  },
  "languageCode": "en-US", // req.
  "expireTime": "2018-06-14T08:41:27-07:00", // req.
  "updateTime": "2018-06-07T07:41:22-07:00", // req.
  "title": "Prepaid Plan"
}

अगर अनुरोध सफल रहा, तो GTAF, एचटीटीपी जवाब कोड 200 दिखाएगा. साथ ही, उपयोगकर्ता को कोई सूचना भेजे जाने पर, सूचना की एंट्री के साथ पुश किया गया planStatus. अगर GTAF, अनुरोध से जुड़ी समस्या की पहचान करता है, तो वह 400-499 रेंज में एचटीटीपी स्टेटस कोड दिखाएगा. अगर GTAF, GTAF की गड़बड़ी की वजह से अनुरोध पूरा नहीं कर पाता, तो GTAF, 500-599 रेंज में एचटीटीपी कोड दिखाएगा. आम तौर पर 500-599 रेंज में जवाब पाने वाले अनुरोधों को फिर से कोशिश करने वाला माना जाता है और 400-499 रेंज में जवाब पाने वाले अनुरोधों को आम तौर पर फिर से स्वीकार नहीं किया जाता है. गड़बड़ी के मामले में, GTAF के गड़बड़ी के जवाबों के बारे में ज़्यादा जानकारी दी जाती है.

डिफ़ॉल्ट क्लाइंट के लिए प्लान की स्थिति पुश

GTAF, इस कॉल के लिए काम करता है. इसमें, सेवा देने वाली कंपनी को प्लान की स्थिति के बारे में पता चलता है. इसके लिए उस क्लाइंट की जानकारी नहीं दी जाती जिसके लिए इसका इस्तेमाल किया जा सकता है. इस मामले में, हमें लगता है कि प्लान की स्थिति mobiledataplan क्लाइंट के लिए है और ऑपरेटर उपयोगकर्ता को सूचना भेजता है. अनुरोध का मुख्य हिस्सा, PlanStatus का एक उदाहरण है

POST https://mobiledataplansharing.googleapis.com/v1/operators/12345/planStatuses?userKey=abcdef

अंतर्राष्ट्रीयकरण

अंतरराष्ट्रीय स्तर पर काम करने के लिए, डीपीए को उपयोगकर्ता की पसंदीदा भाषा पता होनी चाहिए. भले ही, उसने GTAF से सीधे तौर पर अनुरोध न किया हो. इस समस्या को हल करने के लिए, CPID एंडपॉइंट के अनुरोध में हो सकता है कि उपयोगकर्ता की भाषा से जुड़ी प्राथमिकताओं के मुताबिक क्लाइंट के ऐक्सेस के आधार पर, स्वीकार करने वाली भाषा का हेडर शामिल हो. अगर हेडर शामिल किया जाता है, तो एमडीपी एपीआई का इस्तेमाल करके भेजे जाने वाले डीपीए को उन अपडेट में मानव पढ़ने लायक स्ट्रिंग के तौर पर शामिल करना ज़रूरी है जो सीपीआईडी अनुरोध में दी गई सेटिंग का इस्तेमाल करते हैं.

जब जीपीएएफ़ से कोई अनुरोध मिलता है, तो डीपीए हो सकता है कि उपयोगकर्ता की भाषा की प्राथमिकताओं को स्वीकार किया जाए. साथ ही, इसे स्वीकार करने के बाद, भाषा के हेडर को स्वीकार करें और अपडेट किए गए उपयोगकर्ता की प्राथमिकताओं का इस्तेमाल करके, GTAF के आने वाले अनुरोधों में भाषा कोड तय करें.

डीपीए को languageCode का इस्तेमाल करके, उपयोगकर्ता को दिखने वाली स्ट्रिंग के लिए इस्तेमाल की जाने वाली भाषा की जानकारी देनी होगी. GTAF, उपयोगकर्ता को दिखाई जाने वाली सूचनाओं का शीर्षक और मुख्य हिस्सा बनाने के लिए इसका इस्तेमाल करता है.