- طلب HTTP
- نص الطلب
- نص الاستجابة
- نطاقات التفويض
- RecallTokensCardinalityConstraint
- ConflictingLinksResolutionPolicy
- الولاية
- جرِّبه الآن
ربط حساب مدير "خدمات ألعاب Play" الذي تم ترميزه في رقم تعريف جلسة الاستدعاء الذي تم إدخاله بحساب داخل اللعبة
طلب HTTP
POST https://games.googleapis.com/games/v1/recall:linkPersona
نص الطلب
يحتوي نص الطلب على بيانات بالبنية التالية:
تمثيل JSON |
---|
{ "sessionId": string, "persona": string, "token": string, "cardinalityConstraint": enum ( |
الحقول | |
---|---|
sessionId |
مطلوبة. سلسلة معتمة من إنشاء الخادم تشفِّر جميع المعلومات اللازمة لتعريف مشغِّل "خدمات ألعاب Play" / مستخدم Google وتطبيقه. |
persona |
مطلوبة. معرّف ثابت للحساب داخل اللعبة يُرجى الامتناع عن إعادة استخدام الشخصية نفسها في ألعاب مختلفة. |
token |
مطلوبة. قيمة الرمز المميّز المطلوب إنشاؤه محتوى غير ثابت في "ألعاب Play" ويُفترَض أنّه غير ثابت (يتم تشفيره من خلال دوران المفتاح). |
cardinalityConstraint |
مطلوبة. هناك قيد على عدد العناصر في الحقل الذي يجب ملاحظته عند ربط شخصية بلاعب في نطاق لعبة. |
conflictingLinksResolutionPolicy |
مطلوبة. سياسة القرار التي يتم تطبيقها عندما يؤدي ربط الشخصية باللاعب إلى انتهاك القيد المحدّد لعدد القيم الفريدة للسمة. |
حقل الاتحاد expiration وقت أو تاريخ انتهاء صلاحية الرمز المميّز الاختياري يمكن أن تكون السمة "expiration " واحدة فقط مما يلي: |
|
expireTime |
الإدخال فقط. وقت انتهاء الصلاحية الاختياري طابع زمني بتنسيق RFC3339 UTC "Zulu" ، بدقة نانو ثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: |
ttl |
الإدخال فقط. مدة البقاء اختيارية: مدة بالثواني مؤلفة من تسعة أرقام كسور وتنتهي بـ " |
نص الاستجابة
نتيجة محاولة ربط الشخصيات
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:
تمثيل JSON |
---|
{
"state": enum ( |
الحقول | |
---|---|
state |
النتائج فقط. حالة محاولة ربط الشخصية. |
نطاقات التفويض
يجب توفير نطاق OAuth التالي:
https://www.googleapis.com/auth/androidpublisher
لمزيد من المعلومات، راجِع نظرة عامة على بروتوكول OAuth 2.0.
RecallTokensCardinalityConstraint
هناك قيد على عدد العناصر في الحقل الذي يجب ملاحظته عند ربط شخصية بلاعب في نطاق لعبة.
عمليات التعداد | |
---|---|
ONE_PERSONA_TO_ONE_PLAYER |
العلاقة بين الشخصيات داخل اللعبة ومشغّلي "خدمات ألعاب Play" من حيث عدد العناصر في الحقل 1:1 بنهاية عملية الربط، يجب أن يبقى إدخال واحد فقط للمشغل والشخصية في نطاق التطبيق. يتم تحديد ما إذا كان يتم إنشاء رابط جديد أم لا عند تحديد هذا القيد من خلال سياسة
|
ConflictingLinksResolutionPolicy
سياسة القرار التي يتم تطبيقها عندما يؤدي ربط الشخصية باللاعب إلى انتهاك القيد المحدّد لعدد القيم الفريدة للسمة.
عمليات التعداد | |
---|---|
KEEP_EXISTING_LINKS |
في حال توفُّر روابط بين لاعب وشخصية حاليًا، ما قد يؤدي إلى انتهاك على سبيل المثال، إذا كان persona1-Player1 مرتبطًا في نطاق application1 وتمت محاولة إنشاء رابط جديد persona1-Player2 في نطاق application1 مع القيد تجدر الإشارة إلى أنّه إذا كانت الروابط الحالية تنتهك السياسة المحدّدة (قد يحدث ذلك إذا لم تكن جميع استدعاءات |
CREATE_NEW_LINK |
في حال توفُّر رابط حالي بين لاعب وشخصية، ما سيؤدّي إلى انتهاك سياسة على سبيل المثال، إذا كان Subjecta1-Player1 مرتبطًا في نطاق application1 وحاولت إنشاء رابط جديد persona1-Player2 في نطاق application1 مع القيد |
الحالة
حالة محاولة ربط الشخصية.
عمليات التعداد | |
---|---|
LINK_CREATED |
تم إنشاء الرابط المحدّد في الطلب. |
PERSONA_OR_PLAYER_ALREADY_LINKED |
لم يتم إنشاء الرابط المحدّد في الطلب لأنّ الروابط الحالية ستؤدي إلى انتهاك الرابط الجديد للسمة RecallTokensCardinalityConstraint المحدّدة في حال إنشائها. |