GameSession (JSON)
Objet JSON représentant les données de jeu d’une session multijoueur. L’objet JSON GameSession a la spécification suivante.| Membre | Type | Description |
|---|---|---|
| creationTime | DateTime | Date et heure de création de la session, en UTC. |
| customData | tableau d’entiers non signés 8 bits | 1 024 octets de données de session propres au jeu. Cette valeur est opaque pour le serveur. |
| displayName | string | Nom d’affichage de la session de jeu, d’une longueur maximale de 128 caractères. Cette valeur est opaque pour le serveur. |
| hasEnded | valeur booléenne | True si la session est terminée, false sinon. Définir ce champ sur true marque la session de jeu en lecture seule, ce qui empêche l’envoi de nouvelles données à la session. |
| isClosed | valeur booléenne | True si la session est fermée et qu’aucun joueur ne peut plus être ajouté, false sinon. Si cette valeur est true, les demandes de participation à la session sont rejetées. |
| maxPlayers | entier signé 32 bits | Nombre maximal de joueurs pouvant se trouver simultanément dans la session. La plage de valeurs est comprise entre 2 et 16. Une fois que la session contient le nombre maximal de joueurs, les demandes de participation suivantes sont rejetées. |
| playersCanBeRemovedBy | PlayerAcl | Valeur indiquant le joueur autorisé à retirer d’autres joueurs de la session. Les valeurs possibles sont NoOne, Self et AnyPlayer. |
| roster | tableau d’objets player | Tableau des joueurs de la session. La liste contient les joueurs actuels et les joueurs qui étaient auparavant dans la session mais l’ont quittée. L’ordre des joueurs dans la liste ne change jamais. Les nouveaux joueurs sont ajoutés à la fin du tableau. |
| seatsAvailable | entier signé 32 bits | Nombre de joueurs pouvant encore rejoindre la session avant d’atteindre le nombre maximal de joueurs. Cette valeur est en lecture seule et est toujours inférieure à la valeur du champ maxPlayers. |
| sessionId | string | ID de session attribué par le MPSD lors de la création de la session. Cette valeur est généralement incluse dans l’URI lors de l’accès aux informations stockées dans une session. |
| titleId | entier non signé 32 bits | ID du titre qui crée la session de jeu. |
| variant | entier signé 32 bits | Variante du jeu. Cette valeur est opaque pour le serveur. |
| visibility | VisibilityLevel | Valeur indiquant la visibilité de la session. Les valeurs possibles sont : PlayersCurrentlyInSession, PlayersEverInSession et Everyone. |
Exemple de syntaxe JSON
{
"sessionId": "702e5aaf-e7bd-4a7c-abea-9dd4be10edec",
"titleId": 1297287259,
"variant": 1,
"displayName": "Contoso Cards",
"creationTime": "2011-06-23T17:13:06Z",
"customData": null,
"maxPlayers": 4,
"seatsAvailable": 4,
"isClosed": false,
"hasEnded": false,
"roster": [],
"visibility": "PlayersCurrentlyInSession",
"playersCanBeRemovedBy": "Self",
}
