Licences Game Pass dans les vérifications de licence côté client
Les droits d’utilisation Game Pass ne peuvent pas être détectés à partir du client de jeu. Lorsqu’un utilisateur a droit à votre titre par l’entremise de Game Pass, XStoreQueryGameLicenseAsync retourne une licence avecisActive = true, comme pour un achat direct. La structure XStoreGameLicense ne comprend aucun champ indiquant comment la licence a été acquise.
Pour consigner la façon dont les utilisateurs ont acquis votre titre, par exemple pour la télémétrie, envoyez l’identité de l’utilisateur de votre client à votre propre service. Votre service appelle ensuite l’API publisherQuery et vérifie acquisitionType. Une valeur Recurring indique un droit d’utilisation Game Pass, et Single indique une possession directe.
Comportement des données de réponse pour les éditeurs autorisés et non autorisés
Si votre éditeur n’est pas autorisé, les articles auxquels l’utilisateur a droit par Game Pass apparaissent comme des droits d’utilisation possédés directement. Par exemple,acquisitionType s’affiche comme Single, et les ProductIds de Game Pass n’apparaissent pas dans satisfiedByProductIds.
Pour les éditeurs autorisés, seuls les abonnements Game Pass actifs sont retournés. Si l’abonnement Game Pass de l’utilisateur est annulé ou prend fin, les requêtes subséquentes ne contiendront plus les informations Game Pass. De plus, EndDate est normalisé à la valeur maximale; il ne peut donc pas être utilisé pour détecter la fin d’un abonnement.
Délai le jour de la sortie dans Game Pass dans les résultats de droits d’utilisation de serveur à serveur
Lorsque des titres ou des extensions deviennent disponibles dans Game Pass, prévoyez un délai entre la disponibilité côté client et la visibilité danspublisherQuery. Ce comportement est dû aux intervalles d’actualisation des caches qui diffèrent entre les systèmes du Store. En pratique, les licences locales sont habituellement mises à jour en premier, et publisherQuery peut accuser un retard de deux à trois heures.
Les vérifications directes des ProductIds de Game Pass ne sont pas touchées; le délai concerne principalement les articles accordés au moyen de droits d’utilisation satisfaisants.
Test des abonnements Game Pass dans votre sandbox de développement
Les niveaux XBOX Game Pass doivent être activés et accessibles lorsque vous les recherchez dans l’application XBOX Store dans votre sandbox de développement. Les comptes de test XBOX sont créés avec une carte de crédit de test et peuvent s’abonner aux niveaux Game Pass dans votre sandbox. Si vous ne trouvez pas les niveaux Game Pass dans votre sandbox, communiquez avec votre gestionnaire de partenaires développeurs ou votre contact Microsoft pour obtenir de l’aide.L’état de l’abonnement Game Pass n’est pas transféré d’un sandbox à l’autre. Après avoir ajouté Game Pass à un compte de test dans un sandbox, ne déplacez pas ce compte de test vers un autre sandbox pour des tests ou du débogage liés à Game Pass ou au commerce.
Demande de l’état de l’abonnement Game Pass
Pour demander l’état de l’abonnement Game Pass de l’utilisateur, ajoutez les ProductIds correspondant aux niveaux d’abonnement que vous êtes autorisé à consulter dans la liste productSkuIds de la requête (voir le tableau).
Si l’utilisateur possède un abonnement au niveau demandé, la réponse à la requête comprend un article portant le ProductId du niveau d’abonnement Game Pass correspondant.
Comportement lors de la demande de niveaux inclus dans des niveaux supérieurs
Certains niveaux Game Pass sont inclus lorsqu’un abonné possède un niveau supérieur. Tous vos niveaux autorisés qui sont inclus dans des niveaux supérieurs sont retournés lorsque l’utilisateur est abonné au niveau supérieur. Exemple : votre éditeur est autorisé pour XBOX Game Pass Essential. L’utilisateur possède XBOX Game Pass Ultimate. Lorsque vous interrogez tous les ProductIds de Game Pass, publisherQuery retourne un résultat uniquement pour XBOX Game Pass Essential. Si votre éditeur a accès à d’autres niveaux, publisherQuery retourne également ces niveaux.XBOX Game Pass (Starter Edition) fait exception à l’héritage et constitue un niveau autonome. Il n’est inclus dans aucun des autres niveaux.
Octroi d’avantages dans le jeu aux abonnés Game Pass
Nous recommandons de demander l’accès au niveau Game Pass le plus bas nécessaire pour accorder des avantages dans le jeu aux abonnés. Exemple : vous accordez une récompense dans le jeu à tous les abonnés Game Pass sur console. Vous n’avez besoin que de l’accès à XBOX Game Pass Essential (CFQ7TTC0K5DJ), car Premium et Ultimate incluent Essential.Détection des produits accordés par un abonnement Game Pass avec satisfiedByProductIds
Après l’autorisation, déterminez les droits d’utilisation issus de Game Pass en vérifiant les valeurssatisfiedByProductIds et acquisitionType. Un droit d’utilisation basé sur Game Pass a un acquisitionType de Recurring, et satisfiedByProductIds comprend le ProductID du niveau Game Pass le plus élevé pour lequel vous êtes autorisé.
Si vous utilisez l’option de filtre excludeDuplicates, le droit d’utilisation lié à Game Pass est exclu si l’utilisateur possède directement le titre.
satisfiedByProductIds d’un article vous indique si l’article est accordé par Game Pass, mais cela ne suffit pas pour déterminer si l’utilisateur est membre de Game Pass. Pour vérifier l’état de l’abonnement Game Pass d’un utilisateur, incluez les valeurs ProductId de Game Pass dans les productSkuIds de votre requête.
Exemple d’article en double avec XBOX Game Pass
Si l’utilisateur possède à la fois une possession directe et un droit d’utilisation Game Pass pour le même produit, deux entrées peuvent apparaître lorsqueexcludeDuplicates est false. Lorsque excludeDuplicates est true, l’article acheté directement est retourné.
Pour connaître toutes les règles de résolution des doublons et le comportement de priorité des sources, consultez Comprendre les articles en double dans la réponse.
