Users.dataSources

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

डेटा सोर्स में अपने डेटा की पहचान करने के लिए ज़रूरी जानकारी मौजूद है. इसमें, हार्डवेयर डिवाइस और डेटा को इकट्ठा करने और/या बदलने वाले ऐप्लिकेशन की जानकारी शामिल है. इसमें हार्डवेयर और ऐप्लिकेशन के वर्शन के साथ-साथ डिवाइस के टाइप जैसा काम का मेटाडेटा भी होता है.

हर डेटा सोर्स, डेटा की एक यूनीक स्ट्रीम बनाता है, जिसका एक यूनीक आइडेंटिफ़ायर होता है. डेटा सोर्स में किए गए सभी बदलाव, स्ट्रीम आइडेंटिफ़ायर पर असर नहीं डालते. इसलिए, एक ही ऐप्लिकेशन/डिवाइस के अपडेट किए गए वर्शन से इकट्ठा किए गए डेटा को अब भी उसी डेटा स्ट्रीम से जुड़ा माना जा सकता है.

इस संसाधन के लिए उपलब्ध तरीकों की सूची देखने के लिए, इस पेज के आखिर में देखें.

संसाधन निरूपण

{
  "dataStreamId": string,
  "name": string,
  "dataStreamName": string,
  "type": string,
  "dataType": {
    "name": string,
    "field": [
      {
        "name": string,
        "format": string,
        "optional": boolean
      }
    ]
  },
  "device": {
    "uid": string,
    "type": string,
    "version": string,
    "model": string,
    "manufacturer": string
  },
  "application": {
    "packageName": string,
    "version": string,
    "detailsUrl": string,
    "name": string
  },
  "dataQualityStandard": [
    string
  ]
}
प्रॉपर्टी का नाम मान ब्यौरा नोट
application nested object ऐसे ऐप्लिकेशन के बारे में जानकारी जो प्लैटफ़ॉर्म में सेंसर डेटा फ़ीड करता है.
application.detailsUrl string एक वैकल्पिक यूआरआई, जिसका इस्तेमाल ऐप्लिकेशन से वापस लिंक करने के लिए किया जा सकता है.
application.name string इस ऐप्लिकेशन का नाम. REST क्लाइंट के लिए यह ज़रूरी है, लेकिन हम इस नाम की खासियत को लागू नहीं करते. यह सुविधा उन दूसरे डेवलपर के लिए है जो यह जानना चाहते हैं कि किस REST ने ऐप्लिकेशन या डेटा सोर्स बनाया है.
application.packageName string इस ऐप्लिकेशन के लिए पैकेज नाम. Android ऐप्लिकेशन में बनाए जाते समय इसका इस्तेमाल एक यूनीक आइडेंटिफ़ायर के तौर पर किया जाता है. हालांकि, REST क्लाइंट इसे तय नहीं कर सकता. REST क्लाइंट का डेवलपर प्रोजेक्ट नंबर, डेटा सोर्स के डेटा स्ट्रीम आईडी में PackageName के बजाय दिखेगा.
application.version string ऐप्लिकेशन का वर्शन. जब भी ऐप्लिकेशन में ऐसा कोई बदलाव हो जिससे डेटा के कंप्यूटेशन पर असर पड़े, तो आपको इस फ़ील्ड को अपडेट करना चाहिए.
dataQualityStandard[] list इस फ़ील्ड को पॉप इन न करें. प्लैटफ़ॉर्म से मिले जवाबों में यह जानकारी कभी नहीं भरती. साथ ही, क्वेरी में इसे अनदेखा कर दिया जाता है. आने वाले वर्शन में इसे पूरी तरह से हटा दिया जाएगा.
dataStreamId string इस डेटा सोर्स से बनी डेटा स्ट्रीम के लिए यूनीक आइडेंटिफ़ायर. आइडेंटिफ़ायर में ये शामिल हैं:

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

Android ऐप्लिकेशन के डेटा स्ट्रीम आईडी का सटीक फ़ॉर्मैट: type:dataType.name:application.packageName:device.manufacturer:device.model:device.uid:dataStreamName

REST क्लाइंट के डेटा स्ट्रीम आईडी का सटीक फ़ॉर्मैट यह है: type:dataType.name:developer project number:device.manufacturer:device.model:device.uid:dataStreamName

अगर डेटा स्ट्रीम आईडी बनाने वाला कोई भी वैकल्पिक फ़ील्ड मौजूद नहीं है, तो उसे डेटा स्ट्रीम आईडी से हटा दिया जाएगा. इस्तेमाल किए जा सकने वाले कम से कम डेटा स्ट्रीम का आईडी यह होगा: type:dataType.name:डेवलपर प्रोजेक्ट नंबर

आखिर में, जब कोई भी REST या Android क्लाइंट पढ़ता है और डेटा सोर्स नहीं बनाया जाता है, तो डेवलपर प्रोजेक्ट नंबर और डिवाइस का यूआईडी उलझा हुआ होता है. सिर्फ़ डेटा सोर्स बनाने वाले को डेवलपर प्रोजेक्ट नंबर, साफ़ और सामान्य रूप में दिखेगा. इसका मतलब है कि किसी क्लाइंट को अलग-अलग क्रेडेंशियल वाले किसी दूसरे क्लाइंट की तुलना में, data_stream_ids का एक अलग सेट दिखेगा.

