

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 du serveur Go pour Amazon GameLift Servers -- Actions
<a name="integration-server-sdk-go-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).

`GameLiftServerAPI.go`définit les actions du SDK du serveur Go.

# SDK du serveur Go pour Amazon GameLift Servers -- Types de données
<a name="integration-server-sdk-go-datatypes"></a>

Utilisez la référence du SDK du serveur pour intégrer votre jeu multijoueur à des fins d'Amazon GameLift Servershébergement. 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).

`GameLiftServerAPI.go`définit les actions du SDK du serveur Go.

[SDK du serveur Go pour Amazon GameLift Servers -- Actions](integration-server-sdk-go-actions.md)

**Topics**
+ [LogParameters](#integration-server-sdk-go-dataypes-log)
+ [MetricsParameters](#integration-server-sdk-go-dataypes-metrics)
+ [ProcessParameters](#integration-server-sdk-go-dataypes-process)
+ [UpdateGameSession](#integration-server-sdk-go-dataypes-updategamesession)
+ [GameSession](#integration-server-sdk-go-dataypes-gamesession)
+ [ServerParameters](#integration-server-sdk-go-dataypes-serverparameters)
+ [StartMatchBackfillRequest](#integration-server-sdk-go-dataypes-startmatchbackfillrequest)
+ [Joueur](#integration-server-sdk-go-dataypes-player)
+ [DescribePlayerSessionsRequest](#integration-server-sdk-go-dataypes-playersessions)
+ [StopMatchBackfillRequest](#integration-server-sdk-go-dataypes-stopmatchbackfillrequest)
+ [GetFleetRoleCredentialsRequest](#integration-server-sdk-go-dataypes-getfleetrolecredentialsrequest)

## LogParameters
<a name="integration-server-sdk-go-dataypes-log"></a>

Objet identifiant les fichiers générés au cours d'une session de jeu que vous Amazon GameLift Servers souhaitez télécharger et stocker à la fin de la session de jeu. Le serveur de jeu fournit `LogParameters` to dans Amazon GameLift Servers le cadre d'un `ProcessParameters` objet lors d'un [ProcessReady()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processready) appel.


|  |  | 
| --- |--- |
|  **Propriétés**  | Description | 
| LogPaths |  Liste des chemins de répertoire vers les fichiers journaux du serveur de jeu que vous Amazon GameLift Servers souhaitez stocker pour un accès futur. Le processus du serveur génère ces fichiers lors de chaque session de jeu. Vous définissez les chemins et les noms des fichiers sur votre serveur de jeu et vous les stockez dans le répertoire racine du jeu.  Les chemins du journal doivent être absolus. Par exemple, si votre build de jeu stocke les journaux de session de jeu dans un chemin tel que`MyGame\sessionLogs\`, alors le chemin se `c:\game\MyGame\sessionLogs` trouve sur une instance Windows. **Type :** `[]string` **Obligatoire** : non  | 

## MetricsParameters
<a name="integration-server-sdk-go-dataypes-metrics"></a>

Un objet communiquant les paramètres de configuration pour initialiser le système de métriques. Cette configuration est utilisée pour configurer les rapports StatsD, les rapports de crash et le comportement de traitement des métriques. Le serveur de jeu le fournit `MetricsParameters` dans Amazon GameLift Servers le cadre d'un [InitMetrics()](integration-server-sdk-go-actions.md#integration-server-sdk-go-initmetrics) appel.


|  |  | 
| --- |--- |
|  **Propriétés**  | Description | 
| StatsdHost |  L'hôte du serveur StatsD pour les rapports de mesures (par exemple, « localhost »). **Type :** `string` **Obligatoire** : oui  | 
| StatsdPort |  Le port du serveur StatsD pour les rapports de mesures (par exemple, 8125). **Type :** `int` **Obligatoire** : oui  | 
| CrashReporterHost |  L'hébergeur responsable du suivi des accidents et de la surveillance des processus. **Type :** `string` **Obligatoire** : oui  | 
| CrashReporterPort |  Le port Crash Reporter pour le suivi des incidents et la surveillance des processus. **Type :** `int` **Obligatoire** : oui  | 
| FlushIntervalMs |  Intervalle de vidange des métriques en millisecondes. Contrôle la fréquence à laquelle les métriques sont envoyées à StatsD. **Type :** `int` **Obligatoire** : oui  | 
| MaxPacketSize |  Taille de paquet maximale pour les métriques en octets. Limite la taille des paquets UDP envoyés à StatsD. **Type :** `int` **Obligatoire** : oui  | 

## ProcessParameters
<a name="integration-server-sdk-go-dataypes-process"></a>

Objet décrivant la communication entre un processus serveur etAmazon GameLift Servers. Le processus du serveur fournit ces informations à l'Amazon GameLift Serversaide d'un appel à[ProcessReady()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processready).


|  |  | 
| --- |--- |
|  **Propriétés**  | Description | 
| LogParameters | Objet avec des chemins de répertoire vers des fichiers générés au cours d'une session de jeu. Amazon GameLift Serverscopie et stocke les fichiers pour un accès futur.**Type :** `LogParameters`**Obligatoire** : non | 
| OnHealthCheck | La fonction de rappel qui Amazon GameLift Servers appelle le processus du serveur pour demander un rapport d'état de santé. Amazon GameLift Serversappelle cette fonction toutes les 60 secondes et attend une réponse pendant 60 secondes. Le processus du serveur revient TRUE s'il est sain, FALSE sinon sain. Si aucune réponse n'est renvoyée, Amazon GameLift Servers enregistre le processus du serveur comme non sain.**Type :** `OnHealthCheck func() bool`**Obligatoire** : non | 
| OnProcessTerminate | La fonction de rappel qui Amazon GameLift Servers invoque pour forcer l'arrêt du processus du serveur. Après avoir appelé cette fonction, Amazon GameLift Servers attendez 5 minutes que le processus serveur s'arrête et répondez par un [ProcessEnding()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processending) appel avant d'arrêter le processus serveur.**Type :** `OnProcessTerminate func()`**Obligatoire** : oui | 
| OnStartGameSession | La fonction de rappel qui Amazon GameLift Servers appelle pour transmettre un objet de session de jeu mis à jour au processus du serveur. Amazon GameLift Serversappelle cette fonction lorsqu'une demande de remplissage de correspondances a été traitée pour fournir des données de matchmaking mises à jour. Il transmet un [GameSession](#integration-server-sdk-go-dataypes-gamesession) objet, une mise à jour de statut (updateReason) et l'identifiant du ticket de remplacement des matchs.**Type :** `OnStartGameSession func (model.GameSession )`**Obligatoire** : oui | 
| OnUpdateGameSession | La fonction de rappel qui demande de Amazon GameLift Servers transmettre les informations de session de jeu mises à jour au processus du serveur. Amazon GameLift Serversappelle cette fonction après avoir traité une demande de remplissage de correspondance pour fournir des données de matchmaking mises à jour. **Type :** `OnUpdateGameSession func (model.UpdateGameSession)`**Obligatoire** : non | 
| Port | Numéro de port sur lequel le processus serveur écoute les connexions des nouveaux joueurs. La valeur doit être comprise dans la plage de ports configurée pour toutes les flottes déployant cette version de génération du serveur de jeux. Ce numéro de port est inclus dans les objets de session de jeu et de session de joueur, que les sessions de jeu utilisent pour se connecter à un processus serveur.**Type :** `int`**Obligatoire** : oui | 

## UpdateGameSession
<a name="integration-server-sdk-go-dataypes-updategamesession"></a>

Les mises à jour apportées à un objet de session de jeu, y compris la raison pour laquelle la session de jeu a été mise à jour et l'identifiant du ticket de remplissage associé si le remplissage est utilisé pour remplir les sessions des joueurs pendant la session de jeu.


| Propriétés | **Description** | 
| --- | --- | 
| GameSession | Un objet [GameSession](#integration-server-sdk-go-dataypes-gamesession). L'GameSessionobjet contient des propriétés décrivant une session de jeu. **Type :** `GameSession GameSession()`**Obligatoire** : oui | 
| UpdateReason | La raison pour laquelle la session de jeu est mise à jour.**Type :** `UpdateReason UpdateReason()`**Obligatoire** : oui | 
| BackfillTicketId | L'identifiant du ticket de remplacement qui tente de mettre à jour la session de jeu.**Type :** `String`**Obligatoire** : non | 

## GameSession
<a name="integration-server-sdk-go-dataypes-gamesession"></a>

Les détails d'une session de jeu. 


| Propriétés | **Description** | 
| --- | --- | 
| GameSessionId |  Identifiant unique pour la session de jeu. Une session de jeu Amazon Resource Name (ARN) a le format suivant :`arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>`. **Type :** `String` **Obligatoire** : non  | 
| Nom |  Une étiquette descriptive de la session de jeu.  **Type :** `String` **Obligatoire** : non  | 
| FleetId |  Identifiant unique de la flotte sur laquelle s'exécute la session de jeu. **Type :** `String` **Obligatoire** : non  | 
| MaximumPlayerSessionCount |  Le nombre maximum de connexions de joueurs à la session de jeu. **Type :** `Integer` **Obligatoire** : non  | 
|  Port |  Le numéro de port de la session de jeu. Pour se connecter à un serveur de Amazon GameLift Servers jeu, une application a besoin à la fois de l'adresse IP et du numéro de port. **Type :** `Integer` **Obligatoire** : non  | 
| IpAddress |  Adresse IP de la session de jeu. Pour se connecter à un serveur de Amazon GameLift Servers jeu, une application a besoin à la fois de l'adresse IP et du numéro de port. **Type :** `String` **Obligatoire** : non  | 
| GameSessionData |  Ensemble de propriétés de session de jeu personnalisées, mises en forme en tant que valeur de chaîne unique.  **Type :** `String` **Obligatoire** : non  | 
| MatchmakerData |  Les informations sur le processus de matchmaking utilisé pour créer la session de jeu, en syntaxe JSON, formatées sous forme de chaîne. En plus de la configuration de matchmaking utilisée, il contient des données sur tous les joueurs affectés au match, y compris les attributs des joueurs et les affectations des équipes. **Type :** `String` **Obligatoire** : non  | 
| GameProperties |  Ensemble de propriétés personnalisées pour une session de jeu, formatées sous forme de paires clé:valeur. Ces propriétés sont transmises avec une demande de démarrage d'une nouvelle session de jeu. **Type :** `map[string] string` **Obligatoire** : non  | 
| DnsName |  Identifiant DNS attribué à l'instance qui exécute la session de jeu. Les valeurs ont le format suivant : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/gameliftservers/latest/developerguide/integration-server-sdk-go-datatypes.html) Lorsque vous vous connectez à une session de jeu exécutée sur une flotte compatible TLS, vous devez utiliser le nom DNS et non l'adresse IP. **Type :** `String` **Obligatoire** : non  | 

## ServerParameters
<a name="integration-server-sdk-go-dataypes-serverparameters"></a>

Informations utilisées pour maintenir la connexion entre un serveur Amazon GameLift Servers Anywhere et le Amazon GameLift Servers service. Ces informations sont utilisées lors du lancement de nouveaux processus serveur avec[InitSDK()](integration-server-sdk-go-actions.md#integration-server-sdk-go-initsdk). Pour les serveurs hébergés sur des instances EC2 Amazon GameLift Servers gérées, utilisez un objet vide.


| Propriétés | **Description** | 
| --- | --- | 
| WebSocketURL |  Les `GameLiftServerSdkEndpoint` Amazon GameLift Servers retours lorsque vous [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)recherchez une ressource de calcul Amazon GameLift Servers Anywhere. **Type :** `string` **Obligatoire** : oui  | 
| ProcessID |  Un identifiant unique enregistré auprès du processus serveur hébergeant votre jeu. **Type :** `string` **Obligatoire** : oui  | 
| HostID |  Identifiant unique de la ressource de calcul hébergeant le nouveau processus du serveur.  Le `HostID` est celui `ComputeName` utilisé lorsque vous avez enregistré votre ordinateur. Pour de plus amples informations, veuillez consulter [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html). **Type :** `string` **Obligatoire** : oui  | 
| FleetID | Identifiant unique de la flotte dans laquelle le calcul est enregistré. Pour de plus amples informations, veuillez consulter [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Type :** `string`**Obligatoire** : oui | 
| AuthToken | Le jeton d'authentification généré par Amazon GameLift Servers celui-ci authentifie votre serveur auprès deAmazon GameLift Servers. Pour de plus amples informations, veuillez consulter [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Type :** `string`**Obligatoire** : oui | 

## StartMatchBackfillRequest
<a name="integration-server-sdk-go-dataypes-startmatchbackfillrequest"></a>

Informations utilisées pour créer une demande de remplissage par matchmaking. Le serveur de jeu communique ces informations Amazon GameLift Servers lors d'un [StartMatchBackfill()](integration-server-sdk-go-actions.md#integration-server-sdk-go-startmatchbackfill) appel.


| Propriétés | **Description** | 
| --- | --- | 
| GameSessionArn |  L'identifiant unique de session de jeu. L'opération API `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk-go-actions.html#integration-server-sdk-go-getgamesessionid)` renvoie l'identifiant au format ARN. **Type :** `String` **Obligatoire** : oui  | 
| MatchmakingConfigurationArn |  L'identifiant unique (sous la forme d'un ARN) que le système de jumelage doit utiliser pour cette demande. L'ARN de matchmaking pour la session de jeu d'origine se trouve dans l'objet de session de jeu dans la propriété de données du matchmaker. Pour plus d'informations sur les données du système de jumelage, consultez la section Utilisation des données du système de [jumelage.](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html) **Type :** `String` **Obligatoire** : oui  | 
| Joueurs |  Ensemble de données représentant tous les joueurs qui participent actuellement à la session de jeu. Le matchmaker utilise ces informations pour rechercher de nouveaux joueurs qui constituent de bonnes correspondances pour les joueurs actuels. **Type :** `[]model.Player` **Obligatoire** : oui  | 
| TicketId |  L'identifiant unique d'un ticket de demande de matchmaking ou de remplacement de match. Si vous ne fournissez aucune valeur, il en Amazon GameLift Servers génère une. Utilisez cet identifiant pour suivre l'état du ticket de renvoi de correspondance ou annuler la requête si nécessaire.  **Type :** `String` **Obligatoire** : non  | 

## Joueur
<a name="integration-server-sdk-go-dataypes-player"></a>

L'objet qui représente un joueur dans le matchmaking. Lorsqu'une demande de matchmaking démarre, un joueur dispose d'un identifiant de joueur, d'attributs et éventuellement de données de latence. Amazon GameLift Serversajoute des informations sur l'équipe après la fin d'un match.


| Propriétés | **Description** | 
| --- | --- | 
| LatencyInMS |  Ensemble de valeurs exprimées en millisecondes qui indiquent le niveau de latence ressenti par un joueur lorsqu'il est connecté à un lieu.  Si cette propriété est utilisée, le joueur n'est jumelé qu'aux emplacements répertoriés. Si un matchmaker dispose d'une règle qui évalue la latence, les joueurs doivent indiquer la latence pour être mis en relation. **Type :** `map[string] int` **Obligatoire** : non  | 
| PlayerAttributes |  Une collection de paires clé:valeur contenant des informations sur les joueurs à utiliser dans le matchmaking. Les clés d'attribut du joueur doivent correspondre à PlayerAttributes celles utilisées dans un ensemble de règles de matchmaking. Pour plus d'informations sur les attributs des joueurs, consultez [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Type :** `map[string] AttributeValue` **Obligatoire** : non  | 
| PlayerId |  Identifiant unique pour un joueur. **Type :** `String` **Obligatoire** : non  | 
| Team |  Le nom de l'équipe à laquelle le joueur est affecté lors d'un match. Vous définissez le nom de l'équipe dans le jeu de règles de matchmaking. **Type :** `String` **Obligatoire** : non  | 

## DescribePlayerSessionsRequest
<a name="integration-server-sdk-go-dataypes-playersessions"></a>

Objet qui indique les sessions de joueur à récupérer. Le processus du serveur fournit ces informations en [DescribePlayerSessions()](integration-server-sdk-go-actions.md#integration-server-sdk-go-describeplayersessions) appelantAmazon GameLift Servers.


| Propriétés | **Description** | 
| --- | --- | 
| GameSessionID |  Un identifiant de session de jeu unique. Utilisez ce paramètre pour demander toutes les sessions de joueur pour la session de jeu spécifiée.  Le format de l'identifiant de session de jeu est`arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>`. `GameSessionID`Il s'agit d'une chaîne d'identification personnalisée ou d'une chaîne générée.  **Type :** `String` **Obligatoire** : non  | 
| PlayerSessionID |  Identifiant unique d'une session de joueur. Utilisez ce paramètre pour demander une session de joueur spécifique. **Type :** `String` **Obligatoire** : non  | 
| PlayerID |  L'identifiant unique d'un joueur. Utilisez ce paramètre pour demander toutes les sessions de joueur pour un joueur spécifique. Consultez [Générer un joueur IDs](player-sessions-player-identifiers.md). **Type :** `String` **Obligatoire** : non  | 
| PlayerSessionStatusFilter |  État de la session du joueur sur lequel filtrer les résultats. Les statuts de session de joueur possibles incluent : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/gameliftservers/latest/developerguide/integration-server-sdk-go-datatypes.html) **Type :** `String` **Obligatoire** : non  | 
| NextToken |  Le jeton indiquant le début de la page de résultats suivante. Pour spécifier le début du jeu de résultats, ne fournissez aucune valeur. Si vous fournissez un identifiant de session de joueur, ce paramètre est ignoré. **Type :** `String` **Obligatoire** : non  | 
| Limit |  Nombre maximal de résultats à renvoyer. Si vous fournissez un identifiant de session de joueur, ce paramètre est ignoré. **Type :** `int` **Obligatoire** : non  | 

## StopMatchBackfillRequest
<a name="integration-server-sdk-go-dataypes-stopmatchbackfillrequest"></a>

Informations utilisées pour annuler une demande de remplissage par matchmaking. Le serveur de jeu communique ces informations au Amazon GameLift Servers service lors d'un [StopMatchBackfill()](integration-server-sdk-go-actions.md#integration-server-sdk-go-stopmatchbackfill) appel.


| Propriétés | **Description** | 
| --- | --- | 
| GameSessionArn |  Identifiant de session de jeu unique de la demande annulée. **Type :** `string` **Obligatoire** : non  | 
| MatchmakingConfigurationArn |  L'identifiant unique du matchmaker auquel cette demande a été envoyée. **Type :** `string` **Obligatoire** : non  | 
| TicketId |  L'identifiant unique du ticket de demande de remblayage à annuler. **Type :** `string` **Obligatoire** : non  | 

## GetFleetRoleCredentialsRequest
<a name="integration-server-sdk-go-dataypes-getfleetrolecredentialsrequest"></a>

Les informations d'identification du rôle qui étendent l'accès limité à vos AWS ressources au serveur de jeu. Pour plus d'informations, voir,[Configurer un rôle de service IAM pour Amazon GameLift Servers](setting-up-role.md).


| Propriétés | **Description** | 
| --- | --- | 
| RoleArn | L'ARN du rôle de service qui étend un accès limité à vos AWS ressources.**Type :** `string`**Obligatoire** : oui | 
| RoleSessionName | Le nom de la session qui décrit l'utilisation des informations d'identification du rôle.**Type :** `string`**Obligatoire** : oui | 

[SDK du serveur Go pour Amazon GameLift Servers -- Types de données](integration-server-sdk-go-datatypes.md)

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

## GetSdkVersion()
<a name="integration-server-sdk-go-getsdkversion"></a>

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

### Syntaxe
<a name="integration-server-sdk-go-getsdkversion-syntax"></a>

```
func GetSdkVersion() (string, error)
```

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

En cas de succès, renvoie la version actuelle du SDK sous forme de chaîne. La chaîne renvoyée inclut le numéro de version (exemple`5.0.0`). En cas d'échec, renvoie un message d'erreur tel que`common.SdkVersionDetectionFailed`.

### Exemple
<a name="integration-server-sdk-go-getsdkversion-example"></a>

```
version, err := server.GetSdkVersion()
```

## InitMetrics()
<a name="integration-server-sdk-go-initmetrics"></a>

Initialise la collecte de métriques pour le Amazon GameLift Servers SDK. Cette méthode permet de configurer des rapports de mesures pour aider à surveiller les performances et l'état du serveur. Appelez cette méthode après [InitSDK()](#integration-server-sdk-go-initsdk) mais avant[ProcessReady()](#integration-server-sdk-go-processready).

### Syntaxe
<a name="integration-server-sdk-go-initmetrics-syntax"></a>

```
func InitMetrics() error
func InitMetrics(metricsParameters MetricsParameters) error
```

### Parameters
<a name="integration-server-sdk-go-initmetrics-parameter"></a>

MetricsParameters (facultatif)  
Un `MetricsParameters` objet qui configure la collecte de métriques. Si elle n'est pas fournie, la configuration des métriques par défaut est utilisée. La MetricsParameters structure contient les champs suivants :  
+ `StatsdHost`- Le nom d'hôte ou l'adresse IP du serveur StatsD.
+ `StatsdPort`- Le numéro de port du serveur StatsD.
+ `CrashReporterHost`- Le nom d'hôte ou l'adresse IP du service Crash Reporter.
+ `CrashReporterPort`- Le numéro de port du service Crash Reporter.
+ `FlushIntervalMs`- Intervalle en millisecondes pour le vidage des données métriques.
+ `MaxPacketSize`- La taille maximale des paquets de métriques en octets.
Pour plus d'informations sur la MetricsParameters structure, consultez le [SDK de serveur 5.x pour les types de données C\$1.](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-csharp-datatypes.html)

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

En cas de succès, renvoie `nil` une erreur indiquant que la collecte des métriques a été initialisée avec succès.

### Exemple
<a name="integration-server-sdk-go-initmetrics-example"></a>

Initialisez les métriques avec la configuration par défaut :

```
err := server.InitMetrics()
```

Initialisez les métriques avec une configuration personnalisée :

```
metricsParams := MetricsParameters{
    StatsdHost:        "localhost",
    StatsdPort:        8125,
    CrashReporterHost: "localhost",
    CrashReporterPort: 9125,
    FlushIntervalMs:   5000,
    MaxPacketSize:     1024,
}

err := server.InitMetrics(metricsParams)
```

## InitMetricsFromEnvironment()
<a name="integration-server-sdk-go-initmetricsfromenv"></a>

Initialise la collecte de métriques pour le Amazon GameLift Servers SDK à l'aide de la configuration à partir de variables d'environnement. Cette méthode configure le reporting des métriques à l'aide des paramètres par défaut dérivés de l'environnement d'exécution.

Appelez cette méthode après [InitSDK()](#integration-server-sdk-go-initsdk) mais avant[ProcessReady()](#integration-server-sdk-go-processready).

### Syntaxe
<a name="integration-server-sdk-go-initmetricsfromenv-syntax"></a>

```
func InitMetricsFromEnvironment() error
```

### Valeur renvoyée
<a name="integration-server-sdk-go-initmetricsfromenv-return"></a>

En cas de succès, renvoie `nil` une erreur indiquant que la collecte des métriques a été initialisée avec succès à l'aide de la configuration de l'environnement.

### Exemple
<a name="integration-server-sdk-go-initmetricsfromenv-example"></a>

```
err := server.InitMetricsFromEnvironment()
```

## InitSDK()
<a name="integration-server-sdk-go-initsdk"></a>

Initialise le kit SDK Amazon GameLift Servers. Appelez cette méthode au lancement avant que toute autre initialisation associée ne se Amazon GameLift Servers produise. Cette méthode permet de configurer la communication entre le serveur et le Amazon GameLift Servers service.

### Syntaxe
<a name="integration-server-sdk-go-initsdk-syntax"></a>

```
func InitSDK(params ServerParameters) error 
```

### Parameters
<a name="integration-server-sdk-go-initsdk-parameter"></a>

[ServerParameters](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-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 de l'URL WebSocket utilisée pour se 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. 
Pour initialiser un serveur de jeu sur une flotte EC2 Amazon GameLift Servers gérée, créez un `ServerParameters` objet sans paramètres. Avec cet appel, l'Amazon GameLift Serversagent configure l'environnement informatique et se connecte automatiquement au Amazon GameLift Servers service pour vous. 

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

En cas de succès, renvoie `nil` une erreur indiquant que le processus serveur est prêt à être appelé[ProcessReady()](#integration-server-sdk-go-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-sdk-go-initsdk-example"></a>

Amazon GameLift ServersExemple n'importe où

```
//Define the server parameters
serverParameters := ServerParameters {
  WebSocketURL: "wss://us-west-1.api.amazongamelift.com",
  ProcessID: "PID1234",
  HostID: "HardwareAnywhere",
  FleetID: "aarn:aws:gamelift:us-west-1:111122223333:fleet/fleet-9999ffff-88ee-77dd-66cc-5555bbbb44aa",
  AuthToken: "1111aaaa-22bb-33cc-44dd-5555eeee66ff"
}

//Call InitSDK to establish a local connection with the Amazon GameLift Servers Agent to enable further communication.
err := server.InitSDK(serverParameters)
```

Amazon GameLift Serversexemple EC2 géré

```
//Define the server parameters
serverParameters := ServerParameters {}

//Call InitSDK to establish a local connection with the Amazon GameLift Servers Agent to enable further communication.
err := server.InitSDK(serverParameters)
```

## ProcessReady()
<a name="integration-server-sdk-go-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-sdk-go-initsdk) Cette méthode ne doit être appelée qu'une seule fois par processus.

### Syntaxe
<a name="integration-server-sdk-go-processready-syntax"></a>

```
func ProcessReady(param ProcessParameters) error
```

### Parameters
<a name="integration-server-sdk-go-processready-parameter"></a>

**ProcessParameters**  
Un [ProcessParameters](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-process) objet communique les informations suivantes concernant le processus du serveur :  
+ Les noms des méthodes de rappel implémentées dans le code du serveur de jeu invoqué par le Amazon GameLift Servers service pour communiquer avec le processus du serveur.
+ Numéro de port sur lequel le processus serveur est en train d'écouter.
+ Type de [LogParameters](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-log) données contenant le chemin d'accès à tous les fichiers spécifiques à une session de jeu que vous souhaitez capturer et Amazon GameLift Servers stocker.

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

Renvoie une erreur accompagnée d'un message d'erreur en cas d'échec de la méthode. Renvoie `nil` si la méthode est réussie.

### Exemple
<a name="integration-server-sdk-go-processready-example"></a>

Cet exemple illustre les implémentations de l'appel [ProcessReady()](#integration-server-sdk-go-processready) et de la fonction déléguée.

```
// Define the process parameters
processParams := ProcessParameters {
  OnStartGameSession: gameProcess.OnStartGameSession,
  OnUpdateGameSession: gameProcess.OnGameSessionUpdate,
  OnProcessTerminate: gameProcess.OnProcessTerminate,
  OnHealthCheck: gameProcess.OnHealthCheck,
  Port: port,
  LogParameters: LogParameters {    // logging and error example
    []string {"C:\\game\\logs", "C:\\game\\error"}
  }
}

err := server.ProcessReady(processParams)
```

## ProcessEnding()
<a name="integration-server-sdk-go-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-sdk-go-processending-syntax"></a>

```
func ProcessEnding() error
```

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

Renvoie un code d'erreur 0 ou un code d'erreur défini.

### Exemple
<a name="integration-server-sdk-go-processending-example"></a>

```
// operations to end game sessions and the server process
defer func() {
  err := server.ProcessEnding()
  server.Destroy()
  if err != nil {
    fmt.Println("ProcessEnding() failed. Error: ", err)
    os.Exit(-1)
  } else {
    os.Exit(0)
  }
}
```

## ActivateGameSession()
<a name="integration-server-sdk-go-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 est appelée dans le cadre de la fonction de `onStartGameSession()` rappel, après toute initialisation de session de jeu.

### Syntaxe
<a name="integration-server-sdk-go-activategamesession-syntax"></a>

```
func ActivateGameSession() error
```

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

Renvoie une erreur accompagnée d'un message d'erreur en cas d'échec de la méthode.

### Exemple
<a name="integration-server-sdk-go-activategamesession-example"></a>

Cet exemple montre l'`ActivateGameSession()`appel dans le cadre de la fonction de `onStartGameSession()` délégation. 

```
func OnStartGameSession(GameSession gameSession) {
  // game-specific tasks when starting a new game session, such as loading map   
  // Activate when ready to receive players   
  err := server.ActivateGameSession();
}
```

## UpdatePlayerSessionCreationPolicy()
<a name="integration-server-sdk-go-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-sdk-go-updateplayersessioncreationpolicy-syntax"></a>

```
func UpdatePlayerSessionCreationPolicy(policy model.PlayerSessionCreationPolicy) error
```

### Parameters
<a name="integration-server-sdk-go-updateplayersessioncreationpolicy-parameter"></a>

**playerSessionCreationPolitique**  
Valeur de chaîne indiquant si la session de jeu accepte de nouveaux joueurs.   
Les valeurs valides sont les suivantes :  
+ **`model.AcceptAll`**— Acceptez toutes les sessions pour nouveaux joueurs.
+ **`model.DenyAll`**— Refusez toutes les sessions pour les nouveaux joueurs.

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

Renvoie une erreur avec un message d'erreur en cas d'échec.

### Exemple
<a name="integration-server-sdk-go-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.

```
err := server.UpdatePlayerSessionCreationPolicy(model.AcceptAll)
```

## GetGameSessionId()
<a name="integration-server-sdk-go-getgamesessionid"></a>

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

### Syntaxe
<a name="integration-server-sdk-go-getgamesessionid-syntax"></a>

```
func GetGameSessionID() (string, error)
```

### Parameters
<a name="integration-server-sdk-go-getgamesessionid-parameter"></a>

Cette action n'a aucun paramètre.

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

En cas de succès, renvoie l'identifiant de session de jeu et aucune erreur. Pour les processus inactifs qui ne sont pas encore activés lors d'une session de jeu, l'appel renvoie une chaîne vide et une `nil` erreur.

### Exemple
<a name="integration-server-sdk-go-getgamesessionid-example"></a>

```
gameSessionID, err := server.GetGameSessionID()
```

## GetTerminationTime()
<a name="integration-server-sdk-go-getterm"></a>

Renvoie l'heure à laquelle il est prévu d'arrêter un processus serveur si une heure de fin 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 de la taille.
+ Lorsqu'une instance est interrompue en raison d'une interruption [ponctuelle](spot-tasks.md).

### Syntaxe
<a name="integration-server-sdk-go-getterm-syntax"></a>

```
func GetTerminationTime() (int64, error)
```

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

En cas de succès, renvoie l'horodatage en secondes pendant lequel le processus du serveur est programmé pour s'arrêter et une `nil` erreur s'est terminée. 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-sdk-go-getterm-example"></a>

```
terminationTime, err := server.GetTerminationTime()
```

## AcceptPlayerSession()
<a name="integration-server-sdk-go-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 `RESERVED` à`ACTIVE`. 

### Syntaxe
<a name="integration-server-sdk-go-acceptplayersession-syntax"></a>

```
func AcceptPlayerSession(playerSessionID string) error
```

### Parameters
<a name="integration-server-sdk-go-acceptplayersession-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-sdk-go-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-sdk-go-acceptplayersession-example"></a>

Cet exemple traite une demande de connexion qui inclut la validation et le rejet d'une session de joueur non valide. IDs 

```
func ReceiveConnectingPlayerSessionID(conn Connection, playerSessionID string) {
    err := server.AcceptPlayerSession(playerSessionID)
    if err != nil {
        connection.Accept()
    } else {
        connection.Reject(err.Error())
    }
}
```

## RemovePlayerSession()
<a name="integration-server-sdk-go-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-sdk-go-removeplayersession-syntax"></a>

```
func RemovePlayerSession(playerSessionID string) error
```

### Parameters
<a name="integration-server-sdk-go-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-sdk-go-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-sdk-go-removeplayersession-example"></a>

```
err := server.RemovePlayerSession(playerSessionID)
```

## DescribePlayerSessions()
<a name="integration-server-sdk-go-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 méthode pour obtenir des informations sur les points suivants :
+ Une session solo
+ Toutes les sessions des joueurs au cours d'une session de jeu
+ Toutes les sessions de joueur associées à un identifiant de joueur unique

### Syntaxe
<a name="integration-server-sdk-go-describeplayersessions-syntax"></a>

```
func DescribePlayerSessions(req request.DescribePlayerSessionsRequest) (result.DescribePlayerSessionsResult, error) {
	return srv.describePlayerSessions(&req)
}
```

### Parameters
<a name="integration-server-sdk-go-describeplayersessions-parameter"></a>

**[DescribePlayerSessionsRequest](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-playersessions)**  
Un `DescribePlayerSessionsRequest` objet décrit les sessions de joueur à récupérer.

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

En cas de succès, renvoie un `DescribePlayerSessionsResult` objet contenant un ensemble d'objets de session de joueur correspondant aux paramètres de la demande.

### Exemple
<a name="integration-server-sdk-go-describeplayersessions-example"></a>

Cet exemple demande 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, Amazon GameLift Servers renvoie les 10 premiers enregistrements de session de joueur correspondant à la demande.

```
// create request
describePlayerSessionsRequest := request.NewDescribePlayerSessions() 
describePlayerSessionsRequest.GameSessionID, _ = server.GetGameSessionID() // get ID for the current game session
describePlayerSessionsRequest.Limit = 10                                 // return the first 10 player sessions
describePlayerSessionsRequest.PlayerSessionStatusFilter = "ACTIVE"         // Get all player sessions actively connected to the game session

describePlayerSessionsResult, err := server.DescribePlayerSessions(describePlayerSessionsRequest)
```

## StartMatchBackfill()
<a name="integration-server-sdk-go-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-sdk-go-stopmatchbackfill) pour annuler la requête d'origine.

### Syntaxe
<a name="integration-server-sdk-go-startmatchbackfill-syntax"></a>

```
func StartMatchBackfill(req request.StartMatchBackfillRequest) (result.StartMatchBackfillResult, error)
```

### Parameters
<a name="integration-server-sdk-go-startmatchbackfill-parameter"></a>

**[StartMatchBackfillRequest](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-startmatchbackfillrequest)**  
Un StartMatchBackfillRequest objet communique les informations suivantes :  
+ ID de ticket à attribuer à la requête de renvoi. Ces informations sont facultatives ; si aucun identifiant n'est fourni, il en Amazon GameLift Servers génère un.
+ Matchmaker auquel envoyer la requête. L'ARN de configuration complet est obligatoire. Cette valeur se trouve dans les données du matchmaker de la session de jeu.
+ ID de la session de jeu à compléter.
+ Les données de matchmaking disponibles pour les joueurs actuels de la session de jeu.

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

Renvoie un `StartMatchBackfillResult` objet avec l'identifiant du ticket de remplacement correspondant, ou un échec avec un message d'erreur. 

### Exemple
<a name="integration-server-sdk-go-startmatchbackfill-example"></a>

```
// form the request
startBackfillRequest := request.NewStartMatchBackfill()
startBackfillRequest.RequestID = "1111aaaa-22bb-33cc-44dd-5555eeee66ff"          // optional
startBackfillRequest.MatchmakingConfigurationArn = "arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig"
var matchMaker model.MatchmakerData
if err := matchMaker.UnmarshalJSON([]byte(gameSession.MatchmakerData)); err != nil {    
    return
}
startBackfillRequest.Players = matchMaker.Players
res, err := server.StartMatchBackfill(startBackfillRequest)

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

## StopMatchBackfill()
<a name="integration-server-sdk-go-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-sdk-go-stopmatchbackfill-syntax"></a>

```
func StopMatchBackfill(req request.StopMatchBackfillRequest) error
```

### Parameters
<a name="integration-server-sdk-go-stopmatchbackfill-parameter"></a>

**[StopMatchBackfillRequest](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-stopmatchbackfillrequest)**  
Un StopMatchBackfillRequest objet qui identifie le ticket de matchmaking à annuler :   
+ L'identifiant du ticket attribué à la demande de remblayage.
+ L'entremetteur à qui la demande de remblayage a été envoyée.
+ La session de jeu associée à la demande de remplacement.

### Valeur renvoyée
<a name="integration-server-sdk-go-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-sdk-go-stopmatchbackfill-example"></a>

```
stopBackfillRequest := request.NewStopMatchBackfill()  // Use this function to create request
stopBackfillRequest.TicketID = "1111aaaa-22bb-33cc-44dd-5555eeee66ff"
stopBackfillRequest.MatchmakingConfigurationArn = "arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig"
                
//error
err := server.StopMatchBackfill(stopBackfillRequest)
```

## GetComputeCertificate()
<a name="integration-server-sdk-go-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 de plus amples informations, veuillez consulter [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

### Syntaxe
<a name="integration-server-sdk-go-getcomputecertificate-syntax"></a>

```
func GetComputeCertificate() (result.GetComputeCertificateResult, error)
```

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

Renvoie un `GetComputeCertificateResult` 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-sdk-go-getcomputecertificate-example"></a>

```
tlsCertificate, err := server.GetFleetRoleCredentials(getFleetRoleCredentialsRequest)
```

## GetFleetRoleCredentials()
<a name="integration-server-sdk-go-getfleetrolecredentials"></a>

Récupère les informations d'identification du rôle de service que vous créez pour étendre les autorisations à votre interlocuteur Services AWS . Amazon GameLift Servers Ces informations d'identification permettent à votre serveur de jeu d'utiliser vos AWS ressources. Pour de plus amples informations, veuillez consulter [Configurer un rôle de service IAM pour Amazon GameLift Servers](setting-up-role.md).

### Syntaxe
<a name="integration-server-sdk-go-getfleetrolecredentials-syntax"></a>

```
func GetFleetRoleCredentials(
  req request.GetFleetRoleCredentialsRequest,
) (result.GetFleetRoleCredentialsResult, error) {
  return srv.getFleetRoleCredentials(&req)
}
```

### Parameters
<a name="integration-server-sdk-go-getfleetrolecredentials-parameters"></a>

[GetFleetRoleCredentialsRequest](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-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-sdk-go-getfleetrolecredentials-return"></a>

Renvoie un `GetFleetRoleCredentialsResult` objet contenant les éléments suivants : 
+ AssumedRoleUserArn - Le nom de ressource Amazon (ARN) de l'utilisateur auquel appartient le rôle de service. 
+ AssumedRoleId - L'ID de l'utilisateur auquel appartient le rôle de service. 
+ AccessKeyId - L'ID de clé d'accès pour authentifier et fournir un accès à vos AWS ressources. 
+ SecretAccessKey - L'identifiant de la clé d'accès secrète pour l'authentification. 
+ SessionToken - Un jeton pour identifier la session active en cours qui interagit avec vos AWS ressources. 
+ Expiration : délai avant l'expiration des informations d'identification de votre session.

### Exemple
<a name="integration-server-sdk-go-getfleetrolecredentials-example"></a>

```
// form the customer credentials request
getFleetRoleCredentialsRequest := request.NewGetFleetRoleCredentials()
getFleetRoleCredentialsRequest.RoleArn = "arn:aws:iam::123456789012:role/service-role/exampleGameLiftAction"

credentials, err := server.GetFleetRoleCredentials(getFleetRoleCredentialsRequest)
```

## Détruire ()
<a name="integration-server-sdk-go-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-sdk-go-destroy-syntax"></a>

```
func Destroy() error {
	return srv.destroy()
}
```

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

Renvoie une erreur accompagnée d'un message d'erreur en cas d'échec de la méthode.

### Exemple
<a name="integration-server-sdk-go-destroy-example"></a>

```
// operations to end game sessions and the server process
defer func() {
  err := server.ProcessEnding()
  server.Destroy()
  if err != nil {
    fmt.Println("ProcessEnding() failed. Error: ", err)
    os.Exit(-1)
  } else {
    os.Exit(0)
  }
}
```