- Il fournit une API simple à appeler.
- Il fournit des informations à jour en utilisant le service Real-Time Activity (RTA) en arrière-plan.
- Les développeurs peuvent appeler l’API Social Manager de manière synchrone sans solliciter davantage le service.
Fonctionnalités
Social Manager offre les fonctionnalités suivantes.- API sociale simplifiée
- Graphe social à jour
- Contrôle du niveau de détail des informations affichées
- Réduction du nombre d’appels aux services XBOX
- Cela se traduit directement par une réduction globale de la latence lors de l’acquisition des données
- Sécurité des threads
- Mise à jour efficace des données
Concepts de base
Graphe social : un graphe social est créé pour un utilisateur local sur l’appareil. Il s’agit d’une structure qui maintient à jour les informations sur tous les amis d’un utilisateur.Sous Windows, il ne peut y avoir qu’un seul utilisateur local.
- Groupes de filtres : un groupe de filtres prend le graphe social d’un utilisateur local (appelant) et renvoie un ensemble d’utilisateurs constamment actualisé en fonction des paramètres de filtre spécifiés.
- Groupes de listes : un groupe de listes prend une liste d’utilisateurs et renvoie une vue constamment actualisée de ces utilisateurs. Ces utilisateurs peuvent ne pas figurer dans la liste d’amis de l’utilisateur.
Vue d’ensemble de l’API
Vous utiliserez le plus souvent les API clés suivantes.Ajout d’utilisateurs locaux à Social Manager
- Fonction de l’API C plate : XblSocialManagerAddLocalUser
Groupe d’utilisateurs sociaux XBOX
- Fonction de l’API C plate : XblSocialManagerAddLocalUser
XblSocialManager.
Utilisation
Création d’un groupe d’utilisateurs sociaux à partir de filtres
Dans ce scénario, vous souhaitez obtenir une liste d’utilisateurs à partir d’un filtre, comme la liste des amis d’un utilisateur ou le sous-ensemble d’amis qu’il a marqués comme favoris. API C plate- XblPresenceFilter
- XblRelationshipFilter
- XblSocialManagerAddLocalUser
- XblSocialManagerCreateSocialUserGroupFromFilters
- XblSocialManagerDoWork
- XblSocialManagerEvent
Événements renvoyés
Utilisateur local ajouté : se déclenche lorsque le chargement du graphe social d’un utilisateur est terminé. Indique si des erreurs se sont produites pendant l’initialisation.- API C plate : XblSocialManagerEventType
::LocalUserAdded
- API C plate : XblSocialManagerEventType
::SocialUserGroupLoaded
- API C plate : XblSocialManagerEventType
::UsersAddedToSocialGraph
- XblSocialManagerEventType (API C plate)
Détails supplémentaires
API C plate L’exemple précédent montre comment initialiser Social Manager pour un utilisateur, créer un groupe d’utilisateurs sociaux pour cet utilisateur et le maintenir à jour. Les options de filtrage sont les énumérations XblPresenceFilter et XblRelationshipFilter. Dans la boucle de jeu, la fonction XblSocialManagerDoWork met à jour toutes les vues créées avec le dernier instantané des utilisateurs de ce groupe. Les utilisateurs de la vue peuvent être obtenus en appelant la fonction XblSocialManagerUserGroupGetUsers. Celle-ci renvoie unXblSocialManagerUserPtrArray, un tableau d’objets XblSocialManagerUser appartenant à XSAPI.
XblSocialManagerUser contient les informations sociales telles que le gamertag, la gamerpic et l’URI.
Créer et mettre à jour un groupe d’utilisateurs sociaux à partir d’une liste
Dans ce scénario, vous souhaitez obtenir les informations sociales d’une liste d’utilisateurs, comme les utilisateurs d’une session multijoueur. API C plate- XblSocialManagerAddLocalUser
- XblSocialManagerCreateSocialUserGroupFromList
- XblSocialManagerDoWork
- XblSocialManagerEvent
Événements renvoyés
XblSocialManagerEventType::LocalUserAdded. Se déclenche lorsque le chargement du graphe social de l’utilisateur est terminé. Indique si des erreurs se sont produites pendant l’initialisation.
XblSocialManagerEventType::SocialUserGroupLoaded. Se déclenche lorsqu’un groupe d’utilisateurs sociaux a été créé et que les utilisateurs suivis ont été ajoutés au graphe social.
XblSocialManagerEventType::UsersAddedToSocialGraph. Se déclenche lorsque les utilisateurs sont chargés.
Mise à jour d’un groupe d’utilisateurs sociaux à partir d’une liste
Vous pouvez également modifier la liste des utilisateurs suivis dans le groupe d’utilisateurs sociaux en appelant XblSocialManagerUpdateSocialUserGroup. API C plateÉvénements renvoyés
Groupe d’utilisateurs sociaux mis à jour : se déclenche lorsque la mise à jour du groupe d’utilisateurs sociaux est terminée.- C++ :
social_user_group_updated - C : XblSocialManagerEventType::SocialUserGroupUpdated
- C++ :
users_added_to_social_graph - C : XblSocialManagerEventType::UsersAddedToSocialGraph
- C : XblSocialManagerEventType::UsersRemovedFromSocialGraph
Utilisation des événements de Social Manager
Social Manager vous indique ce qui s’est passé sous forme d’événements. Vous pouvez utiliser ces événements pour mettre à jour votre interface utilisateur ou exécuter une autre logique. API C plateÉvénements renvoyés
XblSocialManagerEventType::LocalUserAdded. Se déclenche lorsque le chargement du graphe social d’un utilisateur est terminé. Indique si des erreurs se sont produites pendant l’initialisation.
XblSocialManagerEventType::SocialUserGroupLoaded. Se déclenche lorsqu’un groupe d’utilisateurs sociaux a été créé.
XblSocialManagerEventType::UsersAddedToSocialGraph. Se déclenche lorsque les utilisateurs sont chargés.
XblSocialManagerEventType::UsersRemovedFromSocialGraph. Se déclenche lorsqu’un utilisateur est supprimé du graphe social.
XblSocialManagerEventType::PresenceChanged. Se déclenche lorsque la présence d’un utilisateur du graphe social change.
XblSocialManagerEventType::ProfilesChanged. Se déclenche lorsque le profil d’un utilisateur du graphe social change.
XblSocialManagerEventType::SocialRelationshipsChanged. Se déclenche lorsque la relation entre l’utilisateur local et un autre utilisateur du graphe social change.
XblSocialManagerEventType::SocialUserGroupUpdated. Se déclenche lorsqu’une mise à jour d’un groupe d’utilisateurs sociaux est terminée.
Détails supplémentaires
Cet exemple illustre une partie du contrôle supplémentaire offert par Social Manager. Au lieu de compter sur les filtres des groupes d’utilisateurs sociaux pour fournir une liste d’utilisateurs actualisée pendant la boucle de jeu, le graphe social est initialisé en dehors de la boucle de jeu. Le titre s’appuie ensuite sur les événements renvoyés par la fonction XblSocialManagerDoWork. Les événements sont une liste de XblSocialManagerEvent. Chaque XblSocialManagerEvent contient une modification du graphe social survenue au cours de la dernière trame. Par exemple, XblSocialManagerEventType::ProfilesChanged et XblSocialManagerEventType::UsersAddedToSocialGraph.
Pour plus d’informations, consultez la documentation de l’API XblSocialManagerEvent.
