मोबाइल डेटा प्लान शेयर करने की सुविधा का इस्तेमाल शुरू करना

शब्दावली

  • GTAF: Google ट्रैफ़िक ऐप्लिकेशन फ़ंक्शन. यह Google की एक सेवा है, जो डेटा प्लान शेयर करने वाले एपीआई को लागू करती है और Google के ऐप्लिकेशन की ओर से डीपीए के साथ इंटरैक्ट करती है. Google के ऐप्लिकेशन, उपयोगकर्ता के डेटा प्लान की जानकारी के लिए, GTAF से क्वेरी कर सकते हैं. इसके अलावा, अगर Google ऐप्लिकेशन GTAF के साथ रजिस्टर होते हैं, तो GTAF, उपयोगकर्ता के डेटा प्लान से जुड़े अपडेट भेज सकता है.
  • MSISDN: मोबाइल स्टेशन अंतरराष्ट्रीय सदस्य निर्देशिका नंबर, यह एक मोबाइल नेटवर्क की सदस्यता की खास पहचान करने वाला नंबर है. आम तौर पर फ़ोन नंबर के तौर पर जाना जाता है.
  • सीपीआईडी एंडपॉइंट: मोबाइल नेटवर्क ऑपरेटर की मदद से लागू की जाने वाली सेवा, जो कैरियर प्लान आइडेंटिफ़ायर (सीपीआईडी) जनरेट करती है. इसका इस्तेमाल उपयोगकर्ता के डेटा प्लान की जानकारी देखने के लिए किया जा सकता है. CPID, उपयोगकर्ता और उसके MSISDN को ऐक्सेस किए बिना उपयोगकर्ता के डेटा प्लान के बारे में क्वेरी करने की अनुमति देता है. हम नीचे सीपीपी जनरेट करने की प्रक्रिया के बारे में बताते हैं.
  • उपयोगकर्ता कुंजी: उपयोगकर्ता कुंजी एक स्ट्रिंग होती है. इसका इस्तेमाल, उपयोगकर्ता के डेटा प्लान की पहचान करने के लिए किया जाता है. यह उन ऐप्लिकेशन के लिए CPID या MSISDN हो सकता है जिनके पास MSISDN का ऐक्सेस है.
  • डीपीए: मोबाइल नेटवर्क ऑपरेटर की ओर से लागू किया गया डेटा प्लान एजेंट, जो GTAF के साथ उपयोगकर्ता के डेटा प्लान की जानकारी शेयर करता है. डीपीए, Google मोबाइल डेटा प्लान शेयर करने वाले एपीआई का इस्तेमाल करके डेटा भेजकर और डेटा प्लान एजेंट एपीआई को लागू करके, GTAF के साथ जानकारी शेयर कर सकता है. डीपीए, सीपीआईडी एंडपॉइंट के तौर पर भी काम कर सकता है.
  • UE: उपयोगकर्ता के डिवाइस, उपयोगकर्ता के डिवाइस.

ज़रूरी भाषा

,

मोबाइल डेटा प्लान शेयर करना

बड़े लेवल पर, मोबाइल डेटा प्लान शेयर करने के तीन हिस्से हैं:

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

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

डेटा प्लान से जुड़े शब्द

एपीआई में बताए गए planstatus के स्कीमा से, उन प्लान को दिखाया जा सकता है जो उपयोगकर्ताओं को ऑपरेटर ने दिए हैं. एपीआई ऐसे डेटा प्लान के बारे में बताता है जो उपयोगकर्ताओं से यूआरएल के किसी खास सेट पर मौजूद सभी ट्रैफ़िक के लिए अलग-अलग दर के हिसाब से शुल्क लेते हैं. उदाहरण के लिए, *.acmefake.com के सभी ट्रैफ़िक के लिए अलग-अलग दर पर शुल्क लिया जाता है. एपीआई, डेटा प्लान का भी इस्तेमाल करता है, जो ऐप्लिकेशन में कुछ खास तरह की कार्रवाइयों के लिए अलग-अलग दरें ऑफ़र करते हैं. हम इन्हें सब-ऐप्लिकेशन डेटा प्लान कहते हैं. सब-ऐप्लिकेशन डेटा प्लान का एक उदाहरण है, ऐप्लिकेशन में वीडियो देखते समय मुफ़्त (यानी, शून्य दर) वाला वीडियो ब्राउज़ करना. हालांकि, यह डेटा सदस्य के डेटा के बैलेंस से काट लेता है. इसके बाद, वीडियो ऐप्लिकेशन को डेटा प्लान की जानकारी के बारे में क्वेरी करते समय इस जानकारी के बारे में पता होना चाहिए.

