

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 per la Amazon GameLift Servers versione 4 e precedenti
<a name="reference-serversdk4"></a>

Questo riferimento documenta l'SDK del server per la Amazon GameLift Servers versione 4.x e precedenti. L'SDK del server fornisce le funzionalità di base utilizzate dai server di gioco per comunicare 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).

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). Il pacchetto SDK completo che GameLiftLocal include.jar è disponibile nell'artefatto -4.0.2.zip. GameLift-CSharp-ServerSDK

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

**Topics**
+ [SDK per server C\$1\$1 per Amazon GameLift Servers 4.x - Azioni](integration-server-sdk-cpp-ref-actions.md)
+ [SDK del server C\$1 per Amazon GameLift Servers 4.x -- Azioni](integration-server-sdk-csharp-ref-actions.md)
+ [Server SDK (Unreal) per Amazon GameLift Servers -- Azioni](integration-server-sdk-unreal-ref-actions.md)

# SDK per server C\$1\$1 per Amazon GameLift Servers 4.x - Azioni
<a name="integration-server-sdk-cpp-ref-actions"></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).

**Nota**  
Questo riferimento si riferisce a una versione precedente del server SDK forAmazon GameLift Servers. Per la versione più recente, consulta [Server C\$1\$1 SDK 5.x per -- Azioni Amazon GameLift Servers](integration-server-sdk5-cpp-actions.md).

# SDK per server C\$1\$1 per Amazon GameLift Servers 4.x -- Tipi di dati
<a name="integration-server-sdk-cpp-ref-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).

**Nota**  
Questo riferimento si riferisce a una versione precedente del server SDK forAmazon GameLift Servers. Per la versione più recente, consulta [Server C\$1\$1 SDK 5.x per Amazon GameLift Servers -- Tipi di dati](integration-server-sdk5-cpp-datatypes.md).

L'API è definita in `GameLiftServerAPI.h`, `LogParameters.h` e `ProcessParameters.h`.

[SDK per server C\$1\$1 per Amazon GameLift Servers 4.x - Azioni](integration-server-sdk-cpp-ref-actions.md)

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

Questo tipo di dati viene utilizzato per specificare quale sessione del giocatore recuperare. Puoi utilizzarlo come segue: 
+ Fornisci un PlayerSessionId messaggio per richiedere una sessione di gioco specifica.
+ Fornisci un GameSessionId campo per richiedere tutte le sessioni dei giocatori nella sessione di gioco specificata.
+ Fornisci un PlayerId campo per richiedere tutte le sessioni di gioco per il giocatore specificato.

Per le raccolte di grandi dimensioni delle sessioni giocatore, utilizza i parametri di paginazione per recuperare i risultati in blocchi sequenziali.

### Indice
<a name="integration-server-sdk-cpp-ref-dataypes-playersessions-contents"></a>

**GameSessionId**  
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 è 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: stringa  
Obbligatorio: no

**Limite**  
Numero massimo di risultati da restituire. Utilizzate questo parametro con *NextToken*per ottenere risultati sotto forma di set di pagine sequenziali. Se viene specificato un ID sessione giocatore, questo parametro verrà ignorato.  
Tipo: Integer  
Obbligatorio: no

**NextToken**  
Token che indica l'inizio della pagina sequenziale successiva relativa ai risultati. Utilizzare il token restituito con una chiamata precedente a questa operazione. Per specificare l'inizio del set di risultati, non specificare un valore. Se viene specificato un ID sessione giocatore, questo parametro verrà ignorato.  
▬Tipo: stringa  
Obbligatorio: no

**PlayerId**  
Identificatore univoco per un giocatore. IDs I giocatori sono definiti dallo sviluppatore. Per informazioni, consulta [Genera giocatore IDs](player-sessions-player-identifiers.md).  
▬Tipo: stringa  
Obbligatorio: no

**PlayerSessionId**  
Identificatore univoco della sessione giocatore.  
▬Tipo: stringa  
Obbligatorio: no

**PlayerSessionStatusFilter**  
Stato sessione giocatore su cui filtrare i risultati. Tra gli stati sessione giocatore possibili sono inclusi i seguenti:  
+ RISERVATO — La richiesta di sessione del giocatore è stata ricevuta, ma il giocatore non si è ancora connesso al server. Il processo and/or è stato convalidato.
+ ACTIVE (ATTIVO) - Il giocatore è stato convalidato dal processo del server ed è attualmente collegato.
+ COMPLETED (COMPLETATO) - La connessione del giocatore è stata interrotta.
+ TIMEDOUT — È stata ricevuta una richiesta di sessione di gioco, ma il giocatore che non si and/or è connesso non è stata convalidata entro il limite di timeout (60 secondi).
▬Tipo: stringa  
Obbligatorio: no

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

Questo tipo di dati viene utilizzato per identificare i file generati durante una sessione di gioco che Amazon GameLift Servers caricherà e memorizzerà al termine di questa fase. Queste informazioni vengono comunicate al servizio Amazon GameLift Servers in una chiamata [ProcessReady()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-processready).

### Indice
<a name="integration-server-sdk-cpp-ref-dataypes-log-contents"></a>

**logPaths**  
I percorsi di directory ai file di log del server di gioco che desideri che Amazon GameLift Servers archivi per l'accesso futuro. Questi file vengono generati durante ciascuna sessione di gioco. I percorsi e i nomi di file vengono definiti nel server di gioco e archiviati nella directory root della build di gioco. I percorsi di registro devono essere assoluti. Ad esempio, se la build di gioco archivia i log della sessione di gioco in un percorso come `MyGame\sessionlogs\`, il percorso di log è `c:\game\MyGame\sessionLogs` (su un'istanza Windows) o `/local/game/MyGame/sessionLogs` (su un'istanza Linux).   
Tipo: std:vector<std::string>  
Obbligatorio: no

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

Questo tipo di dati contiene il set di parametri inviato al servizio Amazon GameLift Servers in una chiamata [ProcessReady()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-processready).

### Indice
<a name="integration-server-sdk-cpp-ref-dataypes-process-contents"></a>

**port**  
Numero di porta su cui il processo del server rimane in attesa di nuove connessioni dei 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: numero intero   
Obbligatorio: sì

**logParameters**  
Un oggetto con un elenco di percorsi delle directory per i file log delle sessioni di gioco.   
Tipo: Aws:GameLift: :Server:: [LogParameters](#integration-server-sdk-cpp-ref-dataypes-log)  
Obbligatorio: no

**onStartGameSessione**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio per attivare una nuova sessione di gioco. Amazon GameLift Serverschiama questa funzione in risposta alla richiesta del client. [CreateGameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreateGameSession.html) La funzione di callback passa un [GameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_GameSession.html)oggetto (definito nel *Amazon GameLift ServersService API Reference*).   
Tipo: `const std::function<void(Aws::GameLift::Model::GameSession)> onStartGameSession`   
Obbligatorio: sì

**onProcessTerminate**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio 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-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-processending). Se non viene ricevuta nessuna risposta, arresta il processo del server.  
Tipo: `std::function<void()> onProcessTerminate`  
Obbligatorio: no

**onHealthCheck**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio per richiedere un rapporto sullo stato di salute del processo del server. Amazon GameLift Serverschiama questa funzione ogni 60 secondi. Dopo aver richiamato questa funzione, Amazon GameLift Servers attende per 60 secondi l'arrivo di una risposta e, se non ne riceve alcuna, registra il processo del server come non integro.  
Tipo: `std::function<bool()> onHealthCheck`  
Obbligatorio: no

**onUpdateGameSessione**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio 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](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html) per fornire dati aggiornati sul matchmaker. Passa un [GameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_GameSession.html)oggetto, uno status update (`updateReason`) e l'ID del ticket match backfill.   
Tipo: `std::function<void(Aws::GameLift::Server::Model::UpdateGameSession)> onUpdateGameSession`   
Obbligatorio: no

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

Questo tipo di dati viene utilizzato per inviare una richiesta di backfill di abbinamento. Le informazioni vengono comunicate al servizio Amazon GameLift Servers in una chiamata [StartMatchBackfill()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-startmatchbackfill).

### Indice
<a name="integration-server-sdk-cpp-ref-dataypes-startbackfill-contents"></a>

**GameSessionArn**  
 Identificatore univoco della sessione di gioco. L'operazione API [GetGameSessionId()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-getgamesessionid) restituisce l'identificatore nel formato ARN.  
Tipo: stringa  
Obbligatorio: sì

**MatchmakingConfigurationArn**  
Identificatore univoco, sotto forma di un ARN, che il matchmaker utilizza per questa richiesta. Per trovare il matchmaker utilizzato per creare la sessione di gioco originale, esaminare l'oggetto sessione di gioco nella proprietà dei dati del matchmaker. Scopri di più sui dati dei matchmaker in [Word con i dati dei matchmaker](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-server.html#match-server-data).   
Tipo: stringa  
Obbligatorio: sì

