एक ऐसा नया डेटा सोर्स बनाता है जो इस उपयोगकर्ता से जुड़े सभी डेटा सोर्स से अलग हो.
डेटा सोर्स, सेंसर डेटा का यूनीक सोर्स होता है. डेटा सोर्स, लोकल या कंपैनियन डिवाइसों पर हार्डवेयर सेंसर से आने वाला रॉ डेटा दिखा सकते हैं. वे दूसरे डेटा सोर्स को बदलकर या मर्ज करके बनाए गए डेटा को भी
दिखा सकते हैं. एक ही तरह के डेटा के लिए, कई डेटा सोर्स मौजूद हो सकते हैं. Fitness API में डाले गए या उससे पढ़े गए हर डेटासेट में मौजूद हर डेटा पॉइंट से एक डेटा सोर्स जुड़ा होता है.
हर डेटा सोर्स, एक यूनीक डेटा सोर्स आइडेंटिफ़ायर के साथ डेटासेट अपडेट की एक यूनीक स्ट्रीम बनाता है. डेटा सोर्स में किए जाने वाले सभी बदलाव,
डेटा स्ट्रीम आईडी पर असर नहीं डालते. इस वजह से, एक ही ऐप्लिकेशन/डिवाइस के अपडेट किए गए वर्शन से
इकट्ठा किए गए डेटा को अब भी एक ही डेटा
सोर्स से जुड़ा माना जा सकता है.
डेटा सोर्स की पहचान, सर्वर से जनरेट की गई स्ट्रिंग का इस्तेमाल करके की जाती है. यह पहचान, बनाए जा रहे सोर्स के कॉन्टेंट के आधार पर की जाती है. इस तरीके को शुरू करते समय, dataStreamId
फ़ील्ड को सेट नहीं किया जाना चाहिए. यह
सर्वर सही फ़ॉर्मैट के साथ अपने-आप जनरेट करेगा. अगर
dataStreamId
सेट है, तो यह सर्वर से जनरेट होने वाले फ़ॉर्मैट से मैच होना चाहिए. यह फ़ॉर्मैट, डेटा सोर्स के कुछ फ़ील्ड का कॉम्बिनेशन होता है और इसका एक खास क्रम होता है. अगर यह मेल नहीं खाता है, तो
अनुरोध एक गड़बड़ी के साथ विफल हो जाएगा.
अगर किसी ऐसे डेटा टाइप के बारे में बताना है जो आम तौर पर उपलब्ध नहीं है (जिस तरह का डेटा
"com.google." से शुरू होता है), तो कस्टम डेटा टाइप वाला डेटा सोर्स बन जाएगा.
कस्टम डेटा टाइप को सिर्फ़ उसी ऐप्लिकेशन से पढ़ा जा सकता है जिसने उन्हें बनाया है.
कस्टम डेटा टाइप अब काम नहीं करते. इसके बजाय, स्टैंडर्ड डेटा टाइप का इस्तेमाल करें.
डेटा सोर्स आईडी में शामिल डेटा सोर्स फ़ील्ड के अलावा, डेटा सोर्स बनाते समय पुष्टि किया गया डेवलपर प्रोजेक्ट नंबर भी
शामिल होता है. जब कोई अन्य डेवलपर, सार्वजनिक डेटा टाइप को पढ़ता है, तब यह डेवलपर प्रोजेक्ट नंबर छिपा दिया जाता है.
इसे अभी आज़माएं.
अनुरोध
एचटीटीपी अनुरोध
POST https://www.googleapis.com/fitness/v1/users/userId/dataSources
पैरामीटर
पैरामीटर का नाम | वैल्यू | कंपनी का ब्यौरा |
---|---|---|
पाथ पैरामीटर | ||
userId |
string |
पहचाने गए व्यक्ति के लिए डेटा सोर्स बनाएं. पुष्टि किए गए उपयोगकर्ता की जानकारी देने के लिए, me का इस्तेमाल करें. फ़िलहाल, सिर्फ़ me काम करता है.
|
अनुमति देना
इस अनुरोध के लिए, इनमें से कम से कम एक स्कोप के साथ अनुमति देना ज़रूरी है:
स्कोप |
---|
https://www.googleapis.com/auth/fitness.activity.write |
https://www.googleapis.com/auth/fitness.location.write |
https://www.googleapis.com/auth/fitness.body.write |
https://www.googleapis.com/auth/fitness.nutrition.write |
https://www.googleapis.com/auth/fitness.blood_pressure.write |
https://www.googleapis.com/auth/fitness.blood_glucose.write |
https://www.googleapis.com/auth/fitness.oxygen_saturation.write |
https://www.googleapis.com/auth/fitness.body_temperature.write |
https://www.googleapis.com/auth/fitness.reproductive_health.write |
ज़्यादा जानकारी के लिए, पुष्टि करना और अनुमति देना पेज देखें.
अनुरोध का मुख्य भाग
अनुरोध के मुख्य हिस्से में, नीचे दी गई प्रॉपर्टी के साथ Users.dataSources संसाधन दें:
प्रॉपर्टी का नाम | वैल्यू | कंपनी का ब्यौरा | ज़रूरी जानकारी |
---|---|---|---|
ज़रूरी प्रॉपर्टी | |||
application |
nested object |
ऐसे ऐप्लिकेशन की जानकारी जो प्लैटफ़ॉर्म में सेंसर डेटा फ़ीड करता है. | |
application.name |
string |
इस ऐप्लिकेशन का नाम. यह REST क्लाइंट के लिए ज़रूरी है, लेकिन हम इस नाम को यूनीक नहीं बनाते. यह ऐसे अन्य डेवलपर की सुविधा के लिए उपलब्ध कराया जाता है जो यह जानना चाहते हैं कि किस REST ने ऐप्लिकेशन या डेटा सोर्स बनाया है. | |
dataType |
nested object |
डेटा टाइप, Fitness API से इकट्ठा किए जा रहे, उसमें डाले गए या उससे क्वेरी किए जाने वाले डेटा की स्ट्रीम के स्कीमा को तय करता है. | |
dataType.field[] |
list |
फ़ील्ड, डेटा टाइप का एक डाइमेंशन दिखाता है. | |
dataType.field[].format |
string |
किसी डेटा टाइप में हर फ़ील्ड के लिए, इस्तेमाल किए जा सकने वाले अलग-अलग फ़ॉर्मैट.
इन वैल्यू को इस्तेमाल किया जा सकता है:
|
|
dataType.field[].name |
string |
इससे डेटा का नाम और फ़ॉर्मैट तय होता है. डेटा टाइप के नामों के उलट, फ़ील्ड के नाम नेमस्पेस नहीं होते. ये सिर्फ़ डेटा टाइप में अलग-अलग होने चाहिए. | |
dataType.name |
string |
हर डेटा टाइप का एक यूनीक और नेमस्पेस होता है. साथ ही, उसे नाम दिया जाता है. com.google नेमस्पेस में सभी डेटा टाइप, प्लैटफ़ॉर्म के हिस्से के तौर पर शेयर किए जाते हैं. | |
device |
nested object |
इंटिग्रेट किए गए ऐसे डिवाइस (जैसे कि फ़ोन या पहने जाने वाला डिवाइस) जो सेंसर को होल्ड कर सकता है. | |
device.manufacturer |
string |
प्रॉडक्ट/हार्डवेयर का निर्माता. | |
device.model |
string |
डिवाइस के असली उपयोगकर्ता को दिखने वाले मॉडल का नाम. | |
device.type |
string |
डिवाइस के टाइप को दिखाने वाला कॉन्स्टेंट.
इन वैल्यू को इस्तेमाल किया जा सकता है:
|
|
device.uid |
string |
हार्डवेयर का सीरियल नंबर या अन्य यूनीक आईडी. जिस REST या Android क्लाइंट ने डेटा सोर्स नहीं बनाया है उसके ज़रिए पढ़े जाने पर, यह फ़ील्ड अस्पष्ट हो जाता है. uid फ़ील्ड, सिर्फ़ डेटा सोर्स बनाने वाले को साफ़ और सामान्य फ़ॉर्म में दिखेगा. अस्पष्ट बनाने से, बराबरी का मौका बना रहता है. इसका मतलब है कि अगर id1 == id2, obfuscated(id1) == obfuscated(id2) दो आईडी दी जाती हैं, तो यह बराबरी का होगा. |
|
device.version |
string |
डिवाइस हार्डवेयर/सॉफ़्टवेयर के लिए वर्शन स्ट्रिंग. | |
type |
string |
इस डेटा सोर्स के टाइप की जानकारी देने वाला कॉन्सटेंट. इससे पता चलता है कि यह डेटा सोर्स, रॉ डेटा जनरेट करता है या हासिल किया गया डेटा.
इन वैल्यू को इस्तेमाल किया जा सकता है:
|
जवाब
अगर यह तरीका काम करता है, तो रिस्पॉन्स के मुख्य हिस्से में यह तरीका Users.dataSources संसाधन दिखाता है.
इसे आज़माएं!
लाइव डेटा पर इस तरीके को कॉल करने और रिस्पॉन्स देखने के लिए, नीचे दिया गया एपीआई एक्सप्लोरर इस्तेमाल करें.