यहां, हमने डेटा प्लान से जुड़े कुछ शब्द पेश किए हैं. पहला डायग्राम, डेटा प्लान के ऐसे उदाहरण देता है जो उन सिद्धांतों के बारे में बताते हैं जिन्हें हम कैप्चर करना चाहते हैं.

डेटा प्लान: यह टॉप-लेवल का मोबाइल सेवा पैकेज है, जिसे सदस्य खरीदता है. यह 30 दिनों तक कोट के तौर पर इस्तेमाल होने वाले मोबाइल डेटा जैसा ही आसान हो सकता है. इसके अलावा, इसे कॉम्पोनेंट के कलेक्शन के तौर पर भी परिभाषित किया जा सकता है. इसे मॉड्यूल भी कहा जाता है. डेटा प्लान में ये चीज़ें होती हैं:

  • डेटा प्लान का नाम, जैसे कि "ACME Red".
  • डेटा प्लान आइडेंटिफ़ायर, जिसका इस्तेमाल प्लान के बारे में बताने के लिए किया जाता है, जैसे कि खरीदारी के दौरान.
  • डेटा प्लान खत्म होने की समयसीमा खत्म होने के बाद.
  • प्लान की कैटगरी, चाहे वह प्रीपेड प्लान हो या पैसे चुकाकर खरीदा गया प्लान हो.

प्लान मॉड्यूल: यह डेटा प्लान का एक कॉम्पोनेंट होता है. खास तौर पर, प्लान मॉड्यूल में ये चीज़ें शामिल होती हैं:

  • मॉड्यूल का नाम, जैसे कि "मुफ़्त वीडियो नाइट".
  • मैक्स रेट, इस मॉड्यूल से उपयोगकर्ता को ऑफ़र किया जाने वाला बैंडविड्थ.
  • फ़्लेक्स टाइम विंडो, वह समय अवधि जिसके दौरान उपयोगकर्ता को छूट दी जा सकती है.
  • प्लान मॉड्यूल ट्रैफ़िक कैटगरी (पीएमटीसी), उस डेटा ट्रैफ़िक की जानकारी जो मॉड्यूल पर लागू होती है. पीएमटीसी उतनी ही सामान्य हो सकती है जितनी *सभी इंटरनेट ट्रैफ़िक * बाद वाले प्रकार के उदाहरणों में "अनलिमिटेड म्यूज़िक", "100 एमबी वीडियो डेटा पैक (VDP)" "अनलिमिटेड गेमिंग डेटा" "अनलिमिटेड वीडियो ब्राउज़िंग". पीएमटीसी की परिभाषा की सुविधा देने के लिए, हमने ये पीएमटीसी तय किए हैं:GENERIC, VIDEO, VIDEO_BROWSING, VIDEO_OFFLINE1, MUSIC, GAMING, SOCIAL, MESSAGING और PMTC_UNSPECIFIED.

  • डेटा वॉल्यूम या समयसीमा, चालू होने के बाद, प्लान मॉड्यूल खत्म हो जाता है. ऐसा तब होता है, जब डेटा की वॉल्यूम या समयसीमा (समय के हिसाब से प्लान के मामले में, जैसे कि अगले 7 दिनों में 600 मिनट की इंटरनेट ऐक्सेस) सीमा पार हो गई है. नीचे दी गई इमेज 1 में, सदस्य कोई प्लान मॉड्यूल खरीद सकते हैं. यह "ACME Blue" के हिस्से के तौर पर मिलता है. इसमें, एक जीबी सामान्य उपयोगकर्ता ट्रैफ़िक मिलता है, जिसे इस्तेमाल करने की समयसीमा खत्म होने से एक हफ़्ते पहले इस्तेमाल किया जाना चाहिए.

