Method: recall.linkPersona

Associez le compte principal de joueur PGS encodé dans l'ID de session de rappel fourni à un compte de jeu

Requête HTTP

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

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation 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.
}
Champs
sessionId

string

Obligatoire. Chaîne opaque générée par le serveur qui encode toutes les informations nécessaires pour identifier le lecteur PGS, l'utilisateur Google et l'application.

persona

string

Obligatoire. Identifiant stable du compte de jeu. Évitez d'utiliser le même persona pour différents jeux.

token

string

Obligatoire. Valeur du jeton à créer. Opaque pour Play Jeux et considéré comme instable (chiffré avec rotation des clés).

cardinalityConstraint

enum (RecallTokensCardinalityConstraint)

Obligatoire. Contrainte de cardinalité à observer lors de l'association d'un persona à un joueur dans le cadre d'un jeu.

Champ d'union expiration. Délai d'expiration ou valeur TTL (Time To Live) facultatif du jeton. expiration ne peut être qu'un des éléments suivants :
expireTime

string (Timestamp format)

Uniquement en entrée. Délai d'expiration facultatif.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

ttl

string (Duration format)

Uniquement en entrée. Valeur TTL facultative.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

Corps de la réponse

Le résultat d’une tentative d’association d’un persona.

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Représentation JSON
{
  "state": enum (State)
}
Champs
state

enum (State)

Uniquement en sortie. État d'une tentative d'association de persona.

Champs d'application des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour en savoir plus, consultez la Présentation d'OAuth 2.0.

RecallTokensCardinalityConstraint

Contrainte de cardinalité à observer lors de l'association d'un persona à un joueur dans le cadre d'un jeu.

Enums
ONE_PERSONA_TO_ONE_PLAYER

Cardinalité 1:1 entre les personas de jeu et les joueurs des services de jeux Play.

À la fin de l'opération d'association, il ne doit rester qu'une seule entrée pour le joueur et le persona dans le champ d'application de l'application.

La création ou non d'une association lorsque cette contrainte est spécifiée est déterminé par l'élément ConflictingLinksResolutionPolicy choisi:

  • Si KEEP_EXISTING_LINKS est spécifié et que le persona fourni est déjà associé à un autre joueur, ou si le joueur est déjà associé à un autre persona, aucun lien ne sera créé et les liens existants resteront inchangés.

  • Si CREATE_NEW_LINK est spécifié et que le persona fourni est déjà associé à un autre joueur, ou si le joueur est déjà associé à un autre personnage, les anciens liens sont supprimés au profit de la nouvelle association en cours de création.

ConflictingLinksResolutionPolicy

Règle de résolution à appliquer lorsque l'association d'un persona à un joueur entraîne le non-respect de la contrainte de cardinalité spécifiée.

Enums

État

État d'une tentative d'association d'un persona.

Enums
PERSONA_OR_PLAYER_ALREADY_LINKED L'association spécifiée dans la demande n'a pas été créée, car toute association existante entraînerait que le nouveau lien ne respecte pas les RecallTokensCardinalityConstraint spécifiés s'il est créé.