dataStreamName string स्ट्रीम का नाम, एक ही प्रोड्यूसर के इस डेटा सोर्स की पहचान, उसी तरह के दूसरे डेटा सोर्स के बीच अलग तरीके से करता है. स्ट्रीम का नाम सेट करना ज़रूरी नहीं है. हालांकि, आपको ऐसा तब करना चाहिए, जब कोई ऐप्लिकेशन एक ही तरह के डेटा के लिए दो स्ट्रीम दिखाता हो या जब किसी डिवाइस में एक जैसे दो सेंसर हों.
dataType nested object डेटा टाइप, फ़िटनेस एपीआई की मदद से इकट्ठा किए जा रहे, उसमें डाले गए या उसके बारे में क्वेरी किए जाने वाले डेटा की स्ट्रीम के लिए स्कीमा तय करता है.
dataType.field[] list फ़ील्ड, डेटा टाइप का एक डाइमेंशन दिखाता है.
dataType.field[].format string डेटा टाइप में हर फ़ील्ड के लिए इस्तेमाल किए जा सकने वाले अलग-अलग फ़ॉर्मैट.

ये वैल्यू स्वीकार की जाती हैं:
  • "blob"
  • "floatList"
  • "floatPoint"
  • "integer"
  • "integerList"
  • "map"
  • "string"
dataType.field[].name string डेटा का नाम और फ़ॉर्मैट तय करता है. डेटा टाइप के नामों से अलग, फ़ील्ड के नाम नेमस्पेस नहीं किए जाते और सिर्फ़ डेटा टाइप में उनका यूनीक होना ज़रूरी है.
dataType.field[].optional boolean
dataType.name string हर डेटा टाइप का एक यूनीक, नेमस्पेस, नाम होता है. com.google नेमस्पेस में मौजूद सभी डेटा टाइप, प्लैटफ़ॉर्म के हिस्से के तौर पर शेयर किए जाते हैं.
device nested object यह ऐसे इंटिग्रेट किए गए डिवाइस (जैसे, फ़ोन या पहने जाने वाला डिवाइस) के बारे में बताता है जिसमें सेंसर हो सकते हैं.
device.manufacturer string प्रॉडक्ट/हार्डवेयर का निर्माता.
device.model string डिवाइस के असली उपयोगकर्ता को दिखने वाले मॉडल का नाम.
device.type string डिवाइस के टाइप को दिखाने वाला कॉन्सटेंट.

ये वैल्यू स्वीकार की जाती हैं:
  • "chestStrap"
  • "headMounted"
  • "phone"
  • "scale"
  • "smartDisplay"
  • "tablet"
  • "unknown"
  • "watch"
device.uid string हार्डवेयर का सीरियल नंबर या अन्य यूनीक आईडी. इस फ़ील्ड को जब कोई REST या Android क्लाइंट पढ़ता है जिसने डेटा सोर्स नहीं बनाया है, तो उसे अस्पष्ट बना दिया जाता है. सिर्फ़ डेटा सोर्स बनाने वाले व्यक्ति को ही uid फ़ील्ड साफ़ और सामान्य रूप में दिखेगा.

अस्पष्ट बनाने की वजह से समानता बनी रहती है; इसका मतलब है कि दो आईडी दिए गए हैं, अगर id1 == id2, obfuscated(id1) == obfuscated(id2).

device.version string डिवाइस के हार्डवेयर/सॉफ़्टवेयर के लिए वर्शन स्ट्रिंग.
name string इस डेटा सोर्स के लिए, असली उपयोगकर्ता को दिखने वाला नाम.
type string इस डेटा सोर्स के टाइप के बारे में बताने वाला कॉन्सटेंट. इससे पता चलता है कि यह डेटा सोर्स, रॉ डेटा देता है या डिराइव्ड डेटा.

ये वैल्यू स्वीकार की जाती हैं:
  • "derived"
  • "raw"

तरीके

बनाएं
एक नया डेटा सोर्स बनाता है जो सभी डेटा सोर्स से यूनीक होता है इस उपयोगकर्ता को दिखेगा.

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

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

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

एक ऐसा DataType तय करना जिसके बारे में जानकारी नहीं है (इससे शुरू होता है "com.google.") कस्टम डेटा टाइप के साथ एक DataSource बनाएगा. कस्टम डेटा टाइप को सिर्फ़ उस ऐप्लिकेशन से पढ़ा जा सकता है जिसकी मदद से उन्हें बनाया गया है. कस्टम डेटा टाइप अब काम नहीं करते; स्टैंडर्ड डेटा टाइप का इस्तेमाल करते हैं आज़माएं.

डेटा सोर्स आईडी में शामिल डेटा सोर्स फ़ील्ड के अलावा, डेवलपर प्रोजेक्ट नंबर, जिसकी पुष्टि डेटा बनाते समय की गई हो स्रोत शामिल है. पढ़ने पर, यह डेवलपर प्रोजेक्ट नंबर उलझा हुआ है सार्वजनिक डेटा टाइप को पढ़ने वाले किसी भी दूसरे डेवलपर के ज़रिए.
मिटाएं
चुने गए डेटा स्रोत को मिटाता है. अनुरोध पूरा नहीं होगा, अगर सोर्स में कोई भी डेटा पॉइंट होता है.
पाएं
यह डेटा सोर्स दिखाता है.
list
OAuth का इस्तेमाल करके, डेवलपर को दिखने वाले सभी डेटा सोर्स की सूची बनाता है दिए गए दायरे हैं. यह पूरी सूची नहीं है; उपयोगकर्ता के पास निजी जानकारी हो सकती है ऐसे डेटा सोर्स जो सिर्फ़ दूसरे डेवलपर को दिखते हैं या इनका इस्तेमाल करके किए जाने वाले कॉल अन्य दायरे होते हैं.
अपडेट करें
चुने गए डेटा सोर्स को अपडेट करता है. dataStreamId, dataType, type, dataStreamName, और version को छोड़कर, device प्रॉपर्टी संशोधित नहीं किया जा सकता है.

डेटा सोर्स की पहचान, उनके dataStreamId से की जाती है.