डेटा प्लान एपीआई सैंपल प्लान

पहला डायग्राम. सैंपल डेटा प्लान.

सीपीडी लगाना

डीपीए से इंटरैक्ट करते समय, सदस्य की पहचान करने के लिए, GTAF उपयोगकर्ता कुंजी का इस्तेमाल करता है. जिन ऐप्लिकेशन के पास उपयोगकर्ता के ऐक्सेस तक है, उनका MSISDN इसे user_key के तौर पर इस्तेमाल कर सकता है. वहीं दूसरी ओर, ऐसे ऐप्लिकेशन जिनके पास MSISDN का ऐक्सेस नहीं है, उन्हें उपयोगकर्ता के MSISDN का पता लगाए बिना कैरियर प्लान आइडेंटिफ़ायर (सीपीआईडी) बनाना होगा. इसके बाद, हम उस तरीके के बारे में बताते हैं जो सीपीआईडी बनाता है.

CPID कॉल प्रवाह

चित्र 2: सीपीआईडी बनाने के लिए कॉल फ़्लो.

  1. यूरोपीय संघ में Google ऐप्लिकेशन, GTAF से CPID एंडपॉइंट के यूआरएल को पाने के लिए Google-अंदरूनी एपीआई का इस्तेमाल करता है. ऑपरेटर की पहचान क्लाइंट के आईपी पते और सक्रिय सिम कार्ड के MCC+MNC के ज़रिए की जाती है. MVNO के मामले में, Google MVNO तय करने के लिए, SPN और GID1 का इस्तेमाल करेगा
  2. क्लाइंट, सीपीआईडी एंडपॉइंट के लिए एचटीटीपी जीईटी अनुरोध जारी करता है. ऑपरेटर को शायद एचटीटीपीएस से अनुरोध भेजने में मदद मिले.
  3. अनुरोध को पहचानने और उपयोगकर्ता के फ़ोन नंबर को एचटीटीपी हेडर के तौर पर इंजेक्ट करने के लिए, ऑपरेटर MAY अपने डीप पैकेट इंस्पेक्शन फ़ंक्शन का इस्तेमाल कर सकता है.
  4. CPID एंडपॉइंट को अनुरोध मिलता है, CPID बनाता है, और UE को लाइव होने में लगने वाले समय (टीटीएल) के साथ UE को लौटाता है जो यह बताता है कि UE कितनी देर तक इस सीपीआईडी का इस्तेमाल कर सकता है.

अगर पसंदीदा हो, तो ऑपरेटर MAY भी CPID एंडपॉइंट यूआरएल में डोमेन नामों के बजाय आईपी पतों का इस्तेमाल कर सकता है. हो सकता है कि आईपी पते, निजी पते वाले स्पेस में हों, लेकिन Google नेटवर्क, ऑपरेटर के नेटवर्क में पहुंच सके.

शामिल होने की प्रोसेस के तहत, ऑपरेटर को Google को यह जानकारी देनी होगी: 1. वह CPID_URL जिससे ऐप्लिकेशन CPID पाने के लिए संपर्क करेंगे. एक CPID_URL ज़रूरी होता है, लेकिन ऑपरेटर, उपलब्धता को बढ़ाने के लिए कई यूआरएल दे सकता है. 1. उन आईपी प्रीफ़िक्स की सूची जिनका ऑपरेटर और मालिकाना हक, मोबाइल देश कोड (एमसीसी) और मोबाइल नेटवर्क कोड (एमएनसी) है. ये ऑपरेटर, दिए गए CPID_URL पर मैप करना चाहते हैं. अगर ऑपरेटर अपने नेटवर्क में MVNO को अलग करने के लिए, SPN या GID1 का इस्तेमाल करता है, तो ऑपरेटर यह जानकारी भी देगा. जैसा कि चित्र 2 में पहले चरण में दिखाया गया है, Google इस जानकारी का इस्तेमाल क्लाइंट से संबंधित सीपीआईडी एंडपॉइंट का मिलान करने के लिए करेगा.

अनुरोध का फ़ॉर्मैट यह है: GET CPID_URL लेगसी वजहों से, सीपीआईडी एंडपॉइंट को ऐसे अनुरोध के साथ काम करना चाहिए, जैसे कि:

GET CPID_URL?app={app_id}

सीपीआईडी एंडपॉइंट जनरेट करते समय, सीपीआईडी एंडपॉइंट {app_id} यूआरएल पैरामीटर को अनदेखा कर सकता है. हालांकि, यह ज़रूरी है कि पैरामीटर वाला अनुरोध पूरा न हो पाए.

CPID एंडपॉइंट के अनुरोध में Accept-Language हेडर शामिल हो सकता है. अगर हेडर शामिल किया जाता है, तो मोबाइल डेटा प्लान शेयर करने वाले एपीआई का इस्तेमाल करके भेजे जाने वाले डीपीए के ज़रिए भेजे गए मानों को पढ़ने में आसान स्ट्रिंग के तौर पर, सीपीआईडी अनुरोध में दी गई सेटिंग का इस्तेमाल करना होगा.

जब भी क्लाइंट GET CPID_URL का अनुरोध करता है, तो उसे एक नया CPID मिलता है. अगर सीपीआईडी बनाना सफल रहा, तो सीपीआईडी एंडपॉइंट के लिए 200 ठीक रिस्पॉन्स देना ज़रूरी है. रिस्पॉन्स के मुख्य हिस्से में CPIDResponse का इंस्टेंस होना ज़रूरी है.

{
    "cpid": "<CPID_string>",
    "ttlSeconds": 2592000
}

लौटाया गया सीपीआईडी ttlसेकंड सेकंड के लिए मान्य होना चाहिए. GTAF, बाद वाले कॉल में, आरएफ़सी2396 के मुताबिक सीपीआईडी को एन्कोड करेगा.

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

{
    "errorMessage": "<error message>",
    "cause": "INVALID_NUMBER"
}

खास तौर पर, अगर किसी ऐसे उपयोगकर्ता को सीपीआईडी अनुरोध मिलता है जो ऑपरेटर नेटवर्क से नहीं जुड़ा है (उदाहरण के लिए, किसी दूसरे ऑपरेटर से जुड़ा हुआ है, लेकिन इस सीपीआईडी एंडपॉइंट से सेवा देने वाले नेटवर्क पर रोमिंग कर रहा है) या जिसने Google के साथ डेटा प्लान की जानकारी शेयर करने का विकल्प नहीं चुना है, तो सीपीआईडी एंडपॉइंट को एचटीटीपी स्टेटस कोड 403 दिखाना होगा.

CPID जनरेशन

CPID एंडपॉइंट के लिए CPID बनाने का सुझाया गया तरीका:

CPID_string = Base64(AES(MSISDN + TimeStamp + language, secret))

सीपीआईडी एंडपॉइंट, MSISDN को एक साथ जोड़ता है, जो क्लाइंट की तरफ़ से स्वीकार की गई भाषा के हेडर में भेजी जाने वाली भाषा है. साथ ही, यह हाई रिज़ॉल्यूशन टाइमस्टैंप और secretकी मदद से AES के ज़रिए एन्क्रिप्ट (सुरक्षित) करता है. टाइमस्टैंप को उस समय के हिसाब से होना चाहिए जिस समय CPID खत्म होता है. एन्क्रिप्ट (सुरक्षित) किया गया आउटपुट Base64 कोड में बदला गया है. इसके अलावा, जब यूआरएल में सीपीआईडी का इस्तेमाल किया जाता है, तो इसे Base64 में इस्तेमाल किए गए खास वर्णों (/+=) को हैंडल करने के लिए, यूआरएल-एन्कोड किया जाना ज़रूरी है. खास तौर पर, जब GTAF, डीपीए को कॉल करता है या जब डीपीए, मोबाइल डेटा प्लान एपीआई को कॉल करता है, तो सीपीआईडी को यूआरएल कोड में बदलना ज़रूरी होता है. इस तरीके का इस्तेमाल करके सीपीआईडी जनरेट करने का एक फ़ायदा यह है कि डीपीए और सीपीआईडी एंडपॉइंट के लिए मान्य सीपीआईडी और MSISDN का डेटाबेस होना ज़रूरी नहीं है.

