Vue d’ensemble
Les PlayFab Lobbies sont des regroupements temporaires de joueurs. Chaque lobby dispose d’une durée de vie (TTL) qui détermine quand il sera automatiquement supprimé s’il reste inactif. La TTL est réinitialisée chaque fois qu’une activité a lieu sur le lobby, par exemple lorsqu’un membre le rejoint, le quitte ou met à jour les données du lobby. Les deux facteurs les plus importants qui déterminent la durée de vie d’un lobby sont :- Le type de lobby : selon que le lobby est détenu par un client ou par un serveur.
- L’état de connexion : selon que les membres (et les serveurs) sont connectés via des notifications en temps réel.
Durée de vie par défaut d’un lobby
Lorsqu’un lobby est créé, une TTL par défaut d’1 heure lui est attribuée. Chaque fois que le lobby est mis à jour (arrivée de membres, mises à jour de données ou autres opérations), la TTL est réinitialisée à sa durée complète. Pour les lobbies qui utilisent des notifications en temps réel (connexions), la TTL est étendue à 4 heures lorsqu’un membre se connecte. Cette TTL plus longue tient compte du fait que les lobbies connectés sont activement surveillés par le système de connexion et n’ont pas besoin d’expirer aussi rapidement.La TTL du lobby est réinitialisée à chaque opération sur le lobby. Un lobby activement utilisé n’expirera pas du seul fait de sa TTL.
Influence des connexions sur la durée de vie d’un lobby
Les lobbies qui utilisent les notifications en temps réel suivent les connexions des membres. L’état de connexion des membres a une incidence directe sur la durée de vie du lobby et sa visibilité dans les recherches.Lobbies connectés
Lorsqu’au moins un membre est connecté à un lobby détenu par un client, le lobby reste consultable et dispose d’une TTL d’inactivité maximale de 4 heures. Tant que le lobby continue de recevoir des mises à jour ou une activité de connexion, la TTL continue d’être réinitialisée.Lobbies déconnectés
Lorsque tous les membres se déconnectent d’un lobby détenu par un client, deux choses se produisent :- Le lobby est masqué dans les recherches. Cela empêche d’autres joueurs de découvrir un lobby susceptible d’être abandonné.
- La TTL du lobby est réduite à 1 minute. Le lobby entre dans une brève période de grâce avant sa suppression.
Comportement de la durée de vie selon le type de lobby
Les lobbies détenus par un client et ceux détenus par un serveur ont des comportements d’expiration différents.Lobbies détenus par un client
Pour plus d’informations sur ce qui se passe lorsqu’un propriétaire se déconnecte, consultez Changements de propriétaire.
Lobbies détenus par un serveur
Les lobbies détenus par un serveur ne sont pas supprimés lorsque tous les joueurs membres les quittent. Seul le serveur propriétaire peut supprimer un lobby détenu par un serveur ; sinon, celui-ci expire à la fin de sa TTL.
Prolonger la durée de vie d’un lobby au-delà de la TTL par défaut
La TTL d’inactivité de 4 heures est censée représenter la durée maximale ordinaire pendant laquelle un lobby peut rester sans surveillance. Toutefois, certains scénarios, comme des lobbies détenus par un serveur attendant l’arrivée de joueurs, peuvent nécessiter des lobbies à plus longue durée de vie. Pour maintenir un lobby actif au-delà de la TTL par défaut, mettez-le à jour périodiquement avant l’expiration de la TTL. Toute opération de mise à jour réinitialise la TTL. Par exemple, un serveur de jeu peut mettre à jour une propriété du lobby à intervalles réguliers pour empêcher le lobby d’expirer.Toute opération sur le lobby réinitialise la TTL, y compris la mise à jour des propriétés du lobby, des propriétés des membres ou des propriétés de recherche.
Visibilité dans les recherches et expiration
L’expiration d’un lobby et sa visibilité dans les recherches sont des concepts étroitement liés, mais distincts.- Masqué dans les recherches signifie que le lobby n’apparaît pas dans les résultats de FindLobbies, mais qu’il existe toujours et peut être rejoint à l’aide de la chaîne de connexion.
- Supprimé signifie que le lobby n’existe plus et n’est plus accessible.
