> ## 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.

# Envoi d'invitations

> Envoyez des invitations de jeu multijoueur XBOX depuis un titre à l'aide de la superposition Title-Callable UI ou de l'API XblMultiplayerSendInvitesAsync avec une interface utilisateur personnalisée dans le jeu.

Utilisez cette rubrique pour configurer des sessions de jeu multijoueur d'utilisateur à utilisateur dans les services XBOX.

Votre jeu envoie des invitations à d'autres utilisateurs pour qu'ils rejoignent votre session de jeu. Il existe deux façons d'envoyer une invitation de jeu à d'autres utilisateurs.
Vous pouvez utiliser la Title-Callable UI (TCUI) (superposition de l'interface utilisateur système) ou une interface utilisateur personnalisée implémentée par le titre.

## Utilisation de la Title-Callable UI (TCUI) (superposition de l'interface utilisateur système)

L'appel de l'API [XGameUiShowSendGameInviteAsync](https://docs.xbox.com/fr-CA/reference/system/xgameui/functions/xgameuishowsendgameinviteasync.md) affiche la superposition standard de l'interface utilisateur système permettant d'inviter des amis.
Celle-ci affiche une interface dans laquelle l'utilisateur peut naviguer pour sélectionner des amis ou des utilisateurs de la [liste des joueurs récents](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/mpa/concepts/live-mpa-recent-players.md)
à inviter dans la partie. Lorsque l'utilisateur sélectionne **Confirm**, l'invitation est envoyée aux utilisateurs sélectionnés.

## Utilisation d'une interface utilisateur personnalisée implémentée par le titre

Votre titre peut implémenter une interface utilisateur personnalisée permettant d'afficher les amis en ligne et de les inviter à des sessions de jeu.
Utilisez l'API [XblMultiplayerSendInvitesAsync](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_c/functions/xblmultiplayersendinvitesasync.md) pour envoyer des invitations à un ensemble d'utilisateurs définis
par leur [XboxUserId (XUID)](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/mpa/concepts/live-mpa-activities.md), comme indiqué dans le code suivant.
Cela est utile si vous préférez utiliser votre propre interface utilisateur dans le jeu plutôt que l'interface utilisateur système standard.

### C plat

```cpp theme={null}
auto asyncBlock = std::make_unique<XAsyncBlock>();
asyncBlock->queue = queue;
asyncBlock->context = nullptr;
asyncBlock->callback = [](XAsyncBlock* asyncBlock)
{
    std::unique_ptr<XAsyncBlock> asyncBlockPtr{ asyncBlock }; // Take ownership of the XAsyncBlock*
    size_t handlesCount = 1; // must be equal to invites that are requested
    XblMultiplayerInviteHandle handles[1] = {};
    HRESULT hr = XblMultiplayerSendInvitesResult(asyncBlock, handlesCount, handles);
};

uint64_t xuids[1] = {};
xuids[0] = targetXuid;
size_t xuidsCount = 1;

HRESULT hr = XblMultiplayerSendInvitesAsync(
    xblContextHandle,
    &sessionReference,
    xuids,
    xuidsCount,
    titleId,
    contextStringId,
    customActivationContext,
    asyncBlock.get());
if (SUCCEEDED(hr))
{
    // The call succeeded, so release the std::unique_ptr ownership of XAsyncBlock* since the callback will take ownership.
    // If the call fails, the std::unique_ptr will keep ownership and delete the XAsyncBlock*
    asyncBlock.release();
}
```

## Documentation de référence de l'API

* [Xgameactivation (sommaire de l'API)](https://docs.xbox.com/fr-CA/reference/system/xgameactivation/xgameactivation_members.md)
* [xgameui (sommaire de l'API)](https://docs.xbox.com/fr-CA/reference/system/xgameui/xgameui_members.md)
  * Fonctions
    * [XGameUiShowSendGameInviteAsync](https://docs.xbox.com/fr-CA/reference/system/xgameui/functions/xgameuishowsendgameinviteasync.md)
* [multiplayer\_c (sommaire de l'API)](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_c/multiplayer_c_members.md)
  * Fonctions
    * [XblMultiplayerSendInvitesAsync](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_c/functions/xblmultiplayersendinvitesasync.md)
    * [XblMultiplayerSendInvitesResult](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_c/functions/xblmultiplayersendinvitesresult.md)
  * Structures
    * [XblMultiplayerInviteHandle](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_c/structs/xblmultiplayerinvitehandle.md)
* [xasync (sommaire de l'API)](https://docs.xbox.com/fr-CA/reference/system/xasync/xasync_members.md)
  * Structures
    * [XAsyncBlock](https://docs.xbox.com/fr-CA/reference/system/xasync/structs/xasyncblock.md)

## Voir aussi

[XAsyncBlock](https://docs.xbox.com/fr-CA/reference/system/xasync/structs/xasyncblock.md)
[XblMultiplayerInviteHandle](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_c/structs/xblmultiplayerinvitehandle.md)
[XblMultiplayerSendInvitesAsync](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_c/functions/xblmultiplayersendinvitesasync.md)
[XblMultiplayerSendInvitesResult](https://docs.xbox.com/fr-CA/reference/live/xsapi-c/multiplayer_c/functions/xblmultiplayersendinvitesresult.md)
[XGameActivation (référence de l'API)](https://docs.xbox.com/fr-CA/reference/system/xgameactivation/xgameactivation_members.md)
[Gestion de l'activation de protocole pour démarrer une partie à l'aide de Multiplayer Manager](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/mpm/how-to/live-handle-protocol-activation.md)
[Envoi d'invitations de jeu à l'aide de Multiplayer Manager](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/mpm/how-to/live-send-game-invites.md)


## Related topics

- [Envoi d'invitations à un autre joueur (organigramme)](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/mpm/concepts/flowcharts/live-mpm-send-invites.md)
- [Envoi d'invitations de jeu à l'aide de Multiplayer Manager](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/mpm/how-to/live-send-game-invites.md)
- [Vue d'ensemble des invitations](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/invites/live-multiplayer-invites-overview.md)
- [Exemples de code pour les invitations](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/invites/how-to/live-invites-howto-nav.md)
- [-Inviter des joueurs à des sessions de jeu](https://docs.xbox.com/fr-CA/services/xbox-services/multiplayer/invites/live-invites-nav.md)
