

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Server SDK 5.x per Amazon GameLift Servers
<a name="reference-serversdk"></a>

Questa sezione fornisce la documentazione di riferimento per il server SDK 5.x for. Amazon GameLift Servers L'SDK del server fornisce le funzionalità di base utilizzate dal server di gioco per interagire con il servizio. Amazon GameLift Servers Ad esempio, il server di gioco riceve dal servizio richieste di avvio e interruzione delle sessioni di gioco e fornisce aggiornamenti regolari sullo stato delle sessioni di gioco al servizio. Integra i tuoi server di gioco con l'SDK del server prima di distribuirli per l'hosting.

Usa questo riferimento all'SDK del server per integrare i tuoi server di gioco multiplayer personalizzati con cui ospitare. Amazon GameLift Servers Per indicazioni sul processo di integrazione, consulta[Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server](gamelift-sdk-server-api.md).

L'ultima versione principale del server SDK for Amazon GameLift Servers è la 5.x. Le seguenti funzionalità di hosting richiedono l'uso della versione 5.x: 
+ Amazon GameLift ServersOvunque
+ Amazon GameLift Serversplugin per Unreal Engine e Unity

**Nota**  
Se devi utilizzare la versione 4.x o precedente dell'SDK del server, consulta la documentazione e le informazioni [Server SDK per la Amazon GameLift Servers versione 4 e precedenti](reference-serversdk4.md) per il download.

