Method: gameStats.batchRecordEvents

הקלטה של קבוצת אירועים במשחק של שחקן מסוים. השיטה הזו מאפשרת לשלוח כמה אירועים בבקשה אחת.

בקשת HTTP

POST https://games.googleapis.com/games/v1/players/{playerId}/gameStats:batchRecordEvents

פרמטרים של נתיב

פרמטרים
playerId

string

חובה: מזהה השחקן שהפעיל את האירועים.

גוף הבקשה

גוף הבקשה מכיל נתונים במבנה הבא:

ייצוג ב-JSON
{
  "packageName": string,
  "requestTime": string,
  "events": [
    {
      object (PlayerGameEvent)
    }
  ],
}
שדות
packageName

string

חובה: שם החבילה של האפליקציה (לדוגמה, com.example.game).

requestTime

string (Timestamp format)

חובה: השעה מהלקוח שבה נשלחה קבוצת האירועים הספציפית הזו.

הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

events[]

object (PlayerGameEvent)

חובה: רשימה של אירועים במשחק של השחקן שצריך לתעד. מקסימום 30 אירועים לכל בקשת Batch.

גוף התשובה

תגובה מוצלחת מציינת שקבוצת האירועים עברה עיבוד.

אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל נתונים במבנה הבא:

ייצוג ב-JSON
{
  "failedRequests": {
    integer: {
      object (Status)
    },
    ...
  }
}
שדות
failedRequests

map (key: integer, value: object (Status))

מפה של אירועים שנכשלו, עם אינדקס מבוסס-אפס של האירועים ב-BatchRecordEventsRequest.events. מפתחות שהושמטו מציינים שההקלטה הצליחה.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

היקפי הרשאות

נדרש אחד מהיקפי ההרשאות הבאים של OAuth:

  • https://www.googleapis.com/auth/games
  • https://www.googleapis.com/auth/games_lite

מידע נוסף זמין במאמר OAuth 2.0 Overview.

PlayerGameEvent

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

ייצוג ב-JSON
{
  "eventId": string,
  "eventName": string,
  "eventProperties": {
    string: {
      object (PropertyValue)
    },
    ...
  },
  "eventTime": string
}
שדות
eventId

string

חובה: מזהה ייחודי אוניברסלי (UUID) שנוצר על ידי הלקוח עבור מופע האירוע הספציפי הזה. משמש לאידמפוטנטיות ולביטול כפילויות בצד השרת. אם שולחים אירוע עם eventId שכבר תועד עבור אותו שחקן, המערכת תתעלם מהאירוע.

eventName

string

חובה: שם האירוע שהוגדר על ידי הלקוח (למשל, run_completed,‏ level_up). האורך המקסימלי הוא 100 תווים.

eventProperties

map (key: string, value: object (PropertyValue))

אופציונלי: מאפיינים של צמדי מפתח/ערך שמספקים פרטים על האירוע. – מספר המאפיינים המקסימלי: 25. – האורך המקסימלי של מפתח מאפיין: 100 תווים. – ערכי מחרוזת באורך המקסימלי של PropertyValue: ‏ 1,024 תווים.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

eventTime

string (Timestamp format)

חובה: השעה מהלקוח שבה בוצע האירוע הספציפי הזה.

הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

PropertyValue

תג עוטף של הערך.

ייצוג ב-JSON
{

  // Union field value can be only one of the following:
  "intValue": string,
  "doubleValue": number,
  "stringValue": string,
  "boolValue": boolean,
  // End of list of possible types for union field value.
}
שדות
שדה איחוד value. הערך של הסקלר. הערך value יכול להיות רק אחד מהבאים:
intValue

string (int64 format)

ערך של מספר שלם.

doubleValue

number

ערך כפול.

stringValue

string

ערך מחרוזת.

boolValue

boolean

ערך בוליאני.

סטטוס

הסוג Status מגדיר מודל שגיאות לוגי שמתאים לסביבות תכנות שונות, כולל ממשקי API ל-REST ול-RPC. הוא משמש את gRPC. כל הודעת Status מכילה שלושה חלקי נתונים: קוד שגיאה, הודעת שגיאה ופרטי שגיאה.

מידע נוסף על מודל השגיאות הזה ועל אופן השימוש בו זמין ב-API Design Guide.

ייצוג ב-JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
שדות
code

integer

קוד הסטטוס, שצריך להיות ערך enum של google.rpc.Code.

message

string

הודעת שגיאה שמוצגת למפתחים, שצריכה להיות באנגלית. כל הודעת שגיאה שמוצגת למשתמש צריכה להיות מותאמת לשפה המקומית ולהישלח בשדה google.rpc.Status.details, או להיות מותאמת לשפה המקומית על ידי הלקוח.

details[]

object

רשימה של הודעות שכוללות את פרטי השגיאה. יש קבוצה משותפת של סוגי הודעות לשימוש בממשקי API.

אובייקט שמכיל שדות מסוג שרירותי. שדה נוסף "@type" מכיל URI שמזהה את הסוג. דוגמה: { "id": 1234, "@type": "types.example.com/standard/id" }.