Method: recall.linkPersona

เชื่อมโยงผู้ใช้หลักของผู้เล่น PGS ที่เข้ารหัสในรหัสเซสชันการเรียกคืนที่ระบุกับบัญชีในเกม

คำขอ HTTP

POST https://games.googleapis.com/games/v1/recall:linkPersona

เนื้อหาของคำขอ

เนื้อหาของคำขอมีข้อมูลที่มีโครงสร้างต่อไปนี้

การแสดง JSON
{
  "sessionId": string,
  "persona": string,
  "token": string,
  "cardinalityConstraint": enum (RecallTokensCardinalityConstraint),
  "conflictingLinksResolutionPolicy": enum (ConflictingLinksResolutionPolicy),

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
}
ช่อง
sessionId

string

ต้องระบุ สตริงแบบทึบแสงที่สร้างโดยเซิร์ฟเวอร์ซึ่งเข้ารหัสข้อมูลที่จำเป็นทั้งหมดในการระบุโปรแกรมเล่น PGS / ผู้ใช้และแอปพลิเคชันของ Google

persona

string

ต้องระบุ ตัวระบุที่เสถียรของบัญชีในเกม โปรดงดใช้ลักษณะตัวตนเดิมๆ ของหลายๆ เกม

token

string

ต้องระบุ ค่าของโทเค็นที่จะสร้าง ไม่ชัดเจน Play Games และถือว่าไม่เสถียร (เข้ารหัสด้วยการหมุนเวียนคีย์)

cardinalityConstraint

enum (RecallTokensCardinalityConstraint)

ต้องระบุ ข้อจำกัดของ Cardinality ที่จะสังเกตเมื่อลิงก์ลักษณะตัวตนกับผู้เล่นในขอบเขตของเกม

ฟิลด์การรวม expiration เวลาหมดอายุของโทเค็นที่ไม่บังคับหรือ Time to Live expiration ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
expireTime

string (Timestamp format)

อินพุตเท่านั้น เวลาหมดอายุที่ไม่บังคับ

การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: "2014-10-02T15:01:23Z" และ "2014-10-02T15:01:23.045123456Z"

ttl

string (Duration format)

อินพุตเท่านั้น Time to Live ที่ไม่บังคับ

ระยะเวลาเป็นวินาทีโดยมีตัวเลขเศษส่วนไม่เกิน 9 หลัก ซึ่งลงท้ายด้วย "s" เช่น "3.5s"

เนื้อหาการตอบกลับ

ผลลัพธ์ของการพยายามลิงก์ลักษณะตัวตน

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

การแสดง JSON
{
  "state": enum (State)
}
ช่อง
state

enum (State)

เอาต์พุตเท่านั้น สถานะของความพยายามในการลิงก์ลักษณะตัวตน

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth ต่อไปนี้

  • https://www.googleapis.com/auth/androidpublisher

ดูข้อมูลเพิ่มเติมได้ที่ภาพรวมของ OAuth 2.0

RecallTokensCardinalityConstraint

ข้อจำกัดของ Cardinality ที่จะสังเกตเมื่อลิงก์ลักษณะตัวตนกับผู้เล่นในขอบเขตของเกม

Enum
ONE_PERSONA_TO_ONE_PLAYER

Cardinality แบบ 1:1 ระหว่างลักษณะตัวตนในเกมกับผู้เล่นบริการเกมของ Play

ในช่วงท้ายของการดำเนินการลิงก์ มีเพียงรายการเดียวเท่านั้นสำหรับโปรแกรมเล่นและลักษณะตัวตนควรจะยังคงอยู่ในขอบเขตของแอปพลิเคชัน

มีการสร้างลิงก์ใหม่หรือไม่เมื่อระบุข้อจำกัดนี้ตาม ConflictingLinksResolutionPolicy ที่เลือก:

  • หากมีการระบุ KEEP_EXISTING_LINKS และลักษณะตัวตนที่ระบุลิงก์กับผู้เล่นอื่นแล้ว หรือโปรแกรมเล่นดังกล่าวลิงก์กับลักษณะตัวตนอื่นอยู่แล้ว ระบบจะไม่สร้างลิงก์ใหม่ และลิงก์ที่มีอยู่แล้วจะยังคงเดิม

  • หากระบุ CREATE_NEW_LINK และลักษณะตัวตนที่ระบุลิงก์กับโปรแกรมเล่นอื่นแล้ว หรือโปรแกรมเล่นดังกล่าวลิงก์กับลักษณะตัวตนอื่นอยู่แล้ว ระบบจะนำลิงก์เก่าออกไปแทนลิงก์ใหม่ที่สร้างขึ้น

ConflictingLinksResolutionPolicy

นโยบายการแก้ปัญหาที่จะใช้เมื่อการลิงก์ลักษณะตัวตนกับผู้เล่นจะส่งผลให้เกิดการละเมิดข้อจำกัดของ Cardinality ที่ระบุ

Enum

รัฐ

สถานะของความพยายามในการลิงก์ลักษณะตัวตน

Enum
PERSONA_OR_PLAYER_ALREADY_LINKED ไม่ได้สร้างลิงก์ที่ระบุในคำขอ เนื่องจากลิงก์ที่มีอยู่แล้วจะทำให้ลิงก์ใหม่ละเมิด RecallTokensCardinalityConstraint ที่ระบุหากสร้างขึ้น