**Topics**
+ [Aggiornamenti nel server SDK 5 per Amazon GameLift Servers](#reference-serversdk5-about)
+ [Esegui la migrazione al server SDK 5.x per Amazon GameLift Servers](reference-serversdk5-migration.md)
+ [Server C\$1\$1 SDK 5.x per -- Azioni Amazon GameLift Servers](integration-server-sdk5-cpp-actions.md)
+ [Server C\$1 SDK 5.x per -- Azioni Amazon GameLift Servers](integration-server-sdk5-csharp-actions.md)
+ [Go server SDK per Amazon GameLift Servers -- Azioni](integration-server-sdk-go-actions.md)
+ [Server C\$1\$1 (Unreal) SDK 5.x per -- Azioni Amazon GameLift Servers](integration-server-sdk5-unreal-actions.md)

## Aggiornamenti nel server SDK 5 per Amazon GameLift Servers
<a name="reference-serversdk5-about"></a>

I server di gioco ospitati utilizzano l'SDK del server Amazon GameLift Servers per comunicare con il Amazon GameLift Servers servizio e avviare e gestire le sessioni di gioco per i giocatori. L'ultima versione, Amazon GameLift Servers server SDK 5, offre una serie di miglioramenti e supporto per nuove Amazon GameLift Servers funzionalità. Se la versione del tuo server di gioco utilizza attualmente Amazon GameLift Servers server SDK 4 o versioni precedenti, segui le indicazioni riportate in questo argomento per aggiornare i tuoi giochi. 

Amazon GameLift Serversla versione 5.0.0 e successive dell'SDK del server include questi aggiornamenti:
+ Linguaggi espansi: le librerie sono disponibili nelle seguenti lingue: C\$1\$1, C\$1, Go. Puoi creare le librerie C\$1\$1 da utilizzare con Unreal Engine.
+ Supporto per i plug-in del motore di gioco: i plug-in Amazon GameLift Servers autonomi per Unreal Engine e Unity richiedono Amazon GameLift Servers le librerie SDK 5 del server. Questi plugin offrono flussi di lavoro guidati per l'integrazione, il test e la distribuzione dei giochi per l'hosting. Amazon GameLift Servers Vedi e documentazione. [Amazon GameLift Serversplugin per Unity (server SDK 5.x)](unity-plug-in.md) [Amazon GameLift Serversplugin per Unreal Engine](unreal-plugin.md)
+ Amazon GameLift ServersSupporto ovunque: con le flotte Anywhere puoi configurare le tue risorse di hosting per utilizzare le Amazon GameLift Servers funzionalità (incluso il matchmaking). Aggiungi l'Amazon GameLift Serversagente per automatizzare la gestione del ciclo di vita delle sessioni di gioco. Usa le flotte Anywhere per l'hosting di produzione con hardware locale o configura ambienti di test per un rapido sviluppo iterativo di giochi. [See [Hosting ovunque](gamelift-intro-flavors.md#gamelift-intro-flavors-hosting-anywhere) and the Agent. Amazon GameLift Servers](https://github.com/aws/amazon-gamelift-agent)
+ Strumenti di test aggiornati: la funzione Amazon GameLift Servers Anywhere ti consente di configurare ambienti di test locali o basati sul cloud per i tuoi giochi. Configura i test con o senza l'Amazon GameLift Serversagente. Questi strumenti sostituiscono Amazon GameLift Servers Local. Consultare [Configura i test locali con Amazon GameLift Servers Anywhere](integration-testing.md).
+ Soluzione .NET consolidata per C\$1: il server C\$1 SDK 5.1\$1 supporta .NET Framework 4.6.2 (aggiornato dalla versione 4.6.1) e.NET 6.0 in un'unica soluzione. .NET Standard 2.1 è disponibile con le librerie create da Unity.
+ Nuova `Compute` risorsa: questa nuova risorsa combina diversi tipi di risorse di hosting. Include risorse di hosting basate sul cloud (flotte gestite EC2 o container) e risorse di hosting controllate dal cliente (flotte Anywhere). Include i seguenti aggiornamenti: 
  + Le nuove chiamate API per la `Compute` risorsa includono: [ListCompute()](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_ListCompute.html), [DescribeCompute()](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_DescribeCompute.html) e [GetComputeAccess()](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAccess.html). Queste azioni restituiscono informazioni sulle risorse di hosting per qualsiasi tipo di Amazon GameLift Servers flotta. In generale, per le flotte con server di gioco che utilizzano il server SDK 5.x, utilizza le azioni specifiche del computer per sostituire le azioni specifiche dell'istanza. [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_DeregisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_DeregisterCompute.html)
  + Nuova metrica `ActiveCompute` con CloudWatch dimensioni `FleetId``Location`, e. `ComputeType` Questa metrica sostituisce la metrica precedente. `ActiveInstances`
+ Amazon EC2 Systems Manager (SSM) per l'accesso remoto: per una maggiore sicurezza, utilizza SSM anziché SSH per la connessione a istanze in flotte gestite. Amazon GameLift Servers Consultare [Connect a flotte di istanze](fleets-remote-access.md).

# Esegui la migrazione al server SDK 5.x per Amazon GameLift Servers
<a name="reference-serversdk5-migration"></a>

Per aggiornare un progetto di gioco per utilizzare la versione 5.x del server SDK, apporta le seguenti modifiche:

**Nota**  
Se devi continuare a utilizzare la versione 4.x o precedente dell'SDK del server, consulta la documentazione e le informazioni sul [Server SDK per la Amazon GameLift Servers versione 4 e precedenti](reference-serversdk4.md) download. [In particolare, per la versione SDK 4.0.2, puoi scaricarla dalle versioni ufficiali. GitHub ](https://github.com/amazon-gamelift/amazon-gamelift-servers-csharp-server-sdk/releases)

1. Scarica l'SDK del server più recente per il Amazon GameLift Servers pacchetto per il tuo ambiente di sviluppo **[[Scarica](https://aws.amazon.com/gamelift/servers/getting-started-sdks/)** il sito]. Segui le istruzioni di installazione contenute nel `Readme` file per il pacchetto e la versione scaricati. Consulta queste istruzioni per utilizzare il server SDKs con il tuo progetto di gioco.
   + [Per ambienti di sviluppo che utilizzano C\$1\$1, C\$1 o Go](gamelift-sdk-server-api.md)
   + [Per progetti Unreal Engine (SDK del server C\$1\$1 solo per le librerie Unreal)](integration-engines-setup-unreal.md)
   + [Per i progetti Unity (SDK del server C\$1 solo per le librerie Unity)](integration-engines-unity-using.md)
   + [Da utilizzare con il Amazon GameLift Servers plugin per Unreal Engine](unreal-plugin.md)
   + [Da usare con il Amazon GameLift Servers plugin per Unity](unity-plug-in.md)

1. Aggiorna il codice del server come segue:
   + Cambia la funzione di callback del codice server `onCreateGameSession()` in`onStartGameSession()`.
   + Aggiorna gli `InitSDK()` input in modo appropriato: 
     + Se hai intenzione di distribuire il server di gioco, crea una flotta EC2 Amazon GameLift Servers gestita o una flotta Anywhere con l'agente: Amazon GameLift Servers 

       [Chiama `InitSDK()` senza parametri ([C\$1\$1) (C\$1](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk)[) (Unreal).](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initsdk)](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-initsdk) Questa chiamata configura l'ambiente di calcolo e una WebSocket connessione al servizio. Amazon GameLift Servers 
     + Se hai intenzione di utilizzare il server di gioco, crea una flotta Anywhere senza l'Amazon GameLift Serversagente:

       [Chiama `InitSDK()` con i parametri del server ([C\$1\$1](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk-anywhere)) ([C\$1) (Unreal).](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initsdk-anywhere)](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-initsdk-anywhere) Un processo del server di gioco utilizza questi parametri per stabilire una connessione con il servizio. Amazon GameLift Servers

1. Se la build del server di gioco o altre applicazioni ospitate comunicano con altre AWS risorse durante l'esecuzione, dovrai modificare il modo in cui l'applicazione accede a tali risorse. Sostituisci l'uso di `AssumeRoleCredentials` con il nuovo server SDK action `GetFleetRoleCredentials()` (per i server di gioco) o usa credenziali condivise (per altre applicazioni). Per ulteriori informazioni su come implementare questa modifica, consulta. [Connect il server di gioco Amazon GameLift Servers ospitato ad altre AWS risorse](gamelift-sdk-server-resources.md)

1. [Se il progetto ha chiamato l'azione SDK del server `GetInstanceCertificate()` per recuperare un certificato TLS, modifica il codice per utilizzare invece il nuovo `GetComputeCertificate()` ([C\$1\$1) (C\$1](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-getcomputecertificate)[) (Unreal).](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-getcomputecertificate)](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-getcomputecertificate)

1. Quando carichi la build del gioco su Amazon GameLift Servers (ad esempio con [upload-build](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/upload-build.html) o [CreateBuild())](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateBuild.html), imposta il `ServerSdkVersion` parametro sulla versione 5.x che stai utilizzando (questo parametro attualmente è predefinito su 4.0.2). Questo parametro deve corrispondere alle librerie SDK del server effettive nella build del server di gioco. Se specifichi la versione sbagliata per una build del server di gioco caricata, tutte le flotte create con quella build falliranno. Per informazioni, consulta [Crea un server di gioco costruito per Amazon GameLift Servers](gamelift-build-cli-uploading.md).

   L'esempio seguente illustra come specificare la versione SDK del server: 

   ```
   aws gamelift upload-build \
       --operating-system AMAZON_LINUX_2023 \
       --server-sdk-version "5.0.0" \
       --build-root "~/mygame" \
       --name "My Game Nightly Build" \
       --build-version "build 255" \
       --region us-west-2
   ```

1. Se utilizzi script per connetterti in remoto a flotte gestite, aggiorna gli script per utilizzare il nuovo processo, come descritto in. [Connect a flotte di istanze](fleets-remote-access.md)

# Server C\$1\$1 SDK 5.x per -- Azioni Amazon GameLift Servers
<a name="integration-server-sdk5-cpp-actions"></a>

Usa il riferimento all'SDK 5.x del server per integrare il tuo gioco multiplayer con cui ospitarlo. Amazon GameLift Servers Per indicazioni sul processo di integrazione, consulta. [Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server](gamelift-sdk-server-api.md)

**Nota**  
Questo argomento descrive l'API Amazon GameLift Servers C\$1\$1 che è possibile utilizzare quando si crea con la libreria standard C\$1\$1 ()`std`. In particolare, questa documentazione si applica al codice compilato con l'opzione. `-DDGAMELIFT_USE_STD=1` 

# Server C\$1\$1 SDK 5.x per Amazon GameLift Servers -- Tipi di dati
<a name="integration-server-sdk5-cpp-datatypes"></a>

Usa il riferimento all'SDK 5.x del server Amazon GameLift Servers C\$1\$1 per integrare il tuo gioco multiplayer con cui ospitare. Amazon GameLift Servers Per indicazioni sul processo di integrazione, consulta. [Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server](gamelift-sdk-server-api.md)

**Nota**  
Questo argomento descrive l'API Amazon GameLift Servers C\$1\$1 che è possibile utilizzare quando si crea con la libreria standard C\$1\$1 ()`std`. In particolare, questa documentazione si applica al codice compilato con l'opzione. `-DDGAMELIFT_USE_STD=1` 

[Server C\$1\$1 SDK 5.x per -- Azioni Amazon GameLift Servers](integration-server-sdk5-cpp-actions.md)

**Topics**
+ [LogParameters](#integration-server-sdk5-cpp-dataypes-log)
+ [MetricsParameters](#integration-server-sdk5-cpp-datatypes-metricsparameters)
+ [ProcessParameters](#integration-server-sdk5-cpp-dataypes-process)
+ [UpdateGameSession](#integration-server-sdk5-cpp-dataypes-updategamesession)
+ [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession)
+ [ServerParameters](#integration-server-sdk5-cpp-dataypes-serverparameters)
+ [StartMatchBackfillRequest](#integration-server-sdk5-cpp-dataypes-startmatchbackfillrequest)
+ [Player](#integration-server-sdk5-cpp-dataypes-player)
+ [DescribePlayerSessionsRequest](#integration-server-sdk5-cpp-dataypes-playersessions)
+ [StopMatchBackfillRequest](#integration-server-sdk5-cpp-dataypes-stopmatchbackfillrequest)
+ [AttributeValue](#integration-server-sdk5-cpp-dataypes-attributevalue)
+ [GetFleetRoleCredentialsRequest](#integration-server-sdk5-cpp-dataypes-getfleetrolecredentialsrequest)
+ [AwsLongOutcome](#integration-server-sdk5-cpp-datatypes-awslongoutcome)
+ [AwsStringOutcome](#integration-server-sdk5-cpp-datatypes-awsstringoutcome)
+ [DescribePlayerSessionsOutcome](#integration-server-sdk5-cpp-datatypes-describeplayersessionsoutcome)
+ [DescribePlayerSessionsResult](#integration-server-sdk5-cpp-datatypes-describeplayersessionsresult)
+ [GenericOutcome](#integration-server-sdk5-cpp-datatypes-genericoutcome)
+ [GenericOutcomeCallable](#integration-server-sdk5-cpp-datatypes-genericoutcomecallable)
+ [PlayerSession](#integration-server-sdk5-cpp-datatypes-playersession)
+ [StartMatchBackfillOutcome](#integration-server-sdk5-cpp-datatypes-startmatchbackfilloutcome)
+ [StartMatchBackfillResult](#integration-server-sdk5-cpp-datatypes-startmatchbackfillresult)
+ [GetComputeCertificateOutcome](#integration-server-sdk5-cpp-datatypes-getcomputecertificateoutcome)
+ [GetComputeCertificateResult](#integration-server-sdk5-cpp-datatypes-getcomputecertificateresult)
+ [GetFleetRoleCredentialsOutcome](#integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsoutcome)
+ [GetFleetRoleCredentialsResult](#integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsresult)
+ [Inizialo SDKOutcome](#integration-server-sdk5-cpp-datatypes-initsdkoutcome)
+ [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror)
+ [enumerazioni;](#integration-server-sdk5-cpp-dataypes-enums)

## LogParameters
<a name="integration-server-sdk5-cpp-dataypes-log"></a>

Un oggetto che identifica i file generati durante una sessione di gioco che desideri caricare e archiviare Amazon GameLift Servers al termine della sessione di gioco. Il server di gioco `LogParameters` lo fornisce Amazon GameLift Servers come parte di un `ProcessParameters` oggetto in una [ProcessReady()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-processready) chiamata.


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| LogPaths |  L'elenco dei percorsi di directory dei file di registro del server di gioco che desideri Amazon GameLift Servers archiviare per accessi futuri. Il processo del server genera questi file durante ogni sessione di gioco. Definisci i percorsi e i nomi dei file nel tuo server di gioco e li memorizzi nella directory di build del gioco principale.  I percorsi di registro devono essere assoluti. Ad esempio, se la build del gioco memorizza i log delle sessioni di gioco in un percorso simile`MyGame\sessionLogs\`, il percorso si troverebbe `c:\game\MyGame\sessionLogs` su un'istanza di Windows. **Tipo:** `std:vector<std::string>` **Obbligatorio:** no  | 

## MetricsParameters
<a name="integration-server-sdk5-cpp-datatypes-metricsparameters"></a>

Usa questo tipo di dati per configurare la raccolta delle metriche e la segnalazione degli arresti anomali per il server di gioco. Il server di gioco comunica con `MetricsParameters` durante una Amazon GameLift Servers [InitMetrics()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initmetrics) chiamata.


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| StatsdHost |  Il nome host o l'indirizzo IP del server StatSD per la raccolta delle metriche. **Tipo:** `std::string` **Obbligatorio:** no  | 
| StatsdPort |  Il numero di porta del server StatSD per la raccolta delle metriche. **Tipo:** `int` **Obbligatorio:** no  | 
| CrashReporterHost |  Il nome host o l'indirizzo IP del server crash reporter. **Tipo:** `std::string` **Obbligatorio:** no  | 
| CrashReporterPort |  Il numero di porta del server crash reporter. **Tipo:** `int` **Obbligatorio:** no  | 
| FlushIntervalMs |  L'intervallo in millisecondi per il trasferimento dei dati delle metriche al server. **Tipo:** `int` **Obbligatorio:** no  | 
| MaxPacketSize |  La dimensione massima in byte per i pacchetti di metriche inviati al server. **Tipo:** `int` **Obbligatorio:** no  | 

## ProcessParameters
<a name="integration-server-sdk5-cpp-dataypes-process"></a>

Questo tipo di dati contiene l'insieme di parametri inviati a in aAmazon GameLift Servers. [ProcessReady()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-processready)


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| LogParameters | Un oggetto con percorsi di directory ai file generati durante una sessione di gioco. Amazon GameLift Serverscopia e archivia i file per accessi futuri.**Tipo:** `Aws::GameLift::Server::LogParameters`**Obbligatorio:** no | 
| OnHealthCheck | La funzione di callback che Amazon GameLift Servers richiama per richiedere un rapporto sullo stato di salute del processo del server. Amazon GameLift Serverschiama questa funzione ogni 60 secondi e attende una risposta per 60 secondi. Il processo del server ritorna TRUE se integro, FALSE se non integro. Se non viene restituita alcuna risposta, Amazon GameLift Servers registra il processo del server come non integro.**Tipo:** `std::function<bool()> onHealthCheck`**Obbligatorio:** no | 
| OnProcessTerminate | La funzione di callback che Amazon GameLift Servers richiama per forzare l'arresto del processo server. Dopo aver chiamato questa funzione, Amazon GameLift Servers attende 5 minuti che il processo server si spenga e risponda con una [ProcessEnding()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-processending) chiamata prima di chiudere il processo server.**Tipo:** `std::function<void()> onProcessTerminate`**Obbligatorio:** sì | 
| OnStartGameSession | La funzione di callback che Amazon GameLift Servers richiama l'attivazione di una nuova sessione di gioco. Amazon GameLift Serverschiama questa funzione in risposta a una richiesta del client. [CreateGameSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateGameSession.html) La funzione di callback passa un [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession) oggetto.**Tipo:** `const std::function<void(Aws::GameLift::Model::GameSession)> onStartGameSession`**Obbligatorio:** sì | 
| OnUpdateGameSession | La funzione di callback che Amazon GameLift Servers richiama per passare un oggetto di sessione di gioco aggiornato al processo del server. Amazon GameLift Serverschiama questa funzione quando è stata elaborata una richiesta di match backfill per fornire dati aggiornati sul matchmaker. Passa un [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession) oggetto, uno status update (updateReason) e l'ID del ticket match backfill.**Tipo:** `std::function<void(Aws::GameLift::Server::Model::UpdateGameSession)> onUpdateGameSession`**Obbligatorio:** no | 
| Porta | Il numero di porta su cui il processo server ascolta le connessioni di nuovi giocatori. Il valore deve rientrare nella gamma di porte configurate per qualsiasi parco istanze che distribuisce questa build del server di gioco. Questo numero di porta è incluso nella sessione di gioco e negli oggetti della sessione del giocatore utilizzati dalle sessioni di gioco per la connessione a un processo server.**Tipo:** `Integer`**Obbligatorio:** sì | 

## UpdateGameSession
<a name="integration-server-sdk5-cpp-dataypes-updategamesession"></a>

Questo tipo di dati viene aggiornato a un oggetto della sessione di gioco, che include il motivo per cui la sessione di gioco è stata aggiornata e il relativo ID del ticket di backfill se il backfill viene utilizzato per riempire le sessioni dei giocatori nella sessione di gioco.


| Properties | **Descrizione** | 
| --- | --- | 
| GameSession | Oggetto [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession). L'GameSessionoggetto contiene proprietà che descrivono una sessione di gioco. **Tipo:** `Aws::GameLift::Server::GameSession`**Obbligatorio:** sì | 
| UpdateReason | Il motivo per cui la sessione di gioco viene aggiornata.**Tipo:** `Aws::GameLift::Server::UpdateReason`**Obbligatorio:** sì | 
| BackfillTicketId | L'ID del ticket di backfill che tenta di aggiornare la sessione di gioco.**Tipo:** `std::string`**Obbligatorio:** no | 

## GameSession
<a name="integration-server-sdk5-cpp-dataypes-gamesession"></a>

Questo tipo di dati fornisce i dettagli di una sessione di gioco. 


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionId |  Un identificatore univoco per la sessione di gioco. L'ARN di una sessione di gioco ha il seguente formato:. `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>` **Tipo:** `std::string` **Obbligatorio:** no  | 
| Name |  Un'etichetta descrittiva della sessione di gioco.  **Tipo:** `std::string` **Obbligatorio:** no  | 
| FleetId |  Un identificatore univoco per la flotta su cui è in esecuzione la sessione di gioco. **Tipo:** `std::string` **Obbligatorio:** no  | 
| MaximumPlayerSessionCount |  Il numero massimo di connessioni dei giocatori alla sessione di gioco. **Tipo:** `int` **Obbligatorio:** no  | 
| Porta |  Il numero di porta per la sessione di gioco. Per connettersi a un server di Amazon GameLift Servers gioco, un'app necessita sia dell'indirizzo IP che del numero di porta. **Tipo:** `in` **Obbligatorio:** no  | 
| IpAddress |  L'indirizzo IP della sessione di gioco. Per connettersi a un server di Amazon GameLift Servers gioco, un'app necessita sia dell'indirizzo IP che del numero di porta. **Tipo:** `std::string` **Obbligatorio:** no  | 
| GameSessionData |  Un set di proprietà personalizzate della sessione di gioco, formattate come valore di stringa singola.  **Tipo:** `std::string` **Obbligatorio:** no  | 
| MatchmakerData |  Informazioni sul processo di matchmaking utilizzato per creare la sessione di gioco, in sintassi JSON, formattate come stringa. Oltre alla configurazione di matchmaking utilizzata, contiene dati su tutti i giocatori assegnati alla partita, compresi gli attributi dei giocatori e le assegnazioni delle squadre. **Tipo:** `std::string` **Obbligatorio:** no  | 
| GameProperties |  Un insieme di proprietà personalizzate per una sessione di gioco, formattate come coppie chiave:valore. Queste proprietà vengono passate con una richiesta di avvio di una nuova sessione di gioco. **Tipo:** `std :: vector < GameProperty >` **Obbligatorio:** no  | 
| DnsName |  L'identificatore DNS assegnato all'istanza che esegue la sessione di gioco. I valori hanno il seguente formato: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) Quando ti connetti a una sessione di gioco in esecuzione su una flotta abilitata per TLS, devi usare il nome DNS, non l'indirizzo IP. **Tipo:** `std::string` **Obbligatorio:** no  | 

## ServerParameters
<a name="integration-server-sdk5-cpp-dataypes-serverparameters"></a>

Informazioni utilizzate da un processo del server di gioco per stabilire una connessione con il servizio. Amazon GameLift Servers Includi questi parametri durante la chiamata [InitSDK()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk-anywhere) solo se la build del server di gioco verrà distribuita su una flotta Anywhere o su una flotta di container senza l'Amazon GameLift Serversagente. Per tutti gli altri scenari di implementazione, chiama [InitSDK()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk) senza parametri.


| Properties | **Descrizione** | 
| --- | --- | 
| webSocketUrl |  I `GameLiftServerSdkEndpoint` Amazon GameLift Servers rendimenti quando si utilizza [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)una risorsa di calcolo Amazon GameLift Servers Anywhere. **Tipo:** `std::string` **Obbligatorio:** sì   | 
| ID del processo |  Un identificatore univoco registrato nel processo del server che ospita il gioco. **Tipo:** `std::string` **Obbligatorio:** sì  | 
| hostId | HostIDViene ComputeName utilizzato al momento della registrazione del computer. Per ulteriori informazioni, consultare [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Tipo:** `std::string`**Obbligatorio:** sì | 
| FleetID | L'identificatore univoco del parco macchine su cui è registrato il computer. Per ulteriori informazioni, consultare [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Tipo:** `std::string`**Obbligatorio:** sì | 
| AuthToken | Il token di autenticazione generato da Amazon GameLift Servers questo autentica il server su. Amazon GameLift Servers Per ulteriori informazioni, consultare [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Tipo:** `std::string`**Obbligatorio:** sì | 

## StartMatchBackfillRequest
<a name="integration-server-sdk5-cpp-dataypes-startmatchbackfillrequest"></a>

Informazioni utilizzate per creare una richiesta di matchmaking backfill. Il server di gioco comunica queste informazioni durante una chiamataAmazon GameLift Servers. [StartMatchBackfill()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-startmatchbackfill)


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionArn |  Un identificatore univoco della sessione di gioco. L'operazione API `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-actions.html#integration-server-sdk5-cpp-getgamesessionid)` restituisce l'identificatore in formato ARN. **Tipo:** `std::string` **Obbligatorio:** sì  | 
| MatchmakingConfigurationArn |  Un identificatore univoco, sotto forma di ARN, che il matchmaker può utilizzare per questa richiesta. L'ARN del matchmaker per la sessione di gioco originale si trova nell'oggetto della sessione di gioco nella proprietà matchmaker data. Scopri di più sui dati dei matchmaker in [Work](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html) with matchmaker data. **Tipo:** `std::string` **Obbligatorio:** sì  | 
| Players |  Un insieme di dati che rappresenta tutti i giocatori che partecipano alla sessione di gioco. Il matchmaker utilizza queste informazioni per cercare nuovi giocatori che rappresentano un buon abbinamento per i giocatori attuali. **Tipo:** `std::vector<Player>` **Obbligatorio:** sì  | 
| TicketId |  Un identificatore univoco per un ticket di richiesta di matchmaking o match backfill. Se non fornisci un valore, Amazon GameLift Servers ne genera uno. Utilizzare questo identificatore per monitorare lo stato del ticket di backfill degli abbinamenti o annullare la richiesta, se necessario.  **Tipo:** `std::string` **Obbligatorio:** no  | 

## Player
<a name="integration-server-sdk5-cpp-dataypes-player"></a>

Questo tipo di dati rappresenta un giocatore in matchmaking. Quando si avvia una richiesta di matchmaking, un giocatore ha un ID giocatore, attributi e possibilmente dati di latenza. Amazon GameLift Serversaggiunge le informazioni sulla squadra dopo una partita.


| Properties | **Descrizione** | 
| --- | --- | 
| LatencyInSM |  Un insieme di valori espressi in millisecondi che indica la quantità di latenza che un giocatore sperimenta quando è connesso a una posizione.  Se viene utilizzata questa proprietà, il giocatore viene abbinato solo per le posizioni elencate. Se un matchmaker ha una regola che valuta la latenza dei giocatori, i giocatori devono segnalare la latenza per essere abbinati. **Tipo:** `Dictionary<string,int>` **Obbligatorio:** no  | 
| PlayerAttributes |  Una raccolta di coppie chiave:valore contenenti informazioni sui giocatori da utilizzare nel matchmaking. Le chiavi degli attributi del giocatore devono corrispondere a quelle PlayerAttributes utilizzate in un set di regole di matchmaking. Per ulteriori informazioni sugli attributi dei giocatori, vedi [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Tipo:** `std::map<std::string,AttributeValue>` **Obbligatorio:** no  | 
| PlayerId |  Un identificatore univoco per un giocatore. **Tipo:** `std::string` **Obbligatorio:** no  | 
| Team |  Il nome della squadra a cui è assegnato il giocatore in una partita. Definisci il nome della squadra nel set di regole del matchmaking. **Tipo:** `std::string` **Obbligatorio:** no  | 

## DescribePlayerSessionsRequest
<a name="integration-server-sdk5-cpp-dataypes-playersessions"></a>

Un oggetto che specifica le sessioni dei giocatori da recuperare. Il processo server fornisce queste informazioni con una [DescribePlayerSessions()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-describeplayersessions) chiamata a. Amazon GameLift Servers


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionId |  Un identificatore univoco della sessione di gioco. Utilizzare questo parametro per richiedere tutte le sessioni giocatore per la sessione di gioco specificata.  Il formato dell'ID della sessione di gioco è`arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>`. `GameSessionID`È una stringa ID personalizzata o un **Tipo:** `std::string` **Obbligatorio:** no  | 
| PlayerSessionId |  L'identificatore univoco per una sessione di gioco. Usa questo parametro per richiedere una singola sessione di gioco specifica. **Tipo:** `std::string` **Obbligatorio:** no  | 
| PlayerId |  L'identificatore univoco di un giocatore. Usa questo parametro per richiedere tutte le sessioni di gioco per un giocatore specifico. Per informazioni, consulta [Genera giocatore IDs](player-sessions-player-identifiers.md). **Tipo:** `std::string` **Obbligatorio:** no  | 
| PlayerSessionStatusFilter |  Lo stato della sessione del giocatore su cui filtrare i risultati. I possibili stati delle sessioni di gioco includono: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **Tipo:** `std::string` **Obbligatorio:** no  | 
| NextToken |  Il token che indica l'inizio della pagina successiva di risultati. Per specificare l'inizio del set di risultati, non fornire un valore. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `std::string` **Obbligatorio:** no  | 
| Limite |  Numero massimo di risultati da restituire. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `int` **Obbligatorio:** no  | 

## StopMatchBackfillRequest
<a name="integration-server-sdk5-cpp-dataypes-stopmatchbackfillrequest"></a>

Informazioni utilizzate per annullare una richiesta di matchmaking backfill. Il server di gioco comunica queste informazioni al Amazon GameLift Servers servizio durante una chiamata. [StopMatchBackfill()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-stopmatchbackfill)


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionArn |  Un identificatore univoco della sessione di gioco della richiesta annullata. **Tipo:** `char[]` **Obbligatorio:** no  | 
| MatchmakingConfigurationArn |  Un identificatore univoco del matchmaker a cui è stata inviata questa richiesta. **Tipo:** `char[]` **Obbligatorio:** no  | 
| TicketId |  Un identificatore univoco del ticket di richiesta di riempimento da annullare. **Tipo:** `char[]` **Obbligatorio:** no  | 

## AttributeValue
<a name="integration-server-sdk5-cpp-dataypes-attributevalue"></a>

Utilizzate questi valori nelle [Player](#integration-server-sdk5-cpp-dataypes-player) coppie chiave-valore degli attributi. Questo oggetto consente di specificare il valore di un attributo utilizzando uno qualsiasi dei tipi di dati validi: stringa, numero, array di stringhe o mappa di dati. Ogni `AttributeValue` oggetto deve utilizzare esattamente una delle proprietà disponibili: `S``N`,`SL`, o`SDM`.


| Properties | Description | 
| --- | --- | 
| AttrType |  Speciifica il tipo di valore dell'attributo. I possibili tipi di valori degli attributi includono:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **Obbligatorio:** no  | 
| S |  Rappresenta un valore di attributo di tipo stringa. **Tipo:** `std::string` **Obbligatorio:** no  | 
| N |  Rappresenta un valore di attributo numerico. **Tipo:** `double` **Obbligatorio:** no  | 
| SL |  Rappresenta una matrice di valori di attributi di tipo stringa. **Tipo:** `std::vector<std::string>` **Obbligatorio:** no  | 
| SDM |  Rappresenta un dizionario di chiavi di stringa e valori doppi. **Tipo:** `std::map<std::string, double>` **Obbligatorio:** no  | 

## GetFleetRoleCredentialsRequest
<a name="integration-server-sdk5-cpp-dataypes-getfleetrolecredentialsrequest"></a>

Questo tipo di dati offre al server di gioco un accesso limitato alle altre risorse. AWS Per ulteriori informazioni, consultare [Configurare un ruolo di servizio IAM per Amazon GameLift Servers](setting-up-role.md).


| Properties | **Descrizione** | 
| --- | --- | 
| RoleArn | L'Amazon Resource Name (ARN) del ruolo di servizio che estende l'accesso limitato alle tue AWS risorse.**Tipo:** `std::string`**Obbligatorio:** no | 
| RoleSessionName | Il nome della sessione di ruolo che puoi utilizzare per identificare in modo univoco una AWS Security Token Service [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)sessione. Questo nome è esposto nei log di controllo, come quelli di. CloudTrail **Tipo:** `std::string`  **Obbligatorio:** no  | 

## AwsLongOutcome
<a name="integration-server-sdk5-cpp-datatypes-awslongoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** `long` **Obbligatorio:** no  | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `long&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## AwsStringOutcome
<a name="integration-server-sdk5-cpp-datatypes-awsstringoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** `std::string` **Obbligatorio:** no  | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `long&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## DescribePlayerSessionsOutcome
<a name="integration-server-sdk5-cpp-datatypes-describeplayersessionsoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [DescribePlayerSessionsResult](#integration-server-sdk5-cpp-datatypes-describeplayersessionsresult) **Obbligatorio:** no   | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `Aws::GameLift::Server::Model::DescribePlayerSessionsResult&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## DescribePlayerSessionsResult
<a name="integration-server-sdk5-cpp-datatypes-describeplayersessionsresult"></a>

Una raccolta di oggetti contenente proprietà per ogni sessione di giocatore che corrisponde alla richiesta. 


| Properties | Description | 
| --- | --- | 
| NextToken |  Un token che indica l'inizio della successiva pagina sequenziale di risultati. Utilizzate il token restituito con una precedente chiamata a questa operazione. Per iniziare dall'inizio del set di risultati, non specificate un valore. Se viene specificato un ID sessione giocatore, questo parametro verrà ignorato.  **Tipo:** `std::string` **Obbligatorio:** sì  | 
| PlayerSessions |  **Tipo:** `IList<PlayerSession>` **Campo obbligatorio**:   | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `std::string&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## GenericOutcome
<a name="integration-server-sdk5-cpp-datatypes-genericoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## GenericOutcomeCallable
<a name="integration-server-sdk5-cpp-datatypes-genericoutcomecallable"></a>

Questo tipo di dati è un risultato generico asincrono. Possiede le seguenti proprietà: 


| Properties | Description | 
| --- | --- | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## PlayerSession
<a name="integration-server-sdk5-cpp-datatypes-playersession"></a>

Questo tipo di dati rappresenta una sessione del giocatore che passa al server di gioco. Amazon GameLift Servers Per ulteriori informazioni, consulta [PlayerSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_PlayerSession.html). 


| Properties | Description | 
| --- | --- | 
| CreationTime |  **Tipo:** `long` **Obbligatorio:** no  | 
| FleetId |  **Tipo:** `std::string` **Obbligatorio:** no  | 
| GameSessionId |  **Tipo:** `std::string` **Obbligatorio:** no  | 
| IpAddress |  **Tipo:** `std::string` **Obbligatorio:** no  | 
| PlayerData |  **Tipo:** `std::string` **Obbligatorio:** no  | 
| PlayerId |  **Tipo:** `std::string` **Obbligatorio:** no  | 
| PlayerSessionId |  **Tipo:** `std::string` **Obbligatorio:** no  | 
| Porta |  **Tipo:** `int` **Obbligatorio:** no  | 
| Status |  Stato sessione giocatore su cui filtrare i risultati. Quando PlayerId viene fornito un PlayerSessionId or, non PlayerSessionStatusFilter ha alcun effetto sulla risposta.  **Tipo:** Un `PlayerSessionStatus` enum. I valori possibili sono:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **Obbligatorio:** no  | 
| TerminationTime |  **Tipo:** `long` **Obbligatorio:** no  | 
| DnsName |  **Tipo:** `std::string` **Obbligatorio:** no  | 

## StartMatchBackfillOutcome
<a name="integration-server-sdk5-cpp-datatypes-startmatchbackfilloutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [StartMatchBackfillResult](#integration-server-sdk5-cpp-datatypes-startmatchbackfillresult) **Obbligatorio:** no  | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `StartMatchBackfillResult&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## StartMatchBackfillResult
<a name="integration-server-sdk5-cpp-datatypes-startmatchbackfillresult"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| TicketId |  Un identificatore univoco per un ticket di matchmaking. Se qui non viene specificato alcun ID del ticket, ne Amazon GameLift Servers genererà uno sotto forma di UUID. Usa questo identificatore per tenere traccia dello stato del ticket di backfill della partita e recuperare i risultati della partita.  **Tipo:** `std::string` **Obbligatorio:** no  | 

## GetComputeCertificateOutcome
<a name="integration-server-sdk5-cpp-datatypes-getcomputecertificateoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [GetComputeCertificateResult](#integration-server-sdk5-cpp-datatypes-getcomputecertificateresult) **Obbligatorio:** no   | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `Aws::GameLift::Server::Model::GetComputeCertificateResult&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## GetComputeCertificateResult
<a name="integration-server-sdk5-cpp-datatypes-getcomputecertificateresult"></a>

Il percorso del certificato TLS sul computer e il nome host del computer.


| Properties | Description | 
| --- | --- | 
| CertificatePath |  Il percorso del certificato TLS sulla tua risorsa di elaborazione. Quando si utilizza una flotta Amazon GameLift Servers gestita, questo percorso contiene:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **Tipo:** `std::string` **Obbligatorio:** no  | 
| ComputeName |  Il nome della risorsa di calcolo. **Tipo:** `std::string` **Obbligatorio:** no  | 

## GetFleetRoleCredentialsOutcome
<a name="integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [GetFleetRoleCredentialsResult](#integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsresult) **Obbligatorio:** no   | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `Aws::GameLift::Server::Model::GetFleetRoleCredentialsResult` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## GetFleetRoleCredentialsResult
<a name="integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsresult"></a>


| Properties | Description | 
| --- | --- | 
| AccessKeyId |  L'ID della chiave di accesso per autenticare e fornire l'accesso alle tue risorse. AWS  **Tipo:** `string` **Obbligatorio:** no  | 
| AssumedRoleId |  L'ID dell'utente a cui appartiene il ruolo di servizio. **Tipo:** `string` **Obbligatorio:** no  | 
| AssumedRoleUserArn |  L'Amazon Resource Name (ARN) dell'utente a cui appartiene il ruolo di servizio. **Tipo:** `string` **Obbligatorio:** no  | 
| Scadenza |  Il periodo di tempo che manca alla scadenza delle credenziali di sessione. **Tipo:** `DateTime` **Obbligatorio:** no  | 
| SecretAccessKey |  L'ID della chiave di accesso segreta per l'autenticazione. **Tipo:** `string` **Obbligatorio:** no  | 
| SessionToken |  Un token per identificare la sessione attiva corrente che interagisce con AWS le tue risorse. **Tipo:** `string` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## Inizialo SDKOutcome
<a name="integration-server-sdk5-cpp-datatypes-initsdkoutcome"></a>

**Nota**  
`InitSDKOutcome`viene restituito solo quando si crea l'SDK con il flag. `std` Se si crea con la `nostd` bandiera, allora [GenericOutcome](#integration-server-sdk5-cpp-datatypes-genericoutcome) viene invece restituito.


| Properties | Description | 
| --- | --- | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## GameLiftError
<a name="integration-server-sdk5-cpp-datatypes-gamelifterror"></a>


| Properties | Description | 
| --- | --- | 
| ErrorType |  Il tipo di errore. **Tipo: Un enum**[. `GameLiftErrorType`](#integration-server-sdk5-cpp-dataypes-enums) **Obbligatorio:** no   | 
| ErrorName |  Il nome dell'errore.  **Tipo:** `std::string`  **Obbligatorio:** no   | 
| ErrorMessage |  Messaggio di errore.  **Tipo:** `std::string`  **Obbligatorio:** no   | 

## enumerazioni;
<a name="integration-server-sdk5-cpp-dataypes-enums"></a>

Le enumerazioni definite per l'SDK del server per Amazon GameLift Servers (C\$1\$1) sono definite come segue: 

**GameLiftErrorType**  
Valore di stringa che indica il tipo di errore. I valori validi includono:  
+ **BAD\$1REQUEST\$1EXCEPTION** 
+ **GAMESESSION\$1ID\$1NOT\$1SET — L'ID della sessione di gioco non è stato impostato**. 
+ **INTERNAL\$1SERVICE\$1EXCEPTION** 
+ **LOCAL\$1CONNECTION\$1FAILED — La connessione locale** a non è riuscita. Amazon GameLift Servers 
+ **NETWORK\$1NOT\$1INITIALIZED — La rete non è stata inizializzata**. 
+ **SERVICE\$1CALL\$1FAILED — Una chiamata a un servizio** non è riuscita. AWS 
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1FORBIDDEN** 
+ **URL NON VALIDO DI WEBSOCKET\$1CONNECT\$1FAILURE\$1NON VALIDO** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **ALREADY\$1INITIALIZED — Il server o il client è già stato inizializzato con Initialize** (). Amazon GameLift Servers 
+ **FLEET\$1MISMATCH — La flotta bersaglio non corrisponde alla** flotta di una GameSession o PlayerSession. 
+ **GAMELIFT\$1CLIENT\$1NOT\$1INITIALIZED** — Il client non è stato inizializzato. Amazon GameLift Servers 
+ **GAMELIFT\$1SERVER\$1NOT\$1INITIALIZED** — Amazon GameLift Servers Il server non è stato inizializzato. 
+ **GAME\$1SESSION\$1ENDED\$1FAILED: l'SDK del server non è riuscito a contattare** il servizio per segnalare la fine della sessione di gioco. Amazon GameLift Servers 
+ GAME\$1SESSION\$1NOT\$1READY — La sessione di **gioco** sul server non è stata attivata. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1READY\$1FAILED: l'SDK del server per cui non è stato possibile contattare il servizio per segnalare che la sessione di gioco è pronta**. Amazon GameLift Servers 
+ **INITIALIZATION\$1MISMATCH** — È stato chiamato un metodo client dopo Server: :Initialize () o viceversa. 
+ **NOT\$1INITIALIZED — Il Amazon GameLift Servers server o il client non sono stati inizializzati** con Initialize (). 
+ **NO\$1TARGET\$1ALIASID\$1SET** — Non è stato impostato un aliasID di destinazione. 
+ **NO\$1TARGET\$1FLEET\$1SET** — Non è stata impostata una flotta di obiettivi. 
+ **PROCESS\$1ENDING\$1FAILED: l'SDK del server non è riuscito** a contattare il servizio per segnalare la fine del processo. Amazon GameLift Servers 
+ **PROCESS\$1NOT\$1ACTIVE — Il processo del server non è ancora attivo**, non è associato a un e non può accettare o elaborare. GameSession PlayerSessions 
+ **PROCESS\$1NOT\$1READY — Il processo del server non è ancora pronto** per essere attivato. 
+ **PROCESS\$1READY\$1FAILED: l'SDK del server non è riuscito** a contattare il servizio per Amazon GameLift Servers segnalare che il processo è pronto. 
+ SDK\$1VERSION\$1DETECTION\$1FAILED — Rilevamento della **versione SDK** non riuscito. 
+ **STX\$1CALL\$1FAILED** — Una chiamata al componente di backend del server non è riuscita. XStx 
+ **STX\$1INITIALIZATION\$1FAILED — L'inizializzazione** del componente di backend del server non è riuscita. XStx 
+ **UNEXPECTED\$1PLAYER\$1SESSION — Il server ha rilevato una sessione di giocatore non registrata**. 
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1FORBIDDEN** 
+ **URL NON VALIDO DI WEBSOCKET\$1CONNECT\$1FAILURE\$1NON VALIDO** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **WEBSOCKET\$1RETRIABLE\$1SEND\$1MESSAGE\$1FAILURE** — Errore recuperabile nell'invio di un messaggio al servizio. GameLift WebSocket 
+ **WEBSOCKET\$1SEND\$1MESSAGE\$1FAILURE — Errore** nell'invio di un messaggio al GameLift servizio. WebSocket 
+ **MATCH\$1BACKFILL\$1REQUEST\$1VALIDATION** — La convalida della richiesta non è riuscita. 
+ **PLAYER\$1SESSION\$1REQUEST\$1VALIDATION** — La convalida della richiesta non è riuscita. 

**PlayerSessionCreationPolicy**  
Valore della stringa che indica se la sessione di gioco accetta nuovi giocatori. I valori validi includono:   
+ **ACCEPT\$1ALL**: accetta tutte le nuove sessioni giocatore. 
+ **DENY\$1ALL**: rifiuta tutte le nuove sessioni giocatore. 
+ **NOT\$1SET** — La sessione di gioco non è impostata per accettare o rifiutare sessioni di nuovi giocatori. 

[Server C\$1\$1 SDK 5.x per Amazon GameLift Servers -- Tipi di dati](integration-server-sdk5-cpp-datatypes.md)

**Topics**
+ [Server C\$1\$1 SDK 5.x per Amazon GameLift Servers -- Tipi di dati](integration-server-sdk5-cpp-datatypes.md)
+ [GetSdkVersion()](#integration-server-sdk5-cpp-getsdkversion)
+ [InitMetrics()](#integration-server-sdk5-cpp-initmetrics)
+ [InitSDK()](#integration-server-sdk5-cpp-initsdk)
+ [InitSDK()](#integration-server-sdk5-cpp-initsdk-anywhere)
+ [ProcessReady()](#integration-server-sdk5-cpp-processready)
+ [ProcessReadyAsync()](#integration-server-sdk5-cpp-processreadyasync)
+ [ProcessEnding()](#integration-server-sdk5-cpp-processending)
+ [ActivateGameSession()](#integration-server-sdk5-cpp-activategamesession)
+ [UpdatePlayerSessionCreationPolicy()](#integration-server-sdk5-cpp-updateplayersessioncreationpolicy)
+ [GetGameSessionId()](#integration-server-sdk5-cpp-getgamesessionid)
+ [GetTerminationTime()](#integration-server-sdk5-cpp-getterm)
+ [AcceptPlayerSession()](#integration-server-sdk5-cpp-acceptplayersession)
+ [RemovePlayerSession()](#integration-server-sdk5-cpp-removeplayersession)
+ [DescribePlayerSessions()](#integration-server-sdk5-cpp-describeplayersessions)
+ [StartMatchBackfill()](#integration-server-sdk5-cpp-startmatchbackfill)
+ [StopMatchBackfill()](#integration-server-sdk5-cpp-stopmatchbackfill)
+ [GetComputeCertificate()](#integration-server-sdk5-cpp-getcomputecertificate)
+ [GetFleetRoleCredentials()](#integration-server-sdk5-cpp-getfleetrolecredentials)
+ [Distruggi ()](#integration-server-sdk5-cpp-ref-destroy)

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

Restituisce il numero di versione corrente dell'SDK integrato nel processo del server.

### Sintassi
<a name="integration-server-sdk5-cpp-getsdkversion-syntax"></a>

```
Aws::GameLift::AwsStringOutcome Server::GetSdkVersion();
```

### Valore restituito
<a name="integration-server-sdk5-cpp-getsdkversion-return"></a>

Se l'esito è positivo, restituisce la versione corrente dell'SDK come oggetto [AwsStringOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-awsstringoutcome). L'oggetto restituito include il numero di versione (esempio`5.0.0`). Se l'esito è negativo, verrà restituito un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-getsdkversion-example"></a>

```
Aws::GameLift::AwsStringOutcome SdkVersionOutcome = Aws::GameLift::Server::GetSdkVersion(); 
```

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

Inizializza il sistema di metriche per la raccolta e la segnalazione dei dati sulle prestazioni del server. Per ottenere i migliori risultati, chiamate prima questo metodo per abilitare la raccolta delle metriche [InitSDK()](#integration-server-sdk5-cpp-initsdk) durante l'inizializzazione dell'SDK.

### Sintassi
<a name="integration-server-sdk5-cpp-initmetrics-syntax"></a>

```
Aws::GameLift::GenericOutcome InitMetrics();
Aws::GameLift::GenericOutcome InitMetrics(const Aws::GameLift::Server::MetricsParameters &metricsParameters);
```

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

[MetricsParameters](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-metricsparameters) (facoltativo)  
Parametri di configurazione per la raccolta delle metriche. Se non viene fornito, utilizza valori predefiniti che possono essere sostituiti dalle variabili di ambiente.

### Valore restituito
<a name="integration-server-sdk5-cpp-initmetrics-return"></a>

In caso di successo, restituisce un [GenericOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-genericoutcome) oggetto che indica il successo. Se l'esito è negativo, verrà restituito un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-initmetrics-example"></a>

```
// Initialize with default parameters (uses environment variables if available)
// Defaults: localhost:8125 for StatsD, localhost:8126 for crash reporter
// FlushInterval: 10000ms, MaxPacketSize: 512 bytes
Aws::GameLift::GenericOutcome outcome = Aws::GameLift::Server::InitMetrics();
if (outcome.IsSuccess()) {
    // Metrics system initialized successfully
}

// Initialize with custom parameters
Aws::GameLift::Server::MetricsParameters metricsParams("localhost", 8125, "crash-host", 8126, 5000, 1024);
Aws::GameLift::GenericOutcome customOutcome = Aws::GameLift::Server::InitMetrics(metricsParams);
if (customOutcome.IsSuccess()) {
    // Metrics system initialized with custom parameters
}
```

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

Inizializza l'SDK Amazon GameLift Servers. Chiama questo metodo all'avvio prima di qualsiasi altro passaggio di inizializzazione relativo aAmazon GameLift Servers. Questa azione legge i parametri del server dall'ambiente host per impostare la comunicazione tra il processo del server di gioco e il Amazon GameLift Servers servizio. Utilizza un token di idempotenza, quindi puoi riprovare a ripetere questa chiamata in tutta sicurezza quando fallisce.

Se la build del server di gioco verrà implementata senza l'Amazon GameLift ServersAgent to a Amazon GameLift Servers Anywhere fleet o la flotta di container, chiama [InitSDK()](#integration-server-sdk5-cpp-initsdk-anywhere) e specifica una serie di parametri del server.

### Sintassi
<a name="integration-server-sdk5-cpp-initsdk-syntax"></a>

```
Server::InitSDKOutcome Server::initSdkOutcome = InitSDK();
```

### Valore restituito
<a name="integration-server-sdk5-cpp-initsdk-return"></a>

Restituisce un [Inizialo SDKOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-initsdkoutcome) oggetto che indica se il processo del server è pronto per la chiamata. [ProcessReady()](#integration-server-sdk5-cpp-processready) 

### Esempio
<a name="integration-server-sdk5-cpp-initsdk-example"></a>

```
//Call InitSDK to establish a local connection with the Amazon GameLift Servers Agent to enable further communication.
Aws::GameLift::Server::InitSDKOutcome initSdkOutcome = 
  Aws::GameLift::Server::InitSDK();
```

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

Inizializza l'SDK Amazon GameLift Servers. Chiama questo metodo all'avvio prima di qualsiasi altro passaggio di inizializzazione relativo aAmazon GameLift Servers. Questa azione richiede una serie di parametri del server per impostare la comunicazione tra il processo del server di gioco e il Amazon GameLift Servers servizio. Utilizza un token di idempotenza, quindi puoi riprovare a ripetere questa chiamata in tutta sicurezza quando fallisce.

Se la build del server di gioco verrà distribuita su una flotta EC2 Amazon GameLift Servers gestita o su una flotta o una flotta di container Amazon GameLift Servers Anywhere con l'Amazon GameLift ServersAgent, chiama senza parametri del server. [InitSDK()](#integration-server-sdk5-cpp-initsdk)

### Sintassi
<a name="integration-server-sdk5-cpp-initsdk-anywhere-syntax"></a>

```
Server::InitSDKOutcome Server::initSdkOutcome = InitSDK(serverParameters);
```

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

[ServerParameters](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-serverparameters)  
Per inizializzare un server di gioco su una flotta Amazon GameLift Servers Anywhere, costruisci un `ServerParameters` oggetto con le seguenti informazioni:  
+ L'URL WebSocket utilizzato per connettersi al server di gioco. 
+ L'ID del processo utilizzato per ospitare il server di gioco. 
+ L'ID del computer che ospita i processi del server di gioco. 
+ L'ID della Amazon GameLift Servers flotta contenente il tuo computer Amazon GameLift Servers Anywhere.
+ Il token di autorizzazione generato dall'Amazon GameLift Serversoperazione. 

### Valore restituito
<a name="integration-server-sdk5-cpp-initsdk-anywhere-return"></a>

Restituisce un [Inizialo SDKOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-initsdkoutcome) oggetto che indica se il processo del server è pronto per la chiamata. [ProcessReady()](#integration-server-sdk5-cpp-processready) 

**Nota**  
Se le chiamate a non `InitSDK()` riescono per le build di gioco distribuite sulle flotte Anywhere, controlla il `ServerSdkVersion` parametro utilizzato durante la creazione della risorsa di compilazione. È necessario impostare esplicitamente questo valore sulla versione SDK del server in uso. Il valore predefinito per questo parametro è 4.x, che non è compatibile. Per risolvere questo problema, crea una nuova build e distribuiscila in una nuova flotta.

### Esempio
<a name="integration-server-sdk5-cpp-initsdk-anywhere-example"></a>

Amazon GameLift ServersEsempio: Ovunque

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

//Call InitSDK to establish a local connection with the Amazon GameLift Servers Agent to enable further communication.
Aws::GameLift::Server::InitSDKOutcome initSdkOutcome = Aws::GameLift::Server::InitSDK(serverParameters);
```

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

Notifica Amazon GameLift Servers che il processo del server è pronto per ospitare sessioni di gioco. Chiama questo metodo dopo averlo [InitSDK()](#integration-server-sdk5-cpp-initsdk) invocato. Questo metodo deve essere chiamato solo una volta per processo.

### Sintassi
<a name="integration-server-sdk5-cpp-processready-syntax"></a>

`GenericOutcome ProcessReady(const Aws::GameLift::Server::ProcessParameters &processParameters);`

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

**processParameters**  
Un oggetto [ProcessParameters](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-process) che comunica le informazioni seguenti sul processo del server:  
+ Nomi dei metodi di callback implementati nel codice del server di gioco richiamato dal Amazon GameLift Servers servizio per comunicare con il processo del server.
+ Numero di porta sulla quale è in ascolto il processo del server.
+ Percorso verso qualsiasi file specifico di una sessione di gioco che Amazon GameLift Servers deve acquisire e archiviare.

### Valore restituito
<a name="integration-server-sdk5-cpp-processready-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-processready-example"></a>

Questo esempio illustra la chiamata [ProcessReady()](#integration-server-sdk5-cpp-processready) e le implementazioni della funzione delegata.

```
// Set parameters and call ProcessReady
std::string serverLog("serverOut.log");        // Example of a log file written by the game server
std::vector<std::string> logPaths;
logPaths.push_back(serverLog);
int listenPort = 9339;

Aws::GameLift::Server::ProcessParameters processReadyParameter = 
  Aws::GameLift::Server::ProcessParameters(
    std::bind(&Server::onStartGameSession, this, std::placeholders::_1),
    std::bind(&Server::onProcessTerminate, this), 
    std::bind(&Server::OnHealthCheck, this), 
    std::bind(&Server::OnUpdateGameSession, this), 
    listenPort, 
    Aws::GameLift::Server::LogParameters(logPaths)
  ); 

Aws::GameLift::GenericOutcome outcome = 
  Aws::GameLift::Server::ProcessReady(processReadyParameter);

// Implement callback functions
void Server::onStartGameSession(Aws::GameLift::Model::GameSession myGameSession)
{
  // game-specific tasks when starting a new game session, such as loading map
  GenericOutcome outcome = 
    Aws::GameLift::Server::ActivateGameSession (maxPlayers);
}

void Server::onProcessTerminate()
{
  // game-specific tasks required to gracefully shut down a game session, 
  // such as notifying players, preserving game state data, and other cleanup
  GenericOutcome outcome = Aws::GameLift::Server::ProcessEnding();
}

bool Server::onHealthCheck()
{
  bool health;
  // complete health evaluation within 60 seconds and set health
  return health;
}
```

## ProcessReadyAsync()
<a name="integration-server-sdk5-cpp-processreadyasync"></a>

Notifica al servizio Amazon GameLift Servers che il processo del server è pronto per l'hosting delle sessioni di gioco. Questo metodo dovrebbe essere chiamato dopo che il processo del server è pronto per ospitare una sessione di gioco. I parametri specificano i nomi delle funzioni di callback Amazon GameLift Servers da chiamare in determinate circostanze. Il codice del server di gioco deve implementare queste funzioni.

Questa chiamata è asincrona. Per effettuare una chiamata sincrona, utilizza [ProcessReady()](#integration-server-sdk5-cpp-processready). Per ulteriori dettagli, consulta [Inizializza il processo del server](gamelift-sdk-server-api.md#gamelift-sdk-server-initialize).

### Sintassi
<a name="integration-server-sdk5-cpp-processreadyasync-syntax"></a>

```
GenericOutcomeCallable ProcessReadyAsync(
    const Aws::GameLift::Server::ProcessParameters &processParameters);
```

### Parameters
<a name="integration-server-sdk5-cpp-processreadyasync-parameter"></a>

**processParameters**  
Un oggetto [ProcessParameters](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-process) che comunica le informazioni seguenti sul processo del server:  
+ Nomi dei metodi di callback implementati nel codice del server di gioco richiamato dal Amazon GameLift Servers servizio per comunicare con il processo del server.
+ Numero di porta sulla quale è in ascolto il processo del server.
+ Percorso verso qualsiasi file specifico di una sessione di gioco che Amazon GameLift Servers deve acquisire e archiviare.
Obbligatorio: sì

### Valore restituito
<a name="integration-server-sdk5-cpp-processreadyasync-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-processreadyasync-example"></a>

```
// Set parameters and call ProcessReady
std::string serverLog("serverOut.log");        // This is an example of a log file written by the game server
std::vector<std::string> logPaths;
logPaths.push_back(serverLog);
int listenPort = 9339;

Aws::GameLift::Server::ProcessParameters processReadyParameter = 
  Aws::GameLift::Server::ProcessParameters(std::bind(&Server::onStartGameSession, this, std::placeholders::_1),
  std::bind(&Server::onProcessTerminate, this), std::bind(&Server::OnHealthCheck, this),
  std::bind(&Server::OnUpdateGameSession, this), listenPort, Aws::GameLift::Server::LogParameters(logPaths));

Aws::GameLift::GenericOutcomeCallable outcome = 
  Aws::GameLift::Server::ProcessReadyAsync(processReadyParameter);

// Implement callback functions
void onStartGameSession(Aws::GameLift::Model::GameSession myGameSession)
{
  // game-specific tasks when starting a new game session, such as loading map
  GenericOutcome outcome = Aws::GameLift::Server::ActivateGameSession (maxPlayers);
}

void onProcessTerminate()
{
  // game-specific tasks required to gracefully shut down a game session, 
  // such as notifying players, preserving game state data, and other cleanup
  GenericOutcome outcome = Aws::GameLift::Server::ProcessEnding();
}

bool onHealthCheck()
{
  // perform health evaluation and complete within 60 seconds
  return health;
}
```

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

Notifica Amazon GameLift Servers che il processo del server sta terminando. Chiama questo metodo dopo tutte le altre attività di pulizia (inclusa la chiusura della sessione di gioco attiva) e prima di terminare il processo. A seconda del risultato di`ProcessEnding()`, il processo termina con successo (0) o errore (-1) e genera un evento relativo alla flotta. Se il processo termina con un errore, l'evento fleet generato è. `SERVER_PROCESS_TERMINATED_UNHEALTHY`

### Sintassi
<a name="integration-server-sdk5-cpp-processending-syntax"></a>

```
Aws::GameLift::GenericOutcome processEndingOutcome = Aws::GameLift::Server::ProcessEnding();
```

### Valore restituito
<a name="integration-server-sdk5-cpp-processending-return"></a>

Restituisce un risultato generico costituito da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-processending-example"></a>

Questo esempio chiama `ProcessEnding()` e `Destroy()` prima di terminare il processo del server con un codice di uscita riuscito o di errore.

```
Aws::GameLift::GenericOutcome processEndingOutcome = Aws::GameLift::Server::ProcessEnding();
Aws::GameLift::Server::Destroy();

// Exit the process with success or failure
if (processEndingOutcome.IsSuccess()) {
  exit(0);
}
else {
  cout << "ProcessEnding() failed. Error: " << processEndingOutcome.GetError().GetErrorMessage();
  exit(-1);
}
```

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

Notifica Amazon GameLift Servers che il processo del server ha attivato una sessione di gioco ed è ora pronto a ricevere le connessioni dei giocatori. Questa azione dovrebbe essere richiamata come parte della funzione di `onStartGameSession()` callback, dopo l'inizializzazione di tutta la sessione di gioco.

### Sintassi
<a name="integration-server-sdk5-cpp-activategamesession-syntax"></a>

```
Aws::GameLift::GenericOutcome activateGameSessionOutcome = Aws::GameLift::Server::ActivateGameSession();
```

### Valore restituito
<a name="integration-server-sdk5-cpp-activategamesession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-activategamesession-example"></a>

Questo esempio mostra le `ActivateGameSession()` chiamate come parte della funzione `onStartGameSession()` delegata. 

```
void onStartGameSession(Aws::GameLift::Model::GameSession myGameSession)
{
  // game-specific tasks when starting a new game session, such as loading map
  GenericOutcome outcome = Aws::GameLift::Server::ActivateGameSession();
}
```

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

Aggiorna la capacità della sessione di gioco corrente di accettare nuove sessioni giocatore. Una sessione di gioco può essere configurata per accettare o rifiutare tutte le nuove sessioni giocatore.

### Sintassi
<a name="integration-server-sdk5-cpp-updateplayersessioncreationpolicy-syntax"></a>

```
GenericOutcome UpdatePlayerSessionCreationPolicy(Aws::GameLift::Model::PlayerSessionCreationPolicy newPlayerSessionPolicy);
```

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

**playerCreationSessionPolitica**  
Tipo: valore `PlayerSessionCreationPolicy` [enum](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-enums).  
Obbligatorio: sì

### Valore restituito
<a name="integration-server-sdk5-cpp-updateplayersessioncreationpolicy-return"></a>

Restituisce un risultato generico costituito da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-updateplayersessioncreationpolicy-example"></a>

Questo esempio definisce la policy di partecipazione alla sessione di gioco corrente per accettare tutti i giocatori.

```
Aws::GameLift::GenericOutcome outcome = 
  Aws::GameLift::Server::UpdatePlayerSessionCreationPolicy(Aws::GameLift::Model::PlayerSessionCreationPolicy::ACCEPT_ALL);
```

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

Recupera l'ID della sessione di gioco ospitata dal processo del server attivo. 

Per i processi inattivi che non vengono attivati con una sessione di gioco, la chiamata restituisce un. [GameLiftError](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-gamelifterror)

### Sintassi
<a name="integration-server-sdk5-cpp-getgamesessionid-syntax"></a>

```
AwsStringOutcome GetGameSessionId()
```

### Parameters
<a name="integration-server-sdk5-cpp-getgamesessionid-parameter"></a>

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk5-cpp-getgamesessionid-return"></a>

Se l'esito è positivo, l'ID della sessione di gioco verrà restituito come oggetto [AwsStringOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-awsstringoutcome). Se l'esito è negativo, verrà restituito un messaggio di errore.

Per i processi inattivi che non vengono attivati con una sessione di gioco, la chiamata restituisce `Success` = `True` e `GameSessionId` =. `""`

### Esempio
<a name="integration-server-sdk5-cpp-getgamesessionid-example"></a>

```
Aws::GameLift::AwsStringOutcome sessionIdOutcome = Aws::GameLift::Server::GetGameSessionId();
```

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

Restituisce il tempo di arresto pianificato di un processo del server, se è disponibile un tempo di chiusura. Un processo server interviene dopo aver ricevuto una `onProcessTerminate()` richiamata da. Amazon GameLift Servers Amazon GameLift Serverschiama `onProcessTerminate()` per i seguenti motivi: 
+ Quando il processo del server ha segnalato problemi di salute o non ha risposto. Amazon GameLift Servers
+ Quando si termina l'istanza durante un evento di scale-down.
+ [Quando un'istanza viene terminata a causa di un'interruzione di un'istanza spot.](spot-tasks.md)

### Sintassi
<a name="integration-server-sdk5-cpp-getterm-syntax"></a>

```
AwsDateTimeOutcome GetTerminationTime()
```

### Valore restituito
<a name="integration-server-sdk5-cpp-getterm-return"></a>

In caso di successo, restituisce l'ora di terminazione come oggetto. `AwsDateTimeOutcome` Il valore è il tempo di terminazione, espresso in segni di spunta trascorsi da allora. `0001 00:00:00` Ad esempio, il valore della data e dell'ora è uguale ai segni di `2020-09-13 12:26:40 -000Z` spunta. `637355968000000000` Se non è disponibile alcun orario di terminazione, restituisce un messaggio di errore.

Se il processo non ha ricevuto un ProcessParameters. OnProcessTerminate() callback, viene restituito un messaggio di errore. Per ulteriori informazioni sulla chiusura di un processo server, vedere. [Rispondi a una notifica di chiusura del processo del server](gamelift-sdk-server-api.md#gamelift-sdk-server-terminate)

### Esempio
<a name="integration-server-sdk5-cpp-getterm-example"></a>

```
Aws::GameLift::AwsLongOutcome TermTimeOutcome = Aws::GameLift::Server::GetTerminationTime(); 
```

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

Notifica Amazon GameLift Servers che un giocatore con l'ID di sessione specificato si è connesso al processo del server e deve essere convalidato. Amazon GameLift Serversverifica che l'ID della sessione del giocatore sia valido. Dopo la convalida della sessione di gioco, Amazon GameLift Servers modifica lo stato dello slot del giocatore da RISERVATO ad ATTIVO. 

### Sintassi
<a name="integration-server-sdk5-cpp-acceptplayersession-syntax"></a>

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

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

playerSessionId  
ID univoco rilasciato Amazon GameLift Servers quando viene creata una nuova sessione giocatore.

### Valore restituito
<a name="integration-server-sdk5-cpp-acceptplayersession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore. 

### Esempio
<a name="integration-server-sdk5-cpp-acceptplayersession-example"></a>

Questo esempio gestisce una richiesta di connessione che include la convalida e il rifiuto di una sessione giocatore non valida. IDs

```
void ReceiveConnectingPlayerSessionID (Connection& connection, const std::string& playerSessionId)
{
  Aws::GameLift::GenericOutcome connectOutcome = Aws::GameLift::Server::AcceptPlayerSession(playerSessionId);
  if(connectOutcome.IsSuccess())
  {
    connectionToSessionMap.emplace(connection, playerSessionId);
    connection.Accept();
  }
  else 
  {
    connection.Reject(connectOutcome.GetError().GetMessage();
  }       
}
```

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

Notifica Amazon GameLift Servers che un giocatore si è disconnesso dal processo del server. In risposta, Amazon GameLift Servers modifica lo slot del giocatore rendendolo disponibile. 

### Sintassi
<a name="integration-server-sdk5-cpp-removeplayersession-syntax"></a>

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

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

**`playerSessionId`**  
ID univoco rilasciato Amazon GameLift Servers quando viene creata una nuova sessione di gioco.

### Valore restituito
<a name="integration-server-sdk5-cpp-removeplayersession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-removeplayersession-example"></a>

```
Aws::GameLift::GenericOutcome disconnectOutcome = Aws::GameLift::Server::RemovePlayerSession(playerSessionId);
```

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

Recupera i dati della sessione del giocatore che includono impostazioni, metadati della sessione e dati del giocatore. Utilizzate questo metodo per ottenere informazioni su quanto segue:
+ Una sessione per giocatore singolo
+ Tutte le sessioni dei giocatori in una sessione di gioco
+ Tutte le sessioni dei giocatori sono associate a un ID giocatore singolo

### Sintassi
<a name="integration-server-sdk5-cpp-describeplayersessions-syntax"></a>

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

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

**[DescribePlayerSessionsRequest](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-playersessions)**  
Un [DescribePlayerSessionsRequest](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-playersessions) oggetto che descrive le sessioni dei giocatori da recuperare.

### Valore restituito
<a name="integration-server-sdk5-cpp-describeplayersessions-return"></a>

Se l'esito è positivo, restituisce un oggetto [DescribePlayerSessionsOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-describeplayersessionsoutcome) contenente un set di oggetti di sessione giocatore corrispondente ai parametri della richiesta.

### Esempio
<a name="integration-server-sdk5-cpp-describeplayersessions-example"></a>

Questo esempio richiede che tutte le sessioni dei giocatori siano connesse attivamente a una sessione di gioco specificata. Omettendo *NextToken*e impostando il valore *Limite* su 10, Amazon GameLift Servers restituisce i primi 10 record di sessione tra giocatori corrispondenti alla richiesta.

```
// Set request parameters
Aws::GameLift::Server::Model::DescribePlayerSessionsRequest request;
request.SetPlayerSessionStatusFilter(Aws::GameLift::Server::Model::PlayerSessionStatusMapper::GetNameForPlayerSessionStatus(Aws::GameLift::Server::Model::PlayerSessionStatus::Active));
request.SetLimit(10);
request.SetGameSessionId("the game session ID");    // can use GetGameSessionId()

// Call DescribePlayerSessions
Aws::GameLift::DescribePlayerSessionsOutcome playerSessionsOutcome = Aws::GameLift::Server::DescribePlayerSessions(request);
```

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

Invia una richiesta per trovare nuovi giocatori per gli slot aperti in una sessione di gioco creata con FlexMatch. Per ulteriori informazioni, consulta la funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Questa operazione è asincrona. Se vengono abbinati nuovi giocatori, Amazon GameLift Servers fornisce dati aggiornati sul matchmaker utilizzando la funzione di callback. `OnUpdateGameSession()`

Un processo del server può avere un solo backfill degli abbinamenti attivo alla volta. Per inviare una nuova richiesta, chiama prima [StopMatchBackfill()](#integration-server-sdk5-cpp-stopmatchbackfill) per annullare la richiesta originale.

### Sintassi
<a name="integration-server-sdk5-cpp-startmatchbackfill-syntax"></a>

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

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

**[StartMatchBackfillRequest](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-startmatchbackfillrequest)**  
Un StartMatchBackfillRequest oggetto che comunica le seguenti informazioni:  
+ ID del ticket da assegnare alla richiesta di backfill. Queste informazioni sono facoltative; se non viene fornito alcun ID, ne Amazon GameLift Servers genererà uno.
+ Matchmaker a cui inviare la richiesta. L'ARN di configurazione completo è obbligatorio. Questo valore si trova nei dati del matchmaker della sessione di gioco.
+ L'ID della sessione di gioco da riempire.
+ I dati di matchmaking disponibili per i giocatori attuali della sessione di gioco.

### Valore restituito
<a name="integration-server-sdk5-cpp-startmatchbackfill-return"></a>

Restituisce un [StartMatchBackfillOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-startmatchbackfilloutcome) oggetto con l'ID del ticket match backfill, oppure restituisce un errore con un messaggio di errore. 

### Esempio
<a name="integration-server-sdk5-cpp-startmatchbackfill-example"></a>

```
// Build a backfill request
std::vector<Player> players;
Aws::GameLift::Server::Model::StartMatchBackfillRequest startBackfillRequest;
startBackfillRequest.SetTicketId("1111aaaa-22bb-33cc-44dd-5555eeee66ff");  // optional, autogenerated if not provided
startBackfillRequest.SetMatchmakingConfigurationArn("arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig"); //from the game session matchmaker data
startBackfillRequest.SetGameSessionArn("the game session ARN");        // can use GetGameSessionId()
startBackfillRequest.SetPlayers(players);                                  // from the game session matchmaker data

// Send backfill request
Aws::GameLift::StartMatchBackfillOutcome backfillOutcome = 
  Aws::GameLift::Server::StartMatchBackfill(startBackfillRequest);

// Implement callback function for backfill
void Server::OnUpdateGameSession(Aws::GameLift::Server::Model::GameSession gameSession, Aws::GameLift::Server::Model::UpdateReason updateReason, std::string backfillTicketId)
{
  // handle status messages
  // perform game-specific tasks to prep for newly matched players
}
```

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

Annulla una richiesta di match backfill attiva. Per ulteriori informazioni, consulta la funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

### Sintassi
<a name="integration-server-sdk5-cpp-stopmatchbackfill-syntax"></a>

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

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

**[StopMatchBackfillRequest](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-stopmatchbackfillrequest)**  
Un StopMatchBackfillRequest oggetto che identifica il ticket di matchmaking da annullare:   
+ L'ID del ticket assegnato alla richiesta di riempimento.
+ Il matchmaker a cui è stata inviata la richiesta di riempimento.
+ La sessione di gioco associata alla richiesta di riempimento.

### Valore restituito
<a name="integration-server-sdk5-cpp-stopmatchbackfill-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-stopmatchbackfill-example"></a>

```
// Set backfill stop request parameters

Aws::GameLift::Server::Model::StopMatchBackfillRequest stopBackfillRequest;
stopBackfillRequest.SetTicketId("1111aaaa-22bb-33cc-44dd-5555eeee66ff");
stopBackfillRequest.SetGameSessionArn("the game session ARN"); // can use GetGameSessionId()
stopBackfillRequest.SetMatchmakingConfigurationArn("arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig");
// from the game session matchmaker data

Aws::GameLift::GenericOutcome stopBackfillOutcome = 
  Aws::GameLift::Server::StopMatchBackfill(stopBackfillRequest);
```

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

Recupera il percorso del certificato TLS utilizzato per crittografare la connessione di rete tra la risorsa di elaborazione Amazon GameLift Servers Anywhere e. Amazon GameLift Servers Puoi utilizzare il percorso del certificato quando registri il tuo dispositivo di elaborazione in una flotta Anywhere. Amazon GameLift Servers Per ulteriori informazioni, consultare [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

### Sintassi
<a name="integration-server-sdk5-cpp-getcomputecertificate-syntax"></a>

```
GetComputeCertificateOutcome Server::GetComputeCertificate()
```

### Valore restituito
<a name="integration-server-sdk5-cpp-getcomputecertificate-return"></a>

Restituisce una [GetComputeCertificateOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-getcomputecertificateoutcome).

### Esempio
<a name="integration-server-sdk5-cpp-getcomputecertificate-example"></a>

```
Aws::GameLift::GetComputeCertificateOutcome certificate = Aws::GameLift::Server::GetComputeCertificate();
```

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

Recupera le credenziali del ruolo IAM che autorizzano Amazon GameLift Servers a interagire con altri. Servizi AWS Per ulteriori informazioni, consulta [Connect il server di gioco Amazon GameLift Servers ospitato ad altre AWS risorse](gamelift-sdk-server-resources.md).

### Sintassi
<a name="integration-server-sdk5-cpp-getfleetrolecredentials-syntax"></a>

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

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

[GetFleetRoleCredentialsRequest](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-getfleetrolecredentialsrequest)

### Valore restituito
<a name="integration-server-sdk5-cpp-getfleetrolecredentials-return"></a>

Restituisce un oggetto [GetFleetRoleCredentialsOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsoutcome).

### Esempio
<a name="integration-server-sdk5-cpp-getfleetrolecredentials-example"></a>

```
// form the fleet credentials request 
Aws::GameLift::Server::Model::GetFleetRoleCredentialsRequest getFleetRoleCredentialsRequest; 
getFleetRoleCredentialsRequest.SetRoleArn("arn:aws:iam::123456789012:role/service-role/exampleGameLiftAction");

Aws::GameLift::GetFleetRoleCredentialsOutcome credentials = Aws::GameLift::Server::GetFleetRoleCredentials(getFleetRoleCredentialsRequest);
```

Questo esempio mostra l'uso del `RoleSessionName` valore opzionale per assegnare un nome alla sessione di credenziali a fini di controllo. Se non si fornisce un nome per la sessione di ruolo, viene utilizzato il valore predefinito *[host-id]* "*[fleet-id]*-».

```
// form the fleet credentials request 
Aws::GameLift::Server::Model::GetFleetRoleCredentialsRequest getFleetRoleCredentialsRequest; 
getFleetRoleCredentialsRequest.SetRoleArn("arn:aws:iam::123456789012:role/service-role/exampleGameLiftAction");
getFleetRoleCredentialsRequest.SetRoleSessionName("MyFleetRoleSession"); 

Aws::GameLift::GetFleetRoleCredentialsOutcome credentials = Aws::GameLift::Server::GetFleetRoleCredentials(getFleetRoleCredentialsRequest);
```

## Distruggi ()
<a name="integration-server-sdk5-cpp-ref-destroy"></a>

Libera l'SDK del server di Amazon GameLift Servers gioco dalla memoria. È consigliabile chiamare questo metodo dopo `ProcessEnding()` e prima di terminare il processo. Se utilizzi una flotta Anywhere e non interrompi i processi del server dopo ogni sessione di gioco, chiama `Destroy()` e poi `InitSDK()` reinizializza prima di notificare Amazon GameLift Servers che il processo è pronto per ospitare una sessione di gioco. `ProcessReady()`

### Sintassi
<a name="integration-server-sdk5-cpp-ref-destroy-syntax"></a>

```
GenericOutcome Aws::GameLift::Server::Destroy();
```

### Parameters
<a name="integration-server-sdk5-cpp-ref-destroy-parameter"></a>

Non ci sono parametri.

### Valore restituito
<a name="integration-server-sdk5-cpp-ref-destroy-return"></a>

Restituisce un risultato generico costituito da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-cpp-ref-destroy-example"></a>

```
Aws::GameLift::GenericOutcome processEndingOutcome = Aws::GameLift::Server::ProcessEnding();
Aws::GameLift::Server::Destroy();

// Exit the process with success or failure
if (processEndingOutcome.IsSuccess()) {
  exit(0);
}
else {
  cout << "ProcessEnding() failed. Error: " << processEndingOutcome.GetError().GetErrorMessage();
  exit(-1);
}
```

# Server C\$1 SDK 5.x per -- Azioni Amazon GameLift Servers
<a name="integration-server-sdk5-csharp-actions"></a>

Usa il riferimento all'SDK 5.x del server per integrare il tuo gioco multiplayer con cui ospitarlo. Amazon GameLift Servers Per indicazioni sul processo di integrazione, consulta. [Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server](gamelift-sdk-server-api.md) Se stai usando il Amazon GameLift Servers plugin per Unity, vedi anche[Amazon GameLift Serversplugin per Unity (server SDK 5.x)](unity-plug-in.md).

# Server C\$1 SDK 5.x per Amazon GameLift Servers -- Tipi di dati
<a name="integration-server-sdk5-csharp-datatypes"></a>

Usa il riferimento all'SDK 5.x del server Amazon GameLift Servers C\$1 per integrare il tuo gioco multiplayer con cui ospitare. Amazon GameLift Servers Per indicazioni sul processo di integrazione, consulta. [Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server](gamelift-sdk-server-api.md) Se stai usando il Amazon GameLift Servers plugin per Unity, vedi anche[Amazon GameLift Serversplugin per Unity (server SDK 5.x)](unity-plug-in.md).

[Server C\$1 SDK 5.x per -- Azioni Amazon GameLift Servers](integration-server-sdk5-csharp-actions.md)

**Topics**
+ [LogParameters](#integration-server-sdk5-csharp-dataypes-log)
+ [MetricsParameters](#integration-server-sdk5-csharp-datatypes-metricsparameters)
+ [ProcessParameters](#integration-server-sdk5-csharp-dataypes-process)
+ [UpdateGameSession](#integration-server-sdk5-csharp-dataypes-updategamesession)
+ [GameSession](#integration-server-sdk5-csharp-dataypes-gamesession)
+ [ServerParameters](#integration-server-sdk5-csharp-dataypes-serverparameters)
+ [StartMatchBackfillRequest](#integration-server-sdk5-csharp-dataypes-startmatchbackfillrequest)
+ [Player](#integration-server-sdk5-csharp-dataypes-player)
+ [DescribePlayerSessionsRequest](#integration-server-sdk5-csharp-dataypes-playersessions)
+ [StopMatchBackfillRequest](#integration-server-sdk5-csharp-dataypes-stopmatchbackfillrequest)
+ [GetFleetRoleCredentialsRequest](#integration-server-sdk5-csharp-dataypes-getfleetrolecredentialsrequest)
+ [AttributeValue](#integration-server-sdk5-csharp-datatypes-attributevalue)
+ [AwsStringOutcome](#integration-server-sdk5-csharp-datatypes-awsstringoutcome)
+ [GenericOutcome](#integration-server-sdk5-csharp-datatypes-genericoutcome)
+ [MetricsManagerOutcome](#integration-server-sdk5-csharp-datatypes-metricsmanageroutcome)
+ [DescribePlayerSessionsOutcome](#integration-server-sdk5-csharp-datatypes-describeplayersessionsoutcome)
+ [DescribePlayerSessionsResult](#integration-server-sdk5-csharp-datatypes-describeplayersessionsresult)
+ [PlayerSession](#integration-server-sdk5-csharp-datatypes-playersession)
+ [StartMatchBackfillOutcome](#integration-server-sdk5-csharp-datatypes-startmatchbackfilloutcome)
+ [StartMatchBackfillResult](#integration-server-sdk5-csharp-datatypes-startmatchbackfillresult)
+ [GetComputeCertificateOutcome](#integration-server-sdk5-csharp-datatypes-getcomputecertificateoutcome)
+ [GetComputeCertificateResult](#integration-server-sdk5-csharp-datatypes-getcomputecertificateresult)
+ [GetFleetRoleCredentialsOutcome](#integration-server-sdk5-csharp-datatypes-getfleetrolecredentialsoutcome)
+ [GetFleetRoleCredentialsResult](#integration-server-sdk5-csharp-datatypes-getfleetrolecredentialsresult)
+ [AwsDateTimeOutcome](#integration-server-sdk5-csharp-datatypes-awsdatetimeoutcome)
+ [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror)
+ [enumerazioni;](#integration-server-sdk5-csharp-datatypes-enums)

## LogParameters
<a name="integration-server-sdk5-csharp-dataypes-log"></a>

Usa questo tipo di dati per identificare i file generati durante una sessione di gioco su cui desideri che il server di gioco venga caricato al Amazon GameLift Servers termine della sessione di gioco. Il server di gioco comunica `LogParameters to` Amazon GameLift Servers durante una [ProcessReady()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-processready) chiamata.


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| LogPaths |  L'elenco dei percorsi di directory dei file di registro del server di gioco che desideri Amazon GameLift Servers archiviare per accessi futuri. Il processo del server genera questi file durante ogni sessione di gioco. Definisci i percorsi e i nomi dei file nel tuo server di gioco e li memorizzi nella directory di build del gioco principale.  I percorsi di registro devono essere assoluti. Ad esempio, se la build del gioco memorizza i log delle sessioni di gioco in un percorso simile`MyGame\sessionLogs\`, il percorso si troverebbe `c:\game\MyGame\sessionLogs` su un'istanza di Windows. **Tipo:** `List<String>` **Obbligatorio:** no  | 

## MetricsParameters
<a name="integration-server-sdk5-csharp-datatypes-metricsparameters"></a>

Usa questo tipo di dati per configurare la raccolta delle metriche e la segnalazione degli arresti anomali per il server di gioco. Il server di gioco comunica con `MetricsParameters` durante una Amazon GameLift Servers [InitMetrics()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initmetrics) chiamata.


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| StatsdHost |  Il nome host o l'indirizzo IP del server StatSD per la raccolta delle metriche. **Tipo:** `String` **Obbligatorio:** no  | 
| StatsdPort |  Il numero di porta del server StatSD per la raccolta delle metriche. **Tipo:** `Integer` **Obbligatorio:** no  | 
| CrashReporterHost |  Il nome host o l'indirizzo IP del server Crash Reporter. **Tipo:** `String` **Obbligatorio:** no  | 
| CrashReporterPort |  Il numero di porta del server Crash Reporter. **Tipo:** `Integer` **Obbligatorio:** no  | 
| FlushIntervalMs |  L'intervallo in millisecondi per il trasferimento dei dati delle metriche al server. **Tipo:** `Integer` **Obbligatorio:** no  | 
| MaxPacketSize |  La dimensione massima in byte per i pacchetti di metriche inviati al server. **Tipo:** `Integer` **Obbligatorio:** no  | 

## ProcessParameters
<a name="integration-server-sdk5-csharp-dataypes-process"></a>

Questo tipo di dati contiene l'insieme di parametri a cui viene inviato una chiamataAmazon GameLift Servers. [ProcessReady()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-processready)


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| LogParameters | L'oggetto con un elenco di percorsi di directory ai file di registro delle sessioni di gioco.**Tipo:** `Aws::GameLift::Server::LogParameters`**Obbligatorio:** sì | 
| OnHealthCheck | Il nome della funzione di callback che Amazon GameLift Servers richiama per richiedere un rapporto sullo stato di salute del processo del server. Amazon GameLift Serverschiama questa funzione ogni 60 secondi. Dopo aver chiamato questa funzione Amazon GameLift Servers attende 60 secondi per una risposta, se non ne riceve nessuna, Amazon GameLift Servers registra il processo del server come non integro.**Tipo:** `void OnHealthCheckDelegate()`**Obbligatorio:** sì | 
| OnProcessTerminate | Il nome della funzione di callback che Amazon GameLift Servers richiama per forzare l'arresto del processo server. Dopo aver richiamato questa funzione, Amazon GameLift Servers attende per cinque minuti l'arresto del processo del server e risponde con una chiamata [ProcessEnding()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-processending) prima di arrestare il processo del server.**Tipo:** `void OnProcessTerminateDelegate()`**Obbligatorio:** sì | 
| OnStartGameSession | Il nome della funzione di callback che Amazon GameLift Servers richiama per attivare una nuova sessione di gioco. Amazon GameLift Serverschiama questa funzione in risposta alla richiesta del client. [CreateGameSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateGameSession.html) La funzione di callback accetta un [GameSession](#integration-server-sdk5-csharp-dataypes-gamesession) oggetto.**Tipo:** `void OnStartGameSessionDelegate(GameSession)`**Obbligatorio:** sì | 
| OnUpdateGameSession | Il nome della funzione di callback che Amazon GameLift Servers richiama per passare un oggetto di sessione di gioco aggiornato al processo del server. Amazon GameLift Serverschiama questa funzione quando è stata elaborata una richiesta di match backfill per fornire dati aggiornati sul matchmaker. Passa un [GameSession](#integration-server-sdk5-csharp-dataypes-gamesession) oggetto, uno status update (updateReason) e l'ID del ticket match backfill.**Tipo:** void () OnUpdateGameSessionDelegate [UpdateGameSession](#integration-server-sdk5-csharp-dataypes-updategamesession)**Obbligatorio:** no | 
| Porta | Il numero di porta su cui il processo server ascolta le connessioni di nuovi giocatori. Il valore deve rientrare nella gamma di porte configurate per qualsiasi parco istanze che distribuisce questa build del server di gioco. Questo numero di porta è incluso nella sessione di gioco e negli oggetti della sessione del giocatore utilizzati dalle sessioni di gioco per la connessione a un processo server.**Tipo:** `Integer`**Obbligatorio:** sì | 

## UpdateGameSession
<a name="integration-server-sdk5-csharp-dataypes-updategamesession"></a>

Le informazioni aggiornate relative a un oggetto della sessione di gioco includono il motivo per cui la sessione di gioco è stata aggiornata. Se l'aggiornamento è correlato a un'azione di ripristino di una partita, questo tipo di dati include l'ID del ticket di backfill.


| Properties | **Descrizione** | 
| --- | --- | 
| GameSession | Oggetto [GameSession](#integration-server-sdk5-csharp-dataypes-gamesession). L'GameSessionoggetto contiene proprietà che descrivono una sessione di gioco. **Tipo:** `GameSession GameSession()`**Obbligatorio:** sì | 
| UpdateReason | Il motivo per cui la sessione di gioco viene aggiornata.**Tipo:** `UpdateReason UpdateReason()`**Obbligatorio:** sì | 
| BackfillTicketId | L'ID del ticket di backfill che tenta di aggiornare la sessione di gioco.**Tipo:** `String`**Obbligatorio:** sì | 

## GameSession
<a name="integration-server-sdk5-csharp-dataypes-gamesession"></a>

Dettagli di una sessione di gioco. 


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionId |  Un identificatore univoco per la sessione di gioco. L'ARN di una sessione di gioco ha il seguente formato:. `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>` **Tipo:** `String` **Obbligatorio:** no  | 
| Name |  Un'etichetta descrittiva della sessione di gioco.  **Tipo:** `String` **Obbligatorio:** no  | 
| FleetId |  Un identificatore univoco per la flotta su cui è in esecuzione la sessione di gioco. **Tipo:** `String` **Obbligatorio:** no  | 
| MaximumPlayerSessionCount |  Il numero massimo di connessioni dei giocatori alla sessione di gioco. **Tipo:** `Integer` **Obbligatorio:** no  | 
| Porta |  Il numero di porta per la sessione di gioco. Per connettersi a un server di Amazon GameLift Servers gioco, un'app necessita sia dell'indirizzo IP che del numero di porta. **Tipo:** `Integer` **Obbligatorio:** no  | 
| IpAddress |  L'indirizzo IP della sessione di gioco. Per connettersi a un server di Amazon GameLift Servers gioco, un'app necessita sia dell'indirizzo IP che del numero di porta. **Tipo:** `String` **Obbligatorio:** no  | 
| GameSessionData |  Un set di proprietà personalizzate della sessione di gioco, formattate come valore di stringa singola.  **Tipo:** `String` **Obbligatorio:** no  | 
| MatchmakerData |  Le informazioni sul processo di matchmaking utilizzato per creare la sessione di gioco, in sintassi JSON, sono formattate come stringa. Oltre alla configurazione di matchmaking utilizzata, contiene dati su tutti i giocatori assegnati alla partita, compresi gli attributi dei giocatori e le assegnazioni delle squadre. **Tipo:** `String` **Obbligatorio:** no  | 
| GameProperties |  Un insieme di proprietà personalizzate per una sessione di gioco, formattate come coppie chiave:valore. Queste proprietà vengono passate con una richiesta di avvio di una nuova sessione di gioco. **Tipo:** `Dictionary<string, string>` **Obbligatorio:** no  | 
| DnsName |  L'identificatore DNS assegnato all'istanza che esegue la sessione di gioco. I valori hanno il seguente formato: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-csharp-datatypes.html) Quando ti connetti a una sessione di gioco in esecuzione su una flotta abilitata per TLS, devi usare il nome DNS, non l'indirizzo IP. **Tipo:** `String` **Obbligatorio:** no  | 

## ServerParameters
<a name="integration-server-sdk5-csharp-dataypes-serverparameters"></a>

Informazioni utilizzate per mantenere la connessione tra un server Amazon GameLift Servers Anywhere e il servizio. Amazon GameLift Servers Queste informazioni vengono utilizzate quando si avviano nuovi processi server con[InitSDK()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initsdk). Per i server ospitati su istanze EC2 Amazon GameLift Servers gestite, utilizza un oggetto vuoto.


| Properties | **Descrizione** | 
| --- | --- | 
| WebSocketUrl |  I `GameLiftServerSdkEndpoint` restituiti quando fai parte `RegisterCompute` di Anywhere. Amazon GameLift Servers **Tipo:** `String` **Obbligatorio:** sì  | 
| ProcessId |  Un identificatore univoco registrato nel processo del server che ospita il gioco. **Tipo:** `String` **Obbligatorio:** sì  | 
| HostId |  Un identificatore univoco per l'host con i processi del server che ospitano il gioco. L'HostID viene ComputeName utilizzato quando hai registrato il tuo computer. Per ulteriori informazioni, consulta, [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html) **Tipo:** `String` **Obbligatorio:** sì  | 
| FleetId | L'ID del parco veicoli su cui è registrato il computer. Per ulteriori informazioni, consultare [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Tipo:** `String`**Obbligatorio:** sì | 
| AuthToken | Il token di autenticazione generato da Amazon GameLift Servers questo codice autentica il server. Amazon GameLift Servers Per ulteriori informazioni, consultare [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Tipo:** `String`**Obbligatorio:** sì | 

## StartMatchBackfillRequest
<a name="integration-server-sdk5-csharp-dataypes-startmatchbackfillrequest"></a>

Informazioni utilizzate per creare una richiesta di matchmaking backfill. Il server di gioco comunica queste informazioni durante una chiamataAmazon GameLift Servers. [StartMatchBackfill()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-startmatchbackfill)


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionArn |  L'identificatore univoco della sessione di gioco. L'operazione API `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-csharp-actions.html#integration-server-sdk5-csharp-getgamesessionid)` restituisce l'identificatore in formato ARN. **Tipo:** `String` **Obbligatorio:** sì  | 
| MatchmakingConfigurationArn |  L'identificatore univoco, sotto forma di ARN, che il matchmaker deve utilizzare per questa richiesta. L'ARN del matchmaker per la sessione di gioco originale si trova nell'oggetto della sessione di gioco nella proprietà matchmaker data. Scopri di più sui dati dei matchmaker in [Work](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html) with matchmaker data. **Tipo:** `String` **Obbligatorio:** sì  | 
| Players |  Un insieme di dati che rappresenta tutti i giocatori attualmente impegnati nella sessione di gioco. Il matchmaker utilizza queste informazioni per cercare nuovi giocatori che rappresentano un buon abbinamento per i giocatori attuali. **Tipo:** `List<Player>` **Obbligatorio:** sì  | 
| TicketId |  L'identificatore univoco di un ticket di richiesta di matchmaking o match backfill. Se non fornisci un valore, Amazon GameLift Servers ne genera uno. Utilizzare questo identificatore per monitorare lo stato del ticket di backfill degli abbinamenti o annullare la richiesta, se necessario.  **Tipo:** `String` **Obbligatorio:** no  | 

## Player
<a name="integration-server-sdk5-csharp-dataypes-player"></a>

Rappresenta un giocatore in matchmaking. Quando inizia una richiesta di matchmaking, un giocatore ha un ID giocatore, attributi e possibilmente dati sulla latenza. Amazon GameLift Serversaggiunge le informazioni sulla squadra dopo una partita.


| Properties | **Descrizione** | 
| --- | --- | 
| LatencyInSM |  Un insieme di valori espressi in millisecondi, che indica la quantità di latenza che un giocatore sperimenta quando è connesso a una posizione.  Se viene utilizzata questa proprietà, il giocatore viene abbinato solo per le posizioni elencate. Se un matchmaker ha una regola che valuta la latenza dei giocatori, i giocatori devono segnalare la latenza per essere abbinati. **Tipo:** `Dictionary<string, int>` **Obbligatorio:** no  | 
| PlayerAttributes |  Una raccolta di coppie chiave:valore che contengono informazioni sui giocatori da utilizzare nel matchmaking. Le chiavi degli attributi del giocatore devono corrispondere a quelle PlayerAttributes utilizzate in un set di regole di matchmaking. Per ulteriori informazioni sugli attributi dei giocatori, vedi [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Tipo:** `Dictionary<string, AttributeValue` **Obbligatorio:** no  | 
| PlayerId |  Un identificatore univoco per un giocatore. **Tipo:** `String` **Obbligatorio:** no  | 
| Team |  Il nome della squadra a cui è assegnato il giocatore in una partita. Definisci il nome della squadra nel set di regole del matchmaking. **Tipo:** `String` **Obbligatorio:** no  | 

## DescribePlayerSessionsRequest
<a name="integration-server-sdk5-csharp-dataypes-playersessions"></a>

Questo tipo di dati viene utilizzato per specificare quale sessione del giocatore recuperare. Può essere utilizzato in diversi modi: (1) fornire PlayerSessionId a per richiedere una sessione di gioco specifica; (2) fornire GameSessionId a richiedere tutte le sessioni di gioco nella sessione di gioco specificata; o (3) fornire PlayerId a per richiedere tutte le sessioni di gioco per il giocatore specificato. Per le raccolte di grandi dimensioni delle sessioni giocatore, utilizzare i parametri di paginazione per recuperare i risultati in pagine sequenziali.


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionId |  L'identificatore unico della sessione di gioco. Utilizzare questo parametro per richiedere tutte le sessioni giocatore per la sessione di gioco specificata. Il formato dell'ID della sessione di gioco è il seguente: `arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>`. Il valore di <ID string> corrisponde a una stringa ID personalizzata o (se ne è stata specificata una al momento della creazione della sessione di gioco) a una stringa generata.  **Tipo:** `String` **Obbligatorio:** no  | 
| PlayerSessionId |  L'identificatore univoco per la sessione di un giocatore. **Tipo:** `String` **Obbligatorio:** no  | 
| PlayerId |  L'identificatore univoco di un giocatore. Per informazioni, consulta [Genera giocatore IDs](player-sessions-player-identifiers.md). **Tipo:** `String` **Obbligatorio:** no  | 
| PlayerSessionStatusFilter |  Lo stato della sessione del giocatore su cui filtrare i risultati. Tra gli stati sessione giocatore possibili sono inclusi i seguenti: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-csharp-datatypes.html) **Tipo:** `String` **Obbligatorio:** no  | 
| NextToken |  Il token che indica l'inizio della pagina successiva di risultati. Per specificare l'inizio del set di risultati, non fornire un valore. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `String` **Obbligatorio:** no  | 
| Limite |  Numero massimo di risultati da restituire. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `int` **Obbligatorio:** no  | 

## StopMatchBackfillRequest
<a name="integration-server-sdk5-csharp-dataypes-stopmatchbackfillrequest"></a>

Informazioni utilizzate per annullare una richiesta di matchmaking backfill. Il server di gioco comunica queste informazioni al Amazon GameLift Servers servizio durante una chiamata. [StopMatchBackfill()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-stopmatchbackfill)


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionArn |  L'identificatore univoco della sessione di gioco della richiesta annullata. **Tipo:** `string` **Obbligatorio:** sì  | 
| MatchmakingConfigurationArn |  L'identificatore univoco del matchmaker a cui è stata inviata questa richiesta. **Tipo:** `string` **Obbligatorio:** sì  | 
| TicketId |  L'identificatore univoco del ticket di richiesta di riempimento da annullare. **Tipo:** `string` **Obbligatorio:** sì  | 

## GetFleetRoleCredentialsRequest
<a name="integration-server-sdk5-csharp-dataypes-getfleetrolecredentialsrequest"></a>

Questo tipo di dati offre al server di gioco un accesso limitato alle altre risorse. AWS Per ulteriori informazioni, consultare [Configurare un ruolo di servizio IAM per Amazon GameLift Servers](setting-up-role.md).


| Properties | **Descrizione** | 
| --- | --- | 
| RoleArn | L'Amazon Resource Name (ARN) del ruolo di servizio che estende l'accesso limitato alle tue AWS risorse. **Tipo:** `string` **Obbligatorio:** sì  | 
| RoleSessionName | Il nome della sessione che descrive l'uso delle credenziali del ruolo. **Tipo:** `string` **Obbligatorio:** no  | 

## AttributeValue
<a name="integration-server-sdk5-csharp-datatypes-attributevalue"></a>

Usa questi valori nelle coppie chiave-valore degli attributi. [Player](#integration-server-sdk5-csharp-dataypes-player) Questo oggetto consente di specificare il valore di un attributo utilizzando uno qualsiasi dei tipi di dati validi: stringa, numero, array di stringhe o mappa di dati. Ogni `AttributeValue` oggetto può utilizzare solo una delle proprietà disponibili.


| Properties | Description | 
| --- | --- | 
| AttrType |  Speciifica il tipo di valore dell'attributo. **Tipo:** un valore `AttrType` [enum.](#integration-server-sdk5-csharp-datatypes-enums)  **Obbligatorio:** no  | 
| S |  Rappresenta un valore di attributo di tipo stringa. **Tipo:** `string` **Obbligatorio:** sì  | 
| N |  Rappresenta un valore di attributo numerico. **Tipo:** `double` **Obbligatorio:** sì  | 
| SL |  Rappresenta una matrice di valori di attributi di tipo stringa. **Tipo:** `string[]` **Obbligatorio:** sì  | 
| SDM |  Rappresenta un dizionario di chiavi di stringa e valori doppi. **Tipo:** `Dictionary<string, double>` **Obbligatorio:** sì  | 

## AwsStringOutcome
<a name="integration-server-sdk5-csharp-datatypes-awsstringoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** `string` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## GenericOutcome
<a name="integration-server-sdk5-csharp-datatypes-genericoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## MetricsManagerOutcome
<a name="integration-server-sdk5-csharp-datatypes-metricsmanageroutcome"></a>

Rappresenta il risultato di una [InitMetrics()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initmetrics) chiamata. Contiene un' MetricsManager istanza relativa all'esito positivo o informazioni sull'errore in caso di errore.


|  |  | 
| --- |--- |
| Risultato |  L' MetricsManager istanza per la raccolta e la segnalazione delle metriche. **Tipo:** `MetricsManager` **Obbligatorio:** no  | 
| Completato |  Indipendentemente dal fatto che l'azione abbia avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## DescribePlayerSessionsOutcome
<a name="integration-server-sdk5-csharp-datatypes-describeplayersessionsoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [DescribePlayerSessionsResult](#integration-server-sdk5-csharp-datatypes-describeplayersessionsresult) **Obbligatorio:** no   | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## DescribePlayerSessionsResult
<a name="integration-server-sdk5-csharp-datatypes-describeplayersessionsresult"></a>


| Properties | Description | 
| --- | --- | 
| NextToken |  Il token che indica l'inizio della pagina successiva dei risultati. Per specificare l'inizio del set di risultati, non fornire un valore. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `string` **Obbligatorio:** sì  | 
| PlayerSessions |  Una raccolta di oggetti contenente proprietà per ogni sessione di giocatore che corrisponde alla richiesta.  **Tipo:** `IList<PlayerSession>` **Campo obbligatorio**:   | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## PlayerSession
<a name="integration-server-sdk5-csharp-datatypes-playersession"></a>


| Properties | Description | 
| --- | --- | 
| CreationTime |  **Tipo:** `long` **Obbligatorio:** sì  | 
| FleetId |  **Tipo:** `string` **Obbligatorio:** sì  | 
| GameSessionId |  **Tipo:** `string` **Obbligatorio:** sì  | 
| IpAddress |  **Tipo:** `string` **Obbligatorio:** sì  | 
| PlayerData |  **Tipo:** `string` **Obbligatorio:** sì  | 
| PlayerId |  **Tipo:** `string` **Obbligatorio:** sì  | 
| PlayerSessionId |  **Tipo:** `string` **Obbligatorio:** sì  | 
| Porta |  **Tipo:** `int` **Obbligatorio:** sì  | 
| Status |  **Tipo**: Un `PlayerSessionStatus` [enum](#integration-server-sdk5-csharp-datatypes-enums). **Obbligatorio:** sì  | 
| TerminationTime |  **Tipo:** `long` **Obbligatorio:** sì  | 
| DnsName |  **Tipo:** `string` **Obbligatorio:** sì  | 

## StartMatchBackfillOutcome
<a name="integration-server-sdk5-csharp-datatypes-startmatchbackfilloutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [StartMatchBackfillResult](#integration-server-sdk5-csharp-datatypes-startmatchbackfillresult) **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## StartMatchBackfillResult
<a name="integration-server-sdk5-csharp-datatypes-startmatchbackfillresult"></a>


| Properties | Description | 
| --- | --- | 
| TicketId |  **Tipo:** `string` **Obbligatorio:** sì  | 

## GetComputeCertificateOutcome
<a name="integration-server-sdk5-csharp-datatypes-getcomputecertificateoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [GetComputeCertificateResult](#integration-server-sdk5-csharp-datatypes-getcomputecertificateresult) **Obbligatorio:** no   | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## GetComputeCertificateResult
<a name="integration-server-sdk5-csharp-datatypes-getcomputecertificateresult"></a>

Il percorso del certificato TLS sul computer e il nome host del computer.


| Properties | Description | 
| --- | --- | 
| CertificatePath |  **Tipo:** `string` **Obbligatorio:** sì  | 
| ComputeName |  **Tipo:** `string` **Obbligatorio:** sì  | 

## GetFleetRoleCredentialsOutcome
<a name="integration-server-sdk5-csharp-datatypes-getfleetrolecredentialsoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [GetFleetRoleCredentialsResult](#integration-server-sdk5-csharp-datatypes-getfleetrolecredentialsresult) **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## GetFleetRoleCredentialsResult
<a name="integration-server-sdk5-csharp-datatypes-getfleetrolecredentialsresult"></a>


| Properties | Description | 
| --- | --- | 
| AccessKeyId |  L'ID della chiave di accesso per autenticare e fornire l'accesso alle tue risorse. AWS  **Tipo:** `string` **Obbligatorio:** no  | 
| AssumedRoleId |  L'ID dell'utente a cui appartiene il ruolo di servizio. **Tipo:** `string` **Obbligatorio:** no  | 
| AssumedRoleUserArn |  L'Amazon Resource Name (ARN) dell'utente a cui appartiene il ruolo di servizio. **Tipo:** `string` **Obbligatorio:** no  | 
| Scadenza |  Il periodo di tempo che manca alla scadenza delle credenziali di sessione. **Tipo:** `DateTime` **Obbligatorio:** no  | 
| SecretAccessKey |  L'ID della chiave di accesso segreta per l'autenticazione. **Tipo:** `string` **Obbligatorio:** no  | 
| SessionToken |  Un token per identificare la sessione attiva corrente che interagisce con AWS le tue risorse. **Tipo:** `string` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## AwsDateTimeOutcome
<a name="integration-server-sdk5-csharp-datatypes-awsdatetimeoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** `DateTime` **Obbligatorio:** no   | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## GameLiftError
<a name="integration-server-sdk5-csharp-datatypes-gamelifterror"></a>


| Properties | Description | 
| --- | --- | 
| ErrorType |  Il tipo di errore. **[Tipo: Un enum. `GameLiftErrorType`](#integration-server-sdk5-csharp-datatypes-enums)** **Obbligatorio:** no   | 
| ErrorName |  Il nome dell'errore.  **Tipo:** `string`  **Obbligatorio:** no   | 
| ErrorMessage |  Messaggio di errore.  **Tipo:** `string`  **Obbligatorio:** no   | 

## enumerazioni;
<a name="integration-server-sdk5-csharp-datatypes-enums"></a>

Le enumerazioni definite per l'SDK del server per Amazon GameLift Servers (C\$1) sono definite come segue:

**AttrType**  
+ **NONE**
+ **STRINGA**
+ **DOPPIA**
+ **ELENCO\$1STRINGHE**
+ **STRING\$1DOUBLE\$1MAP**

**GameLiftErrorType**  
Valore di stringa che indica il tipo di errore. I valori validi includono:  
+ **SERVICE\$1CALL\$1FAILED — Una chiamata a un servizio non è riuscita**. AWS 
+ **LOCAL\$1CONNECTION\$1FAILED — La connessione** locale a non è riuscita. Amazon GameLift Servers 
+ **NETWORK\$1NOT\$1INITIALIZED — La rete non è stata inizializzata**. 
+ **GAMESESSION\$1ID\$1NOT\$1SET — L'ID della sessione** di gioco non è stato impostato. 
+ **BAD\$1REQUEST\$1EXCEPTION** 
+ **ECCEZIONE\$1DI\$1SERVIZIO INTERNA** 
+ **ALREADY\$1INITIALIZED — Il Amazon GameLift Servers server o il client è già stato inizializzato** con Initialize (). 
+ **FLEET\$1MISMATCH — La flotta bersaglio non corrisponde alla** flotta di una GameSession o PlayerSession. 
+ **GAMELIFT\$1CLIENT\$1NOT\$1INITIALIZED** — Il client non è stato inizializzato. Amazon GameLift Servers 
+ **GAMELIFT\$1SERVER\$1NOT\$1INITIALIZED** — Amazon GameLift Servers Il server non è stato inizializzato. 
+ **GAME\$1SESSION\$1ENDED\$1FAILED: l'SDK del server non è riuscito a contattare** il servizio per segnalare la fine della sessione di gioco. Amazon GameLift Servers 
+ GAME\$1SESSION\$1NOT\$1READY — La sessione di **gioco** sul server non è stata attivata. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1READY\$1FAILED: l'SDK del server per cui non è stato possibile contattare il servizio per segnalare che la sessione di gioco è pronta**. Amazon GameLift Servers 
+ **INITIALIZATION\$1MISMATCH** — È stato chiamato un metodo client dopo Server: :Initialize () o viceversa. 
+ **NOT\$1INITIALIZED — Il Amazon GameLift Servers server o il client non sono stati inizializzati** con Initialize (). 
+ **NO\$1TARGET\$1ALIASID\$1SET** — Non è stato impostato un aliasID di destinazione. 
+ **NO\$1TARGET\$1FLEET\$1SET** — Non è stata impostata una flotta di obiettivi. 
+ **PROCESS\$1ENDING\$1FAILED: l'SDK del server non è riuscito** a contattare il servizio per segnalare la fine del processo. Amazon GameLift Servers 
+ **PROCESS\$1NOT\$1ACTIVE — Il processo del server non è ancora attivo**, non è associato a un processo e non può accettarlo o elaborarlo. GameSession PlayerSessions 
+ **PROCESS\$1NOT\$1READY — Il processo del server non è ancora pronto** per essere attivato. 
+ **PROCESS\$1READY\$1FAILED: l'SDK del server non è riuscito** a contattare il servizio per Amazon GameLift Servers segnalare che il processo è pronto. 
+ SDK\$1VERSION\$1DETECTION\$1FAILED — Rilevamento della **versione SDK** non riuscito. 
+ **STX\$1CALL\$1FAILED** — Una chiamata al componente di backend del server non è riuscita. XStx 
+ **STX\$1INITIALIZATION\$1FAILED — L'inizializzazione** del componente di backend del server non è riuscita. XStx 
+ **UNEXPECTED\$1PLAYER\$1SESSION — Il server ha rilevato una sessione di giocatore non registrata**. 
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1FORBIDDEN** 
+ **URL NON VALIDO DI WEBSOCKET\$1CONNECT\$1FAILURE\$1INVALID\$1** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **WEBSOCKET\$1RETRIABLE\$1SEND\$1MESSAGE\$1FAILURE** — Errore recuperabile nell'invio di un messaggio al servizio. GameLift WebSocket 
+ **WEBSOCKET\$1SEND\$1MESSAGE\$1FAILURE — Errore** nell'invio di un messaggio al GameLift servizio. WebSocket 
+ **MATCH\$1BACKFILL\$1REQUEST\$1VALIDATION** — La convalida della richiesta non è riuscita. 
+ **PLAYER\$1SESSION\$1REQUEST\$1VALIDATION** — La convalida della richiesta non è riuscita. 

**PlayerSessionCreationPolicy**  
Valore della stringa che indica se la sessione di gioco accetta nuovi giocatori. I valori validi includono:   
+ **ACCEPT\$1ALL**: accetta tutte le nuove sessioni giocatore. 
+ **DENY\$1ALL**: rifiuta tutte le nuove sessioni giocatore. 
+ **NOT\$1SET** — La sessione di gioco non è impostata per accettare o rifiutare sessioni di nuovi giocatori. 

**PlayerSessionStatus**  
+ **ACTIVE**
+ **COMPLETED**
+ **NOT\$1SET**
+ **RISERVATO**
+ **TIMEOUT**

[Server C\$1 SDK 5.x per Amazon GameLift Servers -- Tipi di dati](integration-server-sdk5-csharp-datatypes.md)

**Topics**
+ [Server C\$1 SDK 5.x per Amazon GameLift Servers -- Tipi di dati](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)
+ [Distruggi ()](#integration-server-sdk5-csharp-destroy)

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

Restituisce il numero di versione corrente dell'SDK integrato nel processo del server.

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

```
AwsStringOutcome GetSdkVersion();
```

### Valore restituito
<a name="integration-server-sdk5-csharp-getsdkversion-return"></a>

Se l'esito è positivo, restituisce la versione corrente dell'SDK come oggetto [AwsStringOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-awsstringoutcome). La stringa restituita include il numero di versione (esempio`5.0.0`). Se l'esito è negativo, verrà restituito un messaggio di errore.

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

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

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

Inizializza il sistema di metriche per la raccolta e la segnalazione dei dati sulle prestazioni del server. Per ottenere i migliori risultati, chiamate prima questo metodo per abilitare la raccolta delle metriche [InitSDK()](#integration-server-sdk5-csharp-initsdk) durante l'inizializzazione dell'SDK.

### Sintassi
<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) (facoltativo)  
Parametri di configurazione per la raccolta delle metriche. Se non viene fornito, utilizza valori predefiniti che possono essere sostituiti dalle variabili di ambiente.

### Valore restituito
<a name="integration-server-sdk5-csharp-initmetrics-return"></a>

In caso di successo, restituisce un [MetricsManagerOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-metricsmanageroutcome) oggetto contenente l' MetricsManager istanza. Se l'esito è negativo, verrà restituito un messaggio di errore.

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

Inizializza l'Amazon GameLift ServersSDK per una flotta EC2 gestita. Richiama questo metodo all'avvio, prima che si verifichi qualsiasi altra inizializzazione correlata a. Amazon GameLift Servers Questo metodo legge i parametri del server dall'ambiente host per configurare la comunicazione tra il server e il Amazon GameLift Servers servizio. Utilizza un token di idempotenza, quindi puoi riprovare a eseguire questa chiamata in tutta sicurezza quando fallisce.

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

```
GenericOutcome InitSDK();
```

### Valore restituito
<a name="integration-server-sdk5-csharp-initsdk-return"></a>

In caso di successo, restituisce un InitSdkOutcome oggetto per indicare che il processo del server è pronto per la chiamata. [ProcessReady()](#integration-server-sdk5-csharp-processready) 

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

Inizializza l'Amazon GameLift ServersSDK per una flotta Anywhere. Richiama questo metodo all'avvio, prima che si verifichi qualsiasi altra inizializzazione correlata a. Amazon GameLift Servers Questo metodo richiede parametri espliciti del server per configurare la comunicazione tra il server e il Amazon GameLift Servers servizio. Utilizza un token di idempotenza, quindi puoi riprovare a ripetere questa chiamata in tutta sicurezza quando fallisce.

### Sintassi
<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)  
Per inizializzare un server di gioco su una flotta Amazon GameLift Servers Anywhere, costruisci un `ServerParameters` oggetto con le seguenti informazioni:  
+ L'URL WebSocket utilizzato per connettersi al server di gioco. 
+ L'ID del processo utilizzato per ospitare il server di gioco. 
+ L'ID del computer che ospita i processi del server di gioco. 
+ L'ID della Amazon GameLift Servers flotta contenente il tuo computer Amazon GameLift Servers Anywhere.
+ Il token di autorizzazione generato dall'Amazon GameLift Serversoperazione. 

### Valore restituito
<a name="integration-server-sdk5-csharp-initsdk-anywhere-return"></a>

In caso di successo, restituisce un InitSdkOutcome oggetto per indicare che il processo del server è pronto per la chiamata[ProcessReady()](#integration-server-sdk5-csharp-processready). 

**Nota**  
Se le chiamate a non `InitSDK()` riescono per le build di gioco distribuite sulle flotte Anywhere, controlla il `ServerSdkVersion` parametro utilizzato durante la creazione della risorsa di compilazione. È necessario impostare esplicitamente questo valore sulla versione SDK del server in uso. Il valore predefinito per questo parametro è 4.x, che non è compatibile. Per risolvere questo problema, crea una nuova build e distribuiscila in una nuova flotta.

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

Notifica Amazon GameLift Servers che il processo del server è pronto per ospitare sessioni di gioco. Chiama questo metodo dopo averlo [InitSDK()](#integration-server-sdk5-csharp-initsdk) invocato. Questo metodo deve essere chiamato solo una volta per processo.

### Sintassi
<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` oggetto contiene informazioni sul processo del server.

### Valore restituito
<a name="integration-server-sdk5-csharp-processready-return"></a>

Restituisce un risultato generico costituito da successo o fallimento con un messaggio di errore.

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

Questo esempio illustra sia l'implementazione del metodo che quella delle funzioni di delega.

```
// 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>

Notifica Amazon GameLift Servers che il processo del server sta terminando. Chiama questo metodo dopo tutte le altre attività di pulizia (inclusa la chiusura della sessione di gioco attiva) e prima di terminare il processo. A seconda del risultato di`ProcessEnding()`, il processo termina con successo (0) o errore (-1) e genera un evento relativo alla flotta. Se il processo termina con un errore, l'evento fleet generato è. `SERVER_PROCESS_TERMINATED_UNHEALTHY`

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

```
GenericOutcome ProcessEnding()
```

### Valore restituito
<a name="integration-server-sdk5-csharp-processending-return"></a>

Restituisce un risultato generico costituito da successo o fallimento con un messaggio di errore.

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

Questo esempio chiama `ProcessEnding()` e `Destroy()` prima di terminare il processo del server con un codice di uscita riuscito o di errore.

```
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>

Notifica Amazon GameLift Servers che il processo del server ha attivato una sessione di gioco ed è ora pronto a ricevere le connessioni dei giocatori. Questa azione dovrebbe essere richiamata come parte della funzione di `onStartGameSession()` callback, dopo l'inizializzazione di tutta la sessione di gioco.

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

```
GenericOutcome ActivateGameSession()
```

### Valore restituito
<a name="integration-server-sdk5-csharp-activategamesession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

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

Questo esempio illustra la chiamata a `ActivateGameSession()` nell'ambito della funzione delegata `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>

Aggiorna la capacità della sessione di gioco corrente di accettare nuove sessioni giocatore. Una sessione di gioco può essere configurata per accettare o rifiutare tutte le nuove sessioni giocatore.

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

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

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

**playerSessionPolicy**  
Valore di stringa che indica se la sessione di gioco accetta nuovi giocatori.   
I valori validi includono:  
+ **ACCEPT\$1ALL**: accetta tutte le nuove sessioni giocatore.
+ **DENY\$1ALL**: rifiuta tutte le nuove sessioni giocatore.

### Valore restituito
<a name="integration-server-sdk5-csharp-updateplayersessioncreationpolicy-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

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

Questo esempio definisce la policy di partecipazione alla sessione di gioco corrente per accettare tutti i giocatori.

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

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

Recupera l'ID della sessione di gioco ospitata dal processo del server attivo.

Per i processi inattivi che non vengono attivati con una sessione di gioco, la chiamata restituisce un. [GameLiftError](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-gamelifterror)

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

```
AwsStringOutcome GetGameSessionId()
```

### Valore restituito
<a name="integration-server-sdk5-csharp-getgamesessionid-return"></a>

Se l'esito è positivo, l'ID della sessione di gioco verrà restituito come oggetto [AwsStringOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-awsstringoutcome). Se non riesce, restituisce un messaggio di errore».

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

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

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

Restituisce il tempo di arresto pianificato di un processo del server, se è disponibile un tempo di chiusura. Un processo server esegue questa azione dopo aver ricevuto una `onProcessTerminate()` richiamata daAmazon GameLift Servers. Amazon GameLift Serverschiama `onProcessTerminate()` per i seguenti motivi: 
+ Quando il processo del server ha segnalato problemi di salute o non ha risposto. Amazon GameLift Servers
+ Quando si termina l'istanza durante un evento di scale-down.
+ [Quando un'istanza viene terminata a causa di un'interruzione di un'istanza spot.](spot-tasks.md)

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

```
AwsDateTimeOutcome GetTerminationTime()
```

### Valore restituito
<a name="integration-server-sdk5-csharp-getterm-return"></a>

In caso di successo, restituisce l'ora di terminazione come oggetto. [AwsDateTimeOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-awsdatetimeoutcome) Il valore è il tempo di terminazione, espresso in segni di spunta trascorsi da allora. `0001 00:00:00` Ad esempio, il valore della data e dell'ora è uguale ai segni di `2020-09-13 12:26:40 -000Z` spunta. `637355968000000000` Se non è disponibile alcun orario di terminazione, restituisce un messaggio di errore.

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

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

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

Notifica Amazon GameLift Servers che un giocatore con l'ID di sessione specificato si è connesso al processo del server e deve essere convalidato. Amazon GameLift Serversverifica che l'ID della sessione del giocatore sia valido. Dopo la convalida della sessione di gioco, Amazon GameLift Servers modifica lo stato dello slot del giocatore da RISERVATO ad ATTIVO. 

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

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

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

playerSessionId  
ID univoco rilasciato GameLift quando viene creata una nuova sessione giocatore.

### Valore restituito
<a name="integration-server-sdk5-csharp-acceptplayersession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore. 

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

Questo esempio illustra una funzione per la gestione di una richiesta di connessione, inclusa la convalida e il rifiuto di una sessione giocatore non valida. 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>

Notifica Amazon GameLift Servers che un giocatore si è disconnesso dal processo del server. In risposta, Amazon GameLift Servers modifica lo slot del giocatore rendendolo disponibile. 

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

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

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

**playerSessionId**  
ID univoco rilasciato Amazon GameLift Servers quando viene creata una nuova sessione giocatore.

### Valore restituito
<a name="integration-server-sdk5-csharp-removeplayersession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

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

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

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

Recupera i dati della sessione del giocatore che includono impostazioni, metadati della sessione e dati del giocatore. Utilizza questa operazione per ottenere le informazioni per una singola sessione giocatore, per tutte le sessioni giocatore in una sessione di gioco o per tutte le sessioni giocatore associate a un singolo ID giocatore.

### Sintassi
<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)**  
Un [DescribePlayerSessionsRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-playersessions) oggetto che descrive le sessioni dei giocatori da recuperare.

### Valore restituito
<a name="integration-server-sdk5-csharp-describeplayersessions-return"></a>

In caso di successo, restituisce un [DescribePlayerSessionsOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-describeplayersessionsoutcome) oggetto che contiene un set di oggetti della sessione del giocatore che soddisfano i parametri della richiesta.

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

Questo esempio illustra una richiesta per tutte le sessioni giocatore attivamente connesse a una sessione di gioco specificata. Omettendo *NextToken*e impostando il valore *Limite* su 10, Amazon GameLift Servers restituirà i primi 10 record della sessione di gioco corrispondenti alla richiesta.

```
// 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>

Invia una richiesta per trovare nuovi giocatori per gli slot aperti in una sessione di gioco creata con FlexMatch. Per ulteriori informazioni, consulta la funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Questa operazione è asincrona. Se vengono abbinati nuovi giocatori, Amazon GameLift Servers fornisce dati aggiornati sul matchmaker utilizzando la funzione di callback. `OnUpdateGameSession()`

Un processo del server può avere un solo backfill degli abbinamenti attivo alla volta. Per inviare una nuova richiesta, chiama prima [StopMatchBackfill()](#integration-server-sdk5-csharp-stopmatchbackfill) per annullare la richiesta originale.

### Sintassi
<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` oggetto contiene informazioni sulla richiesta di riempimento.

### Valore restituito
<a name="integration-server-sdk5-csharp-startmatchbackfill-return"></a>

Restituisce un [StartMatchBackfillOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-startmatchbackfilloutcome) oggetto con l'ID del ticket Match Backfill o restituisce un errore con un messaggio di errore. 

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

Annulla una richiesta di match backfill attiva. Per ulteriori informazioni, consulta la funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

### Sintassi
<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` oggetto che fornisce dettagli sul ticket di matchmaking che stai interrompendo.

### Valore restituito
<a name="integration-server-sdk5-csharp-stopmatchbackfill-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

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

 Recupera il percorso del certificato TLS utilizzato per crittografare la connessione di rete tra il server di gioco e il client di gioco. Puoi utilizzare il percorso del certificato quando registri il tuo dispositivo di elaborazione in una flotta Anywhere. Amazon GameLift Servers Per ulteriori informazioni, consultare [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

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

```
GetComputeCertificateOutcome GetComputeCertificate();
```

### Valore restituito
<a name="integration-server-sdk5-csharp-getcomputecertificate-return"></a>

Restituisce un GetComputeCertificateResponse oggetto che contiene quanto segue: 
+  CertificatePath: il percorso del certificato TLS sulla risorsa di calcolo. Quando si utilizza una flotta Amazon GameLift Servers gestita, questo percorso contiene:
  + `certificate.pem`: Il certificato dell'utente finale. La catena completa di certificati è la combinazione dei certificati `certificateChain.pem` aggiunti a questo certificato.
  + `certificateChain.pem`: La catena di certificati che contiene il certificato principale e i certificati intermedi.
  + `rootCertificate.pem`: Il certificato principale.
  + `privateKey.pem`: la chiave privata per il certificato dell'utente finale.
+ ComputeName: il nome della risorsa di calcolo.

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

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

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

Recupera le credenziali del ruolo IAM che autorizzano Amazon GameLift Servers a interagire con altri. Servizi AWS Per ulteriori informazioni, consulta [Connect il server di gioco Amazon GameLift Servers ospitato ad altre AWS risorse](gamelift-sdk-server-resources.md).

### Sintassi
<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)  
Credenziali di ruolo che estendono l'accesso limitato alle tue AWS risorse al server di gioco.

### Valore restituito
<a name="integration-server-sdk5-csharp-getfleetrolecredentials-return"></a>

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

### Esempio
<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);
```

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

Libera l'SDK del server di Amazon GameLift Servers gioco dalla memoria. È consigliabile chiamare questo metodo dopo `ProcessEnding()` e prima di terminare il processo. Se utilizzi una flotta Anywhere e non interrompi i processi del server dopo ogni sessione di gioco, chiama `Destroy()` e poi `InitSDK()` reinizializza prima di notificare Amazon GameLift Servers che il processo è pronto per ospitare una sessione di gioco. `ProcessReady()`

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

```
GenericOutcome Destroy()
```

### Valore restituito
<a name="integration-server-sdk5-csharp-destroy-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<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); 
  }
```

# Go server SDK per Amazon GameLift Servers -- Azioni
<a name="integration-server-sdk-go-actions"></a>

Usa il riferimento all'SDK 5.x del server per integrare il tuo gioco multiplayer con cui ospitarlo. Amazon GameLift Servers Per indicazioni sul processo di integrazione, consulta. [Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server](gamelift-sdk-server-api.md)

`GameLiftServerAPI.go`definisce le azioni dell'SDK del server Go.

# Go server SDK perAmazon GameLift Servers: tipi di dati
<a name="integration-server-sdk-go-datatypes"></a>

Usa il riferimento all'SDK del server per integrare il tuo gioco multiplayer con cui ospitarlo. Amazon GameLift Servers Per indicazioni sul processo di integrazione, consulta[Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server](gamelift-sdk-server-api.md).

`GameLiftServerAPI.go`definisce le azioni dell'SDK del server Go.

[Go server SDK per Amazon GameLift Servers -- Azioni](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)
+ [Player](#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>

Un oggetto che identifica i file generati durante una sessione di gioco che desideri caricare e archiviare Amazon GameLift Servers al termine della sessione di gioco. Il server di gioco `LogParameters` lo fornisce Amazon GameLift Servers come parte di un `ProcessParameters` oggetto in una [ProcessReady()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processready) chiamata.


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| LogPaths |  L'elenco dei percorsi di directory dei file di registro del server di gioco che desideri Amazon GameLift Servers archiviare per accessi futuri. Il processo del server genera questi file durante ogni sessione di gioco. Definisci i percorsi e i nomi dei file nel tuo server di gioco e li memorizzi nella directory di build del gioco principale.  I percorsi di registro devono essere assoluti. Ad esempio, se la build del gioco memorizza i log delle sessioni di gioco in un percorso come`MyGame\sessionLogs\`, il percorso si troverebbe `c:\game\MyGame\sessionLogs` su un'istanza di Windows. **Tipo:** `[]string` **Obbligatorio:** no  | 

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

Un oggetto che comunica i parametri di configurazione per l'inizializzazione del sistema di metriche. Questa configurazione viene utilizzata per impostare la segnalazione StatSD, la segnalazione di arresti anomali e il comportamento di elaborazione delle metriche. Il server di gioco fornisce `MetricsParameters` to Amazon GameLift Servers come parte di una [InitMetrics()](integration-server-sdk-go-actions.md#integration-server-sdk-go-initmetrics) chiamata.


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| StatsdHost |  L'host del server StatSD per la segnalazione delle metriche (ad esempio, «localhost»). **Tipo:** `string` **Obbligatorio:** sì  | 
| StatsdPort |  La porta del server StatSD per la segnalazione delle metriche (ad esempio, 8125). **Tipo:** `int` **Obbligatorio:** sì  | 
| CrashReporterHost |  L'host crash reporter per il tracciamento degli arresti anomali e il monitoraggio dei processi. **Tipo:** `string` **Obbligatorio:** sì  | 
| CrashReporterPort |  La porta crash reporter per il tracciamento degli incidenti e il monitoraggio dei processi. **Tipo:** `int` **Obbligatorio:** sì  | 
| FlushIntervalMs |  L'intervallo di flush delle metriche in millisecondi. Controlla la frequenza con cui le metriche vengono inviate a StatSD. **Tipo:** `int` **Obbligatorio:** sì  | 
| MaxPacketSize |  La dimensione massima del pacchetto per le metriche in byte. Limita la dimensione dei pacchetti UDP inviati a StatSD. **Tipo:** `int` **Obbligatorio:** sì  | 

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

Un oggetto che descrive la comunicazione tra un processo server e. Amazon GameLift Servers Il processo server fornisce queste informazioni a Amazon GameLift Servers con una chiamata a[ProcessReady()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processready).


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| LogParameters | Un oggetto con percorsi di directory ai file generati durante una sessione di gioco. Amazon GameLift Serverscopia e archivia i file per accessi futuri.**Tipo:** `LogParameters`**Obbligatorio:** no | 
| OnHealthCheck | La funzione di callback che Amazon GameLift Servers richiama per richiedere un rapporto sullo stato di salute del processo del server. Amazon GameLift Serverschiama questa funzione ogni 60 secondi e attende una risposta per 60 secondi. Il processo del server ritorna TRUE se integro, FALSE se non integro. Se non viene restituita alcuna risposta, Amazon GameLift Servers registra il processo del server come non integro.**Tipo:** `OnHealthCheck func() bool`**Obbligatorio:** no | 
| OnProcessTerminate | La funzione di callback che Amazon GameLift Servers richiama per forzare l'arresto del processo server. Dopo aver chiamato questa funzione, Amazon GameLift Servers attende 5 minuti che il processo server si spenga e risponda con una [ProcessEnding()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processending) chiamata prima di chiudere il processo server.**Tipo:** `OnProcessTerminate func()`**Obbligatorio:** sì | 
| OnStartGameSession | La funzione di callback che Amazon GameLift Servers richiama il passaggio di un oggetto di sessione di gioco aggiornato al processo del server. Amazon GameLift Serverschiama questa funzione quando è stata elaborata una richiesta di match backfill per fornire dati aggiornati sul matchmaker. Passa un [GameSession](#integration-server-sdk-go-dataypes-gamesession) oggetto, uno status update (updateReason) e l'ID del ticket match backfill.**Tipo:** `OnStartGameSession func (model.GameSession )`**Obbligatorio:** sì | 
| OnUpdateGameSession | La funzione di callback che Amazon GameLift Servers richiama per passare informazioni aggiornate sulla sessione di gioco al processo del server. Amazon GameLift Serverschiama questa funzione dopo aver elaborato una richiesta di match backfill per fornire dati aggiornati sul matchmaker. **Tipo:** `OnUpdateGameSession func (model.UpdateGameSession)`**Obbligatorio:** no | 
| Port | Il numero di porta su cui il processo del server ascolta le connessioni di nuovi giocatori. Il valore deve rientrare nella gamma di porte configurate per qualsiasi parco istanze che distribuisce questa build del server di gioco. Questo numero di porta è incluso nella sessione di gioco e negli oggetti della sessione del giocatore utilizzati dalle sessioni di gioco per la connessione a un processo server.**Tipo:** `int`**Obbligatorio:** sì | 

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

Gli aggiornamenti a un oggetto della sessione di gioco, che include il motivo per cui la sessione di gioco è stata aggiornata e il relativo ID del ticket di backfill se il backfill viene utilizzato per riempire le sessioni dei giocatori nella sessione di gioco.


| Properties | **Descrizione** | 
| --- | --- | 
| GameSession | Oggetto [GameSession](#integration-server-sdk-go-dataypes-gamesession). L'GameSessionoggetto contiene proprietà che descrivono una sessione di gioco. **Tipo:** `GameSession GameSession()`**Obbligatorio:** sì | 
| UpdateReason | Il motivo per cui la sessione di gioco viene aggiornata.**Tipo:** `UpdateReason UpdateReason()`**Obbligatorio:** sì | 
| BackfillTicketId | L'ID del ticket di backfill che tenta di aggiornare la sessione di gioco.**Tipo:** `String`**Obbligatorio:** no | 

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

I dettagli di una sessione di gioco. 


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionId |  Un identificatore univoco per la sessione di gioco. Una sessione di gioco Amazon Resource Name (ARN) ha il seguente formato:. `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>` **Tipo:** `String` **Obbligatorio:** no  | 
| Name |  Un'etichetta descrittiva della sessione di gioco.  **Tipo:** `String` **Obbligatorio:** no  | 
| FleetId |  Un identificatore univoco per la flotta su cui è in esecuzione la sessione di gioco. **Tipo:** `String` **Obbligatorio:** no  | 
| MaximumPlayerSessionCount |  Il numero massimo di connessioni dei giocatori alla sessione di gioco. **Tipo:** `Integer` **Obbligatorio:** no  | 
| Porta |  Il numero di porta per la sessione di gioco. Per connettersi a un server di Amazon GameLift Servers gioco, un'app necessita sia dell'indirizzo IP che del numero di porta. **Tipo:** `Integer` **Obbligatorio:** no  | 
| IpAddress |  L'indirizzo IP della sessione di gioco. Per connettersi a un server di Amazon GameLift Servers gioco, un'app necessita sia dell'indirizzo IP che del numero di porta. **Tipo:** `String` **Obbligatorio:** no  | 
| GameSessionData |  Un set di proprietà personalizzate della sessione di gioco, formattate come valore di stringa singola.  **Tipo:** `String` **Obbligatorio:** no  | 
| MatchmakerData |  Le informazioni sul processo di matchmaking utilizzato per creare la sessione di gioco, in sintassi JSON, sono formattate come stringa. Oltre alla configurazione di matchmaking utilizzata, contiene dati su tutti i giocatori assegnati alla partita, compresi gli attributi dei giocatori e le assegnazioni delle squadre. **Tipo:** `String` **Obbligatorio:** no  | 
| GameProperties |  Un insieme di proprietà personalizzate per una sessione di gioco, formattate come coppie chiave:valore. Queste proprietà vengono passate con una richiesta di avvio di una nuova sessione di gioco. **Tipo:** `map[string] string` **Obbligatorio:** no  | 
| DnsName |  L'identificatore DNS assegnato all'istanza che esegue la sessione di gioco. I valori hanno il seguente formato: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk-go-datatypes.html) Quando ti connetti a una sessione di gioco in esecuzione su una flotta abilitata per TLS, devi usare il nome DNS, non l'indirizzo IP. **Tipo:** `String` **Obbligatorio:** no  | 

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

Informazioni utilizzate per mantenere la connessione tra un server Amazon GameLift Servers Anywhere e il servizio. Amazon GameLift Servers Queste informazioni vengono utilizzate quando si avviano nuovi processi server con[InitSDK()](integration-server-sdk-go-actions.md#integration-server-sdk-go-initsdk). Per i server ospitati su istanze EC2 Amazon GameLift Servers gestite, utilizza un oggetto vuoto.


| Properties | **Descrizione** | 
| --- | --- | 
| WebSocketURL |  `GameLiftServerSdkEndpoint`Amazon GameLift ServersRestituisce quando si utilizza una [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)risorsa di calcolo Amazon GameLift Servers Anywhere. **Tipo:** `string` **Obbligatorio:** sì  | 
| ProcessID |  Un identificatore univoco registrato nel processo del server che ospita il gioco. **Tipo:** `string` **Obbligatorio:** sì  | 
| HostID |  L'identificatore univoco della risorsa di elaborazione che ospita il nuovo processo del server.  `HostID`Viene `ComputeName` utilizzato al momento della registrazione del computer. Per ulteriori informazioni, consulta [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html). **Tipo:** `string` **Obbligatorio:** sì  | 
| FleetID | L'identificatore univoco della flotta su cui è registrato il calcolo. Per ulteriori informazioni, consulta [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Tipo:** `string`**Obbligatorio:** sì | 
| AuthToken | Il token di autenticazione generato da Amazon GameLift Servers questo codice autentica il server. Amazon GameLift Servers Per ulteriori informazioni, consulta [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Tipo:** `string`**Obbligatorio:** sì | 

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

Informazioni utilizzate per creare una richiesta di matchmaking backfill. Il server di gioco comunica queste informazioni durante una chiamataAmazon GameLift Servers. [StartMatchBackfill()](integration-server-sdk-go-actions.md#integration-server-sdk-go-startmatchbackfill)


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionArn |  L'identificatore univoco della sessione di gioco. L'operazione API `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk-go-actions.html#integration-server-sdk-go-getgamesessionid)` restituisce l'identificatore in formato ARN. **Tipo:** `String` **Obbligatorio:** sì  | 
| MatchmakingConfigurationArn |  L'identificatore univoco (sotto forma di ARN) che il matchmaker deve utilizzare per questa richiesta. L'ARN del matchmaker per la sessione di gioco originale si trova nell'oggetto della sessione di gioco nella proprietà matchmaker data. Per ulteriori informazioni sui dati del matchmaker, vedi [Lavora](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html) con i dati del matchmaker. **Tipo:** `String` **Obbligatorio:** sì  | 
| Players |  Un insieme di dati che rappresenta tutti i giocatori che sono attualmente impegnati nella sessione di gioco. Il matchmaker utilizza queste informazioni per cercare nuovi giocatori che rappresentano un buon abbinamento per i giocatori attuali. **Tipo:** `[]model.Player` **Obbligatorio:** sì  | 
| TicketId |  L'identificatore univoco di un ticket di richiesta di matchmaking o match backfill. Se non fornisci un valore, Amazon GameLift Servers ne genera uno. Utilizzare questo identificatore per monitorare lo stato del ticket di backfill degli abbinamenti o annullare la richiesta, se necessario.  **Tipo:** `String` **Obbligatorio:** no  | 

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

L'oggetto che rappresenta un giocatore in matchmaking. Quando inizia una richiesta di matchmaking, un giocatore ha un ID giocatore, attributi e possibilmente dati sulla latenza. Amazon GameLift Serversaggiunge le informazioni sulla squadra dopo una partita.


| Properties | **Descrizione** | 
| --- | --- | 
| LatencyInSM |  Un insieme di valori espressi in millisecondi che indica la quantità di latenza che un giocatore sperimenta quando è connesso a una posizione.  Se viene utilizzata questa proprietà, il giocatore viene abbinato solo per le posizioni elencate. Se un matchmaker ha una regola che valuta la latenza dei giocatori, i giocatori devono segnalare la latenza per essere abbinati. **Tipo:** `map[string] int` **Obbligatorio:** no  | 
| PlayerAttributes |  Una raccolta di coppie chiave:valore che contengono informazioni sui giocatori da utilizzare nel matchmaking. Le chiavi degli attributi del giocatore devono corrispondere a quelle PlayerAttributes utilizzate in un set di regole di matchmaking. Per ulteriori informazioni sugli attributi dei giocatori, vedi [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Tipo:** `map[string] AttributeValue` **Obbligatorio:** no  | 
| PlayerId |  Un identificatore univoco per un giocatore. **Tipo:** `String` **Obbligatorio:** no  | 
| Team |  Il nome della squadra a cui è assegnato il giocatore in una partita. Definisci il nome della squadra nel set di regole del matchmaking. **Tipo:** `String` **Obbligatorio:** no  | 

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

Un oggetto che specifica le sessioni dei giocatori da recuperare. Il processo server fornisce queste informazioni con una [DescribePlayerSessions()](integration-server-sdk-go-actions.md#integration-server-sdk-go-describeplayersessions) chiamata a. Amazon GameLift Servers


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionID |  Un identificatore univoco della sessione di gioco. Utilizzare questo parametro per richiedere tutte le sessioni giocatore per la sessione di gioco specificata.  Il formato dell'ID della sessione di gioco è`arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>`. `GameSessionID`È una stringa ID personalizzata o una stringa generata.  **Tipo:** `String` **Obbligatorio:** no  | 
| PlayerSessionID |  L'identificatore univoco per la sessione di un giocatore. Usa questo parametro per richiedere una singola sessione di gioco specifica. **Tipo:** `String` **Obbligatorio:** no  | 
| PlayerID |  L'identificatore univoco di un giocatore. Usa questo parametro per richiedere tutte le sessioni di gioco per un giocatore specifico. Per informazioni, consulta [Genera giocatore IDs](player-sessions-player-identifiers.md). **Tipo:** `String` **Obbligatorio:** no  | 
| PlayerSessionStatusFilter |  Lo stato della sessione del giocatore su cui filtrare i risultati. I possibili stati delle sessioni di gioco includono: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk-go-datatypes.html) **Tipo:** `String` **Obbligatorio:** no  | 
| NextToken |  Il token che indica l'inizio della pagina successiva di risultati. Per specificare l'inizio del set di risultati, non fornire un valore. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `String` **Obbligatorio:** no  | 
| Limit |  Numero massimo di risultati da restituire. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `int` **Obbligatorio:** no  | 

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

Informazioni utilizzate per annullare una richiesta di matchmaking backfill. Il server di gioco comunica queste informazioni al Amazon GameLift Servers servizio durante una chiamata. [StopMatchBackfill()](integration-server-sdk-go-actions.md#integration-server-sdk-go-stopmatchbackfill)


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionArn |  L'identificatore univoco della sessione di gioco della richiesta che viene annullata. **Tipo:** `string` **Obbligatorio:** no  | 
| MatchmakingConfigurationArn |  L'identificatore univoco del matchmaker a cui è stata inviata questa richiesta. **Tipo:** `string` **Obbligatorio:** no  | 
| TicketId |  L'identificatore univoco del ticket di richiesta di riempimento da annullare. **Tipo:** `string` **Obbligatorio:** no  | 

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

Le credenziali del ruolo che estendono l'accesso limitato alle tue AWS risorse al server di gioco. Per ulteriori informazioni, consultare [Configurare un ruolo di servizio IAM per Amazon GameLift Servers](setting-up-role.md).


| Properties | **Descrizione** | 
| --- | --- | 
| RoleArn | L'ARN del ruolo di servizio che estende l'accesso limitato alle AWS risorse.**Tipo:** `string`**Obbligatorio:** sì | 
| RoleSessionName | Il nome della sessione che descrive l'uso delle credenziali del ruolo.**Tipo:** `string`**Obbligatorio:** sì | 

[Go server SDK perAmazon GameLift Servers: tipi di dati](integration-server-sdk-go-datatypes.md)

**Topics**
+ [Go server SDK perAmazon GameLift Servers: tipi di dati](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)
+ [Distruggi ()](#integration-server-sdk-go-destroy)

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

Restituisce il numero di versione corrente dell'SDK integrato nel processo del server.

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

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

### Valore restituito
<a name="integration-server-sdk-go-getsdkversion-return"></a>

In caso di successo, restituisce la versione SDK corrente come stringa. La stringa restituita include il numero di versione (esempio`5.0.0`). Se non riesce, restituisce un messaggio di errore come`common.SdkVersionDetectionFailed`.

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

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

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

Inizializza la raccolta di metriche per l'SDK. Amazon GameLift Servers Questo metodo imposta la reportistica delle metriche per aiutare a monitorare le prestazioni e lo stato del server. Chiama questo metodo dopo [InitSDK()](#integration-server-sdk-go-initsdk) ma prima[ProcessReady()](#integration-server-sdk-go-processready).

### Sintassi
<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 (facoltativo)  
Un `MetricsParameters` oggetto che configura la raccolta di metriche. Se non viene fornita, viene utilizzata la configurazione delle metriche predefinita. La MetricsParameters struttura contiene i seguenti campi:  
+ `StatsdHost`- Il nome host o l'indirizzo IP del server StatSD.
+ `StatsdPort`- Il numero di porta per il server StatSD.
+ `CrashReporterHost`- Il nome host o l'indirizzo IP del servizio crash reporter.
+ `CrashReporterPort`- Il numero di porta per il servizio crash reporter.
+ `FlushIntervalMs`- L'intervallo in millisecondi per il lavaggio dei dati delle metriche.
+ `MaxPacketSize`- La dimensione massima dei pacchetti di metriche in byte.
Per ulteriori informazioni sulla MetricsParameters struttura, consulta [Server SDK 5.x](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-csharp-datatypes.html) per i tipi di dati C\$1.

### Valore restituito
<a name="integration-server-sdk-go-initmetrics-return"></a>

In caso di successo, restituisce `nil` un errore per indicare che la raccolta delle metriche è stata inizializzata correttamente.

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

Inizializza le metriche con la configurazione predefinita:

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

Inizializza le metriche con una configurazione personalizzata:

```
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>

Inizializza la raccolta di metriche per l'Amazon GameLift ServersSDK utilizzando la configurazione delle variabili di ambiente. Questo metodo configura il reporting delle metriche utilizzando le impostazioni predefinite derivate dall'ambiente di runtime.

Chiama questo metodo dopo [InitSDK()](#integration-server-sdk-go-initsdk) ma prima[ProcessReady()](#integration-server-sdk-go-processready).

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

```
func InitMetricsFromEnvironment() error
```

### Valore restituito
<a name="integration-server-sdk-go-initmetricsfromenv-return"></a>

In caso di successo, restituisce `nil` un errore per indicare che la raccolta delle metriche è stata inizializzata correttamente utilizzando la configurazione dell'ambiente.

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

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

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

Inizializza l'SDK Amazon GameLift Servers. Chiama questo metodo all'avvio prima che si verifichi qualsiasi altra inizializzazione correlata a. Amazon GameLift Servers Questo metodo imposta la comunicazione tra il server e il Amazon GameLift Servers servizio.

### Sintassi
<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)  
Per inizializzare un server di gioco su una flotta Amazon GameLift Servers Anywhere, costruisci un `ServerParameters` oggetto con le seguenti informazioni:  
+ L'URL WebSocket utilizzato per connettersi al server di gioco. 
+ L'ID del processo utilizzato per ospitare il server di gioco. 
+ L'ID del computer che ospita i processi del server di gioco. 
+ L'ID della Amazon GameLift Servers flotta contenente il tuo computer Amazon GameLift Servers Anywhere.
+ Il token di autorizzazione generato dall'Amazon GameLift Serversoperazione. 
Per inizializzare un server di gioco su una flotta EC2 Amazon GameLift Servers gestita, costruisci un `ServerParameters` oggetto senza parametri. Con questa chiamata, l'Amazon GameLift Serversagente configura l'ambiente di calcolo e si connette automaticamente al Amazon GameLift Servers servizio per te. 

### Valore restituito
<a name="integration-server-sdk-go-initsdk-return"></a>

In caso di successo, restituisce un `nil` errore per indicare che il processo del server è pronto per la chiamata[ProcessReady()](#integration-server-sdk-go-processready). 

**Nota**  
Se le chiamate a non `InitSDK()` riescono per le build di gioco distribuite sulle flotte Anywhere, controlla il `ServerSdkVersion` parametro utilizzato durante la creazione della risorsa di compilazione. È necessario impostare esplicitamente questo valore sulla versione SDK del server in uso. Il valore predefinito per questo parametro è 4.x, che non è compatibile. Per risolvere questo problema, crea una nuova build e distribuiscila in una nuova flotta.

### Esempio
<a name="integration-server-sdk-go-initsdk-example"></a>

Amazon GameLift ServersEsempio: Ovunque

```
//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 Serversesempio EC2 gestito

```
//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>

Notifica Amazon GameLift Servers che il processo del server è pronto per ospitare sessioni di gioco. Chiama questo metodo dopo averlo [InitSDK()](#integration-server-sdk-go-initsdk) invocato. Questo metodo deve essere chiamato solo una volta per processo.

### Sintassi
<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) oggetto comunica le seguenti informazioni sul processo del server:  
+ I nomi dei metodi di callback implementati nel codice del server di gioco richiamato dal Amazon GameLift Servers servizio per comunicare con il processo del server.
+ Il numero di porta su cui il processo server è in ascolto.
+ Il tipo di [LogParameters](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-log) dati contenente il percorso di tutti i file specifici della sessione di gioco che desideri acquisire e Amazon GameLift Servers archiviare.

### Valore restituito
<a name="integration-server-sdk-go-processready-return"></a>

Restituisce un errore con un messaggio di errore se il metodo fallisce. Restituisce `nil` se il metodo ha successo.

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

Questo esempio illustra la chiamata [ProcessReady()](#integration-server-sdk-go-processready) e le implementazioni della funzione delegata.

```
// 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>

Notifica Amazon GameLift Servers che il processo del server sta terminando. Chiama questo metodo dopo tutte le altre attività di pulizia (inclusa la chiusura della sessione di gioco attiva) e prima di terminare il processo. A seconda del risultato di`ProcessEnding()`, il processo termina con successo (0) o errore (-1) e genera un evento relativo alla flotta. Se il processo termina con un errore, l'evento fleet generato è. `SERVER_PROCESS_TERMINATED_UNHEALTHY`

### Sintassi
<a name="integration-server-sdk-go-processending-syntax"></a>

```
func ProcessEnding() error
```

### Valore restituito
<a name="integration-server-sdk-go-processending-return"></a>

Restituisce un codice di errore 0 o un codice di errore definito.

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

Notifica Amazon GameLift Servers che il processo del server ha attivato una sessione di gioco ed è ora pronto per ricevere le connessioni dei giocatori. Questa azione viene richiamata come parte della funzione di `onStartGameSession()` callback, dopo l'inizializzazione di tutta la sessione di gioco.

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

```
func ActivateGameSession() error
```

### Valore restituito
<a name="integration-server-sdk-go-activategamesession-return"></a>

Restituisce un errore con un messaggio di errore se il metodo fallisce.

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

Questo esempio mostra le `ActivateGameSession()` chiamate come parte della funzione `onStartGameSession()` delegata. 

```
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>

Aggiorna la capacità della sessione di gioco corrente di accettare nuove sessioni giocatore. Una sessione di gioco può essere configurata per accettare o rifiutare tutte le nuove sessioni giocatore.

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

**playerSessionCreationPolitica**  
Valore di stringa che indica se la sessione di gioco accetta nuovi giocatori.   
I valori validi includono:  
+ **`model.AcceptAll`**— Accetta tutte le sessioni di nuovi giocatori.
+ **`model.DenyAll`**— Nega tutte le sessioni dei nuovi giocatori.

### Valore restituito
<a name="integration-server-sdk-go-updateplayersessioncreationpolicy-return"></a>

Restituisce un errore con un messaggio di errore se si verifica un errore.

### Esempio
<a name="integration-server-sdk-go-updateplayersessioncreationpolicy-example"></a>

Questo esempio definisce la policy di partecipazione alla sessione di gioco corrente per accettare tutti i giocatori.

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

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

Recupera l'ID della sessione di gioco ospitata dal processo del server attivo.

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

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

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

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk-go-getgamesessionid-return"></a>

In caso di successo, restituisce l'ID della sessione di gioco e l'errore zero. Per i processi inattivi che non sono ancora stati attivati con una sessione di gioco, la chiamata restituisce una stringa vuota e `nil` un errore.

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

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

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

Restituisce l'ora in cui è pianificata la chiusura di un processo del server, se è disponibile un orario di terminazione. Un processo server esegue questa azione dopo aver ricevuto una `onProcessTerminate()` richiamata da. Amazon GameLift Servers Amazon GameLift Serverschiama `onProcessTerminate()` per i seguenti motivi: 
+ Quando il processo del server ha segnalato problemi di salute o non ha risposto. Amazon GameLift Servers
+ Quando si termina l'istanza durante un evento di scale-down.
+ [Quando un'istanza viene terminata a causa di un'interruzione di un'istanza spot.](spot-tasks.md)

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

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

### Valore restituito
<a name="integration-server-sdk-go-getterm-return"></a>

In caso di successo, restituisce il timestamp in secondi di epoca in cui è pianificata la chiusura del processo del server e l'interruzione di un errore. `nil` Il valore è il tempo di terminazione, espresso in tick trascorsi da. `0001 00:00:00` Ad esempio, il valore di data e ora è uguale ai segni di `2020-09-13 12:26:40 -000Z` spunta. `637355968000000000` Se non è disponibile alcun orario di terminazione, restituisce un messaggio di errore.

### Esempio
<a name="integration-server-sdk-go-getterm-example"></a>

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

## AcceptPlayerSession()
<a name="integration-server-sdk-go-acceptplayersession"></a>

Notifica Amazon GameLift Servers che un giocatore con l'ID di sessione specificato si è connesso al processo del server e deve essere convalidato. Amazon GameLift Serversverifica che l'ID della sessione del giocatore sia valido. Dopo la convalida della sessione del giocatore, Amazon GameLift Servers modifica lo stato dello slot del giocatore da a`RESERVED`. `ACTIVE` 

### Sintassi
<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`  
ID univoco rilasciato da Amazon GameLift Servers quando viene creata una nuova sessione giocatore.

### Valore restituito
<a name="integration-server-sdk-go-acceptplayersession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore. 

### Esempio
<a name="integration-server-sdk-go-acceptplayersession-example"></a>

Questo esempio gestisce una richiesta di connessione che include la convalida e il rifiuto di una sessione giocatore non valida. 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>

Notifica Amazon GameLift Servers che un giocatore si è disconnesso dal processo del server. In risposta, Amazon GameLift Servers modifica lo slot del giocatore rendendolo disponibile. 

### Sintassi
<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`**  
ID univoco rilasciato Amazon GameLift Servers quando viene creata una nuova sessione giocatore.

### Valore restituito
<a name="integration-server-sdk-go-removeplayersession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk-go-removeplayersession-example"></a>

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

## DescribePlayerSessions()
<a name="integration-server-sdk-go-describeplayersessions"></a>

Recupera i dati della sessione del giocatore che includono impostazioni, metadati della sessione e dati del giocatore. Utilizzate questo metodo per ottenere informazioni su quanto segue:
+ Una sessione per giocatore singolo
+ Tutte le sessioni dei giocatori in una sessione di gioco
+ Tutte le sessioni dei giocatori sono associate a un ID giocatore singolo

### Sintassi
<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` oggetto descrive le sessioni dei giocatori da recuperare.

### Valore restituito
<a name="integration-server-sdk-go-describeplayersessions-return"></a>

In caso di successo, restituisce un `DescribePlayerSessionsResult` oggetto che contiene un set di oggetti della sessione del giocatore che soddisfano i parametri della richiesta.

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

Questo esempio richiede che tutte le sessioni dei giocatori siano connesse attivamente a una sessione di gioco specificata. Omettendo *NextToken*e impostando il valore *Limite* su 10, Amazon GameLift Servers restituisce i primi 10 record di sessione tra giocatori corrispondenti alla richiesta.

```
// 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>

Invia una richiesta per trovare nuovi giocatori per gli slot aperti in una sessione di gioco creata con FlexMatch. Per ulteriori informazioni, consulta la funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Questa operazione è asincrona. Se vengono abbinati nuovi giocatori, Amazon GameLift Servers fornisce dati aggiornati sul matchmaker utilizzando la funzione di callback. `OnUpdateGameSession()`

Un processo del server può avere un solo backfill degli abbinamenti attivo alla volta. Per inviare una nuova richiesta, chiama prima [StopMatchBackfill()](#integration-server-sdk-go-stopmatchbackfill) per annullare la richiesta originale.

### Sintassi
<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 oggetto comunica le seguenti informazioni:  
+ ID del ticket da assegnare alla richiesta di backfill. Queste informazioni sono facoltative; se non viene fornito alcun ID, ne Amazon GameLift Servers genera uno.
+ Matchmaker a cui inviare la richiesta. L'ARN di configurazione completo è obbligatorio. Questo valore si trova nei dati del matchmaker della sessione di gioco.
+ L'ID della sessione di gioco da riempire.
+ I dati di matchmaking disponibili per i giocatori attuali della sessione di gioco.

### Valore restituito
<a name="integration-server-sdk-go-startmatchbackfill-return"></a>

Restituisce un `StartMatchBackfillResult` oggetto con l'ID del ticket match backfill, oppure restituisce un errore con un messaggio di errore. 

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

Annulla una richiesta di match backfill attiva. Per ulteriori informazioni, consulta la funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

### Sintassi
<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 oggetto che identifica il ticket di matchmaking da annullare:   
+ L'ID del ticket assegnato alla richiesta di riempimento.
+ Il matchmaker a cui è stata inviata la richiesta di riempimento.
+ La sessione di gioco associata alla richiesta di riempimento.

### Valore restituito
<a name="integration-server-sdk-go-stopmatchbackfill-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

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

Recupera il percorso del certificato TLS utilizzato per crittografare la connessione di rete tra il server di gioco e il client di gioco. Puoi utilizzare il percorso del certificato quando registri il tuo dispositivo di elaborazione in una flotta Anywhere. Amazon GameLift Servers Per ulteriori informazioni, consulta [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

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

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

### Valore restituito
<a name="integration-server-sdk-go-getcomputecertificate-return"></a>

Restituisce un `GetComputeCertificateResult` oggetto che contiene quanto segue: 
+  CertificatePath: il percorso del certificato TLS sulla risorsa di calcolo. Quando si utilizza una flotta Amazon GameLift Servers gestita, questo percorso contiene: 
  + `certificate.pem`: Il certificato dell'utente finale. La catena completa di certificati è la combinazione dei certificati `certificateChain.pem` aggiunti a questo certificato.
  + `certificateChain.pem`: La catena di certificati che contiene il certificato principale e i certificati intermedi.
  + `rootCertificate.pem`: Il certificato principale.
  + `privateKey.pem`: la chiave privata per il certificato dell'utente finale.
+ ComputeName: il nome della risorsa di calcolo.

### Esempio
<a name="integration-server-sdk-go-getcomputecertificate-example"></a>

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

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

Recupera le credenziali del ruolo di servizio che crei per estendere le autorizzazioni agli altri utenti. Servizi AWS Amazon GameLift Servers Queste credenziali consentono al server di gioco di utilizzare le tue risorse. AWS Per ulteriori informazioni, consulta [Configurare un ruolo di servizio IAM per Amazon GameLift Servers](setting-up-role.md).

### Sintassi
<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)  
Credenziali di ruolo che estendono l'accesso limitato alle tue AWS risorse al server di gioco.

### Valore restituito
<a name="integration-server-sdk-go-getfleetrolecredentials-return"></a>

Restituisce un `GetFleetRoleCredentialsResult` oggetto che contiene quanto segue: 
+ AssumedRoleUserArn - L'Amazon Resource Name (ARN) dell'utente a cui appartiene il ruolo di servizio. 
+ AssumedRoleId - L'ID dell'utente a cui appartiene il ruolo di servizio. 
+ AccessKeyId - L'ID della chiave di accesso per autenticare e fornire l'accesso alle AWS risorse. 
+ SecretAccessKey - L'ID della chiave di accesso segreta per l'autenticazione. 
+ SessionToken - Un token per identificare la sessione attiva corrente che interagisce con AWS le tue risorse. 
+ Scadenza: il periodo di tempo che manca alla scadenza delle credenziali della sessione.

### Esempio
<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)
```

## Distruggi ()
<a name="integration-server-sdk-go-destroy"></a>

Libera l'SDK del server di Amazon GameLift Servers gioco dalla memoria. È consigliabile chiamare questo metodo dopo `ProcessEnding()` e prima di terminare il processo. Se utilizzi una flotta Anywhere e non interrompi i processi del server dopo ogni sessione di gioco, chiama `Destroy()` e poi `InitSDK()` reinizializza prima di notificare Amazon GameLift Servers che il processo è pronto per ospitare una sessione di gioco. `ProcessReady()`

### Sintassi
<a name="integration-server-sdk-go-destroy-syntax"></a>

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

### Valore restituito
<a name="integration-server-sdk-go-destroy-return"></a>

Restituisce un errore con un messaggio di errore se il metodo fallisce.

### Esempio
<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)
  }
}
```

# Server C\$1\$1 (Unreal) SDK 5.x per -- Azioni Amazon GameLift Servers
<a name="integration-server-sdk5-unreal-actions"></a>

Usa il riferimento all'Amazon GameLift ServersUnreal Server SDK 5.x per aiutarti a preparare il tuo gioco multiplayer da utilizzare con. Amazon GameLift Servers Per i dettagli sul processo di integrazione, consulta. [Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server](gamelift-sdk-server-api.md) Se stai usando il Amazon GameLift Servers plugin per Unreal, vedi anche[Amazon GameLift Serversplugin per Unreal Engine](unreal-plugin.md).

**Nota**  
Questo argomento descrive l'API Amazon GameLift Servers C\$1\$1 che puoi usare quando compili per Unreal Engine. In particolare, questa documentazione si applica al codice compilato con l'opzione. `-DBUILD_FOR_UNREAL=1` 

# Server C\$1\$1 (Unreal) SDK 5.x per Amazon GameLift Servers -- Tipi di dati
<a name="integration-server-sdk5-unreal-datatypes"></a>

Usa il riferimento all'Amazon GameLift ServersUnreal Server SDK 5.x per aiutarti a preparare il tuo gioco multiplayer da utilizzare con. Amazon GameLift Servers Per i dettagli sul processo di integrazione, consulta. [Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server](gamelift-sdk-server-api.md) Se stai usando il Amazon GameLift Servers plugin per Unreal, vedi anche[Amazon GameLift Serversplugin per Unreal Engine](unreal-plugin.md).

**Nota**  
Questo argomento descrive l'API Amazon GameLift Servers C\$1\$1 che puoi usare quando compili per Unreal Engine. In particolare, questa documentazione si applica al codice compilato con l'opzione. `-DBUILD_FOR_UNREAL=1` 

[Server C\$1\$1 (Unreal) SDK 5.x per -- Azioni Amazon GameLift Servers](integration-server-sdk5-unreal-actions.md)

**Topics**
+ [FProcessParametri](#integration-server-sdk5-unreal-dataypes-process)
+ [UpdateGameSession](#integration-server-sdk5-unreal-dataypes-updategamesession)
+ [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession)
+ [FServerParametri](#integration-server-sdk5-unreal-dataypes-serverparameters)
+ [FStartMatchBackfillRequest](#integration-server-sdk5-unreal-dataypes-startmatchbackfillrequest)
+ [FPlayer](#integration-server-sdk5-unreal-dataypes-player)
+ [FGameLiftDescribePlayerSessionsRequest](#integration-server-sdk5-unreal-dataypes-playersessions)
+ [FStopMatchBackfillRequest](#integration-server-sdk5-unreal-dataypes-stopmatchbackfillrequest)
+ [FAttributeValore](#integration-server-sdk5-unreal-dataypes-attributevalue)
+ [FGameLiftGetFleetRoleCredentialsRequest](#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsrequest)
+ [FGameLiftLongOutcome](#integration-server-sdk5-unreal-dataypes-awslongoutcome)
+ [FGameLiftStringOutcome](#integration-server-sdk5-unreal-dataypes-awsstringoutcome)
+ [FGameLiftDescribePlayerSessionsOutcome](#integration-server-sdk5-unreal-dataypes-describeplayersessionsoutcome)
+ [FGameLiftDescribePlayerSessionsResult](#integration-server-sdk5-unreal-dataypes-describeplayersessionresult)
+ [FGenericRisultato](#integration-server-sdk5-unreal-dataypes-genericoutcome)
+ [FGameLiftPlayerSession](#integration-server-sdk5-unreal-dataypes-playersession)
+ [FGameLiftGetComputeCertificateOutcome](#integration-server-sdk5-unreal-dataypes-getcomputecertificateoutcome)
+ [FGameLiftGetComputeCertificateResult](#integration-server-sdk5-unreal-dataypes-getcomputecertificateresult)
+ [FGameLiftGetFleetRoleCredentialsOutcome](#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsoutcome)
+ [FGetFleetRoleCredentialsResult](#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsresult)
+ [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror)
+ [enumerazioni;](#integration-server-sdk5-unreal-dataypes-enums)

## FProcessParametri
<a name="integration-server-sdk5-unreal-dataypes-process"></a>

Questo tipo di dati contiene l'insieme di parametri inviati a Amazon GameLift Servers in a[ProcessReady()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-processready).


|  |  | 
| --- |--- |
|  **Proprietà**  | Descrizione | 
| LogParameters | Un oggetto con percorsi di directory ai file generati durante una sessione di gioco. Amazon GameLift Serverscopia e archivia i file per accessi futuri.**Tipo:** `TArray<FString>`**Obbligatorio:** no | 
| OnHealthCheck | La funzione di callback che Amazon GameLift Servers richiama per richiedere un rapporto sullo stato di salute del processo del server. Amazon GameLift Serverschiama questa funzione ogni 60 secondi e attende una risposta per 60 secondi. Il processo del server ritorna TRUE se integro, FALSE se non integro. Se non viene restituita alcuna risposta, Amazon GameLift Servers registra il processo del server come non integro. Questa proprietà è una funzione delegata definita come`DECLARE_DELEGATE_RetVal(bool, FOnHealthCheck)`;   **Tipo:** `FOnHealthCheck`**Obbligatorio:** no | 
| OnProcessTerminate | La funzione di callback che Amazon GameLift Servers richiama per forzare l'arresto del processo server. Dopo aver chiamato questa funzione, Amazon GameLift Servers attende 5 minuti che il processo server si spenga e risponda con una [ProcessEnding()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-processending) chiamata prima di chiudere il processo server.**Tipo:** `FSimpleDelegate`**Obbligatorio:** sì | 
| OnStartGameSession | La funzione di callback che Amazon GameLift Servers richiama l'attivazione di una nuova sessione di gioco. Amazon GameLift Serverschiama questa funzione in risposta a una richiesta del client. [CreateGameSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateGameSession.html) La funzione di callback passa un [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession) oggetto. Questa proprietà è una funzione delegata definita come `DECLARE_DELEGATE_OneParam(FOnStartGameSession, Aws::GameLift::Server::Model::GameSession);`  **Tipo:** `FOnStartGameSession`**Obbligatorio:** sì | 
| OnUpdateGameSession | La funzione di callback che Amazon GameLift Servers richiama per passare un oggetto di sessione di gioco aggiornato al processo del server. Amazon GameLift Serverschiama questa funzione quando è stata elaborata una richiesta di match backfill per fornire dati aggiornati sul matchmaker. Passa un [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession) oggetto, uno status update (updateReason) e l'ID del ticket match backfill. Questa proprietà è una funzione delegata definita come `DECLARE_DELEGATE_OneParam(FOnUpdateGameSession, Aws::GameLift::Server::Model::UpdateGameSession);` **Tipo:** `FOnUpdateGameSession`**Obbligatorio:** no | 
| Porta | Il numero di porta su cui il processo server ascolta le connessioni di nuovi giocatori. Il valore deve rientrare nella gamma di porte configurate per qualsiasi parco istanze che distribuisce questa build del server di gioco. Questo numero di porta è incluso nella sessione di gioco e negli oggetti della sessione del giocatore utilizzati dalle sessioni di gioco per la connessione a un processo server.**Tipo:** `int`**Obbligatorio:** sì | 

## UpdateGameSession
<a name="integration-server-sdk5-unreal-dataypes-updategamesession"></a>

Questo tipo di dati viene aggiornato a un oggetto della sessione di gioco, che include il motivo per cui la sessione di gioco è stata aggiornata e il relativo ID del ticket di backfill se il backfill viene utilizzato per riempire le sessioni dei giocatori nella sessione di gioco.


| Properties | **Descrizione** | 
| --- | --- | 
| GameSession | Oggetto [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession). L'GameSessionoggetto contiene proprietà che descrivono una sessione di gioco. **Tipo:** `Aws::GameLift::Server::GameSession`**Obbligatorio:** no | 
| UpdateReason | Il motivo per cui la sessione di gioco viene aggiornata. **Tipo:** `enum class UpdateReason`  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-datatypes.html) **Obbligatorio:** no   | 
| BackfillTicketId | L'ID del ticket di backfill che tenta di aggiornare la sessione di gioco.**Tipo:** `char[]`**Obbligatorio:** no | 

## GameSession
<a name="integration-server-sdk5-unreal-dataypes-gamesession"></a>

Questo tipo di dati fornisce i dettagli di una sessione di gioco. 


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionId |  Un identificatore univoco per la sessione di gioco. L'ARN di una sessione di gioco ha il seguente formato:. `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>` **Tipo:** `char[]` **Obbligatorio:** no  | 
| Name |  Un'etichetta descrittiva della sessione di gioco.  **Tipo:** `char[]` **Obbligatorio:** no  | 
| FleetId |  Un identificatore univoco per la flotta su cui è in esecuzione la sessione di gioco. **Tipo:** `char[]` **Obbligatorio:** no  | 
| MaximumPlayerSessionCount |  Il numero massimo di connessioni dei giocatori alla sessione di gioco. **Tipo:** `int` **Obbligatorio:** no  | 
| Porta |  Il numero di porta per la sessione di gioco. Per connettersi a un server di Amazon GameLift Servers gioco, un'app necessita sia dell'indirizzo IP che del numero di porta. **Tipo:** `int` **Obbligatorio:** no  | 
| IpAddress |  L'indirizzo IP della sessione di gioco. Per connettersi a un server di Amazon GameLift Servers gioco, un'app necessita sia dell'indirizzo IP che del numero di porta. **Tipo:** `char[]` **Obbligatorio:** no  | 
| GameSessionData |  Un set di proprietà personalizzate della sessione di gioco, formattate come valore di stringa singola.  **Tipo:** `char[]` **Obbligatorio:** no  | 
| MatchmakerData |  Informazioni sul processo di matchmaking utilizzato per creare la sessione di gioco, in sintassi JSON, formattate come stringa. Oltre alla configurazione di matchmaking utilizzata, contiene dati su tutti i giocatori assegnati alla partita, compresi gli attributi dei giocatori e le assegnazioni delle squadre. **Tipo:** `char[]` **Obbligatorio:** no  | 
| GameProperties |  Un insieme di proprietà personalizzate per una sessione di gioco, formattate come coppie chiave:valore. Queste proprietà vengono passate con una richiesta di avvio di una nuova sessione di gioco. **Tipo:** `GameProperty[]` **Obbligatorio:** no  | 
| DnsName |  L'identificatore DNS assegnato all'istanza che esegue la sessione di gioco. I valori hanno il seguente formato: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-datatypes.html) Quando ti connetti a una sessione di gioco in esecuzione su una flotta abilitata per TLS, devi usare il nome DNS, non l'indirizzo IP. **Tipo:** `char[]` **Obbligatorio:** no  | 

## FServerParametri
<a name="integration-server-sdk5-unreal-dataypes-serverparameters"></a>

Informazioni utilizzate per mantenere la connessione tra un server Amazon GameLift Servers Anywhere e il Amazon GameLift Servers servizio. Queste informazioni vengono utilizzate quando si avviano nuovi processi server con[InitSDK()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-initsdk). Per i server ospitati su istanze EC2 Amazon GameLift Servers gestite, utilizza un oggetto vuoto.


| Properties | **Descrizione** | 
| --- | --- | 
| webSocketUrl |  `GameLiftServerSdkEndpoint`Amazon GameLift ServersRestituisce quando si utilizza una [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)risorsa di calcolo Amazon GameLift Servers Anywhere. **Tipo:** `char[]` **Obbligatorio:** sì   | 
| ID del processo |  Un identificatore univoco registrato nel processo del server che ospita il gioco. **Tipo:** `char[]` **Obbligatorio:** sì  | 
| hostId | HostIDViene ComputeName utilizzato al momento della registrazione del computer. Per ulteriori informazioni, consultare [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Tipo:** `char[]`**Obbligatorio:** sì | 
| FleetID | L'identificatore univoco della flotta su cui è registrato il computer. Per ulteriori informazioni, consultare [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Tipo:** `char[]`**Obbligatorio:** sì | 
| AuthToken | Il token di autenticazione generato da Amazon GameLift Servers questo autentica il server su. Amazon GameLift Servers Per ulteriori informazioni, consultare [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Tipo:** `char[]`**Obbligatorio:** sì | 

## FStartMatchBackfillRequest
<a name="integration-server-sdk5-unreal-dataypes-startmatchbackfillrequest"></a>

Informazioni utilizzate per creare una richiesta di matchmaking backfill. Il server di gioco comunica queste informazioni durante una chiamataAmazon GameLift Servers. [StartMatchBackfill()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-startmatchbackfill)


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionArn |  Un identificatore univoco della sessione di gioco. L'operazione API `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-actions.html#integration-server-sdk5-unreal-getgamesessionid)` restituisce l'identificatore in formato ARN. **Tipo:** `char[]` **Obbligatorio:** sì  | 
| MatchmakingConfigurationArn |  Un identificatore univoco, sotto forma di ARN, che il matchmaker può utilizzare per questa richiesta. L'ARN del matchmaker per la sessione di gioco originale si trova nell'oggetto della sessione di gioco nella proprietà matchmaker data. Scopri di più sui dati dei matchmaker in [Work](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html) with matchmaker data. **Tipo:** `char[]` **Obbligatorio:** sì  | 
| Players |  Un insieme di dati che rappresenta tutti i giocatori che partecipano alla sessione di gioco. Il matchmaker utilizza queste informazioni per cercare nuovi giocatori che rappresentano un buon abbinamento per i giocatori attuali. **Tipo:** `TArray<FPlayer>` **Obbligatorio:** sì  | 
| TicketId |  Un identificatore univoco per un ticket di richiesta di matchmaking o match backfill. Se non fornisci un valore, Amazon GameLift Servers ne genera uno. Utilizzare questo identificatore per monitorare lo stato del ticket di backfill degli abbinamenti o annullare la richiesta, se necessario.  **Tipo:** `char[]` **Obbligatorio:** no  | 

## FPlayer
<a name="integration-server-sdk5-unreal-dataypes-player"></a>

Questo tipo di dati rappresenta un giocatore in matchmaking. Quando si avvia una richiesta di matchmaking, un giocatore ha un ID giocatore, attributi e possibilmente dati di latenza. Amazon GameLift Serversaggiunge le informazioni sulla squadra dopo la fine di una partita.


| Properties | **Descrizione** | 
| --- | --- | 
| LatencyInSM |  Un insieme di valori espressi in millisecondi che indica la quantità di latenza che un giocatore sperimenta quando è connesso a una posizione.  Se viene utilizzata questa proprietà, il giocatore viene abbinato solo per le posizioni elencate. Se un matchmaker ha una regola che valuta la latenza dei giocatori, i giocatori devono segnalare la latenza per essere abbinati. **Tipo:** `TMap>FString, int32<` **Obbligatorio:** no  | 
| PlayerAttributes |  Una raccolta di coppie chiave:valore contenenti informazioni sui giocatori da utilizzare nel matchmaking. Le chiavi degli attributi del giocatore devono corrispondere a quelle PlayerAttributes utilizzate in un set di regole di matchmaking. Per ulteriori informazioni sugli attributi dei giocatori, vedi [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Tipo:** `TMap>FString, FAttributeValue<` **Obbligatorio:** no  | 
| PlayerId |  Un identificatore univoco per un giocatore. **Tipo:** `std::string` **Obbligatorio:** no  | 
| Team |  Il nome della squadra a cui è assegnato il giocatore in una partita. Definisci il nome della squadra nel set di regole del matchmaking. **Tipo:** `FString` **Obbligatorio:** no  | 

## FGameLiftDescribePlayerSessionsRequest
<a name="integration-server-sdk5-unreal-dataypes-playersessions"></a>

Un oggetto che specifica le sessioni dei giocatori da recuperare. Il processo server fornisce queste informazioni con una [DescribePlayerSessions()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-describeplayersessions) chiamata a. Amazon GameLift Servers


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionId |  Un identificatore univoco della sessione di gioco. Utilizzare questo parametro per richiedere tutte le sessioni giocatore per la sessione di gioco specificata.  Il formato dell'ID della sessione di gioco è`FString`. `GameSessionID`È una stringa ID personalizzata o un **Tipo:** `std::string` **Obbligatorio:** no  | 
| PlayerSessionId |  L'identificatore univoco per la sessione di un giocatore. Usa questo parametro per richiedere una singola sessione di gioco specifica. **Tipo:** `FString` **Obbligatorio:** no  | 
| PlayerId |  L'identificatore univoco di un giocatore. Usa questo parametro per richiedere tutte le sessioni di gioco per un giocatore specifico. Per informazioni, consulta [Genera giocatore IDs](player-sessions-player-identifiers.md). **Tipo:** `FString` **Obbligatorio:** no  | 
| PlayerSessionStatusFilter |  Lo stato della sessione del giocatore su cui filtrare i risultati. I possibili stati delle sessioni di gioco includono: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-datatypes.html) **Tipo:** `FString` **Obbligatorio:** no  | 
| NextToken |  Il token che indica l'inizio della pagina successiva di risultati. Per specificare l'inizio del set di risultati, non fornire un valore. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `FString` **Obbligatorio:** no  | 
| Limite |  Numero massimo di risultati da restituire. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `int` **Obbligatorio:** no  | 

## FStopMatchBackfillRequest
<a name="integration-server-sdk5-unreal-dataypes-stopmatchbackfillrequest"></a>

Informazioni utilizzate per annullare una richiesta di matchmaking backfill. Il server di gioco comunica queste informazioni al Amazon GameLift Servers servizio durante una chiamata. [StopMatchBackfill()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-stopmatchbackfill)


| Properties | **Descrizione** | 
| --- | --- | 
| GameSessionArn |  Un identificatore univoco della sessione di gioco della richiesta annullata. **Tipo:** `FString` **Obbligatorio:** sì  | 
| MatchmakingConfigurationArn |  Un identificatore univoco del matchmaker a cui è stata inviata questa richiesta. **Tipo:** `FString` **Obbligatorio:** sì  | 
| TicketId |  Un identificatore univoco del ticket di richiesta di riempimento da annullare. **Tipo:** `FString` **Obbligatorio:** sì  | 

## FAttributeValore
<a name="integration-server-sdk5-unreal-dataypes-attributevalue"></a>

Utilizzate questi valori nelle coppie chiave-valore [FPlayer](#integration-server-sdk5-unreal-dataypes-player) degli attributi. Questo oggetto consente di specificare il valore di un attributo utilizzando uno qualsiasi dei tipi di dati validi: stringa, numero, array di stringhe o mappa di dati. Ogni `AttributeValue` oggetto può utilizzare solo una delle proprietà disponibili.


| Properties | Description | 
| --- | --- | 
| AttrType |  Speciifica il tipo di valore dell'attributo. **Tipo:** un valore `FAttributeType` [enum.](#integration-server-sdk5-unreal-dataypes-enums)  **Obbligatorio:** no  | 
| S |  Rappresenta un valore di attributo di tipo stringa. **Tipo:** `FString` **Obbligatorio:** no  | 
| N |  Rappresenta un valore di attributo numerico. **Tipo:** `double` **Obbligatorio:** no  | 
| SL |  Rappresenta una matrice di valori di attributi di tipo stringa. **Tipo:** `TArray<FString>` **Obbligatorio:** no  | 
| SDM |  Rappresenta un dizionario di chiavi di stringa e valori doppi. **Tipo:** `TMap<FString, double>` **Obbligatorio:** no  | 

## FGameLiftGetFleetRoleCredentialsRequest
<a name="integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsrequest"></a>

Questo tipo di dati fornisce credenziali di ruolo che estendono l'accesso limitato alle tue AWS risorse al server di gioco. Per ulteriori informazioni, consultare [Configurare un ruolo di servizio IAM per Amazon GameLift Servers](setting-up-role.md).


| Properties | **Descrizione** | 
| --- | --- | 
| RoleArn | L'Amazon Resource Name (ARN) del ruolo di servizio che estende l'accesso limitato alle tue AWS risorse.**Tipo:** `FString`**Obbligatorio:** no | 
| RoleSessionName | Il nome della sessione che descrive l'uso delle credenziali del ruolo.**Tipo:** `FString`**Obbligatorio:** no | 

## FGameLiftLongOutcome
<a name="integration-server-sdk5-unreal-dataypes-awslongoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** `long` **Obbligatorio:** no  | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `long&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Obbligatorio:** no  | 

## FGameLiftStringOutcome
<a name="integration-server-sdk5-unreal-dataypes-awsstringoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** `FString` **Obbligatorio:** no  | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `FString&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Obbligatorio:** no  | 

## FGameLiftDescribePlayerSessionsOutcome
<a name="integration-server-sdk5-unreal-dataypes-describeplayersessionsoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [FGameLiftDescribePlayerSessionsResult](#integration-server-sdk5-unreal-dataypes-describeplayersessionresult) **Obbligatorio:** no   | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `FGameLiftDescribePlayerSessionsResult&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Obbligatorio:** no  | 

## FGameLiftDescribePlayerSessionsResult
<a name="integration-server-sdk5-unreal-dataypes-describeplayersessionresult"></a>


| Properties | Description | 
| --- | --- | 
| PlayerSessions |   **Tipo:** `TArray<FGameLiftPlayerSession>` **Obbligatorio:** sì  | 
| NextToken |  Il token che indica l'inizio della pagina successiva dei risultati. Per specificare l'inizio del set di risultati, non fornire un valore. Se fornisci un ID di sessione del giocatore, questo parametro viene ignorato. **Tipo:** `FString` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Obbligatorio:** no  | 

## FGenericRisultato
<a name="integration-server-sdk5-unreal-dataypes-genericoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Obbligatorio:** no  | 

## FGameLiftPlayerSession
<a name="integration-server-sdk5-unreal-dataypes-playersession"></a>


| Properties | Description | 
| --- | --- | 
| CreationTime |  **Tipo:** `long` **Obbligatorio:** sì  | 
| FleetId |  **Tipo:** `FString` **Obbligatorio:** sì  | 
| GameSessionId |  **Tipo:** `FString` **Obbligatorio:** sì  | 
| IpAddress |  **Tipo:** `FString` **Obbligatorio:** sì  | 
| PlayerData |  **Tipo:** `FString` **Obbligatorio:** sì  | 
| PlayerId |  **Tipo:** `FString` **Obbligatorio:** sì  | 
| PlayerSessionId |  **Tipo:** `FString` **Obbligatorio:** sì  | 
| Porta |  **Tipo:** `int` **Obbligatorio:** sì  | 
| Status |  **Tipo:** Un `PlayerSessionStatus` [enum](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-enums). **Obbligatorio:** sì  | 
| TerminationTime |  **Tipo:** `long` **Obbligatorio:** sì  | 
| DnsName |  **Tipo:** `FString` **Obbligatorio:** sì  | 

## FGameLiftGetComputeCertificateOutcome
<a name="integration-server-sdk5-unreal-dataypes-getcomputecertificateoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [FGameLiftGetComputeCertificateResult](#integration-server-sdk5-unreal-dataypes-getcomputecertificateresult) **Obbligatorio:** no   | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `FGameLiftGetComputeCertificateResult&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Obbligatorio:** no  | 

## FGameLiftGetComputeCertificateResult
<a name="integration-server-sdk5-unreal-dataypes-getcomputecertificateresult"></a>

Il percorso del certificato TLS sul computer e il nome host del calcolo.


| Properties | Description | 
| --- | --- | 
| CertificatePath |  **Tipo:** `FString` **Obbligatorio:** sì  | 
| ComputeName |  **Tipo:** `FString` **Obbligatorio:** sì  | 

## FGameLiftGetFleetRoleCredentialsOutcome
<a name="integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsoutcome"></a>

Questo tipo di dati risulta da un'azione e produce un oggetto con le seguenti proprietà:


| Properties | Description | 
| --- | --- | 
| Risultato |  Il risultato dell'azione. **Tipo:** [FGetFleetRoleCredentialsResult](#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsresult) **Obbligatorio:** no   | 
| ResultWithOwnership |   Il risultato dell'azione, espresso come rvalue, in modo che il codice chiamante possa assumere la proprietà dell'oggetto.  **Tipo:** `FGameLiftGetFleetRoleCredentialsResult&&` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Obbligatorio:** no  | 

## FGetFleetRoleCredentialsResult
<a name="integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsresult"></a>


| Properties | Description | 
| --- | --- | 
| AccessKeyId |  L'ID della chiave di accesso per autenticare e fornire l'accesso alle AWS risorse. **Tipo:** `FString` **Obbligatorio:** no  | 
| AssumedRoleId |  L'ID dell'utente a cui appartiene il ruolo di servizio. **Tipo:** `FString` **Obbligatorio:** no  | 
| AssumedRoleUserArn |  L'Amazon Resource Name (ARN) dell'utente a cui appartiene il ruolo di servizio. **Tipo:** `FString` **Obbligatorio:** no  | 
| Scadenza |  Il periodo di tempo che manca alla scadenza delle credenziali di sessione. **Tipo:** `FDateTime` **Obbligatorio:** no  | 
| SecretAccessKey |  L'ID della chiave di accesso segreta per l'autenticazione. **Tipo:** `FString` **Obbligatorio:** no  | 
| SessionToken |  Un token per identificare la sessione attiva corrente che interagisce con AWS le tue risorse. **Tipo:** `FString` **Obbligatorio:** no  | 
| Completato |  Se l'azione ha avuto successo o meno. **Tipo:** `bool` **Obbligatorio:** sì  | 
| Errore |  L'errore che si è verificato se l'azione non ha avuto successo. **Tipo:** [GameLiftError](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-gamelifterror) **Obbligatorio:** no  | 

## FGameLiftError
<a name="integration-server-sdk5-unreal-dataypes-gamelifterror"></a>


| Properties | Description | 
| --- | --- | 
| ErrorType |  Il tipo di errore. **Tipo:** Un `GameLiftErrorType` [enum](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-enums). **Obbligatorio:** no   | 
| ErrorName |  Il nome dell'errore.  **Tipo:** `std::string`  **Obbligatorio:** no   | 
| ErrorMessage |  Messaggio di errore.  **Tipo:** `std::string`  **Obbligatorio:** no   | 

## enumerazioni;
<a name="integration-server-sdk5-unreal-dataypes-enums"></a>

Le enumerazioni definite per l'SDK del server per Amazon GameLift Servers (Unreal) sono definite come segue:

**FAttributeTipo**  
+ **NONE**
+ **STRINGA**
+ **DOPPIA**
+ **ELENCO\$1STRINGHE**
+ **STRING\$1DOUBLE\$1MAP**

**GameLiftErrorType**  
Valore di stringa che indica il tipo di errore. I valori validi includono:  
+ **SERVICE\$1CALL\$1FAILED — Una chiamata a un servizio non è riuscita**. AWS 
+ **LOCAL\$1CONNECTION\$1FAILED — La connessione** locale a non è riuscita. Amazon GameLift Servers 
+ **NETWORK\$1NOT\$1INITIALIZED — La rete non è stata inizializzata**. 
+ **GAMESESSION\$1ID\$1NOT\$1SET — L'ID della sessione** di gioco non è stato impostato. 
+ **BAD\$1REQUEST\$1EXCEPTION** 
+ **ECCEZIONE\$1DI\$1SERVIZIO INTERNA** 
+ **ALREADY\$1INITIALIZED — Il Amazon GameLift Servers server o il client è già stato inizializzato** con Initialize (). 
+ **FLEET\$1MISMATCH — La flotta bersaglio non corrisponde alla** flotta di una GameSession o PlayerSession. 
+ **GAMELIFT\$1CLIENT\$1NOT\$1INITIALIZED** — Il client non è stato inizializzato. Amazon GameLift Servers 
+ **GAMELIFT\$1SERVER\$1NOT\$1INITIALIZED** — Amazon GameLift Servers Il server non è stato inizializzato. 
+ **GAME\$1SESSION\$1ENDED\$1FAILED: l'SDK del server non è riuscito a contattare** il servizio per segnalare la fine della sessione di gioco. Amazon GameLift Servers 
+ GAME\$1SESSION\$1NOT\$1READY — La sessione di **gioco** sul server non è stata attivata. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1READY\$1FAILED: l'SDK del server per cui non è stato possibile contattare il servizio per segnalare che la sessione di gioco è pronta**. Amazon GameLift Servers 
+ **INITIALIZATION\$1MISMATCH** — È stato chiamato un metodo client dopo Server: :Initialize () o viceversa. 
+ **NOT\$1INITIALIZED — Il Amazon GameLift Servers server o il client non sono stati inizializzati** con Initialize (). 
+ **NO\$1TARGET\$1ALIASID\$1SET** — Non è stato impostato un aliasID di destinazione. 
+ **NO\$1TARGET\$1FLEET\$1SET** — Non è stata impostata una flotta di obiettivi. 
+ **PROCESS\$1ENDING\$1FAILED: l'SDK del server non è riuscito** a contattare il servizio per segnalare la fine del processo. Amazon GameLift Servers 
+ **PROCESS\$1NOT\$1ACTIVE — Il processo del server non è ancora attivo**, non è associato a un processo e non può accettarlo o elaborarlo. GameSession PlayerSessions 
+ **PROCESS\$1NOT\$1READY — Il processo del server non è ancora pronto** per essere attivato. 
+ **PROCESS\$1READY\$1FAILED: l'SDK del server non è riuscito** a contattare il servizio per Amazon GameLift Servers segnalare che il processo è pronto. 
+ SDK\$1VERSION\$1DETECTION\$1FAILED — Rilevamento della **versione SDK** non riuscito. 
+ **STX\$1CALL\$1FAILED** — Una chiamata al componente di backend del server non è riuscita. XStx 
+ **STX\$1INITIALIZATION\$1FAILED — L'inizializzazione** del componente di backend del server non è riuscita. XStx 
+ **UNEXPECTED\$1PLAYER\$1SESSION — Il server ha rilevato una sessione di giocatore non registrata**. 
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1FORBIDDEN** 
+ **URL NON VALIDO DI WEBSOCKET\$1CONNECT\$1FAILURE\$1INVALID\$1** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **WEBSOCKET\$1RETRIABLE\$1SEND\$1MESSAGE\$1FAILURE** — Errore recuperabile nell'invio di un messaggio al servizio. GameLift WebSocket 
+ **WEBSOCKET\$1SEND\$1MESSAGE\$1FAILURE — Errore** nell'invio di un messaggio al GameLift servizio. WebSocket 
+ **MATCH\$1BACKFILL\$1REQUEST\$1VALIDATION** — La convalida della richiesta non è riuscita. 
+ **PLAYER\$1SESSION\$1REQUEST\$1VALIDATION** — La convalida della richiesta non è riuscita. 

**EPlayerSessionCreationPolicy**  
Valore della stringa che indica se la sessione di gioco accetta nuovi giocatori. I valori validi includono:   
+ **ACCEPT\$1ALL**: accetta tutte le nuove sessioni giocatore. 
+ **DENY\$1ALL**: rifiuta tutte le nuove sessioni giocatore. 
+ **NOT\$1SET — La sessione di gioco non è impostata per** accettare o rifiutare sessioni di nuovi giocatori. 

**EPlayerSessionStatus**  
+ **ACTIVE**
+ **COMPLETED**
+ **NOT\$1SET**
+ **RISERVATO**
+ **TIMEOUT**

[Server C\$1\$1 (Unreal) SDK 5.x per Amazon GameLift Servers -- Tipi di dati](integration-server-sdk5-unreal-datatypes.md)

**Topics**
+ [Server C\$1\$1 (Unreal) SDK 5.x per Amazon GameLift Servers -- Tipi di dati](integration-server-sdk5-unreal-datatypes.md)
+ [GetSdkVersion()](#integration-server-sdk5-unreal-getsdkversion)
+ [InitSDK()](#integration-server-sdk5-unreal-initsdk)
+ [InitSDK()](#integration-server-sdk5-unreal-initsdk-anywhere)
+ [ProcessReady()](#integration-server-sdk5-unreal-processready)
+ [ProcessEnding()](#integration-server-sdk5-unreal-processending)
+ [ActivateGameSession()](#integration-server-sdk5-unreal-activategamesession)
+ [UpdatePlayerSessionCreationPolicy()](#integration-server-sdk5-unreal-updateplayersessioncreationpolicy)
+ [GetGameSessionId()](#integration-server-sdk5-unreal-getgamesessionid)
+ [GetTerminationTime()](#integration-server-sdk5-unreal-getterm)
+ [AcceptPlayerSession()](#integration-server-sdk5-unreal-acceptplayersession)
+ [RemovePlayerSession()](#integration-server-sdk5-unreal-removeplayersession)
+ [DescribePlayerSessions()](#integration-server-sdk5-unreal-describeplayersessions)
+ [StartMatchBackfill()](#integration-server-sdk5-unreal-startmatchbackfill)
+ [StopMatchBackfill()](#integration-server-sdk5-unreal-stopmatchbackfill)
+ [GetComputeCertificate()](#integration-server-sdk5-unreal-getcomputecertificate)
+ [GetFleetRoleCredentials()](#integration-server-sdk5-unreal-getfleetrolecredentials)
+ [Distruggi ()](#integration-server-sdk5-unreal-ref-destroy)

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

Restituisce il numero di versione corrente dell'SDK integrato nel processo del server.

### Sintassi
<a name="integration-server-sdk5-unreal-getsdkversion-syntax"></a>

```
FGameLiftStringOutcome GetSdkVersion();
```

### Valore restituito
<a name="integration-server-sdk5-unreal-getsdkversion-return"></a>

Se l'esito è positivo, restituisce la versione corrente dell'SDK come oggetto [FGameLiftStringOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-awsstringoutcome). L'oggetto restituito include il numero di versione (esempio`5.0.0`). Se l'esito è negativo, verrà restituito un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-unreal-getsdkversion-example"></a>

```
Aws::GameLift::AwsStringOutcome SdkVersionOutcome = Aws::GameLift::Server::GetSdkVersion();  
```

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

Inizializza l'Amazon GameLift ServersSDK per una flotta EC2 gestita. Richiama questo metodo all'avvio, prima che si verifichi qualsiasi altra inizializzazione correlata a. Amazon GameLift Servers Questo metodo legge i parametri del server dall'ambiente host per configurare la comunicazione tra il server e il Amazon GameLift Servers servizio. Utilizza un token di idempotenza, quindi puoi riprovare a eseguire questa chiamata in tutta sicurezza quando fallisce.

### Sintassi
<a name="integration-server-sdk5-unreal-initsdk-syntax"></a>

```
FGameLiftGenericOutcome InitSDK()
```

### Valore restituito
<a name="integration-server-sdk5-unreal-initsdk-return"></a>

In caso di successo, restituisce un `InitSdkOutcome` oggetto che indica che il processo del server è pronto per la chiamata. [ProcessReady()](#integration-server-sdk5-unreal-processready) 

### Esempio
<a name="integration-server-sdk5-unreal-initsdk-example"></a>

```
//Call InitSDK to establish a local connection with the Amazon GameLift Servers Agent to enable further communication.
FGameLiftGenericOutcome initSdkOutcome = GameLiftSdkModule->InitSDK();
```

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

Inizializza l'Amazon GameLift ServersSDK per una flotta Anywhere o una flotta di container gestita. Richiama questo metodo all'avvio, prima che si verifichi qualsiasi altra inizializzazione correlata a. Amazon GameLift Servers Questo metodo richiede parametri espliciti del server per configurare la comunicazione tra il server e il Amazon GameLift Servers servizio. Utilizza un token di idempotenza, quindi puoi riprovare a ripetere questa chiamata in tutta sicurezza quando fallisce.

### Sintassi
<a name="integration-server-sdk5-unreal-initsdk-anywhere-syntax"></a>

```
FGameLiftGenericOutcome InitSDK(serverParameters)
```

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

[FServerParametri](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-serverparameters)  
Per inizializzare un server di gioco su una flotta Amazon GameLift Servers Anywhere, costruisci un `ServerParameters` oggetto con le seguenti informazioni:  
+ L'URL WebSocket utilizzato per connettersi al server di gioco. 
+ L'ID del processo utilizzato per ospitare il server di gioco. 
+ L'ID del computer che ospita i processi del server di gioco. 
+ L'ID della Amazon GameLift Servers flotta contenente il tuo computer Amazon GameLift Servers Anywhere.
+ Il token di autorizzazione generato dall'Amazon GameLift Serversoperazione. 

### Valore restituito
<a name="integration-server-sdk5-unreal-initsdk-anywhere-return"></a>

In caso di successo, restituisce un `InitSdkOutcome` oggetto che indica che il processo del server è pronto per la chiamata[ProcessReady()](#integration-server-sdk5-unreal-processready). 

**Nota**  
Se le chiamate a non `InitSDK()` riescono per le build di gioco distribuite sulle flotte Anywhere, controlla il `ServerSdkVersion` parametro utilizzato durante la creazione della risorsa di compilazione. È necessario impostare esplicitamente questo valore sulla versione SDK del server in uso. Il valore predefinito per questo parametro è 4.x, che non è compatibile. Per risolvere questo problema, crea una nuova build e distribuiscila in una nuova flotta.

### Esempio
<a name="integration-server-sdk5-unreal-initsdk-anywhere-example"></a>

```
//Define the server parameters
FServerParameters serverParameters;
parameters.m_authToken = "1111aaaa-22bb-33cc-44dd-5555eeee66ff"; 
parameters.m_fleetId = "arn:aws:gamelift:us-west-1:111122223333:fleet/fleet-9999ffff-88ee-77dd-66cc-5555bbbb44aa";
parameters.m_hostId = "HardwareAnywhere"; 
parameters.m_processId = "PID1234";
parameters.m_webSocketUrl = "wss://us-west-1.api.amazongamelift.com"; 

//Call InitSDK to establish a local connection with the Amazon GameLift Servers Agent to enable further communication.
FGameLiftGenericOutcome initSdkOutcome = GameLiftSdkModule->InitSDK(serverParameters);
```

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

Notifica Amazon GameLift Servers che il processo del server è pronto per ospitare sessioni di gioco. Chiama questo metodo dopo averlo [InitSDK()](#integration-server-sdk5-unreal-initsdk) invocato. Questo metodo deve essere chiamato solo una volta per processo.

### Sintassi
<a name="integration-server-sdk5-unreal-processready-syntax"></a>

`GenericOutcome ProcessReady(const Aws::GameLift::Server::ProcessParameters &processParameters);`

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

**processParameters**  
Un [FProcessParametri](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-process) oggetto che comunica le seguenti informazioni sul processo del server:  
+ Nomi dei metodi di callback implementati nel codice del server di gioco richiamato dal Amazon GameLift Servers servizio per comunicare con il processo del server.
+ Numero di porta sulla quale è in ascolto il processo del server.
+ Percorso verso qualsiasi file specifico di una sessione di gioco che Amazon GameLift Servers deve acquisire e archiviare.

### Valore restituito
<a name="integration-server-sdk5-unreal-processready-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-unreal-processready-example"></a>

Questo esempio illustra la chiamata [ProcessReady()](#integration-server-sdk5-unreal-processready) e le implementazioni della funzione delegata.

```
//Calling ProcessReady tells Amazon GameLift Servers this game server is ready to receive incoming game sessions!
UE_LOG(GameServerLog, Log, TEXT("Calling Process Ready"));
FGameLiftGenericOutcome processReadyOutcome = GameLiftSdkModule->ProcessReady(*params);
```

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

Notifica Amazon GameLift Servers che il processo del server sta terminando. Chiama questo metodo dopo tutte le altre attività di pulizia (inclusa la chiusura della sessione di gioco attiva) e prima di terminare il processo. A seconda del risultato di`ProcessEnding()`, il processo termina con successo (0) o errore (-1) e genera un evento relativo alla flotta. Se il processo termina con un errore, l'evento di flotta generato è`SERVER_PROCESS_TERMINATED_UNHEALTHY`).

### Sintassi
<a name="integration-server-sdk5-unreal-processending-syntax"></a>

```
FGameLiftGenericOutcome ProcessEnding()
```

### Valore restituito
<a name="integration-server-sdk5-unreal-processending-return"></a>

Restituisce un risultato generico costituito da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-unreal-processending-example"></a>

```
//OnProcessTerminate callback. Amazon GameLift Servers will invoke this callback before shutting down an instance hosting this game server.
//It gives this game server a chance to save its state, communicate with services, etc., before being shut down.
//In this case, we simply tell Amazon GameLift Servers we are indeed going to shutdown.
params->OnTerminate.BindLambda([=]() {
  UE_LOG(GameServerLog, Log, TEXT("Game Server Process is terminating"));
  GameLiftSdkModule->ProcessEnding();
});
```

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

Notifica Amazon GameLift Servers che il processo del server ha attivato una sessione di gioco ed è ora pronto a ricevere le connessioni dei giocatori. Questa azione dovrebbe essere richiamata come parte della funzione di `onStartGameSession()` callback, dopo l'inizializzazione di tutta la sessione di gioco.

### Sintassi
<a name="integration-server-sdk5-unreal-activategamesession-syntax"></a>

```
FGameLiftGenericOutcome ActivateGameSession()
```

### Valore restituito
<a name="integration-server-sdk5-unreal-activategamesession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-unreal-activategamesession-example"></a>

Questo esempio mostra le `ActivateGameSession()` chiamate come parte della funzione `onStartGameSession()` delegata. 

```
//When a game session is created, Amazon GameLift Servers sends an activation request to the game server and passes along the game session object containing game properties and other settings.
//Here is where a game server should take action based on the game session object.
//Once the game server is ready to receive incoming player connections, it should invoke GameLiftServerAPI.ActivateGameSession()
auto onGameSession = [=](Aws::GameLift::Server::Model::GameSession gameSession)
{
  FString gameSessionId = FString(gameSession.GetGameSessionId());
  UE_LOG(GameServerLog, Log, TEXT("GameSession Initializing: %s"), *gameSessionId);
  GameLiftSdkModule->ActivateGameSession();
};
```

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

Aggiorna la capacità della sessione di gioco corrente di accettare nuove sessioni giocatore. Una sessione di gioco può essere configurata per accettare o rifiutare tutte le nuove sessioni giocatore.

### Sintassi
<a name="integration-server-sdk5-unreal-updateplayersessioncreationpolicy-syntax"></a>

```
FGameLiftGenericOutcome UpdatePlayerSessionCreationPolicy(EPlayerSessionCreationPolicy policy)
```

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

**playerCreationSessionPolitica**  
Valore della stringa che indica se la sessione di gioco accetta nuovi giocatori.   
I valori validi includono:  
+ **ACCEPT\$1ALL**: accetta tutte le nuove sessioni giocatore.
+ **DENY\$1ALL**: rifiuta tutte le nuove sessioni giocatore.

### Valore restituito
<a name="integration-server-sdk5-unreal-updateplayersessioncreationpolicy-return"></a>

Restituisce un risultato generico costituito da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-unreal-updateplayersessioncreationpolicy-example"></a>

Questo esempio definisce la policy di partecipazione alla sessione di gioco corrente per accettare tutti i giocatori.

```
FGameLiftGenericOutcome outcome = GameLiftSdkModule->UpdatePlayerSessionCreationPolicy(Aws::GameLift::Model::EPlayerSessionCreationPolicy::ACCEPT_ALL);
```

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

Recupera l'ID della sessione di gioco ospitata dal processo del server attivo. 

Per i processi inattivi che non vengono attivati con una sessione di gioco, la chiamata restituisce un. [FGameLiftError](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-gamelifterror)

### Sintassi
<a name="integration-server-sdk5-unreal-getgamesessionid-syntax"></a>

```
FGameLiftStringOutcome GetGameSessionId()
```

### Parameters
<a name="integration-server-sdk5-unreal-getgamesessionid-parameter"></a>

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk5-unreal-getgamesessionid-return"></a>

Se l'esito è positivo, l'ID della sessione di gioco verrà restituito come oggetto [FGameLiftStringOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-awsstringoutcome). Se non riesce, restituisce un messaggio di errore».

Per i processi inattivi che non vengono attivati con una sessione di gioco, la chiamata restituisce `Success` = `True` e `GameSessionId` =`""`.

### Esempio
<a name="integration-server-sdk5-unreal-getgamesessionid-example"></a>

```
//When a game session is created, Amazon GameLift Servers sends an activation request to the game server and passes along the game session object containing game properties and other settings.
//Here is where a game server should take action based on the game session object.
//Once the game server is ready to receive incoming player connections, it should invoke GameLiftServerAPI.ActivateGameSession()
auto onGameSession = [=](Aws::GameLift::Server::Model::GameSession gameSession)
{
  FString gameSessionId = FString(gameSession.GetGameSessionId());
  UE_LOG(GameServerLog, Log, TEXT("GameSession Initializing: %s"), *gameSessionId);
  GameLiftSdkModule->ActivateGameSession();
};
```

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

Restituisce il tempo di arresto pianificato di un processo del server, se è disponibile un tempo di chiusura. Un processo server interviene dopo aver ricevuto una `onProcessTerminate()` richiamata da. Amazon GameLift Servers Amazon GameLift Serverschiama `onProcessTerminate()` per i seguenti motivi: 
+ Quando il processo del server ha segnalato problemi di salute o non ha risposto. Amazon GameLift Servers
+ Quando si termina l'istanza durante un evento di scale-down.
+ [Quando un'istanza viene terminata a causa di un'interruzione di un'istanza spot.](spot-tasks.md)

### Sintassi
<a name="integration-server-sdk5-unreal-getterm-syntax"></a>

```
AwsDateTimeOutcome GetTerminationTime()
```

### Valore restituito
<a name="integration-server-sdk5-unreal-getterm-return"></a>

In caso di successo, restituisce l'ora di terminazione come oggetto. `AwsDateTimeOutcome` Il valore è il tempo di terminazione, espresso in segni di spunta trascorsi da allora. `0001 00:00:00` Ad esempio, il valore della data e dell'ora è uguale ai segni di `2020-09-13 12:26:40 -000Z` spunta. `637355968000000000` Se non è disponibile alcun orario di terminazione, restituisce un messaggio di errore.

Se il processo non ha ricevuto una ` ProcessParameters.OnProcessTerminate()` richiamata, viene restituito un messaggio di errore. Per ulteriori informazioni sulla chiusura di un processo server, vedere. [Rispondi a una notifica di chiusura del processo del server](gamelift-sdk-server-api.md#gamelift-sdk-server-terminate)

### Esempio
<a name="integration-server-sdk5-unreal-getterm-example"></a>

```
AwsDateTimeOutcome TermTimeOutcome = GameLiftSdkModule->GetTerminationTime();
```

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

Notifica Amazon GameLift Servers che un giocatore con l'ID di sessione specificato si è connesso al processo del server e deve essere convalidato. Amazon GameLift Serversverifica che l'ID della sessione del giocatore sia valido. Dopo la convalida della sessione di gioco, Amazon GameLift Servers modifica lo stato dello slot del giocatore da RISERVATO ad ATTIVO. 

### Sintassi
<a name="integration-server-sdk5-unreal-acceptplayersession-syntax"></a>

```
FGameLiftGenericOutcome AcceptPlayerSession(const FString& playerSessionId)
```

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

playerSessionId  
ID univoco rilasciato Amazon GameLift Servers quando viene creata una nuova sessione giocatore.

### Valore restituito
<a name="integration-server-sdk5-unreal-acceptplayersession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore. 

### Esempio
<a name="integration-server-sdk5-unreal-acceptplayersession-example"></a>

Questo esempio gestisce una richiesta di connessione che include la convalida e il rifiuto di una sessione giocatore non valida. IDs

```
bool GameLiftManager::AcceptPlayerSession(const FString& playerSessionId, const FString& playerId)
{
  #if WITH_GAMELIFT
  UE_LOG(GameServerLog, Log, TEXT("Accepting GameLift PlayerSession: %s . PlayerId: %s"), *playerSessionId, *playerId);
  FString gsId = GetCurrentGameSessionId();
  if (gsId.IsEmpty()) {
    UE_LOG(GameServerLog, Log, TEXT("No GameLift GameSessionId. Returning early!"));
    return false;
  }
  
  if (!GameLiftSdkModule->AcceptPlayerSession(playerSessionId).IsSuccess()) {
    UE_LOG(GameServerLog, Log, TEXT("PlayerSession not Accepted."));
    return false;
  }

  // Add PlayerSession from internal data structures keeping track of connected players
  connectedPlayerSessionIds.Add(playerSessionId);
  idToPlayerSessionMap.Add(playerSessionId, PlayerSession{ playerId, playerSessionId });
  return true;
  #else
  return false;
  #endif
}
```

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

Notifica Amazon GameLift Servers che un giocatore si è disconnesso dal processo del server. In risposta, Amazon GameLift Servers modifica lo slot del giocatore rendendolo disponibile. 

### Sintassi
<a name="integration-server-sdk5-unreal-removeplayersession-syntax"></a>

```
FGameLiftGenericOutcome RemovePlayerSession(const FString& playerSessionId)
```

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

**`playerSessionId`**  
ID univoco rilasciato Amazon GameLift Servers quando viene creata una nuova sessione di gioco.

### Valore restituito
<a name="integration-server-sdk5-unreal-removeplayersession-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-unreal-removeplayersession-example"></a>

```
bool GameLiftManager::RemovePlayerSession(const FString& playerSessionId)
{
  #if WITH_GAMELIFT
  UE_LOG(GameServerLog, Log, TEXT("Removing GameLift PlayerSession: %s"), *playerSessionId);

  if (!GameLiftSdkModule->RemovePlayerSession(playerSessionId).IsSuccess()) {
    UE_LOG(GameServerLog, Log, TEXT("PlayerSession Removal Failed"));
    return false;
  }

  // Remove PlayerSession from internal data structures that are keeping track of connected players
  connectedPlayerSessionIds.Remove(playerSessionId);
  idToPlayerSessionMap.Remove(playerSessionId);

  // end the session if there are no more players connected
  if (connectedPlayerSessionIds.Num() == 0) {
    EndSession();
  }

  return true;
  #else
  return false;
  #endif
}
```

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

Recupera i dati della sessione del giocatore che includono impostazioni, metadati della sessione e dati del giocatore. Utilizzate questo metodo per ottenere informazioni su quanto segue:
+ Una sessione per giocatore singolo
+ Tutte le sessioni dei giocatori in una sessione di gioco
+ Tutte le sessioni dei giocatori sono associate a un ID giocatore singolo

### Sintassi
<a name="integration-server-sdk5-unreal-describeplayersessions-syntax"></a>

```
FGameLiftDescribePlayerSessionsOutcome DescribePlayerSessions(const FGameLiftDescribePlayerSessionsRequest &describePlayerSessionsRequest)
```

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

**[FGameLiftDescribePlayerSessionsRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-playersessions)**  
Un [FGameLiftDescribePlayerSessionsRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-playersessions) oggetto che descrive le sessioni dei giocatori da recuperare.

### Valore restituito
<a name="integration-server-sdk5-unreal-describeplayersessions-return"></a>

Se l'esito è positivo, restituisce un oggetto [FGameLiftDescribePlayerSessionsOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-describeplayersessionsoutcome) contenente un set di oggetti di sessione giocatore corrispondente ai parametri della richiesta.

### Esempio
<a name="integration-server-sdk5-unreal-describeplayersessions-example"></a>

Questo esempio richiede che tutte le sessioni dei giocatori siano connesse attivamente a una sessione di gioco specificata. Omettendo *NextToken*e impostando il valore *Limite* su 10, Amazon GameLift Servers restituisce i primi 10 record di sessione tra giocatori corrispondenti alla richiesta.

```
void GameLiftManager::DescribePlayerSessions()
{
  #if WITH_GAMELIFT
  FString localPlayerSessions;
  for (auto& psId : connectedPlayerSessionIds)
  {
    PlayerSession ps = idToPlayerSessionMap[psId];
    localPlayerSessions += FString::Printf(TEXT("%s : %s  ; "), *(ps.playerSessionId), *(ps.playerId));
  }
  UE_LOG(GameServerLog, Log, TEXT("LocalPlayerSessions: %s"), *localPlayerSessions);

  UE_LOG(GameServerLog, Log, TEXT("Describing PlayerSessions in this GameSession"));
  FGameLiftDescribePlayerSessionsRequest request;
  request.m_gameSessionId = GetCurrentGameSessionId();

  FGameLiftDescribePlayerSessionsOutcome outcome = GameLiftSdkModule->DescribePlayerSessions(request);
  LogDescribePlayerSessionsOutcome(outcome);
  #endif
}
```

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

Invia una richiesta per trovare nuovi giocatori per gli slot aperti in una sessione di gioco creata con FlexMatch. Per ulteriori informazioni, consulta la funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Questa operazione è asincrona. Se vengono abbinati nuovi giocatori, Amazon GameLift Servers fornisce dati aggiornati sul matchmaker utilizzando la funzione di callback. `OnUpdateGameSession()`

Un processo del server può avere un solo backfill degli abbinamenti attivo alla volta. Per inviare una nuova richiesta, chiama prima [StopMatchBackfill()](#integration-server-sdk5-unreal-stopmatchbackfill) per annullare la richiesta originale.

### Sintassi
<a name="integration-server-sdk5-unreal-startmatchbackfill-syntax"></a>

```
FGameLiftStringOutcome StartMatchBackfill (FStartMatchBackfillRequest &startBackfillRequest);
```

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

**[FStartMatchBackfillRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-startmatchbackfillrequest)**  
Un StartMatchBackfillRequest oggetto che comunica le seguenti informazioni:  
+ ID del ticket da assegnare alla richiesta di backfill. Queste informazioni sono facoltative; se non viene fornito alcun ID, ne Amazon GameLift Servers genererà uno.
+ Matchmaker a cui inviare la richiesta. L'ARN di configurazione completo è obbligatorio. Questo valore si trova nei dati del matchmaker della sessione di gioco.
+ L'ID della sessione di gioco da riempire.
+ I dati di matchmaking disponibili per i giocatori attuali della sessione di gioco.

### Valore restituito
<a name="integration-server-sdk5-unreal-startmatchbackfill-return"></a>

Restituisce un `StartMatchBackfillOutcome` oggetto con l'ID del ticket match backfill, oppure restituisce un errore con un messaggio di errore. 

### Esempio
<a name="integration-server-sdk5-unreal-startmatchbackfill-example"></a>

```
FGameLiftStringOutcome FGameLiftServerSDKModule::StartMatchBackfill(const FStartMatchBackfillRequest& request) 
{
  #if WITH_GAMELIFT
  Aws::GameLift::Server::Model::StartMatchBackfillRequest sdkRequest;
  sdkRequest.SetTicketId(TCHAR_TO_UTF8(*request.m_ticketId));
  sdkRequest.SetGameSessionArn(TCHAR_TO_UTF8(*request.m_gameSessionArn));
  sdkRequest.SetMatchmakingConfigurationArn(TCHAR_TO_UTF8(*request.m_matchmakingConfigurationArn));
  for (auto player : request.m_players) {
    Aws::GameLift::Server::Model::Player sdkPlayer;
    sdkPlayer.SetPlayerId(TCHAR_TO_UTF8(*player.m_playerId));
    sdkPlayer.SetTeam(TCHAR_TO_UTF8(*player.m_team));
    for (auto entry : player.m_latencyInMs) {
      sdkPlayer.WithLatencyMs(TCHAR_TO_UTF8(*entry.Key), entry.Value);
    }

    std::map<std::string, Aws::GameLift::Server::Model::AttributeValue> sdkAttributeMap;
    for (auto attributeEntry : player.m_playerAttributes) {
      FAttributeValue value = attributeEntry.Value;
      Aws::GameLift::Server::Model::AttributeValue attribute;
      switch (value.m_type) {
        case FAttributeType::STRING:
          attribute = Aws::GameLift::Server::Model::AttributeValue(TCHAR_TO_UTF8(*value.m_S));
        break;
        case FAttributeType::DOUBLE:
          attribute = Aws::GameLift::Server::Model::AttributeValue(value.m_N);
        break;
        case FAttributeType::STRING_LIST:
          attribute = Aws::GameLift::Server::Model::AttributeValue::ConstructStringList();
          for (auto sl : value.m_SL) {
            attribute.AddString(TCHAR_TO_UTF8(*sl));
          };
        break;
        case FAttributeType::STRING_DOUBLE_MAP:
          attribute = Aws::GameLift::Server::Model::AttributeValue::ConstructStringDoubleMap();
          for (auto sdm : value.m_SDM) {
            attribute.AddStringAndDouble(TCHAR_TO_UTF8(*sdm.Key), sdm.Value);
          };
        break;
      }
      sdkPlayer.WithPlayerAttribute((TCHAR_TO_UTF8(*attributeEntry.Key)), attribute);
    }
    sdkRequest.AddPlayer(sdkPlayer);
  }
  auto outcome = Aws::GameLift::Server::StartMatchBackfill(sdkRequest);
  if (outcome.IsSuccess()) {
    return FGameLiftStringOutcome(outcome.GetResult().GetTicketId());
  }
  else {
    return FGameLiftStringOutcome(FGameLiftError(outcome.GetError()));
  }
  #else
  return FGameLiftStringOutcome("");
  #endif
}
```

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

Annulla una richiesta di match backfill attiva. Per ulteriori informazioni, consulta la funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

### Sintassi
<a name="integration-server-sdk5-unreal-stopmatchbackfill-syntax"></a>

```
FGameLiftGenericOutcome StopMatchBackfill (FStopMatchBackfillRequest &stopBackfillRequest);
```

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

**[FStopMatchBackfillRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-stopmatchbackfillrequest)**  
Un StopMatchBackfillRequest oggetto che identifica il ticket di matchmaking da annullare:   
+ L'ID del ticket assegnato alla richiesta di riempimento.
+ Il matchmaker a cui è stata inviata la richiesta di riempimento.
+ La sessione di gioco associata alla richiesta di riempimento.

### Valore restituito
<a name="integration-server-sdk5-unreal-stopmatchbackfill-return"></a>

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-unreal-stopmatchbackfill-example"></a>

```
FGameLiftGenericOutcome FGameLiftServerSDKModule::StopMatchBackfill(const FStopMatchBackfillRequest& request)
{
  #if WITH_GAMELIFT
  Aws::GameLift::Server::Model::StopMatchBackfillRequest sdkRequest;
  sdkRequest.SetTicketId(TCHAR_TO_UTF8(*request.m_ticketId));
  sdkRequest.SetGameSessionArn(TCHAR_TO_UTF8(*request.m_gameSessionArn));
  sdkRequest.SetMatchmakingConfigurationArn(TCHAR_TO_UTF8(*request.m_matchmakingConfigurationArn));
  auto outcome = Aws::GameLift::Server::StopMatchBackfill(sdkRequest);
  if (outcome.IsSuccess()) {
    return FGameLiftGenericOutcome(nullptr);
  }
  else {
    return FGameLiftGenericOutcome(FGameLiftError(outcome.GetError()));
  }
  #else
  return FGameLiftGenericOutcome(nullptr);
  #endif
}
```

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

Recupera il percorso del certificato TLS utilizzato per crittografare la connessione di rete tra la risorsa di elaborazione Amazon GameLift Servers Anywhere e. Amazon GameLift Servers Puoi utilizzare il percorso del certificato quando registri il tuo dispositivo di elaborazione in una flotta Anywhere. Amazon GameLift Servers Per ulteriori informazioni, consultare [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

### Sintassi
<a name="integration-server-sdk5-unreal-getcomputecertificate-syntax"></a>

```
FGameLiftGetComputeCertificateOutcome FGameLiftServerSDKModule::GetComputeCertificate()
```

### Valore restituito
<a name="integration-server-sdk5-unreal-getcomputecertificate-return"></a>

Restituisce un `GetComputeCertificateResponse` oggetto contenente quanto segue: 
+ CertificatePath: il percorso del certificato TLS sulla risorsa di calcolo. 
+ HostName: il nome host della risorsa di elaborazione.

### Esempio
<a name="integration-server-sdk5-unreal-getcomputecertificate-example"></a>

```
FGameLiftGetComputeCertificateOutcome FGameLiftServerSDKModule::GetComputeCertificate()
{
  #if WITH_GAMELIFT
  auto outcome = Aws::GameLift::Server::GetComputeCertificate();
  if (outcome.IsSuccess()) {
    auto& outres = outcome.GetResult();
    FGameLiftGetComputeCertificateResult result;
    result.m_certificate_path = UTF8_TO_TCHAR(outres.GetCertificatePath());
    result.m_computeName = UTF8_TO_TCHAR(outres.GetComputeName());
    return FGameLiftGetComputeCertificateOutcome(result);
  }
  else {
    return FGameLiftGetComputeCertificateOutcome(FGameLiftError(outcome.GetError()));
  }
  #else
  return FGameLiftGetComputeCertificateOutcome(FGameLiftGetComputeCertificateResult());
  #endif
}
```

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

Recupera le credenziali del ruolo IAM che autorizzano Amazon GameLift Servers a interagire con altri. Servizi AWS Per ulteriori informazioni, consulta [Connect il server di gioco Amazon GameLift Servers ospitato ad altre AWS risorse](gamelift-sdk-server-resources.md).

### Sintassi
<a name="integration-server-sdk5-unreal-getfleetrolecredentials-syntax"></a>

```
FGameLiftGetFleetRoleCredentialsOutcome FGameLiftServerSDKModule::GetFleetRoleCredentials(const FGameLiftGetFleetRoleCredentialsRequest &request)
```

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

[FGameLiftGetFleetRoleCredentialsRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsrequest)

### Valore restituito
<a name="integration-server-sdk5-unreal-getfleetrolecredentials-return"></a>

Restituisce un oggetto [FGameLiftGetFleetRoleCredentialsOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsoutcome).

### Esempio
<a name="integration-server-sdk5-unreal-getfleetrolecredentials-example"></a>

```
FGameLiftGetFleetRoleCredentialsOutcome FGameLiftServerSDKModule::GetFleetRoleCredentials(const FGameLiftGetFleetRoleCredentialsRequest &request)
{
  #if WITH_GAMELIFT
  Aws::GameLift::Server::Model::GetFleetRoleCredentialsRequest sdkRequest;
  sdkRequest.SetRoleArn(TCHAR_TO_UTF8(*request.m_roleArn));
  sdkRequest.SetRoleSessionName(TCHAR_TO_UTF8(*request.m_roleSessionName));

  auto outcome = Aws::GameLift::Server::GetFleetRoleCredentials(sdkRequest);

  if (outcome.IsSuccess()) {
    auto& outres = outcome.GetResult();
    FGameLiftGetFleetRoleCredentialsResult result;
    result.m_assumedUserRoleArn = UTF8_TO_TCHAR(outres.GetAssumedUserRoleArn());
    result.m_assumedRoleId = UTF8_TO_TCHAR(outres.GetAssumedRoleId());
    result.m_accessKeyId = UTF8_TO_TCHAR(outres.GetAccessKeyId());
    result.m_secretAccessKey = UTF8_TO_TCHAR(outres.GetSecretAccessKey());
    result.m_sessionToken = UTF8_TO_TCHAR(outres.GetSessionToken());
    result.m_expiration = FDateTime::FromUnixTimestamp(outres.GetExpiration());
    return FGameLiftGetFleetRoleCredentialsOutcome(result);
  }
  else {
    return FGameLiftGetFleetRoleCredentialsOutcome(FGameLiftError(outcome.GetError()));
  }
  #else
  return FGameLiftGetFleetRoleCredentialsOutcome(FGameLiftGetFleetRoleCredentialsResult());
  #endif
}
```

## Distruggi ()
<a name="integration-server-sdk5-unreal-ref-destroy"></a>

Libera l'SDK del server di Amazon GameLift Servers gioco dalla memoria. È consigliabile chiamare questo metodo dopo `ProcessEnding()` e prima di terminare il processo. Se utilizzi una flotta Anywhere e non interrompi i processi del server dopo ogni sessione di gioco, chiama `Destroy()` e poi `InitSDK()` reinizializza prima di notificare Amazon GameLift Servers che il processo è pronto per ospitare una sessione di gioco. `ProcessReady()`

### Sintassi
<a name="integration-server-sdk5-unreal-ref-destroy-syntax"></a>

```
FGameLiftGenericOutcome Destroy();
```

### Parameters
<a name="integration-server-sdk5-unreal-ref-destroy-parameter"></a>

Non ci sono parametri.

### Valore restituito
<a name="integration-server-sdk5-unreal-ref-destroy-return"></a>

Restituisce un risultato generico costituito da successo o fallimento con un messaggio di errore.

### Esempio
<a name="integration-server-sdk5-unreal-ref-destroy-example"></a>

```
// First call ProcessEnding()
FGameLiftGenericOutcome processEndingOutcome = GameLiftSdkModule->ProcessEnding();
  
// Then call Destroy() to free the SDK from memory
FGameLiftGenericOutcome destroyOutcome = GameLiftSdkModule->Destroy();
  
// Exit the process with success or failure
if (processEndingOutcome.IsSuccess() && destroyOutcome.IsSuccess()) 
    {
    UE_LOG(GameServerLog, Log, TEXT("Server process ending successfully"));
}
else {
    if (!processEndingOutcome.IsSuccess()) {
        const FGameLiftError& error = processEndingOutcome.GetError();
        UE_LOG(GameServerLog, Error, TEXT("ProcessEnding() failed. Error: %s"),
        error.m_errorMessage.IsEmpty() ? TEXT("Unknown error") : *error.m_errorMessage);
    }
    if (!destroyOutcome.IsSuccess()) {
        const FGameLiftError& error = destroyOutcome.GetError();
        UE_LOG(GameServerLog, Error, TEXT("Destroy() failed. Error: %s"),
        error.m_errorMessage.IsEmpty() ? TEXT("Unknown error") : *error.m_errorMessage);
    }
}
```