

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# SDK 5.x du serveur C\# pour -- Actions Amazon GameLift Servers
<a name="integration-server-sdk5-csharp-actions"></a>

Utilisez la référence du SDK 5.x du serveur pour intégrer votre jeu multijoueur à des fins d'hébergement. Amazon GameLift Servers Pour obtenir des conseils sur le processus d'intégration, consultez[Ajoutez Amazon GameLift Servers à votre serveur de jeu avec le SDK du serveur](gamelift-sdk-server-api.md). Si vous utilisez le Amazon GameLift Servers plugin pour Unity, consultez également[Amazon GameLift Serversplugin pour Unity (SDK serveur 5.x)](unity-plug-in.md).

[SDK 5.x du serveur C\# pour Amazon GameLift Servers -- Types de données](integration-server-sdk5-csharp-datatypes.md)

**Topics**
+ [SDK 5.x du serveur C\# pour Amazon GameLift Servers -- Types de données](integration-server-sdk5-csharp-datatypes.md)
+ [GetSdkVersion()](#integration-server-sdk5-csharp-getsdkversion)
+ [InitMetrics()](#integration-server-sdk5-csharp-initmetrics)
+ [InitSDK()](#integration-server-sdk5-csharp-initsdk)
+ [InitSDK()](#integration-server-sdk5-csharp-initsdk-anywhere)
+ [ProcessReady()](#integration-server-sdk5-csharp-processready)
+ [ProcessEnding()](#integration-server-sdk5-csharp-processending)
+ [ActivateGameSession()](#integration-server-sdk5-csharp-activategamesession)
+ [UpdatePlayerSessionCreationPolicy()](#integration-server-sdk5-csharp-updateplayersessioncreationpolicy)
+ [GetGameSessionId()](#integration-server-sdk5-csharp-getgamesessionid)
+ [GetTerminationTime()](#integration-server-sdk5-csharp-getterm)
+ [AcceptPlayerSession()](#integration-server-sdk5-csharp-acceptplayersession)
+ [RemovePlayerSession()](#integration-server-sdk5-csharp-removeplayersession)
+ [DescribePlayerSessions()](#integration-server-sdk5-csharp-describeplayersessions)
+ [StartMatchBackfill()](#integration-server-sdk5-csharp-startmatchbackfill)
+ [StopMatchBackfill()](#integration-server-sdk5-csharp-stopmatchbackfill)
+ [GetComputeCertificate()](#integration-server-sdk5-csharp-getcomputecertificate)
+ [GetFleetRoleCredentials()](#integration-server-sdk5-csharp-getfleetrolecredentials)
+ [Détruire ()](#integration-server-sdk5-csharp-destroy)

## GetSdkVersion()
<a name="integration-server-sdk5-csharp-getsdkversion"></a>

Renvoie le numéro de version actuel du kit SDK intégré dans le processus serveur.

### Syntaxe
<a name="integration-server-sdk5-csharp-getsdkversion-syntax"></a>

```
AwsStringOutcome GetSdkVersion();
```

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-getsdkversion-return"></a>

En cas de réussite, renvoie la version actuelle du kit SDK en tant qu'objet [AwsStringOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-awsstringoutcome). La chaîne renvoyée inclut le numéro de version (exemple`5.0.0`). En cas d'échec, renvoie un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-getsdkversion-example"></a>

```
var getSdkVersionOutcome = GameLiftServerAPI.GetSdkVersion();
```

## InitMetrics()
<a name="integration-server-sdk5-csharp-initmetrics"></a>

Initialise le système de métriques pour la collecte et le reporting des données de performance du serveur. Pour de meilleurs résultats, appelez cette méthode avant [InitSDK()](#integration-server-sdk5-csharp-initsdk) pour activer la collecte de métriques lors de l'initialisation du SDK.

### Syntaxe
<a name="integration-server-sdk5-csharp-initmetrics-syntax"></a>

```
MetricsManagerOutcome InitMetrics();
MetricsManagerOutcome InitMetrics(MetricsParameters metricsParameters);
```

### Parameters
<a name="integration-server-sdk5-csharp-initmetrics-parameter"></a>

[MetricsParameters](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-metricsparameters) (facultatif)  
Paramètres de configuration pour la collecte de métriques. Si ce n'est pas le cas, utilise des valeurs par défaut qui peuvent être remplacées par des variables d'environnement.

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-initmetrics-return"></a>

En cas de succès, renvoie un [MetricsManagerOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-metricsmanageroutcome) objet contenant l' MetricsManager instance. En cas d'échec, renvoie un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-initmetrics-example"></a>

```
// Initialize with default parameters (uses environment variables if available)
var outcome = GameLiftServerAPI.InitMetrics();
if (outcome.Success) {
    var metricsManager = outcome.Result;
} else {
    Console.WriteLine("Failed to initialize metrics: " + outcome.Error.ErrorMessage);
}

// Initialize with custom parameters
var metricsParams = new MetricsParameters("localhost", 8125, "crash-host", 9999, 1000, 1024);
var customOutcome = GameLiftServerAPI.InitMetrics(metricsParams);
if (customOutcome.Success) {
    var metricsManager = customOutcome.Result;
}
```

## InitSDK()
<a name="integration-server-sdk5-csharp-initsdk"></a>

Initialise le Amazon GameLift Servers SDK pour un parc EC2 géré. Appelez cette méthode au lancement, avant que toute autre initialisation associée ne se Amazon GameLift Servers produise. Cette méthode lit les paramètres du serveur depuis l'environnement hôte afin de configurer la communication entre le serveur et le Amazon GameLift Servers service. Il utilise un jeton d'idempotencie, de sorte que vous pouvez réessayer cet appel en toute sécurité en cas d'échec.

### Syntaxe
<a name="integration-server-sdk5-csharp-initsdk-syntax"></a>

```
GenericOutcome InitSDK();
```

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-initsdk-return"></a>

En cas de succès, renvoie un InitSdkOutcome objet indiquant que le processus serveur est prêt à être appelé[ProcessReady()](#integration-server-sdk5-csharp-processready). 

### Exemple
<a name="integration-server-sdk5-csharp-initsdk-example"></a>

```
//Call InitSDK to establish a local connection with the GameLift agent to enable further communication.
GenericOutcome initSDKOutcome = GameLiftServerAPI.InitSDK();
```

## InitSDK()
<a name="integration-server-sdk5-csharp-initsdk-anywhere"></a>

Initialise le Amazon GameLift Servers SDK pour une flotte Anywhere. Appelez cette méthode au lancement, avant que toute autre initialisation associée ne se Amazon GameLift Servers produise. Cette méthode nécessite des paramètres de serveur explicites pour configurer la communication entre le serveur et le Amazon GameLift Servers service. Il utilise un jeton d'idempotencie, de sorte que vous pouvez réessayer cet appel en toute sécurité en cas d'échec.

### Syntaxe
<a name="integration-server-sdk5-csharp-initsdk-anywhere-syntax"></a>

```
GenericOutcome InitSDK(ServerParameters serverParameters);
```

### Parameters
<a name="integration-server-sdk5-csharp-initsdk-anywhere-parameter"></a>

[ServerParameters](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-serverparameters)  
Pour initialiser un serveur de jeu sur une flotte Amazon GameLift Servers Anywhere, créez un `ServerParameters` objet avec les informations suivantes :  
+ URL WebSocket utilisée pour vous connecter à votre serveur de jeu. 
+ ID du processus utilisé pour héberger votre serveur de jeu. 
+ L'ID de l'ordinateur hébergeant les processus de votre serveur de jeu. 
+ L'ID du Amazon GameLift Servers parc contenant votre ordinateur Amazon GameLift Servers Anywhere.
+ Le jeton d'autorisation généré par l'Amazon GameLift Serversopération. 

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-initsdk-anywhere-return"></a>

En cas de succès, renvoie un InitSdkOutcome objet indiquant que le processus serveur est prêt à être appelé[ProcessReady()](#integration-server-sdk5-csharp-processready). 

**Note**  
Si les appels à échouent pour `InitSDK()` les builds de jeu déployés sur des flottes Anywhere, vérifiez le `ServerSdkVersion` paramètre utilisé lors de la création de la ressource de build. Vous devez définir explicitement cette valeur en fonction de la version du SDK du serveur utilisée. La valeur par défaut de ce paramètre est 4.x, ce qui n'est pas compatible. Pour résoudre ce problème, créez une nouvelle version et déployez-la sur une nouvelle flotte.

### Exemple
<a name="integration-server-sdk5-csharp-initsdk-anywhere-example"></a>

```
//Define the server parameters
string websocketUrl = "wss://us-west-1.api.amazongamelift.com";
string processId = "PID1234";
string fleetId = "aarn:aws:gamelift:us-west-1:111122223333:fleet/fleet-9999ffff-88ee-77dd-66cc-5555bbbb44aa";
string hostId = "HardwareAnywhere";
string authToken = "1111aaaa-22bb-33cc-44dd-5555eeee66ff";
ServerParameters serverParameters = 
  new ServerParameters(webSocketUrl, processId, hostId, fleetId, authToken);

//Call InitSDK to establish a local connection with the GameLift agent to enable further communication.
GenericOutcome initSDKOutcome = GameLiftServerAPI.InitSDK(serverParameters);
```

## ProcessReady()
<a name="integration-server-sdk5-csharp-processready"></a>

Amazon GameLift ServersIndique que le processus du serveur est prêt à héberger des sessions de jeu. Appelez cette méthode après l'avoir invoquée. [InitSDK()](#integration-server-sdk5-csharp-initsdk) Cette méthode ne doit être appelée qu'une seule fois par processus.

### Syntaxe
<a name="integration-server-sdk5-csharp-processready-syntax"></a>

```
GenericOutcome ProcessReady(ProcessParameters processParameters)
```

### Parameters
<a name="integration-server-sdk5-csharp-processready-parameter"></a>

**[ProcessParameters](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-process)**  
Un `ProcessParameters` objet contient des informations sur le processus du serveur.

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-processready-return"></a>

Renvoie un résultat générique consistant en un succès ou un échec avec un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-processready-example"></a>

Cet exemple illustre à la fois les implémentations de méthodes et de fonctions déléguées.

```
// Set parameters and call ProcessReady
ProcessParameters processParams = new ProcessParameters(
  this.OnStartGameSession,
  this.OnProcessTerminate,
  this.OnHealthCheck,
  this.OnUpdateGameSession,
  port,
  new LogParameters(new List<string>()  
  // Examples of log and error files written by the game server
  {
    "C:\\game\\logs",
    "C:\\game\\error"
  })
);
GenericOutcome processReadyOutcome = GameLiftServerAPI.ProcessReady(processParams);
```

## ProcessEnding()
<a name="integration-server-sdk5-csharp-processending"></a>

Amazon GameLift ServersIndique que le processus du serveur est en train de se terminer. Appelez cette méthode après toutes les autres tâches de nettoyage (y compris la fermeture de la session de jeu active) et avant de terminer le processus. En fonction du résultat de`ProcessEnding()`, le processus se termine avec succès (0) ou erreur (-1) et génère un événement de flotte. Si le processus se termine par une erreur, l'événement de flotte généré est`SERVER_PROCESS_TERMINATED_UNHEALTHY`.

### Syntaxe
<a name="integration-server-sdk5-csharp-processending-syntax"></a>

```
GenericOutcome ProcessEnding()
```

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-processending-return"></a>

Renvoie un résultat générique consistant en un succès ou un échec avec un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-processending-example"></a>

Cet exemple appelle `ProcessEnding()` et `Destroy()` avant de terminer le processus du serveur avec un code de sortie de réussite ou d'erreur.

```
GenericOutcome processEndingOutcome = GameLiftServerAPI.ProcessEnding();
GameLiftServerAPI.Destroy();

if (processEndingOutcome.Success)
  {
    Environment.Exit(0);
  }
else
  {
    Console.WriteLine("ProcessEnding() failed. Error: " + processEndingOutcome.Error.ToString());
    Environment.Exit(-1);  
  }
```

## ActivateGameSession()
<a name="integration-server-sdk5-csharp-activategamesession"></a>

Amazon GameLift ServersIndique que le processus du serveur a activé une session de jeu et qu'il est maintenant prêt à recevoir les connexions des joueurs. Cette action doit être appelée dans le cadre de la fonction de `onStartGameSession()` rappel, après toute initialisation de session de jeu.

### Syntaxe
<a name="integration-server-sdk5-csharp-activategamesession-syntax"></a>

```
GenericOutcome ActivateGameSession()
```

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-activategamesession-return"></a>

Renvoie un résultat générique consistant en un succès ou un échec avec un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-activategamesession-example"></a>

Cet exemple illustre l'appel de `ActivateGameSession()` dans le cadre de la fonction déléguée `onStartGameSession()`. 

```
void OnStartGameSession(GameSession gameSession)
{
  // game-specific tasks when starting a new game session, such as loading map   
  // When ready to receive players   
  GenericOutcome activateGameSessionOutcome = GameLiftServerAPI.ActivateGameSession();
}
```

## UpdatePlayerSessionCreationPolicy()
<a name="integration-server-sdk5-csharp-updateplayersessioncreationpolicy"></a>

Met à jour la capacité de la session de jeu à accepter de nouvelles sessions de joueur. Une session de jeu peut être définie pour accepter ou refuser toutes les nouvelles sessions joueur.

### Syntaxe
<a name="integration-server-sdk5-csharp-updateplayersessioncreationpolicy-syntax"></a>

```
GenericOutcome UpdatePlayerSessionCreationPolicy(PlayerSessionCreationPolicy playerSessionPolicy)
```

### Parameters
<a name="integration-server-sdk5-csharp-updateplayersessioncreationpolicy-parameter"></a>

**playerSessionPolicy**  
Valeur de chaîne indiquant si la session de jeu accepte de nouveaux joueurs.   
Les valeurs valides sont les suivantes :  
+ **ACCEPT\_ALL — Accepte toutes les** sessions de nouveaux joueurs.
+ **DENY\_ALL — Refuse toutes les** sessions de nouveaux joueurs.

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-updateplayersessioncreationpolicy-return"></a>

Renvoie un résultat générique consistant en un succès ou un échec avec un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-updateplayersessioncreationpolicy-example"></a>

Cet exemple définit la stratégie de participation de la session de jeu actuelle de manière à ce que tous les joueurs soient acceptés.

```
GenericOutcome updatePlayerSessionPolicyOutcome = 
  GameLiftServerAPI.UpdatePlayerSessionCreationPolicy(PlayerSessionCreationPolicy.ACCEPT_ALL);
```

## GetGameSessionId()
<a name="integration-server-sdk5-csharp-getgamesessionid"></a>

Récupère l'ID de la session de jeu hébergée par le processus serveur actif.

Pour les processus inactifs qui ne sont pas activés lors d'une session de jeu, l'appel renvoie un[GameLiftError](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-gamelifterror).

### Syntaxe
<a name="integration-server-sdk5-csharp-getgamesessionid-syntax"></a>

```
AwsStringOutcome GetGameSessionId()
```

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-getgamesessionid-return"></a>

En cas de réussite, renvoie l'ID de session de jeu en tant qu'objet [AwsStringOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-awsstringoutcome). En cas d'échec, renvoie un message d'erreur. »

### Exemple
<a name="integration-server-sdk5-csharp-getgamesessionid-example"></a>

```
AwsStringOutcome getGameSessionIdOutcome = GameLiftServerAPI.GetGameSessionId();
```

## GetTerminationTime()
<a name="integration-server-sdk5-csharp-getterm"></a>

Renvoie l'heure d'arrêt planifiée pour un processus serveur, si une heure de résiliation est disponible. Un processus serveur exécute cette action après avoir reçu un `onProcessTerminate()` rappel deAmazon GameLift Servers. Amazon GameLift Serversappels `onProcessTerminate()` pour les raisons suivantes : 
+ Lorsque le processus du serveur a signalé un mauvais état de santé ou n'a pas réponduAmazon GameLift Servers.
+ Lorsque vous mettez fin à l'instance lors d'un événement de réduction.
+ Lorsqu'une instance est interrompue en raison d'une interruption [ponctuelle](spot-tasks.md).

### Syntaxe
<a name="integration-server-sdk5-csharp-getterm-syntax"></a>

```
AwsDateTimeOutcome GetTerminationTime()
```

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-getterm-return"></a>

En cas de succès, renvoie l'heure de fin sous forme d'[AwsDateTimeOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-awsdatetimeoutcome)objet. La valeur est le délai de résiliation, exprimé en ticks écoulés depuis. `0001 00:00:00` Par exemple, la valeur de la date et de l'heure `2020-09-13 12:26:40 -000Z` est égale à celle `637355968000000000` des ticks. Si aucune heure de résiliation n'est disponible, renvoie un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-getterm-example"></a>

```
AwsDateTimeOutcome getTerminationTimeOutcome = GameLiftServerAPI.GetTerminationTime(); 
```

## AcceptPlayerSession()
<a name="integration-server-sdk5-csharp-acceptplayersession"></a>

Amazon GameLift ServersIndique qu'un joueur avec l'identifiant de session de joueur spécifié s'est connecté au processus du serveur et doit être validé. Amazon GameLift Serversvérifie que l'identifiant de session du joueur est valide. Une fois la session du joueur validée, le statut de l'emplacement du joueur Amazon GameLift Servers passe de RÉSERVÉ à ACTIF. 

### Syntaxe
<a name="integration-server-sdk5-csharp-acceptplayersession-syntax"></a>

```
GenericOutcome AcceptPlayerSession(String playerSessionId)
```

### Parameters
<a name="integration-server-sdk5-csharp-acceptplayersession-parameter"></a>

playerSessionId  
Identifiant unique émis GameLift lors de la création d'une nouvelle session de joueur.

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-acceptplayersession-return"></a>

Renvoie un résultat générique consistant en un succès ou un échec avec un message d'erreur. 

### Exemple
<a name="integration-server-sdk5-csharp-acceptplayersession-example"></a>

Cet exemple illustre une fonction permettant de gérer une demande de connexion, notamment de valider et de rejeter une session de joueur non valide. IDs 

```
void ReceiveConnectingPlayerSessionID (Connection connection, String playerSessionId)
{
  GenericOutcome acceptPlayerSessionOutcome = GameLiftServerAPI.AcceptPlayerSession(playerSessionId);
  if(acceptPlayerSessionOutcome.Success)
  {
    connectionToSessionMap.emplace(connection, playerSessionId);
    connection.Accept();
  }
  else 
  {
    connection.Reject(acceptPlayerSessionOutcome.Error.ErrorMessage);
  }       
}
```

## RemovePlayerSession()
<a name="integration-server-sdk5-csharp-removeplayersession"></a>

Indique Amazon GameLift Servers qu'un joueur s'est déconnecté du processus serveur. En réponse, Amazon GameLift Servers change l'emplacement du joueur pour le rendre disponible. 

### Syntaxe
<a name="integration-server-sdk5-csharp-removeplayersession-syntax"></a>

```
GenericOutcome RemovePlayerSession(String playerSessionId)
```

### Parameters
<a name="integration-server-sdk5-csharp-removeplayersession-parameter"></a>

**playerSessionId**  
Identifiant unique émis Amazon GameLift Servers lors de la création d'une nouvelle session de joueur.

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-removeplayersession-return"></a>

Renvoie un résultat générique consistant en un succès ou un échec avec un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-removeplayersession-example"></a>

```
GenericOutcome removePlayerSessionOutcome = GameLiftServerAPI.RemovePlayerSession(playerSessionId);
```

## DescribePlayerSessions()
<a name="integration-server-sdk5-csharp-describeplayersessions"></a>

Récupère les données de session du joueur, notamment les paramètres, les métadonnées de session et les données du joueur. Utilisez cette action pour obtenir des informations pour une seule session de joueur, pour toutes les sessions de joueur d'une session de jeu ou pour toutes les sessions de joueur associées à un seul ID de joueur.

### Syntaxe
<a name="integration-server-sdk5-csharp-describeplayersessions-syntax"></a>

```
DescribePlayerSessionsOutcome DescribePlayerSessions(DescribePlayerSessionsRequest describePlayerSessionsRequest)
```

### Parameters
<a name="integration-server-sdk5-csharp-describeplayersessions-parameter"></a>

**[DescribePlayerSessionsRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-playersessions)**  
[DescribePlayerSessionsRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-playersessions)Objet qui décrit les sessions de joueur à récupérer.

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-describeplayersessions-return"></a>

En cas de succès, renvoie un [DescribePlayerSessionsOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-describeplayersessionsoutcome) objet contenant un ensemble d'objets de session de joueur correspondant aux paramètres de la demande.

### Exemple
<a name="integration-server-sdk5-csharp-describeplayersessions-example"></a>

Cet exemple illustre une demande de toutes les sessions de joueur activement connectées à une session de jeu spécifiée. En omettant *NextToken*et en définissant la valeur *limite* sur 10, les 10 premiers enregistrements de session de joueurs correspondant à la demande Amazon GameLift Servers seront renvoyés.

```
// Set request parameters 
DescribePlayerSessionsRequest describePlayerSessionsRequest = new DescribePlayerSessionsRequest()
{
  GameSessionId = GameLiftServerAPI.GetGameSessionId().Result,    //gets the ID for the current game session
  Limit = 10,
  PlayerSessionStatusFilter = 
    PlayerSessionStatusMapper.GetNameForPlayerSessionStatus(PlayerSessionStatus.ACTIVE)
}; 
// Call DescribePlayerSessions
DescribePlayerSessionsOutcome describePlayerSessionsOutcome = 
  GameLiftServerAPI.DescribePlayerSessions(describePlayerSessionsRequest);
```

## StartMatchBackfill()
<a name="integration-server-sdk5-csharp-startmatchbackfill"></a>

Envoie une demande de recherche de nouveaux joueurs pour des emplacements ouverts dans une session de jeu créée avec FlexMatch. Pour plus d'informations, voir la [fonction de FlexMatch remblayage](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Cette action est asynchrone. Si de nouveaux joueurs sont jumelés, Amazon GameLift Servers fournit des données de matchmaking mises à jour à l'aide de la fonction de rappel. `OnUpdateGameSession()`

Un processus de serveur ne peut comporter qu'une seule requête de renvoi de correspondance à la fois. Pour envoyer une nouvelle requête, appelez d'abord [StopMatchBackfill()](#integration-server-sdk5-csharp-stopmatchbackfill) pour annuler la requête d'origine.

### Syntaxe
<a name="integration-server-sdk5-csharp-startmatchbackfill-syntax"></a>

```
StartMatchBackfillOutcome StartMatchBackfill (StartMatchBackfillRequest startBackfillRequest);
```

### Parameters
<a name="integration-server-sdk5-csharp-startmatchbackfill-parameter"></a>

**[StartMatchBackfillRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-startmatchbackfillrequest)**  
Un `StartMatchBackfillRequest` objet contient des informations relatives à la demande de remblayage.

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-startmatchbackfill-return"></a>

Renvoie un [StartMatchBackfillOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-startmatchbackfilloutcome) objet avec l'identifiant du ticket de remplacement correspondant, ou un échec avec un message d'erreur. 

### Exemple
<a name="integration-server-sdk5-csharp-startmatchbackfill-example"></a>

```
// Build a backfill request
StartMatchBackfillRequest startBackfillRequest = new StartMatchBackfillRequest()
{
  TicketId = "1111aaaa-22bb-33cc-44dd-5555eeee66ff", //optional
  MatchmakingConfigurationArn = "arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig", 
  GameSessionId = GameLiftServerAPI.GetGameSessionId().Result,    // gets ID for current game session
  MatchmakerData matchmakerData = 
    MatchmakerData.FromJson(gameSession.MatchmakerData),  // gets matchmaker data for current players
  // get matchmakerData.Players
  // remove data for players who are no longer connected
  Players = ListOfPlayersRemainingInTheGame
};

// Send backfill request
StartMatchBackfillOutcome startBackfillOutcome = GameLiftServerAPI.StartMatchBackfill(startBackfillRequest);

// Implement callback function for backfill
void OnUpdateGameSession(GameSession myGameSession)
{
  // game-specific tasks to prepare for the newly matched players and update matchmaker data as needed  
}
```

## StopMatchBackfill()
<a name="integration-server-sdk5-csharp-stopmatchbackfill"></a>

Annule une demande de remplacement de match active. Pour plus d'informations, voir la [fonction de FlexMatch remblayage](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

### Syntaxe
<a name="integration-server-sdk5-csharp-stopmatchbackfill-syntax"></a>

```
GenericOutcome StopMatchBackfill (StopMatchBackfillRequest stopBackfillRequest);
```

### Parameters
<a name="integration-server-sdk5-csharp-stopmatchbackfill-parameter"></a>

**[StopMatchBackfillRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-stopmatchbackfillrequest)**  
Un `StopMatchBackfillRequest` objet qui fournit des détails sur le ticket de matchmaking que vous êtes en train d'arrêter.

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-stopmatchbackfill-return"></a>

Renvoie un résultat générique consistant en un succès ou un échec avec un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-stopmatchbackfill-example"></a>

```
// Set backfill stop request parameters
StopMatchBackfillRequest stopBackfillRequest = new StopMatchBackfillRequest(){
  TicketId = "1111aaaa-22bb-33cc-44dd-5555eeee66ff", //optional, if not provided one is autogenerated
  MatchmakingConfigurationArn = "arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig",
  GameSessionId = GameLiftServerAPI.GetGameSessionId().Result    //gets the ID for the current game session
};
GenericOutcome stopBackfillOutcome = GameLiftServerAPI.StopMatchBackfillRequest(stopBackfillRequest);
```

## GetComputeCertificate()
<a name="integration-server-sdk5-csharp-getcomputecertificate"></a>

 Récupère le chemin d'accès au certificat TLS utilisé pour chiffrer la connexion réseau entre le serveur de jeu et votre client de jeu. Vous pouvez utiliser le chemin du certificat lorsque vous enregistrez votre appareil informatique dans un parc Amazon GameLift Servers Anywhere. Pour plus d'informations, voir, [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

### Syntaxe
<a name="integration-server-sdk5-csharp-getcomputecertificate-syntax"></a>

```
GetComputeCertificateOutcome GetComputeCertificate();
```

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-getcomputecertificate-return"></a>

Renvoie un GetComputeCertificateResponse objet contenant les éléments suivants : 
+  CertificatePath: chemin d'accès au certificat TLS sur votre ressource de calcul. Lorsque vous utilisez une flotte Amazon GameLift Servers gérée, ce chemin contient :
  + `certificate.pem`: le certificat de l'utilisateur final. La chaîne de certificats complète est la combinaison des `certificateChain.pem` éléments ajoutés à ce certificat.
  + `certificateChain.pem`: chaîne de certificats qui contient le certificat racine et les certificats intermédiaires.
  + `rootCertificate.pem`: le certificat racine.
  + `privateKey.pem`: clé privée pour le certificat d'utilisateur final.
+ ComputeName: nom de votre ressource de calcul.

### Exemple
<a name="integration-server-sdk5-csharp-getcomputecertificate-example"></a>

```
GetComputeCertificateOutcome getComputeCertificateOutcome = GameLiftServerAPI.GetComputeCertificate();
```

## GetFleetRoleCredentials()
<a name="integration-server-sdk5-csharp-getfleetrolecredentials"></a>

Récupère les informations d'identification du rôle IAM qui autorisent l'interaction avec Amazon GameLift Servers d'autres utilisateurs. Services AWS Pour de plus amples informations, veuillez consulter [Connectez votre serveur de jeu Amazon GameLift Servers hébergé à d'autres AWS ressources](gamelift-sdk-server-resources.md).

### Syntaxe
<a name="integration-server-sdk5-csharp-getfleetrolecredentials-syntax"></a>

```
GetFleetRoleCredentialsOutcome GetFleetRoleCredentials(GetFleetRoleCredentialsRequest request);
```

### Parameters
<a name="integration-server-sdk5-csharp-getfleetrolecredentials-parameters"></a>

[GetFleetRoleCredentialsRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-getfleetrolecredentialsrequest)  
Des informations d'identification de rôle qui étendent un accès limité à vos AWS ressources au serveur de jeu.

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-getfleetrolecredentials-return"></a>

Renvoie un objet [GetFleetRoleCredentialsOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-getfleetrolecredentialsoutcome).

### Exemple
<a name="integration-server-sdk5-csharp-getfleetrolecredentials-example"></a>

```
// form the fleet credentials request  
GetFleetRoleCredentialsRequest getFleetRoleCredentialsRequest = new GetFleetRoleCredentialsRequest(){  
  RoleArn = "arn:aws:iam::123456789012:role/service-role/exampleGameLiftAction"  
};
GetFleetRoleCredentialsOutcome GetFleetRoleCredentialsOutcome credentials = GetFleetRoleCredentials(getFleetRoleCredentialsRequest);
```

## Détruire ()
<a name="integration-server-sdk5-csharp-destroy"></a>

Libère de la mémoire le SDK du serveur de Amazon GameLift Servers jeu. Il est recommandé d'appeler cette méthode après `ProcessEnding()` et avant de terminer le processus. Si vous utilisez une flotte Anywhere et que vous n'interrompez pas les processus du serveur après chaque session de jeu, appelez `Destroy()` puis `InitSDK()` réinitialisez avant de signaler Amazon GameLift Servers que le processus est prêt à héberger une session de jeu avec. `ProcessReady()`

### Syntaxe
<a name="integration-server-sdk5-csharp-destroy-syntax"></a>

```
GenericOutcome Destroy()
```

### Valeur renvoyée
<a name="integration-server-sdk5-csharp-destroy-return"></a>

Renvoie un résultat générique consistant en un succès ou un échec avec un message d'erreur.

### Exemple
<a name="integration-server-sdk5-csharp-destroy-example"></a>

```
// Operations to end game sessions and the server process
GenericOutcome processEndingOutcome = GameLiftServerAPI.ProcessEnding();

// Shut down and destroy the instance of the GameLift Game Server SDK
GenericOutcome destroyOutcome = GameLiftServerAPI.Destroy();

// Exit the process with success or failure
if (processEndingOutcome.Success)
  { 
    Environment.Exit(0); 
  }
else
  {
    Console.WriteLine("ProcessEnding() failed. Error: " + processEndingOutcome.Error.ToString());
    Environment.Exit(-1); 
  }
```