> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Vue d'ensemble de l'API Multiplayer Manager

> Vue d'ensemble des méthodes et classes les plus importantes de l'API Multiplayer Manager de XBOX, notamment les sessions de salon, les sessions de jeu, les membres et les événements multijoueurs.

Cette rubrique décrit les méthodes les plus importantes de l'API Multiplayer Manager.

Pour des informations détaillées sur l'API, consultez la [documentation de référence](https://docs.xbox.com/fr-CA/reference/live/gc-reference-live-toc.md).

Pour des exemples d'utilisation de ces API dans une application, consultez l'[exemple NetRumble (rubrique sous NDA)](https://learn.microsoft.com/gaming/gdk/docs/services/gdk-dev/development-downloads/gdk-samples-list).

## Espace de noms

Multiplayer Manager est inclus dans l'espace de noms suivant.

| Langage | Espace de noms |
| - | - |
| C | Préfixe `XblMultiplayerManager*` |
| C++ | `xbox::services::multiplayer::manager` |

Vous devez comprendre les principales classes suivantes.

* [Vue d'ensemble de l'API Multiplayer Manager]()
  * [Espace de noms](#namespace)
  * [Classe Multiplayer Manager ](#multiplayer-manager-class)
  * [Classe Multiplayer Event ](#multiplayer-event-class)
  * [Classe Multiplayer Member ](#multiplayer-member-class)
  * [Classe Multiplayer Lobby Session ](#multiplayer-lobby-session-class)
  * [Classe Multiplayer Game Session ](#multiplayer-game-session-class)

## Classe Multiplayer Manager&#x20;

Multiplayer Manager est une classe singleton qui contient un seul objet de session de salon et un seul objet de session de jeu.

Vous devez au minimum appeler les méthodes [XblMultiplayerManagerInitialize](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerinitialize.md) et [XblMultiplayerManagerDoWork](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerdowork.md) de cette classe pour que Multiplayer Manager fonctionne.

Le tableau suivant décrit certaines des méthodes et propriétés les plus couramment utilisées, mais pas toutes. Pour obtenir la liste complète et détaillée des membres, consultez la [documentation de référence](https://docs.xbox.com/fr-CA/reference/live/gc-reference-live-toc.md).

| C | C++ | Description |
| - | - | - |
| **Méthodes** | | |
| [XblMultiplayerManagerInitialize](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerinitialize.md) | `initialize()` | Initialise Multiplayer Manager. Vous devez appeler cette méthode avant d'utiliser Multiplayer Manager. |
| [XblMultiplayerManagerDoWork](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerdowork.md) | `do_work()` | Met à jour les états de session visibles par l'application. Vous devez appeler cette méthode au moins une fois par trame. Votre jeu doit gérer les événements multijoueurs retournés par la méthode. |
| [XblMultiplayerManagerJoinLobby](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerjoinlobby.md) | `join_lobby()` | Permet de rejoindre la session de salon d'un ami au moyen d'un `handleId` qui identifie de manière unique le salon que l'utilisateur souhaite rejoindre, ou lorsque l'utilisateur accepte une invitation qui entraîne l'activation de protocole du titre. |
| [XblMultiplayerManagerJoinGameFromLobby](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerjoingamefromlobby.md) | `join_game_from_lobby()` | Rejoint la session de jeu du salon si elle existe et s'il reste de la place. Si la session n'existe pas, crée une session de jeu avec les membres existants du salon. Les propriétés existantes de la session de salon ne sont pas transférées vers la session de jeu. Une fois la session rejointe, vous pouvez définir les propriétés ou l'hôte au moyen des API `*SetSynchronizedProperties`. Le titre doit appeler cette API sur tous les clients qui souhaitent rejoindre la session de jeu. |
| [XblMultiplayerManagerJoinGame](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerjoingame.md) | `join_game()` | Rejoint une session de jeu existante à partir d'un nom de session globalement unique, généralement obtenu au moyen de services de matchmaking tiers. Vous pouvez transmettre la liste des ID d'utilisateur XBOX que vous souhaitez intégrer à la partie. |
| [XblMultiplayerManagerFindMatch](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerfindmatch.md) | `find_match()` | Utilise le matchmaking des services XBOX pour trouver et rejoindre une partie. |
| [XblMultiplayerManagerLeaveGame](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerleavegame.md) | `leave_game()` | Quitte une partie et retourne le membre et tous les membres locaux vers le salon. |
| **Propriétés** | | |
| `LobbySession` | `lobby_session()` | Handle vers un objet qui représente la session de salon. |
| `GameSession` | `game_session()` | Handle vers un objet qui représente la session de jeu. |

## Classe Multiplayer Event&#x20;

| Langage | Classe |
| - | - |
| C | [XblMultiplayerEvent](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/structs/xblmultiplayerevent.md) |
| C++ | `multiplayer_event` |

Lorsque vous appelez [XblMultiplayerManagerDoWork](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerdowork.md), Multiplayer Manager retourne une liste d'événements qui représentent les modifications apportées aux sessions depuis votre dernier appel à `XblMultiplayerManagerDoWork`. Ces événements comprennent des modifications telles que l'arrivée d'un membre dans une session, le départ d'un membre d'une session, la modification des propriétés d'un membre ou le changement du client hôte.

Pour obtenir la liste de tous les types d'événements possibles, consultez l'énumération [XblMultiplayerEventType](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/enums/xblmultiplayereventtype.md).

Chaque [XblMultiplayerEvent](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/structs/xblmultiplayerevent.md) retourné inclut un `EventArgsHandle`. Vous devez l'utiliser pour obtenir les `args` appropriés au type d'événement. Par exemple, si le [XblMultiplayerEventType](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/enums/xblmultiplayereventtype.md) est `MemberJoined`, vous appelez [XblMultiplayerEventArgsMembersCount](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayereventargsmemberscount.md) et [XblMultiplayerEventArgsMembers](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayereventargsmembers.md).

Votre jeu doit gérer chacun des événements selon les besoins après avoir appelé [XblMultiplayerManagerDoWork](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerdowork.md).

## Classe Multiplayer Member&#x20;

| Langage | Classe |
| - | - |
| C | [XblMultiplayerManagerMember](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/structs/xblmultiplayermanagermember.md) |
| C++ | `multiplayer_member` |

Cette classe représente un joueur dans une session de salon ou de jeu. Elle contient des propriétés relatives au membre, comme l'ID d'utilisateur XBOX du joueur, l'adresse de connexion réseau du joueur et des propriétés personnalisées pour chaque joueur.

## Classe Multiplayer Lobby Session&#x20;

| Langage | Classe |
| - | - |
| C | Préfixe `XblMultiplayerManagerLobbySession*` |
| C++ | `multiplayer_lobby_session` |

Cette classe crée une session persistante utilisée pour gérer les utilisateurs locaux de cet appareil et les amis invités qui souhaitent jouer ensemble. Une session de salon doit contenir au moins un membre pour que Multiplayer Manager puisse effectuer des actions multijoueurs. Vous pouvez créer initialement une session de salon en appelant la méthode [XblMultiplayerManagerLobbySessionAddLocalUser](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionaddlocaluser.md).

Le tableau suivant décrit certaines des méthodes et propriétés les plus couramment utilisées de cette classe, mais pas toutes. Pour obtenir la liste complète et détaillée des membres de la classe, consultez la [documentation de référence](https://docs.xbox.com/fr-CA/reference/live/gc-reference-live-toc.md).

| C | C++ | Description |
| - | - | - |
| **Méthodes** | | |
| [XblMultiplayerManagerLobbySessionAddLocalUser](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionaddlocaluser.md) | `add_local_user()` | Ajoute un utilisateur local (un joueur connecté sur l'appareil local) à la session de salon. S'il s'agit du premier membre ajouté à une session de salon, cette méthode crée une session de salon. |
| [XblMultiplayerManagerLobbySessionRemoveLocalUser](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionremovelocaluser.md) | `remove_local_user()` | Retire un membre spécifié de la session de salon et de la session de jeu. |
| [XblMultiplayerManagerLobbySessionInviteFriends](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessioninvitefriends.md) | `invite_friends()` | Ouvre une interface utilisateur XBOX standard qui permet au joueur de sélectionner des amis dans sa liste d'amis, puis invite ces joueurs dans la partie. |
| [XblMultiplayerManagerLobbySessionInviteUsers](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessioninviteusers.md) | `invite_users()` | Invite les joueurs XBOX spécifiés dans la partie. |
| [XblMultiplayerManagerLobbySessionSetLocalMemberConnectionAddress](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionsetlocalmemberconnectionaddress.md) | `set_local_member_connection_address()` | Définit l'adresse réseau du membre local. Les jeux peuvent utiliser cette adresse réseau pour établir des communications réseau entre les membres. |
| [XblMultiplayerManagerLobbySessionSetLocalMemberProperties](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionsetlocalmemberproperties.md) | `set_local_member_properties()` | Définit une propriété personnalisée pour un membre local. La propriété est stockée dans une chaîne JSON. |
| [XblMultiplayerManagerLobbySessionDeleteLocalMemberProperties](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessiondeletelocalmemberproperties.md) | `delete_local_member_properties()` | Supprime une propriété personnalisée d'un membre local. |
| [XblMultiplayerManagerLobbySessionSetProperties](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionsetproperties.md) / [XblMultiplayerManagerLobbySessionSetSynchronizedProperties](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionsetsynchronizedproperties.md) | `set_properties()` / `set_synchronized_properties()` | Définit une propriété personnalisée pour la session de salon. La propriété est stockée dans une chaîne JSON. Si la propriété est partagée entre plusieurs appareils et peut être mise à jour simultanément par plusieurs d'entre eux, utilisez la version synchronisée de la méthode. |
| [XblMultiplayerManagerGameSessionIsHost](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagergamesessionishost.md) | `is_host()` | Indique si l'appareil actuel joue le rôle d'hôte du salon. |
| [XblMultiplayerManagerGameSessionSetSynchronizedHost](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagergamesessionsetsynchronizedhost.md) | `set_synchronized_host()` | Définit l'hôte du salon. |
| **Propriétés** | | |
| [XblMultiplayerManagerLobbySessionLocalMembers](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionlocalmembers.md) | `local_members()` | Collection des membres connectés sur l'appareil local. |
| [XblMultiplayerManagerLobbySessionMembers](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionmembers.md) | `members()` | Collection des membres présents dans la session de salon. |
| [XblMultiplayerManagerLobbySessionSetProperties](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionsetproperties.md) | `properties()` | Objet JSON qui représente une collection de propriétés de la session de salon. |
| [XblMultiplayerManagerLobbySessionHost](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerlobbysessionhost.md) | `host()` | Membre hôte du salon. |

## Classe Multiplayer Game Session&#x20;

| Langage | Classe |
| - | - |
| C | Préfixe `XblMultiplayerManagerGameSession*` |
| C++ | `multiplayer_game_session` |

La session de jeu représente le groupe de membres des services XBOX qui participent à une instance de jeu proprement dite. Elle peut inclure des joueurs mis en relation au moyen de services de matchmaking.

Pour démarrer une session de jeu qui inclut des membres de la session de salon, appelez [XblMultiplayerManagerJoinGameFromLobby](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerjoingamefromlobby.md). Si vous souhaitez utiliser le matchmaking des services XBOX, appelez [XblMultiplayerManagerFindMatch](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerfindmatch.md). Si vous utilisez un service de matchmaking tiers, appelez [XblMultiplayerManagerJoinGame](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerjoingame.md).

Le tableau suivant décrit certaines des méthodes et propriétés les plus couramment utilisées de Multiplayer Manager, mais pas toutes. Pour obtenir la liste complète et détaillée des membres de la classe, consultez la référence de l'API de cette classe.

| C | C++ | Description |
| - | - | - |
| **Méthodes** | | |
| [XblMultiplayerManagerGameSessionSetProperties](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagergamesessionsetproperties.md) / [XblMultiplayerManagerGameSessionSetSynchronizedProperties](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagergamesessionsetsynchronizedproperties.md) | `set_properties()` / `set_synchronized_properties()` | Définit une propriété personnalisée pour la session de jeu. La propriété est stockée dans une chaîne JSON. Si la propriété est partagée entre plusieurs appareils et peut être mise à jour simultanément par plusieurs d'entre eux, utilisez la version synchronisée de la méthode. |
| [XblMultiplayerManagerGameSessionIsHost](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagergamesessionishost.md) | `is_host()` | Indique si l'appareil actuel joue le rôle d'hôte de la partie. |
| [XblMultiplayerManagerGameSessionSetSynchronizedHost](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagergamesessionsetsynchronizedhost.md) | `set_synchronized_host()` | Définit l'hôte de la partie. |
| **Propriétés** | | |
| [XblMultiplayerManagerGameSessionMembers](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagergamesessionmembers.md) | `members()` | Collection des membres présents dans la session de jeu. |
| [XblMultiplayerManagerGameSessionPropertiesJson](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagergamesessionpropertiesjson.md) | `properties()` | Objet JSON qui représente une collection de propriétés de la session de jeu. |
| [XblMultiplayerManagerGameSessionHost](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagergamesessionhost.md) | `host()` | Membre hôte de la partie. |


## Related topics

- [Vue d'ensemble de Multiplayer Manager](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/mpm/live-multiplayer-manager-overview.md)
- [Concepts de Multiplayer Manager](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/mpm/concepts/live-mm-concepts-nav.md)
- [Vue d'ensemble de l'API XBOX Achievements Manager](https://docs.xbox.com/fr-CA/services/xbox-services/player-data/achievements/achievements-manager/live-achievements-manager-overview.md)
- [Vue d'ensemble de Social Manager](https://docs.xbox.com/fr-CA/services/xbox-services/community/social-manager/live-social-manager-overview.md)
- [Vue d'ensemble de l'API C Services - PFMultiplayerServer.h](https://docs.xbox.com/fr-CA/services/playfab/api-references/c/pfmultiplayerserver/pfmultiplayerserver_members.md)
