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 URI אופציונלי שניתן להשתמש בו כדי לקשר חזרה לאפליקציה.
application.name string השם של האפליקציה. זו דרישה ללקוחות Google REST, אבל אנחנו לא אוכפים ייחודיות בשם זה. הוא מספק לצורך נוחות מפתחים אחרים שרוצים לזהות איזה REST יצר אפליקציה או מקור נתונים.
application.packageName string שם החבילה של האפליקציה הזו. המזהה הזה משמש כמזהה ייחודי כשיוצרים אפליקציות ל-Android, אבל לא ניתן לציין אותו ללקוחות REST. מספר הלקוח ב-REST יופיע במזהי מקור הנתונים של מקור הנתונים, במקום packageName.
application.version string גרסת האפליקציה. יש לעדכן את השדה הזה בכל פעם שהאפליקציה משתנה בצורה שמשפיעה על חישוב הנתונים.
dataQualityStandard[] list אין לאכלס את השדה הזה. הוא אף פעם לא מאוכלס בתשובות מהפלטפורמה, והמערכת מתעלמת ממנו בשאילתות. הוא יוסר באחת מהגרסאות הבאות.
dataStreamId string מזהה ייחודי של מקור הנתונים שנוצר על ידי מקור הנתונים הזה. המזהה כולל:

  • שם היצרן, הדגם והמספר הסידורי (UID) של המכשיר הפיזי.
  • שם החבילה או השם של האפליקציה. המערכת משתמשת בשם החבילה כשמקור הנתונים נוצר על ידי אפליקציה ל-Android. נעשה שימוש במספר הפרויקט למפתחים כאשר מקור הנתונים נוצר על ידי לקוח REST.
  • סוג מקור הנתונים.
  • שם מקור הנתונים.
שימו לב שלא כל המאפיינים של מקור הנתונים משמשים כחלק ממזהה מקור הנתונים. באופן ספציפי, גרסת החומרה/האפליקציה לא בשימוש. כך אנחנו יכולים לשמר את אותו שידור חי באמצעות עדכוני גרסה. פירוש הדבר הוא ששני אובייקטים של מקור נתונים יכולים לייצג את אותו מקור נתונים, גם אם הם לא שווים.

הפורמט המדויק של מזהה מקור הנתונים שנוצר על ידי אפליקציה ל-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:developer מספר פרויקט

לבסוף, מספר הפרויקט של המפתח ו-UID של המכשיר מעורפלים כאשר הם נקראים על ידי לקוח REST או Android שלא יצר את מקור הנתונים. רק היוצר של מקור הנתונים יראה את מספר הפרויקט של המפתח בפורמט ברור ורגיל. המשמעות היא שלקוח יראה קבוצה שונה של data_stream_id מלקוח אחר עם פרטי כניסה שונים.

dataStreamName string שם מקור הנתונים מזהה באופן ייחודי את מקור הנתונים הספציפי הזה בין מקורות נתונים אחרים מאותו סוג מאותו מפיק בסיסי. הגדרת שם מקור הנתונים היא אופציונלית, אבל יש לבצע אותה בכל פעם שאפליקציה חושפת שני מקורות נתונים לאותו סוג נתונים, או כאשר במכשיר יש שני חיישנים מקבילים.
dataType nested object סוג הנתונים מגדיר את הסכימה של מקור נתונים נאסף על ידי כושר ה-API, מוכנס אליו או נשלח ממנו שאילתה.
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 שלא יצר את מקור הנתונים. רק היוצר של מקור הנתונים יראה את שדה המזהה הקבוע בצורה ברורה ורגילה.

הטשטוש (obfuscation) משמר את השוויון; כלומר, מקבלים שני מזהים, אם id1 == id2, obfuscated(id1) == obfuscated(id2).

device.version string מחרוזת גרסה של החומרה/תוכנה של המכשיר.
name string השם של משתמש הקצה גלוי למקור הנתונים הזה.
type string קבוע שמתאר את הסוג של מקור הנתונים. מציין אם מקור הנתונים הזה מפיק נתונים גולמיים או נגזרים.

הערכים הקבילים הם:
  • "derived"
  • "raw"

שיטות

יצירה
יצירת מקור נתונים חדש וייחודי לכל מקורות הנתונים ששייכים למשתמש זה.

מקור נתונים הוא מקור ייחודי של נתוני חיישנים. מקורות נתונים יכולים לחשוף נתונים גולמיים שמגיעים מחיישני חומרה במכשירים מקומיים או נלווים. הם גם יכולים לחשוף נתונים נגזרים, שנוצרו על ידי המרה או מיזוג של מקורות נתונים אחרים. קיימים מספר מקורות נתונים עבור אותו סוג נתונים. לכל נקודה על הגרף בכל מערך נתונים שהוכנס או נקרא מ-כושר API, יש מקור נתונים משויך.

כל מקור נתונים מפיק זרם ייחודי של עדכוני מערך נתונים, עם מזהה מקור נתונים ייחודי. לא כל שינוי במקור הנתונים משפיע על מזהה מקור הנתונים, ולכן נתונים שנאספו באמצעות גרסאות מעודכנות של אותו אפליקציה או מכשיר עדיין עשויים להיחשב כשייכים לאותו מקור נתונים.

מקורות הנתונים מזוהים באמצעות מחרוזת שהשרת יוצר, על סמך תוכן המקור שנוצר. אין להגדיר את השדה dataStreamId כשמפעילים את השיטה הזו. הוא ייווצר באופן אוטומטי על ידי השרת בפורמט הנכון. אם מוגדר dataStreamId, הוא צריך להתאים לפורמט שהשרת יפיק. פורמט זה הוא שילוב של שדות מסוימים ממקור הנתונים, עם סדר ספציפי. אם הבקשה לא תואמת, הבקשה תיכשל ותופיע שגיאה.

ציון סוג נתונים שאינו מסוג ידוע (מתחיל ב-"com.google.") ייצור מקור נתונים עם סוג נתונים מותאם אישית. סוגי נתונים מותאמים אישית ניתנים לקריאה רק על ידי האפליקציה שיצרה אותם. סוגי נתונים מותאמים אישית הוצאו משימוש ובמקום זאת השתמשו בסוגי נתונים רגילים.

בנוסף לשדות של מקור הנתונים שכלולים במזהה של מקור הנתונים, כלול מספר הפרויקט למפתחים שאומת בעת יצירת מקור הנתונים. מספר הפרויקט הזה מעורפל (obfuscation) כשקוראים על ידי מפתח אחר שקורא את סוגי הנתונים הציבוריים.
מחיקה
מחיקת מקור הנתונים שצוין. הבקשה תיכשל אם מקור הנתונים מכיל נקודות נתונים.
הורדה
מחזירה את מקור הנתונים שצוין.
list
כאן רשומים כל מקורות הנתונים שגלויים למפתח, באמצעות היקפי ה-OAuth שסופקו. זוהי רשימה חלקית בלבד. יכול להיות שלמשתמש יש מקורות נתונים פרטיים שגלויים רק למפתחים אחרים, או שמתקשרים להיקפים אחרים.
עדכון
עדכון של מקור הנתונים שצוין. לא ניתן לשנות את המאפיינים dataStreamId, dataType, type, dataStreamName ו-device, מלבד version.

מקורות הנתונים מזוהים לפי dataStreamId שלהם.