किसी खास ऑपरेटर के मामले के हिसाब से, सीपीआईडी एंडपॉइंट लागू करना आम बात नहीं होती. अक्सर मिलने वाली एक खास चुनौती, सीपीआईडी एंडपॉइंट पर MSISDN का ऐक्सेस पाना है. हमें यह जानकर खुशी हो रही है कि आपने ऑनबोर्डिंग ऑपरेटर से क्या सीखा. अगर कोई समस्या आती है, तो हमसे संपर्क करें.

सुरक्षा से जुड़ी ज़रूरी शर्तें

ऑपरेटर को अपने सदस्यों की निजी जानकारी की सुरक्षा के लिए, सभी ज़रूरी सावधानियां बरतनी होंगी. खास तौर पर, अगर आप चाहते हैं कि सदस्यों के फ़ोन नंबर कम से कम दिखें, तो सीपीयू का एंडपॉइंट आपकी सुरक्षा के दायरे में होना चाहिए. इसके अलावा, जिन मामलों में ऑपरेटर डीपीआई का इस्तेमाल करता है उनमें एचटीटीपी अनुरोध को लागू करने से पहले, ऑपरेटर को MSISDN को एन्क्रिप्ट (सुरक्षित) करना चाहिए. अगर CPID एंडपॉइंट आपका सुरक्षा पेरीमीटर नहीं है (उदाहरण के लिए, जब CPID एंडपॉइंट को किसी सार्वजनिक क्लाउड पर डिप्लॉय किया गया है) तो ऑपरेटर को MSISDN को साफ़ तौर पर सार्वजनिक इंटरनेट पर ट्रांसमिट नहीं करना चाहिए. ऑपरेटर, डीपीआई और सीपीआईडी एंडपॉइंट के बीच वीपीएन बना सकता है (पहली इमेज देखें) या उसे हेडर में इंजेक्ट करने से पहले, एमएसआईएनडीएन को एन्क्रिप्ट करें. बाद का तरीका यह मान लेता है कि CPID जनरेट करने से पहले, CPID एंडपॉइंट, इंजेक्ट किए गए हेडर को डिक्रिप्ट कर सकता है, ताकि MSISDN को वापस पाया जा सके. इसके अलावा, ऑपरेटर सीपीआईडी जनरेट करने के लिए इस्तेमाल की गई सीक्रेट कुंजी की सुरक्षा करता है और इस कुंजी को ऑपरेटर सुरक्षा नीतियों के हिसाब से बदलता है.

उपलब्धता और क्षमता से जुड़ी ज़रूरतें

अगर क्लाइंट सीपीआईडी नहीं पा सकते हैं, तो वे मोबाइल डेटा प्लान एपीआई से कोई जानकारी ऐक्सेस नहीं कर सकते. इस वजह से, ऑपरेटर सीपीआईडी एंडपॉइंट की उपलब्धता को पक्का करने के लिए ज़रूरी उपाय करेगा. इन तरीकों में, सीपीआईडी एंडपॉइंट और डीपीआई फ़ंक्शन के कई इंस्टेंस होना, दोनों फ़ंक्शन के लिए फ़िज़िकल तौर पर, साइट, और नेटवर्क रिडंडंसी शामिल हैं. साथ ही, यह पक्का करें कि सिस्टम रिसॉर्स और क्षमता काफ़ी हों. इसके अलावा, सीपीआईडी एंडपॉइंट के साथ-साथ हेडर इंजेक्ट करने वाले डीपीआई फ़ंक्शन के लिए भी काफ़ी क्षमता होनी चाहिए, ताकि वह सीपीआईडी का अनुरोध करने वाले सभी Google क्लाइंट का लोड मैनेज कर सके. सीपीआईडी एंडपॉइंट, सीपीडी जनरेट करने की फ़्रीक्वेंसी कम करने के लिए, ttlसेकंड फ़ील्ड में बड़े मानों का इस्तेमाल कर सकता है. Google का सुझाव है कि आप TTL (टीटीएल) वैल्यू का इस्तेमाल 30 दिनों के लिए करें.

नोट


  1. VIDEO_Offline PMTC का मतलब है कि यह प्लान सिर्फ़ ऑफ़लाइन काम करता है (जैसे कि QoE असल में खराब है). यह FlexTime विंडो से अलग है.