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

# PFMultiplayerCreateMatchmakingTicket

> Crée un ticket de matchmaking PlayFab Multiplayer pour un ou plusieurs utilisateurs locaux, en les soumettant à une file d'attente spécifiée afin de les associer à d'autres joueurs.

Crée un ticket de matchmaking pour un ou plusieurs utilisateurs locaux.

## Syntaxe

```cpp theme={null}
HRESULT PFMultiplayerCreateMatchmakingTicket(  
    PFMultiplayerHandle handle,  
    uint32_t localUserCount,  
    const PFEntityKey* localUsers,  
    const char* const* localUserAttributes,  
    const PFMatchmakingTicketConfiguration* configuration,  
    void* asyncContext,  
    PFMatchmakingTicketHandle* ticket  
)  
```

### Paramètres

**`handle`**   PFMultiplayerHandle

Handle de l'instance de l'API PFMultiplayer.

**`localUserCount`**   uint32\_t

Nombre d'utilisateurs locaux à inclure dans le ticket.

**`localUsers`**   [PFEntityKey\*](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmultiplayer/pfentitykey_clientsdk)\
*tableau d'entrée de taille `localUserCount`*

Tableau des utilisateurs locaux à inclure dans le ticket.

**`localUserAttributes`**   char\* const\*\
*tableau d'entrée de taille `localUserCount`*

Tableau des chaînes d'attributs des utilisateurs locaux. Il doit y avoir une chaîne d'attributs pour chaque utilisateur local. Chaque chaîne d'attributs doit être soit une chaîne vide, soit un objet JSON sérialisé. Par exemple, `{"player_color":"blue","player_role":"tank"}`.

**`configuration`**   [PFMatchmakingTicketConfiguration\*](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/structs/pfmatchmakingticketconfiguration)

Configuration du ticket.

**`asyncContext`**   void\*\
*facultatif*

Valeur de contexte facultative, définie par l'application et de la taille d'un pointeur, qui peut être utilisée pour associer le changement d'état d'achèvement à cet appel.

**`ticket`**   PFMatchmakingTicketHandle\*\
*sortie allouée par la bibliothèque*

Objet ticket obtenu.

### Valeur renvoyée

Type : HRESULT

`S_OK` si l'appel a réussi, ou un code d'erreur dans le cas contraire. La forme lisible du code d'erreur peut être récupérée via [PFMultiplayerGetErrorMessage()](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmultiplayer/functions/pfmultiplayergeterrormessage).

## Remarques

La bibliothèque soumet automatiquement et de manière asynchrone tous les utilisateurs locaux spécifiés d'un ticket au service de matchmaking. Chaque fois que l'état du ticket change, un [PFMatchmakingTicketStatusChangedStateChange](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/structs/pfmatchmakingticketstatuschangedstatechange) est fourni. L'état du ticket peut être interrogé à tout moment via [PFMatchmakingTicketGetStatus()](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/functions/pfmatchmakingticketgetstatus). Le ticket démarre immédiatement à l'état `PFMatchmakingTicketStatus::Creating`. <br /><br /> Lorsque le ticket se termine, un [PFMatchmakingTicketStatusChangedStateChange](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/structs/pfmatchmakingticketstatuschangedstatechange) est fourni. À ce stade, une partie a été trouvée ou le ticket s'est arrêté en raison d'un échec. En cas de réussite, la partie trouvée peut être interrogée via [PFMatchmakingTicketGetMatch()](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/functions/pfmatchmakingticketgetmatch).   <br /><br /> Si la création du ticket échoue parce qu'il existe déjà trop de tickets pour les utilisateurs spécifiés, la bibliothèque annule de manière transparente ces tickets en attente, puis retente la création du ticket.   <br /><br /> Aucune partie ne peut être trouvée tant que tous les utilisateurs distants spécifiés dans le champ `membersToMatchWith` du paramètre `configuration` n'ont pas rejoint le ticket via [PFMultiplayerJoinMatchmakingTicketFromId()](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/functions/pfmultiplayerjoinmatchmakingticketfromid).

## Configuration requise

**En-tête :** PFMatchmaking.h

## Voir aussi

[Membres de PFMatchmaking](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/pfmatchmaking_members)


## Related topics

- [Passer de MPSD à PlayFab Multiplayer et MPA](/fr/services/xbox-services/multiplayer/mpsd/concepts/live-mpsd-to-mlp.md)
- [Démarrage rapide du SDK Matchmaking](/fr/services/playfab/multiplayer/matchmaking/quickstart-client-sdk.md)
- [Vue d'ensemble de l'API C/C++ PFMultiplayer - PFMatchmaking.h](/fr/services/playfab/multiplayer/lobby/playfabmultiplayerreference-cpp/pfmatchmaking/pfmatchmaking_members.md)
- [Guide des opérations asynchrones du SDK C++ Lobby et Matchmaking](/fr/services/playfab/multiplayer/lobby/lobby-and-matchmaking-client-sdk-async.md)
- [Create Matchmaking Ticket](/api-reference/matchmaking/create-matchmaking-ticket.md)
