- คำขอ HTTP
- พารามิเตอร์เส้นทาง
- เนื้อหาคำขอ
- เนื้อหาการตอบกลับ
- ขอบเขตการให้สิทธิ์
- PlayerGameEvent
- PropertyValue
- สถานะ
- ลองเลย
บันทึกกลุ่มเหตุการณ์ในเกมของผู้เล่นสำหรับผู้เล่นที่เฉพาะเจาะจง วิธีนี้ช่วยให้ส่งเหตุการณ์หลายรายการในคำขอเดียวได้
คำขอ HTTP
POST https://games.googleapis.com/games/v1/players/{playerId}/gameStats:batchRecordEvents
พารามิเตอร์เส้นทาง
| พารามิเตอร์ | |
|---|---|
playerId |
จำเป็น รหัสผู้เล่นของผู้เล่นที่ทําเหตุการณ์ |
เนื้อหาคำขอ
เนื้อหาของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
| การแสดง JSON |
|---|
{
"packageName": string,
"requestTime": string,
"events": [
{
object ( |
| ทุ่ง | |
|---|---|
packageName |
จำเป็น ชื่อแพ็กเกจแอปพลิเคชัน (เช่น "com.example.game") |
requestTime |
จำเป็น เวลาจากไคลเอ็นต์เมื่อส่งเหตุการณ์กลุ่มนี้ ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย เช่น |
events[] |
จำเป็น รายการเหตุการณ์ในเกมของผู้เล่นที่จะบันทึก เหตุการณ์สูงสุด 30 รายการต่อคำขอแบบกลุ่ม |
เนื้อหาการตอบกลับ
การตอบกลับที่สำเร็จแสดงว่าระบบประมวลผลกลุ่มเหตุการณ์แล้ว
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
| การแสดง JSON |
|---|
{
"failedRequests": {
integer: {
object ( |
| ทุ่ง | |
|---|---|
failedRequests |
แผนที่ของเหตุการณ์ที่ล้มเหลว โดยมีดัชนีที่อิงตาม 0 ใน ออบเจ็กต์ที่มีรายการคู่ |
ขอบเขตการให้สิทธิ์
ต้องใช้ขอบเขต OAuth อย่างใดอย่างหนึ่งต่อไปนี้
https://www.googleapis.com/auth/gameshttps://www.googleapis.com/auth/games_lite
ดูข้อมูลเพิ่มเติมได้ที่ OAuth 2.0 Overview
PlayerGameEvent
การแสดงเหตุการณ์ในเกมแบบผู้เล่นคนเดียวที่ทริกเกอร์โดยเหตุการณ์ของผู้เล่นในเกม ซึ่งอาจเป็นการผ่านด่าน ปลดล็อกไอเทม หรือจบการแข่งขัน
| การแสดง JSON |
|---|
{
"eventId": string,
"eventName": string,
"eventProperties": {
string: {
object ( |
| ทุ่ง | |
|---|---|
eventId |
จำเป็น UUID ที่ไคลเอ็นต์สร้างขึ้นที่ไม่ซ้ำกันสำหรับอินสแตนซ์เหตุการณ์นี้โดยเฉพาะ ใช้สำหรับความไม่เปลี่ยนแปลงและการขจัดข้อมูลที่ซ้ำกันฝั่งเซิร์ฟเวอร์ ระบบจะไม่สนใจการส่งเหตุการณ์ที่มี eventId ที่บันทึกไว้ก่อนหน้านี้สำหรับผู้เล่นรายเดียวกัน |
eventName |
จำเป็น ชื่อเหตุการณ์ที่ไคลเอ็นต์กำหนด (เช่น "run_completed", "level_up") ความยาวสูงสุด 100 อักขระ |
eventProperties |
ไม่บังคับ พร็อพเพอร์ตี้คู่คีย์-ค่าที่ให้รายละเอียดเกี่ยวกับเหตุการณ์ - จำนวนพร็อพเพอร์ตี้สูงสุด: 25 - ความยาวสูงสุดของคีย์พร็อพเพอร์ตี้: 100 อักขระ - ค่าสตริงภายในความยาวสูงสุดของ PropertyValue: 1024 อักขระ ออบเจ็กต์ที่มีรายการคู่ |
eventTime |
จำเป็น เวลาจากไคลเอ็นต์เมื่อมีการดำเนินการเหตุการณ์ที่เฉพาะเจาะจงนี้ ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย เช่น |
PropertyValue
Wrapper สำหรับค่า
| การแสดง JSON |
|---|
{ // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "intValue": string, "doubleValue": number, "stringValue": string, "boolValue": boolean, "durationValue": string } |
| ทุ่ง | |
|---|---|
| ค่าของสเกลาร์ ต่อไปนี้คือรายการฟิลด์ที่แยกกัน ระบบจะตั้งค่าช่องใดช่องหนึ่งต่อไปนี้ในการตอบกลับ | |
intValue |
ค่าจำนวนเต็ม |
doubleValue |
ค่า Double |
stringValue |
ค่าสตริง |
boolValue |
ค่าบูลีน |
durationValue |
ค่าระยะเวลา ระยะเวลาเป็นวินาทีโดยมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก และลงท้ายด้วย " |
| สิ้นสุดฟิลด์ที่แยกกัน | |
สถานะ
Status ประเภทจะกำหนดรูปแบบข้อผิดพลาดเชิงตรรกะที่เหมาะกับสภาพแวดล้อมการเขียนโปรแกรมต่างๆ รวมถึง REST API และ RPC API โดย gRPC จะใช้พอร์ตนี้ Statusแต่ละข้อความจะมีข้อมูล 3 ส่วน ได้แก่ รหัสข้อผิดพลาด ข้อความแสดงข้อผิดพลาด และรายละเอียดข้อผิดพลาด
ดูข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบข้อผิดพลาดนี้และวิธีใช้งานได้ในคู่มือการออกแบบ API
| การแสดง JSON |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| ทุ่ง | |
|---|---|
code |
รหัสสถานะซึ่งควรเป็นค่า enum ของ |
message |
ข้อความแสดงข้อผิดพลาดที่ส่งถึงนักพัฒนาแอป ซึ่งควรเป็นภาษาอังกฤษ ข้อความแสดงข้อผิดพลาดที่ผู้ใช้เห็นควรได้รับการแปลและส่งในช่อง |
details[] |
รายการข้อความที่มีรายละเอียดข้อผิดพลาด API จะใช้ชุดประเภทข้อความทั่วไป ออบเจ็กต์ที่มีฟิลด์ประเภทใดก็ได้ ฟิลด์เพิ่มเติม |