**Players**  
Un set 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. Consulta la *Guida di riferimento Amazon GameLift Servers API* per una descrizione del formato degli oggetti Player. Per trovare gli attributi dei giocatori e gli incarichi della squadra, cerca nell'oggetto della sessione di gioco, nella proprietà dei dati del matchmaker. IDs Se la latenza viene utilizzata dal matchmaker, raccogliere la latenza aggiornata per la regione attuale e includerla nei dati di ciascun giocatore.   
Tipo: std:vector[https://docs.aws.amazon.com/gamelift/latest/apireference/API_Player.html](https://docs.aws.amazon.com/gamelift/latest/apireference/API_Player.html) <player>  
Obbligatorio: sì

**TicketId**  
Identificatore univoco per un abbinamento o un ticket di richiesta di backfill degli abbinamenti. Se non viene fornito alcun valore qui, ne Amazon GameLift Servers genererà uno sotto forma di UUID. Utilizzare questo identificatore per monitorare lo stato del ticket di backfill degli abbinamenti o annullare la richiesta, se necessario.   
▬Tipo: stringa  
Obbligatorio: no

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

Questo tipo di dati viene utilizzato per annullare una richiesta di backfill di abbinamento. Le informazioni vengono comunicate al servizio Amazon GameLift Servers in una chiamata [StopMatchBackfill()](integration-server-sdk-cpp-ref-actions.md#integration-server-sdk-cpp-ref-stopmatchbackfill).

### Indice
<a name="integration-server-sdk-cpp-ref-dataypes-stopbackfill-contents"></a>

**GameSessionArn**  
Identificatore univoco della sessione di gioco associato alla richiesta in fase di annullamento.   
Tipo: stringa  
Obbligatorio: sì

**MatchmakingConfigurationArn**  
Identificatore univoco del matchmaker a cui è stata inviata questa richiesta.   
Tipo: stringa  
Obbligatorio: sì

**TicketId**  
Identificatore univoco del ticket di richiesta di backfill da annullare.  
Tipo: stringa  
Obbligatorio: sì

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

**Topics**
+ [SDK per server C\$1\$1 per Amazon GameLift Servers 4.x -- Tipi di dati](integration-server-sdk-cpp-ref-datatypes.md)
+ [AcceptPlayerSession()](#integration-server-sdk-cpp-ref-acceptplayersession)
+ [ActivateGameSession()](#integration-server-sdk-cpp-ref-activategamesession)
+ [DescribePlayerSessions()](#integration-server-sdk-cpp-ref-describeplayersessions)
+ [GetGameSessionId()](#integration-server-sdk-cpp-ref-getgamesessionid)
+ [GetInstanceCertificate()](#integration-server-sdk-cpp-ref-getinstancecertificate)
+ [GetSdkVersion()](#integration-server-sdk-cpp-ref-getsdk)
+ [GetTerminationTime()](#integration-server-sdk-cpp-ref-getterm)
+ [InitSDK()](#integration-server-sdk-cpp-ref-initsdk)
+ [ProcessEnding()](#integration-server-sdk-cpp-ref-processending)
+ [ProcessReady()](#integration-server-sdk-cpp-ref-processready)
+ [ProcessReadyAsync()](#integration-server-sdk-cpp-ref-processreadyasync)
+ [RemovePlayerSession()](#integration-server-sdk-cpp-ref-removeplayersession)
+ [StartMatchBackfill()](#integration-server-sdk-cpp-ref-startmatchbackfill)
+ [StopMatchBackfill()](#integration-server-sdk-cpp-ref-stopmatchbackfill)
+ [TerminateGameSession()](#integration-server-sdk-cpp-ref-terminategamesession)
+ [UpdatePlayerSessionCreationPolicy()](#integration-server-sdk-cpp-ref-updateplayersessioncreationpolicy)
+ [Distruggi ()](#integration-server-sdk-cpp-ref-destroy)

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

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

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

```
GenericOutcome AcceptPlayerSession(const std::string& playerSessionId);
```

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

**playerSessionId**  
ID univoco rilasciato dal Amazon GameLift Servers servizio in risposta a una chiamata all'azione dell'API AWS SDKAmazon GameLift Servers. [CreatePlayerSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreatePlayerSession.html) Il client di gioco fa riferimento a questo ID durante la connessione al processo del server.  
Tipo: std: :string  
Obbligatorio: sì

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

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

### Esempio
<a name="integration-server-sdk-cpp-ref-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, 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();
    }       
}
```

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

Notifica al servizio Amazon GameLift Servers che il processo del server ha avviato una sessione di gioco ed è pronto per ricevere le connessioni dei giocatori. Questa operazione deve essere chiamata come parte della funzione di callback `onStartGameSession()`, dopo il completamento dell'inizializzazione di tutte le sessioni di gioco.

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

```
GenericOutcome ActivateGameSession();
```

### Parameters
<a name="integration-server-sdk-cpp-ref-activategamesession-parameter"></a>

Questa operazione non prevede parametri.

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

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

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

Questo esempio illustra la chiamata a `ActivateGameSession()` nell'ambito della funzione di callback `onStartGameSession()`. 

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

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

Recupera i dati della sessione giocatore, tra cui le impostazioni, i metadati della sessione e i dati dei giocatori. 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-sdk-cpp-ref-describeplayersessions-syntax"></a>

```
DescribePlayerSessionsOutcome DescribePlayerSessions ( 
    const Aws::GameLift::Server::Model::DescribePlayerSessionsRequest &describePlayerSessionsRequest);
```

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

**describePlayerSessionsRichiesta**  
Un oggetto [DescribePlayerSessionsRequest](integration-server-sdk-cpp-ref-datatypes.md#integration-server-sdk-cpp-ref-dataypes-playersessions) che descrive le sessioni giocatore da recuperare.  
Obbligatorio: sì

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

Se l'esito è positivo, restituisce un oggetto `DescribePlayerSessionsOutcome` contenente un set di oggetti di sessione giocatore corrispondente ai parametri della richiesta. Gli oggetti della sessione Player hanno una struttura identica al tipo di [PlayerSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_PlayerSession.html)dati dell'Amazon GameLift ServersAPI AWS SDK.

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

Questo esempio illustra una richiesta per tutte le sessioni giocatore attivamente connesse a una sessione di gioco specificata. Se ometti `NextToken` e imposti il valore `Limit` su 10, Amazon GameLift Servers restituisce i primi 10 record di sessioni giocatore che corrispondono 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);
```

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

Recupera un identificatore univoco della sessione di gioco attualmente ospitata dal processo del server, se il processo del server è attivo. L'identificatore viene restituito nel formato ARN: `arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>`. 

Per i processi inattivi che non sono ancora stati attivati con una sessione di gioco, la chiamata restituisce `Success` = `True` e `GameSessionId` = `""` (una stringa vuota).

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

```
AwsStringOutcome GetGameSessionId();
```

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

Questa operazione non prevede parametri.

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

Se l'esito è positivo, l'ID della sessione di gioco verrà restituito come oggetto `AwsStringOutcome`. Se l'esito è negativo, verrà restituito un messaggio di errore.

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

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

## GetInstanceCertificate()
<a name="integration-server-sdk-cpp-ref-getinstancecertificate"></a>

Recupera la posizione del file di un certificato TLS con codifica pem associato alla flotta e alle relative istanze. AWS Certificate Manager genera questo certificato quando crei un nuovo parco veicoli con la configurazione del certificato impostata su GENERATED. Utilizza questo certificato per stabilire una connessione sicura con un client di gioco e per crittografare la comunicazione client/server. 

### Sintassi
<a name="integration-server-sdk-cpp-ref-getinstancecertificate-syntax"></a>

```
GetInstanceCertificateOutcome GetInstanceCertificate();
```

### Parameters
<a name="integration-server-sdk-cpp-ref-getinstancecertificate-parameter"></a>

Questa operazione non prevede parametri.

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

In caso di successo, restituisce un `GetInstanceCertificateOutcome` oggetto contenente la posizione del file di certificato TLS e della catena di certificati della flotta, che sono archiviati nell'istanza. Nell'istanza viene inoltre archiviato un file di certificato radice, estratto dalla catena di certificati. Se l'esito è negativo, verrà restituito un messaggio di errore. 

Per ulteriori informazioni sul certificato e sui dati della catena di certificati, consulta [GetCertificate Response Elements](https://docs.aws.amazon.com/acm/latest/APIReference/API_GetCertificate.html#API_GetCertificate_ResponseElements) nell' AWS Certificate Manager API Reference.

### Esempio
<a name="integration-server-sdk-cpp-ref-getinstancecertificate-example"></a>

```
Aws::GameLift::GetInstanceCertificateOutcome certificateOutcome = 
    Aws::GameLift::Server::GetInstanceCertificate();
```

## GetSdkVersion()
<a name="integration-server-sdk-cpp-ref-getsdk"></a>

Restituisce il numero di versione corrente dell'SDK in uso.

### Sintassi
<a name="integration-server-sdk-cpp-ref-getsdk-syntax"></a>

```
AwsStringOutcome GetSdkVersion();
```

### Parameters
<a name="integration-server-sdk-cpp-ref-getsdk-parameter"></a>

Questa operazione non prevede parametri.

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

Se l'esito è positivo, restituisce la versione corrente dell'SDK come oggetto `AwsStringOutcome`. La stringa restituita include solo il numero di versione (ad esempio «3.1.5"). Se l'esito è negativo, verrà restituito un messaggio di errore.

### Esempio
<a name="integration-server-sdk-cpp-ref-getsdk-example"></a>

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

## GetTerminationTime()
<a name="integration-server-sdk-cpp-ref-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 dal servizio. Amazon GameLift Servers Amazon GameLift Servers[può effettuare una chiamata `onProcessTerminate()` per i seguenti motivi: (1) quando il processo server ha segnalato problemi di salute o non ha rispostoAmazon GameLift Servers, (2) quando chiude l'istanza durante un evento di scale-down o (3) quando un'istanza viene interrotta a causa di un'interruzione Spot.](spot-tasks.md) 

Se il processo ha ricevuto un `onProcessTerminate()` callback, il valore restituito è il tempo di terminazione stimato. Se il processo non ha ricevuto una `onProcessTerminate()` richiamata, viene restituito un messaggio di errore. Ulteriori informazioni sull'[arresto di un processo del server](gamelift-sdk-server-api.md#gamelift-sdk-server-terminate).

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

```
AwsLongOutcome GetTerminationTime();
```

### Parameters
<a name="integration-server-sdk-cpp-ref-getterm-parameter"></a>

Questa operazione non prevede parametri.

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

In caso di successo, restituisce l'ora di terminazione come oggetto`AwsLongOutcome`. Il valore è l'ora di terminazione, espressa in segni di spunta trascorsi dalle 00:01 00:00:00. Ad esempio, il valore data/ora 2020-09-13 12:26:40 -000Z è uguale a 637355968000000000 ticks. Se non è disponibile alcun orario di terminazione, restituisce un messaggio di errore.

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

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

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

Inizializza l'SDK Amazon GameLift Servers. Questo metodo deve essere chiamato all'avvio, prima che avvenga qualsiasi altra inizializzazione correlata a Amazon GameLift Servers.

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

```
InitSDKOutcome InitSDK();
```

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

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk-cpp-ref-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-sdk-cpp-ref-processready). 

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

```
Aws::GameLift::Server::InitSDKOutcome initOutcome = 
    Aws::GameLift::Server::InitSDK();
```

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

Avvisa il servizio Amazon GameLift Servers che il processo del server è in fase di arresto. Questo metodo deve essere richiamato dopo tutte le altre attività di pulizia, tra cui l'arresto di tutte le sessioni di gioco attive. Questo metodo deve uscire con il codice 0; un codice di uscita diverso da zero genera un messaggio di evento che indica che il processo non è terminato correttamente.

Una volta terminato il metodo con un codice 0, è possibile terminare il processo con un codice di uscita corretto. È inoltre possibile uscire dal processo con un codice di errore. Se si esce con un codice di errore, l'evento fleet indicherà che il processo è terminato in modo anomalo ()`SERVER_PROCESS_TERMINATED_UNHEALTHY`. 

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

```
GenericOutcome ProcessEnding();
```

### Parameters
<a name="integration-server-sdk-cpp-ref-processending-parameter"></a>

Questa operazione non prevede parametri.

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

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

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

```
Aws::GameLift::GenericOutcome outcome = Aws::GameLift::Server::ProcessEnding();
if (outcome.Success)
    exit(0);  // exit with success
// otherwise, exit with error code
exit(errorCode);
```

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

Notifica al servizio Amazon GameLift Servers che il processo del server è pronto per l'hosting delle sessioni di gioco. Chiama questo metodo dopo aver richiamato [InitSDK()](#integration-server-sdk-cpp-ref-initsdk) e completato con successo le attività di configurazione necessarie prima che il processo del server possa ospitare una sessione di gioco. Questo metodo deve essere chiamato solo una volta per processo.

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

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

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

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

**processParameters**  
Un oggetto [ProcessParameters](integration-server-sdk-cpp-ref-datatypes.md#integration-server-sdk-cpp-ref-dataypes-process) che comunica le informazioni seguenti sul processo del server:  
+ Nomi di metodi di callback, implementati nel codice del server di gioco, che il servizio Amazon GameLift Servers richiama 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-sdk-cpp-ref-processready-return"></a>

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

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

Questo esempio illustra le implementazioni della funzione di chiamata e callback [ProcessReady()](#integration-server-sdk-cpp-ref-processready).

```
// 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-sdk-cpp-ref-processreadyasync"></a>

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

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

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

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

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

**processParameters**  
Un oggetto [ProcessParameters](integration-server-sdk-cpp-ref-datatypes.md#integration-server-sdk-cpp-ref-dataypes-process) che comunica le informazioni seguenti sul processo del server:  
+ Nomi di metodi di callback, implementati nel codice del server di gioco, che il servizio Amazon GameLift Servers richiama 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-sdk-cpp-ref-processreadyasync-return"></a>

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.

### Esempio
<a name="integration-server-sdk-cpp-ref-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;
}
```

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

Notifica al servizio Amazon GameLift Servers che un giocatore con l'ID della sessione giocatore specificato si è disconnesso dal processo del server. In risposta, Amazon GameLift Servers modifica lo slot giocatore su disponibile, consentendone l'assegnazione a un nuovo giocatore. 

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

```
GenericOutcome RemovePlayerSession(
    const std::string& playerSessionId);
```

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

**playerSessionId**  
ID univoco rilasciato dal Amazon GameLift Servers servizio in risposta a una chiamata all'azione [CreatePlayerSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreatePlayerSession.html)dell'Amazon GameLift ServersAPI AWS SDK. Il client di gioco fa riferimento a questo ID durante la connessione al processo del server.  
Tipo: std: :string  
Obbligatorio: sì

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

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

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

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

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

Invia una richiesta per trovare nuovi giocatori per gli slot aperti in una sessione di gioco creata con FlexMatch. Vedi anche l'azione AWS SDK [StartMatchBackfill().](https://docs.aws.amazon.com/gamelift/latest/apireference/API_StartMatchBackfill.html) Con questa operazione, è possibile avviare le richieste di backfill degli abbinamenti da un processo del server di gioco che ospita la sessione di gioco. Scopri di più sulla funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Questa operazione è asincrona. Se i nuovi giocatori vengono abbinati con successo, il Amazon GameLift Servers servizio fornisce dati aggiornati del matchmaker richiamando 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-cpp-ref-stopmatchbackfill) per annullare la richiesta originale.

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

```
StartMatchBackfillOutcome StartMatchBackfill ( 
    const Aws::GameLift::Server::Model::StartMatchBackfillRequest &startBackfillRequest);
```

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

**StartMatchBackfillRequest**  
Un oggetto [StartMatchBackfillRequest](integration-server-sdk-cpp-ref-datatypes.md#integration-server-sdk-cpp-ref-dataypes-startmatchbackfillrequest) che comunica le informazioni seguenti:  
+ ID del ticket da assegnare alla richiesta di backfill. Questa informazione è facoltativa; se l'ID non viene fornito, Amazon GameLift Servers ne creerà automaticamente uno.
+ Matchmaker a cui inviare la richiesta. L'ARN di configurazione completo è obbligatorio. Questo valore può essere acquisito dai dati del matchmaker della sessione di gioco.
+ ID della sessione di gioco che è in fase di backfilling.
+ Dati di abbinamento disponibili per i giocatori correnti della sessione di gioco.
Obbligatorio: sì

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

Restituisce un StartMatchBackfillOutcome oggetto con il match backfill ticket o un errore con un messaggio di errore. [Lo stato del ticket può essere monitorato utilizzando l'azione AWS DescribeMatchmaking SDK ().](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribeMatchmaking.html)

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

```
// Build a backfill request
std::vector<Player> players;
Aws::GameLift::Server::Model::StartMatchBackfillRequest startBackfillRequest;
startBackfillRequest.SetTicketId("a ticket ID");                                         //optional, autogenerated if not provided
startBackfillRequest.SetMatchmakingConfigurationArn("the matchmaker configuration ARN"); //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-sdk-cpp-ref-stopmatchbackfill"></a>

Annulla una richiesta di backfill degli abbinamenti attiva creata con [StartMatchBackfill()](#integration-server-sdk-cpp-ref-startmatchbackfill). [Vedi anche l'azione AWS StopMatchmaking SDK ().](https://docs.aws.amazon.com/gamelift/latest/apireference/API_StopMatchmaking.html) Scopri di più sulla funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

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

```
GenericOutcome StopMatchBackfill ( 
    const Aws::GameLift::Server::Model::StopMatchBackfillRequest &stopBackfillRequest);
```

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

**StopMatchBackfillRequest**  
Un oggetto [StopMatchBackfillRequest](integration-server-sdk-cpp-ref-datatypes.md#integration-server-sdk-cpp-ref-dataypes-stopmatchbackfillrequest) che identifica il ticket di abbinamento da annullare:   
+ ID del ticket assegnato alla richiesta di backfill in fase di annullamento
+ matchmaker a cui è stata inviata la richiesta di backfill
+ sessione di gioco associata alla richiesta di backfill
Obbligatorio: sì

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

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

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

```
// Set backfill stop request parameters

Aws::GameLift::Server::Model::StopMatchBackfillRequest stopBackfillRequest;
stopBackfillRequest.SetTicketId("the ticket ID");
stopBackfillRequest.SetGameSessionArn("the game session ARN");                           // can use GetGameSessionId()
stopBackfillRequest.SetMatchmakingConfigurationArn("the matchmaker configuration ARN");  // from the game session matchmaker data

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

## TerminateGameSession()
<a name="integration-server-sdk-cpp-ref-terminategamesession"></a>

**Questo metodo è obsoleto con la versione 4.0.1. Invece, il processo del server dovrebbe richiamare [ProcessEnding()](#integration-server-sdk-cpp-ref-processending) dopo la fine di una sessione di gioco.**

Notifica al Amazon GameLift Servers servizio che il processo del server ha terminato la sessione di gioco corrente. Questa azione viene richiamata quando il processo del server rimane attivo e pronto per ospitare una nuova sessione di gioco. Dovrebbe essere chiamata solo dopo il completamento della procedura di interruzione della sessione di gioco, perché segnala Amazon GameLift Servers che il processo del server è immediatamente disponibile per ospitare una nuova sessione di gioco. 

Questa azione non viene eseguita se il processo del server verrà chiuso dopo l'interruzione della sessione di gioco. Invece, chiama [ProcessEnding()](#integration-server-sdk-cpp-ref-processending) per segnalare che sia la sessione di gioco che il processo sul server stanno terminando. 

### Sintassi
<a name="integration-server-sdk-cpp-ref-terminategamesession-syntax"></a>

```
GenericOutcome TerminateGameSession();
```

### Parameters
<a name="integration-server-sdk-cpp-ref-terminategamesession-parameter"></a>

Questa operazione non prevede parametri.

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

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

## UpdatePlayerSessionCreationPolicy()
<a name="integration-server-sdk-cpp-ref-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. Vedi anche l'azione AWS SDK [UpdateGameSession().](https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateGameSession.html)

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

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

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

**newPlayerSessionPolitica**  
Valore della stringa che indica se la sessione di gioco accetta nuovi giocatori.   
Tipo: Aws:GameLift: :Model:: PlayerSessionCreationPolicy enum. I valori validi includono:   
+ **ACCEPT\$1ALL**: accetta tutte le nuove sessioni giocatore.
+ **DENY\$1ALL**: rifiuta tutte le nuove sessioni giocatore.
Obbligatorio: sì

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

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

### Esempio
<a name="integration-server-sdk-cpp-ref-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);
```

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

Pulisce la memoria allocata da initSDK () durante l'inizializzazione del server di gioco. Utilizza questo metodo dopo aver terminato un processo del server di gioco per evitare di sprecare memoria del server.

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

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

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

Non ci sono parametri.

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

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

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

Questo esempio pulisce la memoria allocata da InitSDK al termine di un processo sul server di gioco.

```
if (Aws::GameLift::Server::ProcessEnding().IsSuccess()) {
  Aws::GameLift::Server::Destroy();
  exit(0);
}
```

# SDK del server C\$1 per Amazon GameLift Servers 4.x -- Azioni
<a name="integration-server-sdk-csharp-ref-actions"></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).

**Nota**  
Questo riferimento si riferisce a una versione precedente del server SDK forAmazon GameLift Servers. Per la versione più recente, consulta [Server C\$1 SDK 5.x per -- Azioni Amazon GameLift Servers](integration-server-sdk5-csharp-actions.md).

# SDK del server C\$1 per Amazon GameLift Servers 4.x -- Tipi di dati
<a name="integration-server-sdk-csharp-ref-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).

**Nota**  
Questo riferimento si riferisce a una versione precedente del server SDK forAmazon GameLift Servers. Per la versione più recente, consulta [Server C\$1 SDK 5.x per Amazon GameLift Servers -- Tipi di dati](integration-server-sdk5-csharp-datatypes.md).

[SDK del server C\$1 per Amazon GameLift Servers 4.x -- Azioni](integration-server-sdk-csharp-ref-actions.md)

**Topics**
+ [LogParameters](#integration-server-sdk-csharp-ref-dataypes-log)
+ [DescribePlayerSessionsRequest](#integration-server-sdk-csharp-ref-dataypes-playersessions)
+ [ProcessParameters](#integration-server-sdk-csharp-ref-dataypes-process)
+ [StopMatchBackfillRequest](#integration-server-sdk-csharp-ref-dataypes-stopmatchbackfillrequest)

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

Questo tipo di dati viene utilizzato per identificare i file generati durante una sessione di gioco che Amazon GameLift Servers caricherà e memorizzerà al termine di questa fase. Queste informazioni vengono comunicate al servizio Amazon GameLift Servers in una chiamata [ProcessReady()](integration-server-sdk-csharp-ref-actions.md#integration-server-sdk-csharp-ref-processready).

### Indice
<a name="integration-server-sdk-csharp-ref-dataypes-log-contents"></a>

**logPaths**  
Elenco dei percorsi di directory ai file di log del server di gioco che Amazon GameLift Servers archivia per l'accesso futuro. Questi file vengono generati da un processo server durante ogni sessione di gioco; i percorsi dei file e i nomi sono definiti nel server di gioco e memorizzati nella directory root build di gioco. I percorsi di registro devono essere assoluti. Ad esempio, se la build di gioco archivia i log della sessione di gioco in un percorso come `MyGame\sessionlogs\`, il percorso di log è `c:\game\MyGame\sessionLogs` (su un'istanza Windows) o `/local/game/MyGame/sessionLogs` (su un'istanza Linux).   
Tipo: List<String>  
Obbligatorio: no

## DescribePlayerSessionsRequest
<a name="integration-server-sdk-csharp-ref-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 per richiedere tutte le sessioni dei giocatori 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.

### Indice
<a name="integration-server-sdk-csharp-ref-dataypes-playersessions-contents"></a>

**GameSessionId**  
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 è 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: stringa  
Obbligatorio: no

**Limite**  
Numero massimo di risultati da restituire. Utilizzate questo parametro con *NextToken*per ottenere risultati sotto forma di set di pagine sequenziali. Se viene specificato un ID sessione giocatore, questo parametro verrà ignorato.  
Tipo: Integer  
Obbligatorio: no

**NextToken**  
Token che indica l'inizio della pagina sequenziale successiva relativa ai risultati. Utilizzare il token restituito con una chiamata precedente a questa operazione. Per specificare l'inizio del set di risultati, non specificare un valore. Se viene specificato un ID sessione giocatore, questo parametro verrà ignorato.  
▬Tipo: stringa  
Obbligatorio: no

**PlayerId**  
Identificatore univoco per un giocatore. IDs I giocatori sono definiti dallo sviluppatore. Per informazioni, consulta [Genera giocatore IDs](player-sessions-player-identifiers.md).  
▬Tipo: stringa  
Obbligatorio: no

**PlayerSessionId**  
Identificatore univoco della sessione giocatore.  
▬Tipo: stringa  
Obbligatorio: no

**PlayerSessionStatusFilter**  
Stato sessione giocatore su cui filtrare i risultati. Tra gli stati sessione giocatore possibili sono inclusi i seguenti:  
+ RISERVATO — La richiesta di sessione del giocatore è stata ricevuta, ma il giocatore non si è ancora connesso al server. Il processo and/or è stato convalidato.
+ ACTIVE (ATTIVO) - Il giocatore è stato convalidato dal processo del server ed è attualmente collegato.
+ COMPLETED (COMPLETATO) - La connessione del giocatore è stata interrotta.
+ TIMEDOUT — È stata ricevuta una richiesta di sessione di gioco, ma il giocatore che non si and/or è connesso non è stata convalidata entro il limite di timeout (60 secondi).
▬Tipo: stringa  
Obbligatorio: no

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

Questo tipo di dati contiene il set di parametri inviato al servizio Amazon GameLift Servers in una chiamata [ProcessReady()](integration-server-sdk-csharp-ref-actions.md#integration-server-sdk-csharp-ref-processready).

### Indice
<a name="integration-server-sdk-csharp-ref-dataypes-process-contents"></a>

**port**  
Numero di porta a cui il processo del server rimarrà in attesa di nuove connessioni dei 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: numero intero   
Obbligatorio: sì

**logParameters**  
Un oggetto con un elenco di percorsi delle directory per i file log delle sessioni di gioco.   
Tipo: `Aws::GameLift::Server::LogParameters`  
Obbligatorio: sì

**onStartGameSessione**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio per attivare una nuova sessione di gioco. Amazon GameLift Serverschiama questa funzione in risposta alla richiesta del client. [CreateGameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreateGameSession.html) La funzione di callback accetta un [GameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_GameSession.html)oggetto (definito nel *Amazon GameLift ServersService API Reference*).   
Tipo: `void OnStartGameSessionDelegate(GameSession gameSession)`   
Obbligatorio: sì

**onProcessTerminate**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio per forzare la chiusura del processo del 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-sdk-csharp-ref-actions.md#integration-server-sdk-csharp-ref-processending) prima di arrestare il processo del server.  
Tipo: `void OnProcessTerminateDelegate()`  
Obbligatorio: sì

**onHealthCheck**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio per richiedere un rapporto sullo stato di salute del processo del server. Amazon GameLift Serverschiama questa funzione ogni 60 secondi. Dopo aver richiamato questa funzione, Amazon GameLift Servers attende per 60 secondi l'arrivo di una risposta e, se non ne riceve alcuna, registra il processo del server come non integro.  
Tipo: `bool OnHealthCheckDelegate()`  
Obbligatorio: sì

**onUpdateGameSessione**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio 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](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html) per fornire dati aggiornati sul matchmaker. Passa un [GameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_GameSession.html)oggetto, uno status update (`updateReason`) e l'ID del ticket match backfill.   
Tipo: `void OnUpdateGameSessionDelegate ( UpdateGameSession updateGameSession )`  
Obbligatorio: no

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

Questo tipo di dati viene utilizzato per inviare una richiesta di backfill di abbinamento. Le informazioni vengono comunicate al servizio Amazon GameLift Servers in una chiamata [StartMatchBackfill()](integration-server-sdk-csharp-ref-actions.md#integration-server-sdk-csharp-ref-startmatchbackfill).

#### Indice
<a name="integration-server-sdk-csharp-ref-dataypes-startbackfill-contents"></a>

**GameSessionArn**  
 Identificatore univoco della sessione di gioco. Il metodo SDK [GetGameSessionId()](integration-server-sdk-csharp-ref-actions.md#integration-server-sdk-csharp-ref-getgamesessionid) restituisce l'identificatore in formato ARN.  
Tipo: stringa  
Obbligatorio: sì

**MatchmakingConfigurationArn**  
Identificatore univoco, sotto forma di un ARN, che il matchmaker utilizza per questa richiesta. Per trovare il matchmaker utilizzato per creare la sessione di gioco originale, esaminare l'oggetto sessione di gioco nella proprietà dei dati del matchmaker. Scopri di più sui dati dei matchmaker in [Work](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-server.html#match-server-data.html) with matchmaker data.  
Tipo: stringa  
Obbligatorio: sì

**Players**  
Un set 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. Consulta la *Guida di riferimento Amazon GameLift Servers API* per una descrizione del formato degli oggetti Player. Per trovare gli attributi dei giocatori e gli incarichi della squadra, cerca nell'oggetto della sessione di gioco, nella proprietà dei dati del matchmaker. IDs Se la latenza viene utilizzata dal matchmaker, raccogliere la latenza aggiornata per la regione attuale e includerla nei dati di ciascun giocatore.   
Tipo: [Giocatore](https://docs.aws.amazon.com/gamelift/latest/apireference/API_Player.html)[ ]  
Obbligatorio: sì

**TicketId**  
Identificatore univoco per un abbinamento o un ticket di richiesta di backfill degli abbinamenti. Se non viene fornito alcun valore qui, ne Amazon GameLift Servers genererà uno sotto forma di UUID. Utilizzare questo identificatore per monitorare lo stato del ticket di backfill degli abbinamenti o annullare la richiesta, se necessario.   
▬Tipo: stringa  
Obbligatorio: no

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

Questo tipo di dati viene utilizzato per annullare una richiesta di backfill di abbinamento. Le informazioni vengono comunicate al servizio Amazon GameLift Servers in una chiamata [StopMatchBackfill()](integration-server-sdk-csharp-ref-actions.md#integration-server-sdk-csharp-ref-stopmatchbackfill).

### Indice
<a name="integration-server-sdk-csharp-ref-dataypes-stopbackfill-contents"></a>

**GameSessionArn**  
Identificatore univoco della sessione di gioco associato alla richiesta in fase di annullamento.   
Tipo: stringa  
Obbligatorio: sì

**MatchmakingConfigurationArn**  
Identificatore univoco del matchmaker a cui è stata inviata questa richiesta.   
Tipo: stringa  
Obbligatorio: sì

**TicketId**  
Identificatore univoco del ticket di richiesta di backfill da annullare.  
Tipo: stringa  
Obbligatorio: sì

[SDK del server C\$1 per Amazon GameLift Servers 4.x -- Tipi di dati](integration-server-sdk-csharp-ref-datatypes.md)

**Topics**
+ [SDK del server C\$1 per Amazon GameLift Servers 4.x -- Tipi di dati](integration-server-sdk-csharp-ref-datatypes.md)
+ [AcceptPlayerSession()](#integration-server-sdk-csharp-ref-acceptplayersession)
+ [ActivateGameSession()](#integration-server-sdk-csharp-ref-activategamesession)
+ [DescribePlayerSessions()](#integration-server-sdk-csharp-ref-describeplayersessions)
+ [GetGameSessionId()](#integration-server-sdk-csharp-ref-getgamesessionid)
+ [GetInstanceCertificate()](#integration-server-sdk-csharp-ref-getinstancecertificate)
+ [GetSdkVersion()](#integration-server-sdk-csharp-ref-getsdk)
+ [GetTerminationTime()](#integration-server-sdk-csharp-ref-getterm)
+ [InitSDK()](#integration-server-sdk-csharp-ref-initsdk)
+ [ProcessEnding()](#integration-server-sdk-csharp-ref-processending)
+ [ProcessReady()](#integration-server-sdk-csharp-ref-processready)
+ [RemovePlayerSession()](#integration-server-sdk-csharp-ref-removeplayersession)
+ [StartMatchBackfill()](#integration-server-sdk-csharp-ref-startmatchbackfill)
+ [StopMatchBackfill()](#integration-server-sdk-csharp-ref-stopmatchbackfill)
+ [TerminateGameSession()](#integration-server-sdk-csharp-ref-terminategamesession)
+ [UpdatePlayerSessionCreationPolicy()](#integration-server-sdk-csharp-ref-updateplayersessioncreationpolicy)

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

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

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

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

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

**playerSessionId**  
ID univoco rilasciato Amazon GameLift Servers quando viene creata una nuova sessione giocatore. Un ID di sessione del giocatore viene specificato in un `PlayerSession` oggetto, che viene restituito in risposta a una chiamata del client alle azioni *GameLift API [ StartGameSessionPlacement[ CreateGameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreateGameSession.html)](https://docs.aws.amazon.com/gamelift/latest/apireference/API_StartGameSessionPlacement.html)*, [ DescribeGameSessionPlacement](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribeGameSessionPlacement.html), o [ DescribePlayerSessions](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribePlayerSessions.html).  
Tipo: stringa  
Obbligatorio: sì

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

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

### Esempio
<a name="integration-server-sdk-csharp-ref-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){
    var acceptPlayerSessionOutcome =  GameLiftServerAPI.AcceptPlayerSession(playerSessionId);
     if(acceptPlayerSessionOutcome.Success)
    {
        connectionToSessionMap.emplace(connection, playerSessionId);
        connection.Accept();
    }
     else 
    {
        connection.Reject(acceptPlayerSessionOutcome.Error.ErrorMessage);    }       
}
```

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

Notifica al servizio Amazon GameLift Servers che il processo del server ha attivato una sessione di gioco ed è pronto per ricevere le connessioni dei giocatori. Questa operazione deve essere chiamata come parte della funzione di callback `onStartGameSession()`, dopo il completamento dell'inizializzazione di tutte le sessioni di gioco.

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

```
GenericOutcome ActivateGameSession()
```

### Parameters
<a name="integration-server-sdk-csharp-ref-activategamesession-parameter"></a>

Questa operazione non prevede parametri.

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

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

### Esempio
<a name="integration-server-sdk-csharp-ref-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   
    var activateGameSessionOutcome = GameLiftServerAPI.ActivateGameSession();
}
```

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

Recupera i dati della sessione giocatore, tra cui le impostazioni, i metadati della sessione e i dati dei giocatori. 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-sdk-csharp-ref-describeplayersessions-syntax"></a>

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

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

**describePlayerSessionsRichiesta**  
Un oggetto [DescribePlayerSessionsRequest](integration-server-sdk-csharp-ref-datatypes.md#integration-server-sdk-csharp-ref-dataypes-playersessions) che descrive le sessioni giocatore da recuperare.  
Obbligatorio: sì

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

Se l'esito è positivo, restituisce un oggetto `DescribePlayerSessionsOutcome` contenente un set di oggetti di sessione giocatore corrispondente ai parametri della richiesta. Gli oggetti della sessione Player hanno una struttura identica al tipo di [PlayerSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_PlayerSession.html)dati dell'Amazon GameLift ServersAPI AWS SDK.

### Esempio
<a name="integration-server-sdk-csharp-ref-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 verranno restituiti i record delle prime 10 sessioni di gioco corrispondenti alla richiesta.

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

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

Recupera l'ID della sessione di gioco attualmente ospitata dal processo del server, se il processo del server è attivo. 

Per i processi inattivi che non sono ancora stati attivati con una sessione di gioco, la chiamata restituisce `Success` = `True` e `GameSessionId` = `""` (una stringa vuota).

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

```
AwsStringOutcome GetGameSessionId()
```

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

Questa operazione non prevede parametri.

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

Se l'esito è positivo, l'ID della sessione di gioco verrà restituito come oggetto `AwsStringOutcome`. Se l'esito è negativo, verrà restituito un messaggio di errore.

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

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

## GetInstanceCertificate()
<a name="integration-server-sdk-csharp-ref-getinstancecertificate"></a>

Recupera la posizione del file di un certificato TLS con codifica pem associato alla flotta e alle relative istanze. AWS Certificate Manager genera questo certificato quando crei un nuovo parco veicoli con la configurazione del certificato impostata su GENERATED. Utilizza questo certificato per stabilire una connessione sicura con un client di gioco e per crittografare la comunicazione client/server. 

### Sintassi
<a name="integration-server-sdk-csharp-ref-getinstancecertificate-syntax"></a>

```
GetInstanceCertificateOutcome GetInstanceCertificate();
```

### Parameters
<a name="integration-server-sdk-csharp-ref-getinstancecertificate-parameter"></a>

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk-csharp-ref-getinstancecertificate-return"></a>

In caso di successo, restituisce un `GetInstanceCertificateOutcome` oggetto contenente la posizione del file di certificato TLS e della catena di certificati della flotta, che sono archiviati nell'istanza. Nell'istanza viene inoltre archiviato un file di certificato radice, estratto dalla catena di certificati. Se l'esito è negativo, verrà restituito un messaggio di errore. 

Per ulteriori informazioni sul certificato e sui dati della catena di certificati, consulta [GetCertificate Response Elements](https://docs.aws.amazon.com/acm/latest/APIReference/API_GetCertificate.html#API_GetCertificate_ResponseElements) nell' AWS Certificate Manager API Reference.

### Esempio
<a name="integration-server-sdk-csharp-ref-getinstancecertificate-example"></a>

```
var getInstanceCertificateOutcome = GameLiftServerAPI.GetInstanceCertificate();
```

## GetSdkVersion()
<a name="integration-server-sdk-csharp-ref-getsdk"></a>

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

### Sintassi
<a name="integration-server-sdk-csharp-ref-getsdk-syntax"></a>

```
AwsStringOutcome GetSdkVersion()
```

### Parameters
<a name="integration-server-sdk-csharp-ref-getsdk-parameter"></a>

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk-csharp-ref-getsdk-return"></a>

Se l'esito è positivo, restituisce la versione corrente dell'SDK come oggetto `AwsStringOutcome`. La stringa restituita include solo il numero di versione (ad esempio «3.1.5"). Se l'esito è negativo, verrà restituito un messaggio di errore.

### Esempio
<a name="integration-server-sdk-csharp-ref-getsdk-example"></a>

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

## GetTerminationTime()
<a name="integration-server-sdk-csharp-ref-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 dal servizio. Amazon GameLift Servers Amazon GameLift Servers[può effettuare una chiamata `onProcessTerminate()` per i seguenti motivi: (1) per problemi di salute (il processo del server ha segnalato lo stato della porta o non ha rispostoAmazon GameLift Servers, (2) quando termina l'istanza durante un evento di scale-down o (3) quando un'istanza viene terminata a causa di un'interruzione dell'istanza spot.](spot-tasks.md) 

Se il processo ha ricevuto una `onProcessTerminate()` richiamata, il valore restituito è il tempo di terminazione stimato. Se il processo non ha ricevuto una `onProcessTerminate()` richiamata, viene restituito un messaggio di errore. Ulteriori informazioni sull'[arresto di un processo del server](gamelift-sdk-server-api.md#gamelift-sdk-server-terminate).

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

```
AwsDateTimeOutcome GetTerminationTime()
```

### Parameters
<a name="integration-server-sdk-csharp-ref-getterm-parameter"></a>

Questa operazione non prevede parametri.

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

In caso di successo, restituisce l'ora di terminazione come oggetto`AwsDateTimeOutcome`. Il valore è l'ora di terminazione, espressa in segni di spunta trascorsi dalle 00:01 00:00:00. Ad esempio, il valore data/ora 2020-09-13 12:26:40 -000Z è uguale a 637355968000000000 ticks. Se non è disponibile alcun orario di terminazione, restituisce un messaggio di errore.

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

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

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

Inizializza l'SDK Amazon GameLift Servers. Questo metodo deve essere chiamato all'avvio, prima che avvenga qualsiasi altra inizializzazione correlata a Amazon GameLift Servers.

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

```
InitSDKOutcome InitSDK()
```

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

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk-csharp-ref-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-sdk-csharp-ref-processready). 

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

```
var initSDKOutcome = GameLiftServerAPI.InitSDK(); 
```

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

Avvisa il servizio Amazon GameLift Servers che il processo del server è in fase di arresto. Questo metodo deve essere richiamato dopo tutte le altre attività di pulizia, tra cui l'arresto di tutte le sessioni di gioco attive. Questo metodo deve uscire con il codice 0; un codice di uscita diverso da zero genera un messaggio di evento che indica che il processo non è terminato correttamente.

Una volta terminato il metodo con un codice 0, è possibile terminare il processo con un codice di uscita corretto. È inoltre possibile uscire dal processo con un codice di errore. Se si esce con un codice di errore, l'evento fleet indicherà che il processo è terminato in modo anomalo ()`SERVER_PROCESS_TERMINATED_UNHEALTHY`. 

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

```
GenericOutcome ProcessEnding()
```

### Parameters
<a name="integration-server-sdk-csharp-ref-processending-parameter"></a>

Questa operazione non prevede parametri.

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

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

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

```
var processEndingOutcome = GameLiftServerAPI.ProcessEnding();
if (processReadyOutcome.Success)
   Environment.Exit(0);
// otherwise, exit with error code
Environment.Exit(errorCode);
```

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

Notifica al servizio Amazon GameLift Servers che il processo del server è pronto per l'hosting delle sessioni di gioco. Chiama questo metodo dopo aver richiamato [InitSDK()](#integration-server-sdk-csharp-ref-initsdk) e completato con successo le attività di configurazione necessarie prima che il processo del server possa ospitare una sessione di gioco. Questo metodo deve essere chiamato solo una volta per processo.

### Sintassi
<a name="integration-server-sdk-csharp-ref-processready-syntax"></a>

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

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

**processParameters**  
Un oggetto [ProcessParameters](integration-server-sdk-csharp-ref-datatypes.md#integration-server-sdk-csharp-ref-dataypes-process) che comunica le informazioni seguenti sul processo del server:  
+ Nomi di metodi di callback, implementati nel codice del server di gioco, che il servizio Amazon GameLift Servers richiama 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-sdk-csharp-ref-processready-return"></a>

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

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

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

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

var processReadyOutcome = GameLiftServerAPI.ProcessReady(processParams);

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

void OnProcessTerminate()
{
   // game-specific tasks required to gracefully shut down a game session, 
   // such as notifying players, preserving game state data, and other cleanup
    var ProcessEndingOutcome = GameLiftServerAPI.ProcessEnding();
}

bool OnHealthCheck()
{
    bool isHealthy;
    // complete health evaluation within 60 seconds and set health
    return isHealthy;
}
```

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

Notifica al servizio Amazon GameLift Servers che un giocatore con l'ID della sessione giocatore specificato si è disconnesso dal processo del server. In risposta, Amazon GameLift Servers modifica lo slot giocatore su disponibile, consentendone l'assegnazione a un nuovo giocatore. 

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

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

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

**playerSessionId**  
ID univoco rilasciato da Amazon GameLift Servers quando viene creata una nuova sessione di gioco. Un ID di sessione del giocatore viene specificato in un `PlayerSession` oggetto, che viene restituito in risposta a una chiamata del client alle azioni *GameLift API [ StartGameSessionPlacement[ CreateGameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreateGameSession.html)](https://docs.aws.amazon.com/gamelift/latest/apireference/API_StartGameSessionPlacement.html)*, [ DescribeGameSessionPlacement](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribeGameSessionPlacement.html), o [ DescribePlayerSessions](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribePlayerSessions.html).  
Tipo: stringa  
Obbligatorio: sì

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

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

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

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

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

Invia una richiesta per trovare nuovi giocatori per gli slot aperti in una sessione di gioco creata con FlexMatch. Vedi anche l'azione AWS SDK [StartMatchBackfill().](https://docs.aws.amazon.com/gamelift/latest/apireference/API_StartMatchBackfill.html) Con questa operazione, è possibile avviare le richieste di backfill degli abbinamenti da un processo del server di gioco che ospita la sessione di gioco. Scopri di più sulla funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Questa operazione è asincrona. Se i nuovi giocatori sono stati abbinati in modo corretto, il servizio Amazon GameLift Servers invia i dati del matchmaker aggiornati tramite 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-csharp-ref-stopmatchbackfill) per annullare la richiesta originale.

### Sintassi
<a name="integration-server-sdk-csharp-ref-startmatchbackfill-syntax"></a>

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

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

**StartMatchBackfillRequest**  
Un oggetto [StartMatchBackfillRequest](integration-server-sdk-csharp-ref-datatypes.md#integration-server-sdk-csharp-ref-dataypes-startmatchbackfillrequest) che comunica le informazioni seguenti:  
+ ID del ticket da assegnare alla richiesta di backfill. Questa informazione è facoltativa; se l'ID non viene fornito, Amazon GameLift Servers ne creerà automaticamente uno.
+ Matchmaker a cui inviare la richiesta. L'ARN di configurazione completo è obbligatorio. Questo valore può essere acquisito dai dati del matchmaker della sessione di gioco.
+ ID della sessione di gioco che è in fase di backfilling.
+ Dati di abbinamento disponibili per i giocatori correnti della sessione di gioco.
Obbligatorio: sì

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

Restituisce un StartMatchBackfillOutcome oggetto con l'ID del ticket Match Backfill o restituisce un errore con un messaggio di errore. 

### Esempio
<a name="integration-server-sdk-csharp-ref-startmatchbackfill-example"></a>

```
// Build a backfill request
var startBackfillRequest = new AWS.GameLift.Server.Model.StartMatchBackfillRequest()
{
    TicketId = "a ticket ID", //optional
    MatchmakingConfigurationArn = "the matchmaker configuration ARN", 
    GameSessionId = GameLiftServerAPI.GetGameSessionId().Result,    // gets ID for current game session
        //get player data for all currently connected players
            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
var 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-sdk-csharp-ref-stopmatchbackfill"></a>

Annulla una richiesta di backfill degli abbinamenti attiva creata con [StartMatchBackfill()](#integration-server-sdk-csharp-ref-startmatchbackfill). Vedi anche l'azione AWS SDK [StopMatchmaking()](https://docs.aws.amazon.com/gamelift/latest/apireference/API_StopMatchmaking.html). Scopri di più sulla funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

### Sintassi
<a name="integration-server-sdk-csharp-ref-stopmatchbackfill-syntax"></a>

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

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

**StopMatchBackfillRequest**  
Un oggetto [StopMatchBackfillRequest](integration-server-sdk-csharp-ref-datatypes.md#integration-server-sdk-csharp-ref-dataypes-stopmatchbackfillrequest) che identifica il ticket di abbinamento da annullare:   
+ ID del ticket assegnato alla richiesta di backfill in fase di annullamento
+ matchmaker a cui è stata inviata la richiesta di backfill
+ sessione di gioco associata alla richiesta di backfill
Obbligatorio: sì

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

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

### Esempio
<a name="integration-server-sdk-csharp-ref-stopmatchbackfill-example"></a>

```
// Set backfill stop request parameters

var stopBackfillRequest = new AWS.GameLift.Server.Model.StopMatchBackfillRequest()
{
    TicketId = "a ticket ID", //optional, if not provided one is autogenerated
    MatchmakingConfigurationArn = "the matchmaker configuration ARN", //from the game session matchmaker data
    GameSessionId = GameLiftServerAPI.GetGameSessionId().Result    //gets the ID for the current game session
};

var stopBackfillOutcome = GameLiftServerAPI.StopMatchBackfillRequest(stopBackfillRequest);
```

## TerminateGameSession()
<a name="integration-server-sdk-csharp-ref-terminategamesession"></a>

**Questo metodo è obsoleto con la versione 4.0.1. Invece, il processo del server dovrebbe richiamare [ProcessEnding()](#integration-server-sdk-csharp-ref-processending) dopo la fine di una sessione di gioco.**

Notifica al Amazon GameLift Servers servizio che il processo del server ha terminato la sessione di gioco corrente. Questa azione viene richiamata quando il processo del server rimane attivo e pronto per ospitare una nuova sessione di gioco. Dovrebbe essere chiamata solo dopo il completamento della procedura di interruzione della sessione di gioco, perché segnala Amazon GameLift Servers che il processo del server è immediatamente disponibile per ospitare una nuova sessione di gioco. 

Questa azione non viene eseguita se il processo del server verrà chiuso dopo l'interruzione della sessione di gioco. Invece, chiama [ProcessEnding()](#integration-server-sdk-csharp-ref-processending) per segnalare che sia la sessione di gioco che il processo sul server stanno terminando. 

### Sintassi
<a name="integration-server-sdk-csharp-ref-terminategamesession-syntax"></a>

```
GenericOutcome TerminateGameSession()
```

### Parameters
<a name="integration-server-sdk-csharp-ref-terminategamesession-parameter"></a>

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk-csharp-ref-terminategamesession-return"></a>

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

### Esempio
<a name="integration-server-sdk-csharp-ref-terminategamesession-example"></a>

Questo esempio illustra un processo del server al termine di una sessione di gioco.

```
// game-specific tasks required to gracefully shut down a game session, 
// such as notifying players, preserving game state data, and other cleanup

var terminateGameSessionOutcome = GameLiftServerAPI.TerminateGameSession();
var processReadyOutcome = GameLiftServerAPI.ProcessReady(processParams);
```

## UpdatePlayerSessionCreationPolicy()
<a name="integration-server-sdk-csharp-ref-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. (Vedi anche l'azione [UpdateGameSession()](https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateGameSession.html) nel *Amazon GameLift ServersService API Reference*).

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

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

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

**newPlayerSessionPolitica**  
Valore della stringa che indica se la sessione di gioco accetta nuovi giocatori.   
Tipo: enum. [PlayerSessionCreationPolicy](https://sdk.amazonaws.com/cpp/api/LATEST/namespace_aws_1_1_game_lift_1_1_model.html#afa8a7527defe9e7ca0caebc239182c43). I valori validi includono:  
+ **ACCEPT\$1ALL**: accetta tutte le nuove sessioni giocatore.
+ **DENY\$1ALL**: rifiuta tutte le nuove sessioni giocatore.
Obbligatorio: sì

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

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

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

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

```
var updatePlayerSessionCreationPolicyOutcomex = 
    GameLiftServerAPI.UpdatePlayerSessionCreationPolicy(PlayerSessionCreationPolicy.ACCEPT_ALL);
```

# Server SDK (Unreal) per Amazon GameLift Servers -- Azioni
<a name="integration-server-sdk-unreal-ref-actions"></a>

Usa l'SDK del server per Unreal 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 riferimento si riferisce a una versione precedente del server SDK forAmazon GameLift Servers. Per la versione più recente, consulta [Server C\$1\$1 (Unreal) SDK 5.x per -- Azioni Amazon GameLift Servers](integration-server-sdk5-unreal-actions.md).

Questa API è definita in `GameLiftServerSDK.h` e `GameLiftServerSDKModels.h`.

Per configurare il plugin Unreal Engine e vedere esempi di codice [Integrazione Amazon GameLift Servers in un progetto Unreal Engine](integration-engines-setup-unreal.md).

# Server SDK (Unreal) perAmazon GameLift Servers: tipi di dati
<a name="integration-server-sdk-unreal-ref-datatypes"></a>

Utilizza il Amazon GameLift Servers server SDK for Unreal Reference 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 riferimento si riferisce a una versione precedente del server SDK forAmazon GameLift Servers. Per la versione più recente, consulta [Server C\$1\$1 (Unreal) SDK 5.x per Amazon GameLift Servers -- Tipi di dati](integration-server-sdk5-unreal-datatypes.md).

Questa API è definita in `GameLiftServerSDK.h` e `GameLiftServerSDKModels.h`.

Per configurare il plugin Unreal Engine e vedere esempi di codice [Integrazione Amazon GameLift Servers in un progetto Unreal Engine](integration-engines-setup-unreal.md).

[Server SDK (Unreal) per Amazon GameLift Servers -- Azioni](integration-server-sdk-unreal-ref-actions.md)

**Topics**
+ [FDescribePlayerSessionsRequest](#integration-server-sdk-unreal-ref-dataypes-playersessions)
+ [FProcessParametri](#integration-server-sdk-unreal-ref-dataypes-process)
+ [FStartMatchBackfillRequest](#integration-server-sdk-unreal-ref-dataypes-startmatchbackfillrequest)
+ [FStopMatchBackfillRequest](#integration-server-sdk-unreal-ref-dataypes-stopmatchbackfillrequest)

## FDescribePlayerSessionsRequest
<a name="integration-server-sdk-unreal-ref-dataypes-playersessions"></a>

Questo tipo di dati viene utilizzato per specificare quale sessione del giocatore recuperare. Puoi utilizzarlo come segue: 
+ Fornisci un PlayerSessionId messaggio per richiedere una sessione di gioco specifica.
+ Fornisci un GameSessionId campo per richiedere tutte le sessioni dei giocatori nella sessione di gioco specificata.
+ Fornisci un PlayerId campo per richiedere tutte le sessioni di gioco per il giocatore specificato.

Per le raccolte di grandi dimensioni delle sessioni giocatore, utilizza i parametri di paginazione per recuperare i risultati in blocchi sequenziali.

### Indice
<a name="integration-server-sdk-unreal-ref-dataypes-playersessions-contents"></a>

**GameSessionId**  
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 è 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: stringa  
Obbligatorio: no

**Limite**  
Numero massimo di risultati da restituire. Utilizzate questo parametro con *NextToken*per ottenere risultati sotto forma di set di pagine sequenziali. Se viene specificato un ID sessione giocatore, questo parametro verrà ignorato.  
Tipo: Integer  
Obbligatorio: no

**NextToken**  
Token che indica l'inizio della pagina sequenziale successiva relativa ai risultati. Utilizzare il token restituito con una chiamata precedente a questa operazione. Per specificare l'inizio del set di risultati, non specificare un valore. Se viene specificato un ID sessione giocatore, questo parametro verrà ignorato.  
▬Tipo: stringa  
Obbligatorio: no

**PlayerId**  
Identificatore univoco per un giocatore. IDs I giocatori sono definiti dallo sviluppatore. Per informazioni, consulta [Genera giocatore IDs](player-sessions-player-identifiers.md).  
▬Tipo: stringa  
Obbligatorio: no

**PlayerSessionId**  
Identificatore univoco della sessione giocatore.  
▬Tipo: stringa  
Obbligatorio: no

**PlayerSessionStatusFilter**  
Stato sessione giocatore su cui filtrare i risultati. Tra gli stati sessione giocatore possibili sono inclusi i seguenti:  
+ RISERVATO — La richiesta di sessione del giocatore è stata ricevuta, ma il giocatore non si è ancora connesso al server. Il processo and/or è stato convalidato.
+ ACTIVE (ATTIVO) - Il giocatore è stato convalidato dal processo del server ed è attualmente collegato.
+ COMPLETED (COMPLETATO) - La connessione del giocatore è stata interrotta.
+ TIMEDOUT — È stata ricevuta una richiesta di sessione di gioco, ma il giocatore che non si and/or è connesso non è stata convalidata entro il limite di timeout (60 secondi).
▬Tipo: stringa  
Obbligatorio: no

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

Questo tipo di dati contiene il set di parametri inviato al servizio Amazon GameLift Servers in una chiamata [ProcessReady()](integration-server-sdk-unreal-ref-actions.md#integration-server-sdk-unreal-ref-processready).

### Indice
<a name="integration-server-sdk-unreal-ref-dataypes-process-contents"></a>

**port**  
Numero di porta a cui il processo del server rimarrà in attesa di nuove connessioni dei 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: numero intero   
Obbligatorio: sì

**logParameters**  
Un oggetto con un elenco di percorsi delle directory per i file log delle sessioni di gioco.   
Tipo: TArray < FString >  
Obbligatorio: no

**onStartGameSessione**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio per attivare una nuova sessione di gioco. Amazon GameLift Serverschiama questa funzione in risposta alla richiesta del client. [CreateGameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreateGameSession.html) La funzione di callback accetta un [GameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_GameSession.html)oggetto (definito nel *Amazon GameLift ServersService API Reference*).   
Tipo: FOnStartGameSession   
Obbligatorio: sì

**onProcessTerminate**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio per forzare la chiusura del processo del 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-sdk-unreal-ref-actions.md#integration-server-sdk-unreal-ref-processending) prima di arrestare il processo del server.  
Tipo: Delegato FSimple  
Obbligatorio: no

**onHealthCheck**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio per richiedere un rapporto sullo stato di salute del processo del server. Amazon GameLift Serverschiama questa funzione ogni 60 secondi. Dopo aver richiamato questa funzione, Amazon GameLift Servers attende per 60 secondi l'arrivo di una risposta e, se non ne riceve alcuna, registra il processo del server come non integro.  
Tipo: FOnHealthCheck  
Obbligatorio: no

**onUpdateGameSessione**  
Nome della funzione di callback richiamata dal Amazon GameLift Servers servizio 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](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html) per fornire dati aggiornati sul matchmaker. Passa un [GameSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_GameSession.html)oggetto, uno status update (`updateReason`) e l'ID del ticket match backfill.   
Tipo: FOnUpdateGameSession   
Obbligatorio: no

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

Questo tipo di dati viene utilizzato per inviare una richiesta di backfill di abbinamento. Le informazioni vengono comunicate al servizio Amazon GameLift Servers in una chiamata [StartMatchBackfill()](integration-server-sdk-unreal-ref-actions.md#integration-server-sdk-unreal-ref-startmatchbackfill).

### Indice
<a name="integration-server-sdk-unreal-ref-dataypes-startbackfill-contents"></a>

**GameSessionArn**  
 Identificatore univoco della sessione di gioco. L'operazione API [GetGameSessionId()](integration-server-sdk-unreal-ref-actions.md#integration-server-sdk-unreal-ref-getgamesessionid) restituisce l'identificatore nel formato ARN.  
Tipo: FString  
Obbligatorio: sì

**MatchmakingConfigurationArn**  
Identificatore univoco, sotto forma di un ARN, che il matchmaker utilizza per questa richiesta. Per trovare il matchmaker utilizzato per creare la sessione di gioco originale, esaminare l'oggetto sessione di gioco nella proprietà dei dati del matchmaker. Scopri di più sui dati dei matchmaker in [Lavora con i dati dei matchmaker](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-server.html#match-server-data).   
Tipo: FString  
Obbligatorio: sì

**Players**  
Un set 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. Consulta la *Guida di riferimento Amazon GameLift Servers API* per una descrizione del formato degli oggetti Player. Per trovare gli attributi dei giocatori e gli incarichi della squadra, cerca nell'oggetto della sessione di gioco, nella proprietà dei dati del matchmaker. IDs Se la latenza viene utilizzata dal matchmaker, raccogliere la latenza aggiornata per la regione attuale e includerla nei dati di ciascun giocatore.   
[Digita: < > TArray FPlayer](https://docs.aws.amazon.com/gamelift/latest/apireference/API_Player.html)  
Obbligatorio: sì

**TicketId**  
Identificatore univoco per un abbinamento o un ticket di richiesta di backfill degli abbinamenti. Se non viene fornito alcun valore qui, ne Amazon GameLift Servers genererà uno sotto forma di UUID. Utilizzare questo identificatore per monitorare lo stato del ticket di backfill degli abbinamenti o annullare la richiesta, se necessario.   
Tipo: FString  
Obbligatorio: no

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

Questo tipo di dati viene utilizzato per annullare una richiesta di backfill di abbinamento. Le informazioni vengono comunicate al servizio Amazon GameLift Servers in una chiamata [StopMatchBackfill()](integration-server-sdk-unreal-ref-actions.md#integration-server-sdk-unreal-ref-stopmatchbackfill).

### Indice
<a name="integration-server-sdk-unreal-ref-dataypes-stopbackfill-contents"></a>

**GameSessionArn**  
Identificatore univoco della sessione di gioco associato alla richiesta in fase di annullamento.   
Tipo: FString  
Obbligatorio: sì

**MatchmakingConfigurationArn**  
Identificatore univoco del matchmaker a cui è stata inviata questa richiesta.   
Tipo: FString  
Obbligatorio: sì

**TicketId**  
Identificatore univoco del ticket di richiesta di backfill da annullare.  
Tipo: FString  
Obbligatorio: sì

[Server SDK (Unreal) perAmazon GameLift Servers: tipi di dati](integration-server-sdk-unreal-ref-datatypes.md)

**Topics**
+ [Server SDK (Unreal) perAmazon GameLift Servers: tipi di dati](integration-server-sdk-unreal-ref-datatypes.md)
+ [AcceptPlayerSession()](#integration-server-sdk-unreal-ref-acceptplayersession)
+ [ActivateGameSession()](#integration-server-sdk-unreal-ref-activategamesession)
+ [DescribePlayerSessions()](#integration-server-sdk-unreal-ref-describeplayersessions)
+ [GetGameSessionId()](#integration-server-sdk-unreal-ref-getgamesessionid)
+ [GetInstanceCertificate()](#integration-server-sdk-unreal-ref-getinstancecertificate)
+ [GetSdkVersion()](#integration-server-sdk-unreal-ref-getsdk)
+ [InitSDK()](#integration-server-sdk-unreal-ref-initsdk)
+ [ProcessEnding()](#integration-server-sdk-unreal-ref-processending)
+ [ProcessReady()](#integration-server-sdk-unreal-ref-processready)
+ [RemovePlayerSession()](#integration-server-sdk-unreal-ref-removeplayersession)
+ [StartMatchBackfill()](#integration-server-sdk-unreal-ref-startmatchbackfill)
+ [StopMatchBackfill()](#integration-server-sdk-unreal-ref-stopmatchbackfill)
+ [TerminateGameSession()](#integration-server-sdk-unreal-ref-terminategamesession)
+ [UpdatePlayerSessionCreationPolicy()](#integration-server-sdk-unreal-ref-updateplayersessioncreationpolicy)

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

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

### Sintassi
<a name="integration-server-sdk-unreal-ref-acceptplayersession-syntax"></a>

```
FGameLiftGenericOutcome AcceptPlayerSession(const FString& playerSessionId)
```

### Parameters
<a name="integration-server-sdk-unreal-ref-acceptplayersession-parameter"></a>

**playerSessionId**  
ID univoco rilasciato dal Amazon GameLift Servers servizio in risposta a una chiamata all'azione dell'API AWS SDKAmazon GameLift Servers. [CreatePlayerSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreatePlayerSession.html) Il client di gioco fa riferimento a questo ID durante la connessione al processo del server.  
Tipo: FString  
Obbligatorio: sì

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

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

## ActivateGameSession()
<a name="integration-server-sdk-unreal-ref-activategamesession"></a>

Notifica al servizio Amazon GameLift Servers che il processo del server ha attivato una sessione di gioco ed è pronto per ricevere le connessioni dei giocatori. Questa operazione deve essere chiamata come parte della funzione di callback `onStartGameSession()`, dopo il completamento dell'inizializzazione di tutte le sessioni di gioco.

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

```
FGameLiftGenericOutcome ActivateGameSession()
```

### Parameters
<a name="integration-server-sdk-unreal-ref-activategamesession-parameter"></a>

Questa operazione non prevede parametri.

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

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.

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

Recupera i dati della sessione giocatore, tra cui le impostazioni, i metadati della sessione e i dati dei giocatori. 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-sdk-unreal-ref-describeplayersessions-syntax"></a>

```
FGameLiftDescribePlayerSessionsOutcome DescribePlayerSessions(const FGameLiftDescribePlayerSessionsRequest &describePlayerSessionsRequest)
```

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

**describePlayerSessionsRichiesta**  
Un oggetto [FDescribePlayerSessionsRequest](integration-server-sdk-unreal-ref-datatypes.md#integration-server-sdk-unreal-ref-dataypes-playersessions) che descrive le sessioni giocatore da recuperare.  
Obbligatorio: sì

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

Se l'esito è positivo, restituisce un oggetto [FDescribePlayerSessionsRequest](integration-server-sdk-unreal-ref-datatypes.md#integration-server-sdk-unreal-ref-dataypes-playersessions) contenente un set di oggetti di sessione giocatore corrispondente ai parametri della richiesta. Gli oggetti della sessione Player hanno una struttura identica al tipo di [PlayerSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_PlayerSession.html)dati dell'Amazon GameLift ServersAPI AWS SDK.

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

Recupera l'ID della sessione di gioco attualmente ospitata dal processo del server, se il processo del server è attivo. 

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

```
FGameLiftStringOutcome GetGameSessionId()
```

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

Questa operazione non prevede parametri.

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

Se l'esito è positivo, l'ID della sessione di gioco verrà restituito come oggetto `FGameLiftStringOutcome`. Se l'esito è negativo, verrà restituito un messaggio di errore.

## GetInstanceCertificate()
<a name="integration-server-sdk-unreal-ref-getinstancecertificate"></a>

Recupera la posizione del file di un certificato TLS con codifica pem associato alla flotta e alle relative istanze. AWS Certificate Manager genera questo certificato quando crei un nuovo parco veicoli con la configurazione del certificato impostata su GENERATED. Utilizza questo certificato per stabilire una connessione sicura con un client di gioco e per crittografare la comunicazione client/server. 

### Sintassi
<a name="integration-server-sdk-unreal-ref-getinstancecertificate-syntax"></a>

```
FGameLiftGetInstanceCertificateOutcome GetInstanceCertificate()
```

### Parameters
<a name="integration-server-sdk-unreal-ref-getinstancecertificate-parameter"></a>

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk-unreal-ref-getinstancecertificate-return"></a>

In caso di successo, restituisce un `GetInstanceCertificateOutcome` oggetto contenente la posizione del file di certificato TLS e della catena di certificati della flotta, che sono archiviati nell'istanza. Nell'istanza viene inoltre archiviato un file di certificato radice, estratto dalla catena di certificati. Se l'esito è negativo, verrà restituito un messaggio di errore. 

Per ulteriori informazioni sul certificato e sui dati della catena di certificati, consulta [GetCertificate Response Elements](https://docs.aws.amazon.com/acm/latest/APIReference/API_GetCertificate.html#API_GetCertificate_ResponseElements) nell' AWS Certificate Manager API Reference.

## GetSdkVersion()
<a name="integration-server-sdk-unreal-ref-getsdk"></a>

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

### Sintassi
<a name="integration-server-sdk-unreal-ref-getsdk-syntax"></a>

```
FGameLiftStringOutcome GetSdkVersion();
```

### Parameters
<a name="integration-server-sdk-unreal-ref-getsdk-parameter"></a>

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk-unreal-ref-getsdk-return"></a>

Se l'esito è positivo, restituisce la versione corrente dell'SDK come oggetto `FGameLiftStringOutcome`. La stringa restituita include solo il numero di versione (ad esempio «3.1.5"). Se l'esito è negativo, verrà restituito un messaggio di errore.

### Esempio
<a name="integration-server-sdk-unreal-ref-getsdk-example"></a>

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

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

Inizializza l'SDK Amazon GameLift Servers. Questo metodo deve essere chiamato all'avvio, prima che avvenga qualsiasi altra inizializzazione correlata a Amazon GameLift Servers.

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

```
FGameLiftGenericOutcome InitSDK()
```

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

Questa operazione non prevede parametri.

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

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.

## ProcessEnding()
<a name="integration-server-sdk-unreal-ref-processending"></a>

Avvisa il servizio Amazon GameLift Servers che il processo del server è in fase di arresto. Questo metodo deve essere richiamato dopo tutte le altre attività di pulizia, tra cui l'arresto di tutte le sessioni di gioco attive. Questo metodo deve uscire con il codice 0; un codice di uscita diverso da zero genera un messaggio di evento che indica che il processo non è terminato correttamente.

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

```
FGameLiftGenericOutcome ProcessEnding()
```

### Parameters
<a name="integration-server-sdk-unreal-ref-processending-parameter"></a>

Questa operazione non prevede parametri.

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

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.

## ProcessReady()
<a name="integration-server-sdk-unreal-ref-processready"></a>

Notifica al servizio Amazon GameLift Servers che il processo del server è pronto per l'hosting delle sessioni di gioco. Chiama questo metodo dopo aver richiamato [InitSDK()](#integration-server-sdk-unreal-ref-initsdk) e completato con successo le attività di configurazione necessarie prima che il processo del server possa ospitare una sessione di gioco. Questo metodo deve essere chiamato solo una volta per processo.

### Sintassi
<a name="integration-server-sdk-unreal-ref-processready-syntax"></a>

```
FGameLiftGenericOutcome ProcessReady(FProcessParameters &processParameters)
```

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

**FProcessParametri**  
Un oggetto [FProcessParametri](integration-server-sdk-unreal-ref-datatypes.md#integration-server-sdk-unreal-ref-dataypes-process) che comunica le informazioni seguenti sul processo del server:  
+ Nomi di metodi di callback, implementati nel codice del server di gioco, che il servizio Amazon GameLift Servers richiama 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-sdk-unreal-ref-processready-return"></a>

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.

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

Consulta il codice di esempio nella sezione relativa all'[utilizzo del plug-in Unreal Engine](integration-engines-setup-unreal.md#integration-engines-setup-unreal-code).

## RemovePlayerSession()
<a name="integration-server-sdk-unreal-ref-removeplayersession"></a>

Notifica al servizio Amazon GameLift Servers che un giocatore con l'ID della sessione giocatore specificato si è disconnesso dal processo del server. In risposta, Amazon GameLift Servers modifica lo slot giocatore su disponibile, consentendone l'assegnazione a un nuovo giocatore. 

### Sintassi
<a name="integration-server-sdk-unreal-ref-removeplayersession-syntax"></a>

```
FGameLiftGenericOutcome RemovePlayerSession(const FString& playerSessionId)
```

### Parameters
<a name="integration-server-sdk-unreal-ref-removeplayersession-parameter"></a>

**playerSessionId**  
ID univoco rilasciato dal Amazon GameLift Servers servizio in risposta a una chiamata all'azione [CreatePlayerSession](https://docs.aws.amazon.com/gamelift/latest/apireference/API_CreatePlayerSession.html)dell'Amazon GameLift ServersAPI AWS SDK. Il client di gioco fa riferimento a questo ID durante la connessione al processo del server.  
Tipo: FString  
Obbligatorio: sì

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

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

## StartMatchBackfill()
<a name="integration-server-sdk-unreal-ref-startmatchbackfill"></a>

Invia una richiesta per trovare nuovi giocatori per gli slot aperti in una sessione di gioco creata con FlexMatch. Vedi anche l'azione AWS SDK [StartMatchBackfill().](https://docs.aws.amazon.com/gamelift/latest/apireference/API_StartMatchBackfill.html) Con questa operazione, è possibile avviare le richieste di backfill degli abbinamenti da un processo del server di gioco che ospita la sessione di gioco. Scopri di più sulla funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html).

Questa operazione è asincrona. Se i nuovi giocatori sono stati abbinati in modo corretto, il servizio Amazon GameLift Servers invia i dati del matchmaker aggiornati tramite 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-unreal-ref-stopmatchbackfill) per annullare la richiesta originale.

### Sintassi
<a name="integration-server-sdk-unreal-ref-startmatchbackfill-syntax"></a>

```
FGameLiftStringOutcome StartMatchBackfill (FStartMatchBackfillRequest &startBackfillRequest);
```

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

**FStartMatchBackfillRequest**  
Un oggetto [FStartMatchBackfillRequest](integration-server-sdk-unreal-ref-datatypes.md#integration-server-sdk-unreal-ref-dataypes-startmatchbackfillrequest) che comunica le informazioni seguenti:  
+ ID del ticket da assegnare alla richiesta di backfill. Questa informazione è facoltativa; se l'ID non viene fornito, Amazon GameLift Servers ne creerà automaticamente uno.
+ Matchmaker a cui inviare la richiesta. L'ARN di configurazione completo è obbligatorio. Questo valore può essere acquisito dai dati del matchmaker della sessione di gioco.
+ ID della sessione di gioco che è in fase di backfilling.
+ Dati di abbinamento disponibili per i giocatori correnti della sessione di gioco.
Obbligatorio: sì

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

Se completato, restituisce il ticket di backfill degli abbinamenti come oggetto `FGameLiftStringOutcome`. Se l'esito è negativo, verrà restituito un messaggio di errore. [Lo stato del ticket può essere monitorato utilizzando l'azione AWS DescribeMatchmaking SDK ().](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribeMatchmaking.html)

## StopMatchBackfill()
<a name="integration-server-sdk-unreal-ref-stopmatchbackfill"></a>

Annulla una richiesta di backfill degli abbinamenti attiva creata con [StartMatchBackfill()](#integration-server-sdk-unreal-ref-startmatchbackfill). [Vedi anche l'azione AWS StopMatchmaking SDK ().](https://docs.aws.amazon.com/gamelift/latest/apireference/API_StopMatchmaking.html) Scopri di più sulla funzione di [FlexMatchriempimento](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html).

### Sintassi
<a name="integration-server-sdk-unreal-ref-stopmatchbackfill-syntax"></a>

```
FGameLiftGenericOutcome StopMatchBackfill (FStopMatchBackfillRequest &stopBackfillRequest);
```

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

**StopMatchBackfillRequest**  
Un oggetto [FStopMatchBackfillRequest](integration-server-sdk-unreal-ref-datatypes.md#integration-server-sdk-unreal-ref-dataypes-stopmatchbackfillrequest) che identifica il ticket di abbinamento da annullare:   
+ ID del ticket assegnato alla richiesta di backfill in fase di annullamento
+ matchmaker a cui è stata inviata la richiesta di backfill
+ sessione di gioco associata alla richiesta di backfill
Obbligatorio: sì

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

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

## TerminateGameSession()
<a name="integration-server-sdk-unreal-ref-terminategamesession"></a>

**Questo metodo è obsoleto con la versione 4.0.1. Invece, il processo del server dovrebbe richiamare [ProcessEnding()](#integration-server-sdk-unreal-ref-processending) dopo la fine di una sessione di gioco.**

Notifica al Amazon GameLift Servers servizio che il processo del server ha terminato la sessione di gioco corrente. Questa azione viene richiamata quando il processo del server rimane attivo e pronto per ospitare una nuova sessione di gioco. Dovrebbe essere chiamata solo dopo il completamento della procedura di interruzione della sessione di gioco, perché segnala Amazon GameLift Servers che il processo del server è immediatamente disponibile per ospitare una nuova sessione di gioco. 

Questa azione non viene eseguita se il processo del server verrà chiuso dopo l'interruzione della sessione di gioco. Invece, chiama [ProcessEnding()](#integration-server-sdk-unreal-ref-processending) per segnalare che sia la sessione di gioco che il processo sul server stanno terminando. 

### Sintassi
<a name="integration-server-sdk-unreal-ref-terminategamesession-syntax"></a>

```
FGameLiftGenericOutcome TerminateGameSession()
```

### Parameters
<a name="integration-server-sdk-unreal-ref-terminategamesession-parameter"></a>

Questa operazione non prevede parametri.

### Valore restituito
<a name="integration-server-sdk-unreal-ref-terminategamesession-return"></a>

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

## UpdatePlayerSessionCreationPolicy()
<a name="integration-server-sdk-unreal-ref-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. (Vedi anche l'operazione [https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateGameSession.html](https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateGameSession.html) nella *documentazione di riferimento per l'API del servizio Amazon GameLift Servers*.)

### Sintassi
<a name="integration-server-sdk-unreal-ref-updateplayersessioncreationpolicy-syntax"></a>

```
FGameLiftGenericOutcome UpdatePlayerSessionCreationPolicy(EPlayerSessionCreationPolicy policy)
```

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

**Policy**  
Valore che indica se la sessione di gioco accetta nuovi giocatori.   
Tipo: enum. `EPlayerSessionCreationPolicy`. I valori validi includono:  
+ **ACCEPT\$1ALL**: accetta tutte le nuove sessioni giocatore.
+ **DENY\$1ALL**: rifiuta tutte le nuove sessioni giocatore.
Obbligatorio: sì

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

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.