

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

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

Verwenden Sie die Amazon GameLift Servers Unreal Server SDK 5.x-Referenz, um Ihr Multiplayer-Spiel für die Verwendung mit vorzubereiten. Amazon GameLift Servers Einzelheiten zum Integrationsprozess finden Sie unter. [Füge Amazon GameLift Servers es deinem Spieleserver mit dem Server-SDK hinzu](gamelift-sdk-server-api.md) Wenn du das Amazon GameLift Servers Plugin für Unreal verwendest, siehe auch[Amazon GameLift ServersPlugin für Unreal Engine](unreal-plugin.md).

**Anmerkung**  
In diesem Thema wird die Amazon GameLift Servers C\$1\$1-API beschrieben, die Sie beim Entwickeln für die Unreal Engine verwenden können. Insbesondere bezieht sich diese Dokumentation auf Code, den Sie mit der `-DBUILD_FOR_UNREAL=1` Option kompilieren. 

# C\$1\$1 (Unreal) Server-SDK 5.x für Amazon GameLift Servers -- Datentypen
<a name="integration-server-sdk5-unreal-datatypes"></a>

Verwenden Sie die Amazon GameLift Servers Unreal Server SDK 5.x-Referenz, um Ihr Multiplayer-Spiel für die Verwendung mit vorzubereiten. Amazon GameLift Servers Einzelheiten zum Integrationsprozess finden Sie unter. [Füge Amazon GameLift Servers es deinem Spieleserver mit dem Server-SDK hinzu](gamelift-sdk-server-api.md) Wenn du das Amazon GameLift Servers Plugin für Unreal verwendest, siehe auch[Amazon GameLift ServersPlugin für Unreal Engine](unreal-plugin.md).

**Anmerkung**  
In diesem Thema wird die Amazon GameLift Servers C\$1\$1-API beschrieben, die Sie beim Erstellen für die Unreal Engine verwenden können. Insbesondere bezieht sich diese Dokumentation auf Code, den Sie mit der `-DBUILD_FOR_UNREAL=1` Option kompilieren. 

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

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

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

Dieser Datentyp enthält den Satz von Parametern, an den Amazon GameLift Servers in a gesendet wird[ProcessReady()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-processready).


|  |  | 
| --- |--- |
|  **Eigenschaften**  | Beschreibung | 
| LogParameters | Ein Objekt mit Verzeichnispfaden zu Dateien, die während einer Spielsitzung generiert werden. Amazon GameLift Serverskopiert und speichert die Dateien für den future Zugriff.**Typ:** `TArray<FString>`**Required**: No | 
| OnHealthCheck | Die Callback-Funktion, die Amazon GameLift Servers aufgerufen wird, um einen Statusbericht vom Serverprozess anzufordern. Amazon GameLift Serversruft diese Funktion alle 60 Sekunden auf und wartet 60 Sekunden auf eine Antwort. Der Serverprozess kehrt zurück, TRUE wenn er fehlerfrei ist, FALSE wenn nicht. Wenn keine Antwort zurückgegeben wird, wird der Amazon GameLift Servers Serverprozess als fehlerhaft aufgezeichnet. Diese Eigenschaft ist eine Delegatenfunktion, definiert als; `DECLARE_DELEGATE_RetVal(bool, FOnHealthCheck)`   **Typ:** `FOnHealthCheck`**Required**: No | 
| OnProcessTerminate | Die Callback-Funktion, die Amazon GameLift Servers aufgerufen wird, um das Herunterfahren des Serverprozesses zu erzwingen. Amazon GameLift ServersWartet nach dem Aufrufen dieser Funktion 5 Minuten, bis der Serverprozess heruntergefahren ist, und antwortet mit einem [ProcessEnding()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-processending) Aufruf, bevor er den Serverprozess herunterfährt.**Typ:** `FSimpleDelegate`**Erforderlich**: Ja | 
| OnStartGameSession | Die Callback-Funktion, die Amazon GameLift Servers aufgerufen wird, um eine neue Spielsitzung zu aktivieren. Amazon GameLift Serversruft diese Funktion als Antwort auf eine Client-Anfrage auf. [CreateGameSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateGameSession.html) Die Callback-Funktion übergibt ein [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession) Objekt. Diese Eigenschaft ist eine Delegatenfunktion, definiert als `DECLARE_DELEGATE_OneParam(FOnStartGameSession, Aws::GameLift::Server::Model::GameSession);`  **Typ:** `FOnStartGameSession`**Erforderlich**: Ja | 
| OnUpdateGameSession | Die Callback-Funktion, die Amazon GameLift Servers aufgerufen wird, um ein aktualisiertes Spielsitzungsobjekt an den Serverprozess zu übergeben. Amazon GameLift Serversruft diese Funktion auf, wenn eine Match-Backfill-Anfrage bearbeitet wurde, um aktualisierte Matchmaker-Daten bereitzustellen. Sie übergibt ein [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession) Objekt, ein Status-Update (updateReason) und die Match-Backfill-Ticket-ID. Diese Eigenschaft ist eine Delegiertenfunktion, definiert als `DECLARE_DELEGATE_OneParam(FOnUpdateGameSession, Aws::GameLift::Server::Model::UpdateGameSession);` **Typ:** `FOnUpdateGameSession`**Required**: No | 
| Port | Die Portnummer, auf der der Serverprozess auf neue Player-Verbindungen wartet. Der Wert muss innerhalb des Port-Bereich liegen, der für eine Flotte definiert wurde, die diesen Spiel-Server-Build verwendet. Diese Portnummer ist in Spielsitzungs- und Spielersitzungsobjekten enthalten, die die Spielsitzungen bei der Verbindung mit einem Serverprozess verwenden.**Typ:** `int`**Erforderlich**: Ja | 

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

Dieser Datentyp aktualisiert ein Spielsitzungsobjekt, das den Grund für die Aktualisierung der Spielsitzung und die zugehörige Backfill-Ticket-ID enthält, falls Backfill zum Füllen von Spielersitzungen in der Spielsitzung verwendet wird.


| Eigenschaften | **Beschreibung** | 
| --- | --- | 
| GameSession | Ein [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession)-Objekt. Das GameSession Objekt enthält Eigenschaften, die eine Spielsitzung beschreiben. **Typ:** `Aws::GameLift::Server::GameSession`**Required**: No | 
| UpdateReason | Der Grund, warum die Spielsitzung aktualisiert wird. **Typ:** `enum class UpdateReason`  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-datatypes.html) **Required**: No   | 
| BackfillTicketId | Die ID des Backfill-Tickets, das versucht, die Spielsitzung zu aktualisieren.**Typ:** `char[]`**Required**: No | 

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

Dieser Datentyp enthält Details einer Spielsitzung. 


| Eigenschaften | **Beschreibung** | 
| --- | --- | 
| GameSessionId |  Eine eindeutige Kennung für die Spielsitzung. Eine Spielsitzung ARN hat das folgende Format:`arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>`. **Typ:** `char[]` **Required**: No  | 
| Name |  Eine beschreibende Bezeichnung der Spielsitzung.  **Typ:** `char[]` **Required**: No  | 
| FleetId |  Eine eindeutige Kennung für die Flotte, auf der die Spielsitzung läuft. **Typ:** `char[]` **Required**: No  | 
| MaximumPlayerSessionCount |  Die maximale Anzahl von Spielerverbindungen zur Spielsitzung. **Typ:** `int` **Required**: No  | 
| Port |  Die Portnummer für die Spielsitzung. Um eine Verbindung zu einem Amazon GameLift Servers Spieleserver herzustellen, benötigt eine App sowohl die IP-Adresse als auch die Portnummer. **Typ:** `int` **Required**: No  | 
| IpAddress |  Die IP-Adresse der Spielsitzung. Um eine Verbindung zu einem Amazon GameLift Servers Spieleserver herzustellen, benötigt eine App sowohl die IP-Adresse als auch die Portnummer. **Typ:** `char[]` **Required**: No  | 
| GameSessionData |  Eine Reihe von benutzerdefinierten Spielsitzungseigenschaften, die als einzelner Zeichenfolgenwert formatiert sind.  **Typ:** `char[]` **Required**: No  | 
| MatchmakerData |  Informationen über den Matchmaking-Prozess, der zur Erstellung der Spielsitzung verwendet wurde, in JSON-Syntax, formatiert als Zeichenfolge. Zusätzlich zur verwendeten Matchmaking-Konfiguration enthält es Daten zu allen Spielern, die dem Spiel zugewiesen wurden, einschließlich Spielerattributen und Teamzuweisungen. **Typ:** `char[]` **Required**: No  | 
| GameProperties |  Eine Reihe von benutzerdefinierten Eigenschaften für eine Spielsitzung, formatiert als Schlüssel/Wert-Paare. Diese Eigenschaften werden zusammen mit der Aufforderung, eine neue Spielsitzung zu starten, übergeben. **Typ:** `GameProperty[]` **Required**: No  | 
| DnsName |  Die DNS-ID, die der Instanz zugewiesen ist, auf der die Spielsitzung ausgeführt wird. Werte haben das folgende Format: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-datatypes.html) Wenn du eine Verbindung zu einer Spielsitzung herstellst, die auf einer TLS-fähigen Flotte läuft, musst du den DNS-Namen verwenden, nicht die IP-Adresse. **Typ:** `char[]` **Required**: No  | 

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

Informationen, die zur Aufrechterhaltung der Verbindung zwischen einem Amazon GameLift Servers Anywhere-Server und dem Amazon GameLift Servers Dienst verwendet werden. Diese Informationen werden verwendet, wenn neue Serverprozesse mit gestartet [InitSDK()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-initsdk) werden. Verwenden Sie für Server, die auf Amazon GameLift Servers verwalteten EC2-Instances gehostet werden, ein leeres Objekt.


| Eigenschaften | **Beschreibung** | 
| --- | --- | 
| webSocketUrl |  Das `GameLiftServerSdkEndpoint` Amazon GameLift Servers kehrt zurück, wenn Sie [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)für eine Amazon GameLift Servers Anywhere-Rechenressource suchen. **Typ:** `char[]` **Erforderlich**: Ja   | 
| Prozess-ID |  Eine eindeutige Kennung, die für den Serverprozess registriert ist, der dein Spiel hostet. **Typ:** `char[]` **Erforderlich**: Ja  | 
| hostId | Das HostID ist die, die bei der Registrierung Ihres Computers ComputeName verwendet wurde. Weitere Informationen finden Sie unter [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Typ:** `char[]`**Erforderlich**: Ja | 
| FleetID | Die eindeutige Kennung der Flotte, für die der Computer registriert ist. Weitere Informationen finden Sie unter [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Typ:** `char[]`**Erforderlich**: Ja | 
| AuthToken | Das dadurch generierte Authentifizierungstoken authentifiziert Ihren Server gegenüber. Amazon GameLift Servers Amazon GameLift Servers Weitere Informationen finden Sie unter [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Typ:** `char[]`**Erforderlich**: Ja | 

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

Informationen, die zur Erstellung einer Matchmaking-Backfill-Anfrage verwendet wurden. Der Spieleserver übermittelt diese Informationen Amazon GameLift Servers in einem Anruf an. [StartMatchBackfill()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-startmatchbackfill)


| Eigenschaften | **Beschreibung** | 
| --- | --- | 
| GameSessionArn |  Eine eindeutige Kennung für die Spielsitzung. Die API-Operation `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-actions.html#integration-server-sdk5-unreal-getgamesessionid)` gibt den Bezeichner im ARN-Format zurück. **Typ:** `char[]` **Erforderlich**: Ja  | 
| MatchmakingConfigurationArn |  Eine eindeutige Kennung in Form eines ARN, die der Matchmaker für diese Anfrage verwenden kann. Der Matchmaker-ARN für die ursprüngliche Spielsitzung befindet sich im Spielsitzungsobjekt in der Matchmaker-Dateneigenschaft. Weitere Informationen zu Matchmaker-Daten finden Sie unter [Arbeiten mit](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html) Matchmaker-Daten. **Typ:** `char[]` **Erforderlich**: Ja  | 
| Players |  Ein Datensatz, der alle Spieler repräsentiert, die an der Spielsitzung teilnehmen. Der Matchmaker verwendet diese Informationen, um nach neuen Spielern zu suchen, die zu den aktuellen Spielern passen. **Typ:** `TArray<FPlayer>` **Erforderlich**: Ja  | 
| TicketId |  Eine eindeutige Kennung für ein Matchmaking- oder Match-Backfill-Anfrageticket. Amazon GameLift ServersGeneriert einen, wenn Sie keinen Wert angeben. Verwenden Sie diesen Bezeichner, um den Status des Backfill-Tickets zu verfolgen oder die Anfrage bei Bedarf abzubrechen.  **Typ:** `char[]` **Required**: No  | 

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

Dieser Datentyp steht für einen Spieler beim Matchmaking. Wenn ein Spieler eine Matchmaking-Anfrage startet, verfügt er über eine Spieler-ID, Attribute und möglicherweise Latenzdaten. Amazon GameLift Serversfügt Teaminformationen hinzu, nachdem ein Spiel gespielt wurde.


| Eigenschaften | **Beschreibung** | 
| --- | --- | 
| LatencyInMS |  Eine Reihe von Werten, ausgedrückt in Millisekunden, die die Latenz angeben, die ein Spieler erlebt, wenn er mit einem Standort verbunden ist.  Wenn diese Eigenschaft verwendet wird, wird der Player nur für die aufgelisteten Standorte abgeglichen. Wenn ein Matchmaker eine Regel hat, die die Latenz der Spieler auswertet, müssen die Spieler die zu vergleichende Latenz melden. **Typ:** `TMap>FString, int32<` **Required**: No  | 
| PlayerAttributes |  Eine Sammlung von Schlüssel/Wert-Paaren, die Spielerinformationen zur Verwendung bei der Spielerzuweisung enthalten. Die Schlüssel der Spielerattribute müssen mit den in einem Matchmaking-Regelsatz PlayerAttributes verwendeten übereinstimmen. Weitere Informationen zu Spielerattributen finden Sie unter [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Typ:** `TMap>FString, FAttributeValue<` **Required**: No  | 
| PlayerId |  Eine eindeutige Kennung für einen Spieler. **Typ:** `std::string` **Required**: No  | 
| Team |  Der Name der Mannschaft, der der Spieler in einem Spiel zugewiesen wird. Sie definieren den Teamnamen im Matchmaking-Regelsatz. **Typ:** `FString` **Required**: No  | 

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

Ein Objekt, das angibt, welche Spielersitzungen abgerufen werden sollen. Der Serverprozess stellt diese Informationen mit einem [DescribePlayerSessions()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-describeplayersessions) Aufruf von bereitAmazon GameLift Servers.


| Eigenschaften | **Beschreibung** | 
| --- | --- | 
| GameSessionId |  Eine eindeutige Kennung für die Spielsitzung. Verwenden Sie diesen Parameter, um alle Spielersitzungen für die angegebene Spielsitzung anzufragen.  Das Format der Spielsitzungs-ID ist`FString`. Das `GameSessionID` ist eine benutzerdefinierte ID-Zeichenfolge oder eine **Typ:** `std::string` **Required**: No  | 
| PlayerSessionId |  Die eindeutige Kennung für eine Spielersitzung. Verwenden Sie diesen Parameter, um eine einzelne spezifische Spielersitzung anzufordern. **Typ:** `FString` **Required**: No  | 
| PlayerId |  Die eindeutige Kennung für einen Spieler. Verwenden Sie diesen Parameter, um alle Spielersitzungen für einen bestimmten Spieler anzufordern. Siehe [Spieler generieren IDs](player-sessions-player-identifiers.md). **Typ:** `FString` **Required**: No  | 
| PlayerSessionStatusFilter |  Der Sitzungsstatus des Spielers, nach dem die Ergebnisse gefiltert werden sollen. Zu den möglichen Sitzungsstatus eines Spielers gehören: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-datatypes.html) **Typ:** `FString` **Required**: No  | 
| NextToken |  Das Token, das den Beginn der nächsten Ergebnisseite anzeigt. Um den Anfang der Ergebnismenge anzugeben, geben Sie keinen Wert an. Wenn Sie eine Spielersitzungs-ID angeben, wird dieser Parameter ignoriert. **Typ:** `FString` **Required**: No  | 
| Limit |  Die maximale Anzahl der auszugebenden Ergebnisse. Wenn Sie eine Spielersitzungs-ID angeben, wird dieser Parameter ignoriert. **Typ:** `int` **Required**: No  | 

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

Informationen, die verwendet werden, um eine Matchmaking-Backfill-Anfrage zu stornieren. Der Spieleserver übermittelt diese Informationen in einem Anruf an den Amazon GameLift Servers Service. [StopMatchBackfill()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-stopmatchbackfill)


| Eigenschaften | **Beschreibung** | 
| --- | --- | 
| GameSessionArn |  Eine eindeutige Spielsitzungs-ID der Anfrage, die storniert wird. **Typ:** `FString` **Erforderlich**: Ja  | 
| MatchmakingConfigurationArn |  Eine eindeutige Kennung des Matchmakers, an den diese Anfrage gesendet wurde. **Typ:** `FString` **Erforderlich**: Ja  | 
| TicketId |  Eine eindeutige Kennung des Tickets für die Backfill-Anfrage, das storniert werden soll. **Typ:** `FString` **Erforderlich**: Ja  | 

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

Verwenden Sie diese Werte in [FPlayer](#integration-server-sdk5-unreal-dataypes-player) Attribut-Schlüssel-Wert-Paaren. Mit diesem Objekt können Sie einen Attributwert mit einem der gültigen Datentypen angeben: Zeichenfolge, Zahl, Zeichenkettenarray oder Datenmap. Jedes `AttributeValue` Objekt kann nur eine der verfügbaren Eigenschaften verwenden.


| Eigenschaften | Description | 
| --- | --- | 
| AttrType |  Gibt den Typ des Attributwerts an. **Typ:** Ein `FAttributeType` [Aufzählungswert](#integration-server-sdk5-unreal-dataypes-enums).  **Required**: No  | 
| S |  Stellt einen Zeichenkettenattributwert dar. **Typ:** `FString` **Required**: No  | 
| N |  Stellt einen numerischen Attributwert dar. **Typ:** `double` **Required**: No  | 
| SL |  Stellt ein Array von Zeichenkettenattributwerten dar. **Typ:** `TArray<FString>` **Required**: No  | 
| SDM |  Stellt ein Wörterbuch mit Zeichenkettenschlüsseln und Doppelwerten dar. **Typ:** `TMap<FString, double>` **Required**: No  | 

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

Dieser Datentyp stellt Rollenanmeldedaten bereit, die den eingeschränkten Zugriff auf Ihre AWS Ressourcen auf den Spieleserver erweitern. Weitere Informationen finden Sie unter [Richten Sie eine IAM-Servicerolle ein für Amazon GameLift Servers](setting-up-role.md).


| Eigenschaften | **Beschreibung** | 
| --- | --- | 
| RoleArn | Der Amazon-Ressourcenname (ARN) der Servicerolle, die den eingeschränkten Zugriff auf Ihre AWS Ressourcen erweitert.**Typ:** `FString`**Required**: No | 
| RoleSessionName | Der Name der Sitzung, die die Verwendung der Rollenanmeldedaten beschreibt.**Typ:** `FString`**Required**: No | 

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

Dieser Datentyp resultiert aus einer Aktion und erzeugt ein Objekt mit den folgenden Eigenschaften:


| Eigenschaften | Description | 
| --- | --- | 
| Ergebnis |  Das Ergebnis der Aktion. **Typ:** `long` **Required**: No  | 
| ResultWithOwnership |   Das Ergebnis der Aktion, in einen R-Wert umgewandelt, sodass der aufrufende Code den Besitz des Objekts übernehmen kann.  **Typ:** `long&&` **Required**: No  | 
| Herzlichen Glückwunsch |  Ob die Aktion erfolgreich war oder nicht. **Typ:** `bool` **Erforderlich**: Ja  | 
| Fehler |  Der Fehler, der aufgetreten ist, wenn die Aktion nicht erfolgreich war. **Typ:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Required**: No  | 

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

Dieser Datentyp resultiert aus einer Aktion und erzeugt ein Objekt mit den folgenden Eigenschaften:


| Eigenschaften | Description | 
| --- | --- | 
| Ergebnis |  Das Ergebnis der Aktion. **Typ:** `FString` **Required**: No  | 
| ResultWithOwnership |   Das Ergebnis der Aktion, in einen R-Wert umgewandelt, sodass der aufrufende Code den Besitz des Objekts übernehmen kann.  **Typ:** `FString&&` **Required**: No  | 
| Herzlichen Glückwunsch |  Ob die Aktion erfolgreich war oder nicht. **Typ:** `bool` **Erforderlich**: Ja  | 
| Fehler |  Der Fehler, der aufgetreten ist, wenn die Aktion nicht erfolgreich war. **Typ:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Required**: No  | 

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

Dieser Datentyp resultiert aus einer Aktion und erzeugt ein Objekt mit den folgenden Eigenschaften:


| Eigenschaften | Description | 
| --- | --- | 
| Ergebnis |  Das Ergebnis der Aktion. **Typ:** [FGameLiftDescribePlayerSessionsResult](#integration-server-sdk5-unreal-dataypes-describeplayersessionresult) **Required**: No   | 
| ResultWithOwnership |   Das Ergebnis der Aktion, in einen R-Wert umgewandelt, sodass der aufrufende Code den Besitz des Objekts übernehmen kann.  **Typ:** `FGameLiftDescribePlayerSessionsResult&&` **Required**: No  | 
| Herzlichen Glückwunsch |  Ob die Aktion erfolgreich war oder nicht. **Typ:** `bool` **Erforderlich**: Ja  | 
| Fehler |  Der Fehler, der aufgetreten ist, wenn die Aktion nicht erfolgreich war. **Typ:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Required**: No  | 

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


| Eigenschaften | Description | 
| --- | --- | 
| PlayerSessions |   **Typ:** `TArray<FGameLiftPlayerSession>` **Erforderlich**: Ja  | 
| NextToken |  Das Token, das den Beginn der nächsten Ergebnisseite angibt. Um den Anfang der Ergebnismenge anzugeben, geben Sie keinen Wert an. Wenn Sie eine Spielersitzungs-ID angeben, wird dieser Parameter ignoriert. **Typ:** `FString` **Required**: No  | 
| Herzlichen Glückwunsch |  Ob die Aktion erfolgreich war oder nicht. **Typ:** `bool` **Erforderlich**: Ja  | 
| Fehler |  Der Fehler, der aufgetreten ist, wenn die Aktion nicht erfolgreich war. **Typ:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Required**: No  | 

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

Dieser Datentyp resultiert aus einer Aktion und erzeugt ein Objekt mit den folgenden Eigenschaften:


| Eigenschaften | Description | 
| --- | --- | 
| Herzlichen Glückwunsch |  Ob die Aktion erfolgreich war oder nicht. **Typ:** `bool` **Erforderlich**: Ja  | 
| Fehler |  Der Fehler, der aufgetreten ist, wenn die Aktion nicht erfolgreich war. **Typ:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Required**: No  | 

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


| Eigenschaften | Description | 
| --- | --- | 
| CreationTime |  **Typ:** `long` **Erforderlich**: Ja  | 
| FleetId |  **Typ:** `FString` **Erforderlich**: Ja  | 
| GameSessionId |  **Typ:** `FString` **Erforderlich**: Ja  | 
| IpAddress |  **Typ:** `FString` **Erforderlich**: Ja  | 
| PlayerData |  **Typ:** `FString` **Erforderlich**: Ja  | 
| PlayerId |  **Typ:** `FString` **Erforderlich**: Ja  | 
| PlayerSessionId |  **Typ:** `FString` **Erforderlich**: Ja  | 
| Port |  **Typ:** `int` **Erforderlich**: Ja  | 
| Status |  **Typ:** Eine `PlayerSessionStatus` [Aufzählung](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-enums). **Erforderlich**: Ja  | 
| TerminationTime |  **Typ:** `long` **Erforderlich**: Ja  | 
| DnsName |  **Typ:** `FString` **Erforderlich**: Ja  | 

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

Dieser Datentyp resultiert aus einer Aktion und erzeugt ein Objekt mit den folgenden Eigenschaften:


| Eigenschaften | Description | 
| --- | --- | 
| Ergebnis |  Das Ergebnis der Aktion. **Typ:** [FGameLiftGetComputeCertificateResult](#integration-server-sdk5-unreal-dataypes-getcomputecertificateresult) **Required**: No   | 
| ResultWithOwnership |   Das Ergebnis der Aktion, in einen R-Wert umgewandelt, sodass der aufrufende Code den Besitz des Objekts übernehmen kann.  **Typ:** `FGameLiftGetComputeCertificateResult&&` **Required**: No  | 
| Herzlichen Glückwunsch |  Ob die Aktion erfolgreich war oder nicht. **Typ:** `bool` **Erforderlich**: Ja  | 
| Fehler |  Der Fehler, der aufgetreten ist, wenn die Aktion nicht erfolgreich war. **Typ:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Required**: No  | 

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

Der Pfad zum TLS-Zertifikat auf Ihrem Computer und der Hostname des Computers.


| Eigenschaften | Description | 
| --- | --- | 
| CertificatePath |  **Typ:** `FString` **Erforderlich**: Ja  | 
| ComputeName |  **Typ:** `FString` **Erforderlich**: Ja  | 

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

Dieser Datentyp resultiert aus einer Aktion und erzeugt ein Objekt mit den folgenden Eigenschaften:


| Eigenschaften | Description | 
| --- | --- | 
| Ergebnis |  Das Ergebnis der Aktion. **Typ:** [FGetFleetRoleCredentialsResult](#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsresult) **Required**: No   | 
| ResultWithOwnership |   Das Ergebnis der Aktion, in einen R-Wert umgewandelt, sodass der aufrufende Code den Besitz des Objekts übernehmen kann.  **Typ:** `FGameLiftGetFleetRoleCredentialsResult&&` **Required**: No  | 
| Herzlichen Glückwunsch |  Ob die Aktion erfolgreich war oder nicht. **Typ:** `bool` **Erforderlich**: Ja  | 
| Fehler |  Der Fehler, der aufgetreten ist, wenn die Aktion nicht erfolgreich war. **Typ:** [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Required**: No  | 

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


| Eigenschaften | Description | 
| --- | --- | 
| AccessKeyId |  Die Zugriffsschlüssel-ID zur Authentifizierung und Bereitstellung des Zugriffs auf Ihre AWS Ressourcen. **Typ:** `FString` **Required**: No  | 
| AssumedRoleId |  Die ID des Benutzers, zu dem die Servicerolle gehört. **Typ:** `FString` **Required**: No  | 
| AssumedRoleUserArn |  Der Amazon-Ressourcenname (ARN) des Benutzers, zu dem die Servicerolle gehört. **Typ:** `FString` **Required**: No  | 
| Ablauf |  Die Zeitspanne, bis Ihre Sitzungsanmeldedaten ablaufen. **Typ:** `FDateTime` **Required**: No  | 
| SecretAccessKey |  Die geheime Zugriffsschlüssel-ID für die Authentifizierung. **Typ:** `FString` **Required**: No  | 
| SessionToken |  Ein Token zur Identifizierung der aktuellen aktiven Sitzung, die mit Ihren AWS Ressourcen interagiert. **Typ:** `FString` **Required**: No  | 
| Herzlichen Glückwunsch |  Ob die Aktion erfolgreich war oder nicht. **Typ:** `bool` **Erforderlich**: Ja  | 
| Fehler |  Der Fehler, der aufgetreten ist, wenn die Aktion nicht erfolgreich war. **Typ:** [GameLiftError](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-gamelifterror) **Required**: No  | 

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


| Eigenschaften | Description | 
| --- | --- | 
| ErrorType |  Der Fehlertyp. **Typ:** Eine `GameLiftErrorType` [Aufzählung](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-enums). **Required**: No   | 
| ErrorName |  Der Name des Fehlers.  **Typ:** `std::string`  **Required**: No   | 
| ErrorMessage |  Die Fehlermeldung.  **Typ:** `std::string`  **Required**: No   | 

## Aufzählungen
<a name="integration-server-sdk5-unreal-dataypes-enums"></a>

Die für das Server-SDK für Amazon GameLift Servers (Unreal) definierten Enums sind wie folgt definiert:

**FAttributeGeben Sie ein**  
+ **NONE**
+ **ZEICHENFOLGE**
+ **DOPPELT**
+ **STRING\$1LIST**
+ **STRING\$1DOUBLE\$1MAP**

**GameLiftErrorType**  
Zeichenkettenwert, der den Fehlertyp angibt. Gültige Werte sind:  
+ **SERVICE\$1CALL\$1FAILED — Ein Aufruf eines Dienstes ist AWS fehlgeschlagen**. 
+ **LOCAL\$1CONNECTION\$1FAILED — Die lokale Verbindung** zu ist fehlgeschlagen. Amazon GameLift Servers 
+ **NETWORK\$1NOT\$1INITIALIZED — Das Netzwerk wurde nicht initialisiert**. 
+ **GAMESESSION\$1ID\$1NOT\$1SET — Die Spielsitzungs-ID wurde** nicht festgelegt. 
+ **BAD\$1REQUEST\$1EXCEPTION** 
+ **INTERNALE\$1SERVICE\$1EXCEPTION** 
+ **ALREADY\$1INITIALIZED — Der Amazon GameLift Servers Server oder Client wurde bereits mit Initialize () initialisiert**. 
+ **FLEET\$1MISMATCH — Die Zielflotte entspricht** nicht der Flotte einer GameSession oder PlayerSession. 
+ **GAMELIFT\$1CLIENT\$1NOT\$1INITIALIZED** — Der Client wurde nicht initialisiert. Amazon GameLift Servers 
+ **GAMELIFT\$1SERVER\$1NOT\$1INITIALIZED** — Amazon GameLift Servers Der Server wurde nicht initialisiert. 
+ **GAME\$1SESSION\$1ENDED\$1FAILED — Das Server-SDK für konnte den Dienst** nicht kontaktieren, um zu melden, dass die Spielsitzung beendet wurde. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1NOT\$1READY — Die Server-Spielsitzung wurde** nicht aktiviert. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1READY\$1FAILED — Das Server-SDK für konnte** den Dienst nicht kontaktieren, um zu melden, dass die Spielsitzung bereit ist. Amazon GameLift Servers 
+ **INITIALIZATION\$1MISMATCH** — Eine Client-Methode wurde nach Server: :Initialize () aufgerufen oder umgekehrt. 
+ **NOT\$1INITIALIZED — Der Amazon GameLift Servers Server oder Client wurde nicht mit Initialize () initialisiert**. 
+ **NO\$1TARGET\$1ALIASID\$1SET — Eine Ziel-AliasID** wurde nicht gesetzt. 
+ NO\$1TARGET\$1FLEET\$1SET — **Es wurde keine Zielflotte festgelegt**. 
+ **PROCESS\$1ENDING\$1FAILED — Das Server-SDK für Amazon GameLift Servers konnte den Dienst nicht** kontaktieren, um zu melden, dass der Prozess beendet wird. 
+ **PROCESS\$1NOT\$1ACTIVE** — Der Serverprozess ist noch nicht aktiv, nicht an einen gebunden und kann ihn weder annehmen noch verarbeiten. GameSession PlayerSessions 
+ **PROCESS\$1NOT\$1READY — Der Serverprozess ist noch nicht bereit**, aktiviert zu werden. 
+ **PROCESS\$1READY\$1FAILED — Das Server-SDK für Amazon GameLift Servers konnte** den Dienst nicht kontaktieren, um zu melden, dass der Prozess bereit ist. 
+ **SDK\$1VERSION\$1DETECTION\$1FAILED — Die SDK-Versionserkennung** ist fehlgeschlagen. 
+ **STX\$1CALL\$1FAILED — Ein Aufruf** der Server-Backend-Komponente ist fehlgeschlagen. XStx 
+ **STX\$1INITIALIZATION\$1FAILED — Die Server-Backend-Komponente konnte nicht initialisiert werden**. XStx 
+ **UNEXPECTED\$1PLAYER\$1SESSION** — Der Server hat eine nicht registrierte Spielersitzung festgestellt. 
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1FORBIDDEN** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1UNGÜLTIGE\$1URL** 
+ **TIMEOUT FÜR WEBSOCKET\$1CONNECT\$1FAILURE\$1** 
+ **WEBSOCKET\$1RETRIABLE\$1SEND\$1MESSAGE\$1FAILURE** — Behebbarer Fehler beim Senden einer Nachricht an den Dienst. GameLift WebSocket 
+ **WEBSOCKET\$1SEND\$1MESSAGE\$1FAILURE** — Fehler beim Senden einer Nachricht an GameLift den WebSocket Dienst. 
+ **MATCH\$1BACKFILL\$1REQUEST\$1VALIDATION** — Die Validierung der Anfrage ist fehlgeschlagen. 
+ **PLAYER\$1SESSION\$1REQUEST\$1VALIDATION — Die Validierung der Anfrage ist fehlgeschlagen.** 

**EPlayerSessionCreationPolicy**  
Zeichenfolgenwert, der angibt, ob die Spielsitzung neue Spieler akzeptiert. Gültige Werte sind:   
+ **ACCEPT\$1ALL** – Akzeptiert alle neuen Spielersitzungen. 
+ **DENY\$1ALL** – Verwehrt neue Spielersitzungen. 
+ **NOT\$1SET** — Die Spielsitzung ist nicht so eingestellt, dass neue Spielersitzungen akzeptiert oder abgelehnt werden. 

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

[C\$1\$1 (Unreal) Server-SDK 5.x für Amazon GameLift Servers -- Datentypen](integration-server-sdk5-unreal-datatypes.md)

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

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

Gibt die aktuelle Versionsnummer des SDK zurück, das in den Serverprozess integriert ist.

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

```
FGameLiftStringOutcome GetSdkVersion();
```

### Rückgabewert
<a name="integration-server-sdk5-unreal-getsdkversion-return"></a>

War der Aufruf erfolgreich, gibt die Funktion die aktuelle SDK-Version als [FGameLiftStringOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-awsstringoutcome)-Objekt zurück. Das zurückgegebene Objekt enthält die Versionsnummer (Beispiel`5.0.0`). Wenn die Funktion nicht erfolgreich ausgeführt wird, wird eine Fehlermeldung zurückgegeben.

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

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

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

Initialisiert das Amazon GameLift Servers SDK für eine verwaltete EC2-Flotte. Rufen Sie diese Methode beim Start auf, bevor eine weitere Initialisierung im Zusammenhang mit erfolgt. Amazon GameLift Servers Diese Methode liest Serverparameter aus der Host-Umgebung, um die Kommunikation zwischen dem Server und dem Amazon GameLift Servers Dienst einzurichten. Sie verwendet ein Idempotenz-Token, sodass Sie diesen Aufruf sicher wiederholen können, wenn er fehlschlägt.

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

```
FGameLiftGenericOutcome InitSDK()
```

### Rückgabewert
<a name="integration-server-sdk5-unreal-initsdk-return"></a>

Bei Erfolg wird ein `InitSdkOutcome` Objekt zurückgegeben, das angibt, dass der Serverprozess aufrufbereit ist. [ProcessReady()](#integration-server-sdk5-unreal-processready) 

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

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

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

Initialisiert das Amazon GameLift Servers SDK für eine Anywhere-Flotte oder eine verwaltete Containerflotte. Rufen Sie diese Methode beim Start auf, bevor eine weitere Initialisierung im Zusammenhang mit erfolgt. Amazon GameLift Servers Für diese Methode sind explizite Serverparameter erforderlich, um die Kommunikation zwischen dem Server und dem Amazon GameLift Servers Dienst einzurichten. Sie verwendet ein Idempotenz-Token, sodass Sie diesen Aufruf sicher wiederholen können, wenn er fehlschlägt.

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

```
FGameLiftGenericOutcome InitSDK(serverParameters)
```

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

[FServerParameter](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-serverparameters)  
Um einen Spieleserver auf einer Amazon GameLift Servers Anywhere-Flotte zu initialisieren, konstruieren Sie ein `ServerParameters` Objekt mit den folgenden Informationen:  
+ Die URL, mit der die WebSocket Verbindung zu Ihrem Spieleserver hergestellt wurde. 
+ Die ID des Prozesses, der zum Hosten deines Spieleservers verwendet wird. 
+ Die ID des Computers, auf dem deine Gameserver-Prozesse gehostet werden. 
+ Die ID der Amazon GameLift Servers Flotte, die Ihren Amazon GameLift Servers Anywhere-Computer enthält.
+ Das durch den Amazon GameLift Servers Vorgang generierte Autorisierungstoken. 

### Rückgabewert
<a name="integration-server-sdk5-unreal-initsdk-anywhere-return"></a>

Bei Erfolg wird ein `InitSdkOutcome` Objekt zurückgegeben, das angibt, dass der Serverprozess aufrufbereit ist[ProcessReady()](#integration-server-sdk5-unreal-processready). 

**Anmerkung**  
Wenn Aufrufe von für Spiel-Builds, die auf Anywhere-Flotten bereitgestellt werden, fehlschlagen, überprüfen Sie den `ServerSdkVersion` Parameter, der beim Erstellen der Build-Ressource verwendet wurde. `InitSDK()` Sie müssen diesen Wert explizit auf die verwendete Server-SDK-Version festlegen. Der Standardwert für diesen Parameter ist 4.x, was nicht kompatibel ist. Um dieses Problem zu beheben, erstellen Sie einen neuen Build und stellen Sie ihn in einer neuen Flotte bereit.

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

```
//Define the server parameters
FServerParameters serverParameters;
parameters.m_authToken = "1111aaaa-22bb-33cc-44dd-5555eeee66ff"; 
parameters.m_fleetId = "arn:aws:gamelift:us-west-1:111122223333:fleet/fleet-9999ffff-88ee-77dd-66cc-5555bbbb44aa";
parameters.m_hostId = "HardwareAnywhere"; 
parameters.m_processId = "PID1234";
parameters.m_webSocketUrl = "wss://us-west-1.api.amazongamelift.com"; 

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

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

BenachrichtigtAmazon GameLift Servers, dass der Serverprozess bereit ist, Spielsitzungen abzuhalten. Rufen Sie diese Methode nach dem Aufrufen auf[InitSDK()](#integration-server-sdk5-unreal-initsdk). Diese Methode sollte nur einmal pro Prozess aufgerufen werden.

### Syntax
<a name="integration-server-sdk5-unreal-processready-syntax"></a>

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

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

**processParameters**  
Ein [FProcessParameter](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-process) Objekt, das die folgenden Informationen über den Serverprozess übermittelt:  
+ Namen der im Spielservercode implementierten Callback-Methoden, die der Amazon GameLift Servers Dienst aufruft, um mit dem Serverprozess zu kommunizieren.
+ Die Portnummer, auf der der Serverprozess horcht.
+ Pfad zu beliebigen spielsitzungsspezifischen Dateien, die Amazon GameLift Servers erfassen und speichern soll.

### Rückgabewert
<a name="integration-server-sdk5-unreal-processready-return"></a>

Gibt ein generisches Ergebnis zurück, das aus Erfolg oder Misserfolg besteht, mit einer Fehlermeldung.

### Beispiel
<a name="integration-server-sdk5-unreal-processready-example"></a>

Dieses Beispiel veranschaulicht die Implementierung des [ProcessReady()](#integration-server-sdk5-unreal-processready)-Aufrufs und der Delegate-Funktion.

```
//Calling ProcessReady tells Amazon GameLift Servers this game server is ready to receive incoming game sessions!
UE_LOG(GameServerLog, Log, TEXT("Calling Process Ready"));
FGameLiftGenericOutcome processReadyOutcome = GameLiftSdkModule->ProcessReady(*params);
```

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

BenachrichtigtAmazon GameLift Servers, dass der Serverprozess beendet wird. Ruft diese Methode nach allen anderen Bereinigungsaufgaben (einschließlich des Herunterfahrens der aktiven Spielsitzung) und vor dem Beenden des Vorgangs auf. Je nach Ergebnis von wird der `ProcessEnding()` Prozess mit Erfolg (0) oder Fehler (-1) beendet und generiert ein Flottenereignis. Wenn der Prozess mit einem Fehler beendet wird, ist `SERVER_PROCESS_TERMINATED_UNHEALTHY` das generierte Flottenereignis ().

### Syntax
<a name="integration-server-sdk5-unreal-processending-syntax"></a>

```
FGameLiftGenericOutcome ProcessEnding()
```

### Rückgabewert
<a name="integration-server-sdk5-unreal-processending-return"></a>

Gibt ein generisches Ergebnis zurück, das aus Erfolg oder Misserfolg besteht, mit einer Fehlermeldung.

### Beispiel
<a name="integration-server-sdk5-unreal-processending-example"></a>

```
//OnProcessTerminate callback. Amazon GameLift Servers will invoke this callback before shutting down an instance hosting this game server.
//It gives this game server a chance to save its state, communicate with services, etc., before being shut down.
//In this case, we simply tell Amazon GameLift Servers we are indeed going to shutdown.
params->OnTerminate.BindLambda([=]() {
  UE_LOG(GameServerLog, Log, TEXT("Game Server Process is terminating"));
  GameLiftSdkModule->ProcessEnding();
});
```

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

MeldetAmazon GameLift Servers, dass der Serverprozess eine Spielsitzung aktiviert hat und nun bereit ist, Spielerverbindungen zu empfangen. Diese Aktion sollte als Teil der `onStartGameSession()` Callback-Funktion aufgerufen werden, nachdem alle Spielsitzungen initialisiert wurden.

### Syntax
<a name="integration-server-sdk5-unreal-activategamesession-syntax"></a>

```
FGameLiftGenericOutcome ActivateGameSession()
```

### Rückgabewert
<a name="integration-server-sdk5-unreal-activategamesession-return"></a>

Gibt ein generisches Ergebnis zurück, das aus Erfolg oder Misserfolg besteht, mit einer Fehlermeldung.

### Beispiel
<a name="integration-server-sdk5-unreal-activategamesession-example"></a>

Dieses Beispiel zeigt, dass es als Teil der `onStartGameSession()` Delegate-Funktion `ActivateGameSession()` aufgerufen wird. 

```
//When a game session is created, Amazon GameLift Servers sends an activation request to the game server and passes along the game session object containing game properties and other settings.
//Here is where a game server should take action based on the game session object.
//Once the game server is ready to receive incoming player connections, it should invoke GameLiftServerAPI.ActivateGameSession()
auto onGameSession = [=](Aws::GameLift::Server::Model::GameSession gameSession)
{
  FString gameSessionId = FString(gameSession.GetGameSessionId());
  UE_LOG(GameServerLog, Log, TEXT("GameSession Initializing: %s"), *gameSessionId);
  GameLiftSdkModule->ActivateGameSession();
};
```

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

Aktualisiert die Kapazität der aktuellen Spielsitzung zur Aufnahme neuer Spielersitzungen. Eine Spielsitzung kann so eingerichtet werden, dass Sie alle neuen Spieler-Sitzungen akzeptiert oder ablehnt.

### Syntax
<a name="integration-server-sdk5-unreal-updateplayersessioncreationpolicy-syntax"></a>

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

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

**playerCreationSessionRichtlinie**  
Zeichenfolgenwert, der angibt, ob die Spielsitzung neue Spieler akzeptiert.   
Gültige Werte sind:  
+ **ACCEPT\$1ALL** – Akzeptiert alle neuen Spielersitzungen.
+ **DENY\$1ALL** – Verwehrt neue Spielersitzungen.

### Rückgabewert
<a name="integration-server-sdk5-unreal-updateplayersessioncreationpolicy-return"></a>

Gibt ein generisches Ergebnis zurück, das aus Erfolg oder Misserfolg besteht, mit einer Fehlermeldung.

### Beispiel
<a name="integration-server-sdk5-unreal-updateplayersessioncreationpolicy-example"></a>

In diesem Beispiel werden die Richtlinien für die aktuelle Spielsitzung für neue Spieler so festgelegt, dass alle Spieler akzeptiert werden.

```
FGameLiftGenericOutcome outcome = GameLiftSdkModule->UpdatePlayerSessionCreationPolicy(Aws::GameLift::Model::EPlayerSessionCreationPolicy::ACCEPT_ALL);
```

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

Ruft die ID der Spielsitzung ab, die vom aktiven Serverprozess gehostet wird. 

Bei Prozessen im Leerlauf, die während einer Spielsitzung nicht aktiviert wurden, gibt der Aufruf a [FGameLiftError](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-gamelifterror) zurück.

### Syntax
<a name="integration-server-sdk5-unreal-getgamesessionid-syntax"></a>

```
FGameLiftStringOutcome GetGameSessionId()
```

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

Diese Aktion hat keine Parameter.

### Rückgabewert
<a name="integration-server-sdk5-unreal-getgamesessionid-return"></a>

War der Aufruf erfolgreich, gibt die Funktion die Spielsitzungs-ID als [FGameLiftStringOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-awsstringoutcome)-Objekt zurück. Wenn das nicht erfolgreich ist, wird eine Fehlermeldung zurückgegeben.“

Bei inaktiven Prozessen, die nicht während einer Spielsitzung aktiviert werden, gibt der Aufruf `Success` = `True` und `GameSessionId` = zurück`""`.

### Beispiel
<a name="integration-server-sdk5-unreal-getgamesessionid-example"></a>

```
//When a game session is created, Amazon GameLift Servers sends an activation request to the game server and passes along the game session object containing game properties and other settings.
//Here is where a game server should take action based on the game session object.
//Once the game server is ready to receive incoming player connections, it should invoke GameLiftServerAPI.ActivateGameSession()
auto onGameSession = [=](Aws::GameLift::Server::Model::GameSession gameSession)
{
  FString gameSessionId = FString(gameSession.GetGameSessionId());
  UE_LOG(GameServerLog, Log, TEXT("GameSession Initializing: %s"), *gameSessionId);
  GameLiftSdkModule->ActivateGameSession();
};
```

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

Gibt die Zeit zurück, für die das Herunterfahren eines Serverprozesses geplant ist (wenn eine Zeit zum Beenden verfügbar ist). Ein Serverprozess ergreift eine Aktion, nachdem er einen `onProcessTerminate()` Rückruf von Amazon GameLift Servers erhalten hat. Amazon GameLift Serversruft `onProcessTerminate()` aus den folgenden Gründen auf: 
+ Wenn der Serverprozess einen schlechten Zustand gemeldet hat oder nicht darauf reagiert hatAmazon GameLift Servers.
+ Wenn die Instanz während eines Scale-Down-Ereignisses beendet wird.
+ [Wenn eine Instance aufgrund einer Spot-Instance-Unterbrechung beendet wird.](spot-tasks.md)

### Syntax
<a name="integration-server-sdk5-unreal-getterm-syntax"></a>

```
AwsDateTimeOutcome GetTerminationTime()
```

### Rückgabewert
<a name="integration-server-sdk5-unreal-getterm-return"></a>

Bei Erfolg wird die Kündigungszeit als Objekt `AwsDateTimeOutcome` zurückgegeben. Der Wert ist die Endzeit, ausgedrückt in verstrichenen Ticks, die seitdem vergangen sind. `0001 00:00:00` Beispielsweise entspricht der Wert für Datum und Uhrzeit den `2020-09-13 12:26:40 -000Z` Ticks. `637355968000000000` Wenn keine Kündigungszeit verfügbar ist, wird eine Fehlermeldung zurückgegeben.

Wenn der Prozess keinen ` ProcessParameters.OnProcessTerminate()` Rückruf erhalten hat, wird eine Fehlermeldung zurückgegeben. Weitere Hinweise zum Herunterfahren eines Serverprozesses finden Sie unter. [Reagieren Sie auf eine Benachrichtigung zum Herunterfahren des Serverprozesses](gamelift-sdk-server-api.md#gamelift-sdk-server-terminate)

### Beispiel
<a name="integration-server-sdk5-unreal-getterm-example"></a>

```
AwsDateTimeOutcome TermTimeOutcome = GameLiftSdkModule->GetTerminationTime();
```

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

BenachrichtigtAmazon GameLift Servers, dass ein Spieler mit der angegebenen Spielersitzungs-ID eine Verbindung zum Serverprozess hergestellt hat und eine Bestätigung benötigt. Amazon GameLift Serversüberprüft, ob die Player-Sitzungs-ID gültig ist. Nachdem die Spielersitzung bestätigt wurde, wird der Status des Spieler-Slots von RESERVIERT auf AKTIV Amazon GameLift Servers geändert. 

### Syntax
<a name="integration-server-sdk5-unreal-acceptplayersession-syntax"></a>

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

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

playerSessionId  
Eindeutige IDAmazon GameLift Servers, die ausgestellt wird, wenn eine neue Spielersitzung erstellt wird.

### Rückgabewert
<a name="integration-server-sdk5-unreal-acceptplayersession-return"></a>

Gibt ein generisches Ergebnis zurück, das aus Erfolg oder Misserfolg besteht, mit einer Fehlermeldung. 

### Beispiel
<a name="integration-server-sdk5-unreal-acceptplayersession-example"></a>

In diesem Beispiel wird eine Verbindungsanforderung behandelt, die das Überprüfen und Ablehnen einer ungültigen Spielersitzung beinhaltet. IDs

```
bool GameLiftManager::AcceptPlayerSession(const FString& playerSessionId, const FString& playerId)
{
  #if WITH_GAMELIFT
  UE_LOG(GameServerLog, Log, TEXT("Accepting GameLift PlayerSession: %s . PlayerId: %s"), *playerSessionId, *playerId);
  FString gsId = GetCurrentGameSessionId();
  if (gsId.IsEmpty()) {
    UE_LOG(GameServerLog, Log, TEXT("No GameLift GameSessionId. Returning early!"));
    return false;
  }
  
  if (!GameLiftSdkModule->AcceptPlayerSession(playerSessionId).IsSuccess()) {
    UE_LOG(GameServerLog, Log, TEXT("PlayerSession not Accepted."));
    return false;
  }

  // Add PlayerSession from internal data structures keeping track of connected players
  connectedPlayerSessionIds.Add(playerSessionId);
  idToPlayerSessionMap.Add(playerSessionId, PlayerSession{ playerId, playerSessionId });
  return true;
  #else
  return false;
  #endif
}
```

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

BenachrichtigtAmazon GameLift Servers, dass ein Spieler die Verbindung zum Serverprozess getrennt hat. Amazon GameLift ServersÄndert daraufhin den Player-Slot auf „Verfügbar“. 

### Syntax
<a name="integration-server-sdk5-unreal-removeplayersession-syntax"></a>

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

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

**`playerSessionId`**  
Eindeutige IDAmazon GameLift Servers, die ausgestellt wird, wenn eine neue Spielersitzung erstellt wird.

### Rückgabewert
<a name="integration-server-sdk5-unreal-removeplayersession-return"></a>

Gibt ein generisches Ergebnis zurück, das aus Erfolg oder Misserfolg besteht, mit einer Fehlermeldung.

### Beispiel
<a name="integration-server-sdk5-unreal-removeplayersession-example"></a>

```
bool GameLiftManager::RemovePlayerSession(const FString& playerSessionId)
{
  #if WITH_GAMELIFT
  UE_LOG(GameServerLog, Log, TEXT("Removing GameLift PlayerSession: %s"), *playerSessionId);

  if (!GameLiftSdkModule->RemovePlayerSession(playerSessionId).IsSuccess()) {
    UE_LOG(GameServerLog, Log, TEXT("PlayerSession Removal Failed"));
    return false;
  }

  // Remove PlayerSession from internal data structures that are keeping track of connected players
  connectedPlayerSessionIds.Remove(playerSessionId);
  idToPlayerSessionMap.Remove(playerSessionId);

  // end the session if there are no more players connected
  if (connectedPlayerSessionIds.Num() == 0) {
    EndSession();
  }

  return true;
  #else
  return false;
  #endif
}
```

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

Ruft Spielersitzungsdaten ab, einschließlich Einstellungen, Sitzungsmetadaten und Spielerdaten. Verwenden Sie diese Methode, um Informationen zu folgenden Themen abzurufen:
+ Eine Einzelspieler-Sitzung
+ Alle Spielersitzungen in einer Spielsitzung
+ Alle Spielersitzungen, die mit einer einzigen Spieler-ID verknüpft sind

### Syntax
<a name="integration-server-sdk5-unreal-describeplayersessions-syntax"></a>

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

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

**[FGameLiftDescribePlayerSessionsRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-playersessions)**  
Ein [FGameLiftDescribePlayerSessionsRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-playersessions) Objekt, das beschreibt, welche Spielersitzungen abgerufen werden sollen.

### Rückgabewert
<a name="integration-server-sdk5-unreal-describeplayersessions-return"></a>

Wenn sie erfolgreich ausgeführt wird, gibt die Funktion ein [FGameLiftDescribePlayerSessionsOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-describeplayersessionsoutcome)-Objekt mit einer Menge von Spielersitzungsobjekten zurück, die den Anforderungsparametern entsprechen.

### Beispiel
<a name="integration-server-sdk5-unreal-describeplayersessions-example"></a>

In diesem Beispiel werden alle Spielersitzungen abgefragt, die aktiv mit einer bestimmten Spielsitzung verbunden sind. Wenn Sie den *Grenzwert* weglassen *NextToken*und ihn auf 10 setzen, werden die Sitzungsdatensätze der ersten 10 Spieler Amazon GameLift Servers zurückgegeben, die der Anfrage entsprechen.

```
void GameLiftManager::DescribePlayerSessions()
{
  #if WITH_GAMELIFT
  FString localPlayerSessions;
  for (auto& psId : connectedPlayerSessionIds)
  {
    PlayerSession ps = idToPlayerSessionMap[psId];
    localPlayerSessions += FString::Printf(TEXT("%s : %s  ; "), *(ps.playerSessionId), *(ps.playerId));
  }
  UE_LOG(GameServerLog, Log, TEXT("LocalPlayerSessions: %s"), *localPlayerSessions);

  UE_LOG(GameServerLog, Log, TEXT("Describing PlayerSessions in this GameSession"));
  FGameLiftDescribePlayerSessionsRequest request;
  request.m_gameSessionId = GetCurrentGameSessionId();

  FGameLiftDescribePlayerSessionsOutcome outcome = GameLiftSdkModule->DescribePlayerSessions(request);
  LogDescribePlayerSessionsOutcome(outcome);
  #endif
}
```

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

Sendet eine Anforderung zur Suche nach neuen Spielern für offene Slots in einer Spielsitzung, die mit FlexMatch erstellt wurde. Weitere Informationen finden Sie unter [FlexMatchBackfill-Funktion](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Diese Aktion ist asynchron. Wenn neue Spieler gematcht werden, Amazon GameLift Servers liefert es mithilfe der Callback-Funktion aktualisierte Matchmaker-Daten. `OnUpdateGameSession()`

Ein Serverprozess kann immer nur eine aktive Match-Backfill-Anforderung haben. Um eine neue Anforderung zu senden, rufen Sie zuerst [StopMatchBackfill()](#integration-server-sdk5-unreal-stopmatchbackfill) auf, um die ursprüngliche Anforderung abzubrechen.

### Syntax
<a name="integration-server-sdk5-unreal-startmatchbackfill-syntax"></a>

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

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

**[FStartMatchBackfillRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-startmatchbackfillrequest)**  
Ein StartMatchBackfillRequest Objekt, das die folgenden Informationen übermittelt:  
+ Eine Ticket-ID für die Zuordnung zur Backfill-Anforderung. Diese Information ist optional. Wenn keine ID angegeben wird, Amazon GameLift Servers wird eine generiert.
+ Der Matchmaker, an den die Anfrage gesendet werden soll. Der vollständige ARN der Konfiguration ist erforderlich. Dieser Wert ist in den Matchmaker-Daten der Spielsitzung enthalten.
+ Die ID der Spielsitzung, die aufgefüllt werden soll.
+ Die verfügbaren Matchmaking-Daten für die aktuellen Spieler der Spielsitzung.

### Rückgabewert
<a name="integration-server-sdk5-unreal-startmatchbackfill-return"></a>

Gibt ein `StartMatchBackfillOutcome` Objekt mit der ID des Match-Backfill-Tickets zurück oder schlägt fehl und es wird eine Fehlermeldung angezeigt. 

### Beispiel
<a name="integration-server-sdk5-unreal-startmatchbackfill-example"></a>

```
FGameLiftStringOutcome FGameLiftServerSDKModule::StartMatchBackfill(const FStartMatchBackfillRequest& request) 
{
  #if WITH_GAMELIFT
  Aws::GameLift::Server::Model::StartMatchBackfillRequest sdkRequest;
  sdkRequest.SetTicketId(TCHAR_TO_UTF8(*request.m_ticketId));
  sdkRequest.SetGameSessionArn(TCHAR_TO_UTF8(*request.m_gameSessionArn));
  sdkRequest.SetMatchmakingConfigurationArn(TCHAR_TO_UTF8(*request.m_matchmakingConfigurationArn));
  for (auto player : request.m_players) {
    Aws::GameLift::Server::Model::Player sdkPlayer;
    sdkPlayer.SetPlayerId(TCHAR_TO_UTF8(*player.m_playerId));
    sdkPlayer.SetTeam(TCHAR_TO_UTF8(*player.m_team));
    for (auto entry : player.m_latencyInMs) {
      sdkPlayer.WithLatencyMs(TCHAR_TO_UTF8(*entry.Key), entry.Value);
    }

    std::map<std::string, Aws::GameLift::Server::Model::AttributeValue> sdkAttributeMap;
    for (auto attributeEntry : player.m_playerAttributes) {
      FAttributeValue value = attributeEntry.Value;
      Aws::GameLift::Server::Model::AttributeValue attribute;
      switch (value.m_type) {
        case FAttributeType::STRING:
          attribute = Aws::GameLift::Server::Model::AttributeValue(TCHAR_TO_UTF8(*value.m_S));
        break;
        case FAttributeType::DOUBLE:
          attribute = Aws::GameLift::Server::Model::AttributeValue(value.m_N);
        break;
        case FAttributeType::STRING_LIST:
          attribute = Aws::GameLift::Server::Model::AttributeValue::ConstructStringList();
          for (auto sl : value.m_SL) {
            attribute.AddString(TCHAR_TO_UTF8(*sl));
          };
        break;
        case FAttributeType::STRING_DOUBLE_MAP:
          attribute = Aws::GameLift::Server::Model::AttributeValue::ConstructStringDoubleMap();
          for (auto sdm : value.m_SDM) {
            attribute.AddStringAndDouble(TCHAR_TO_UTF8(*sdm.Key), sdm.Value);
          };
        break;
      }
      sdkPlayer.WithPlayerAttribute((TCHAR_TO_UTF8(*attributeEntry.Key)), attribute);
    }
    sdkRequest.AddPlayer(sdkPlayer);
  }
  auto outcome = Aws::GameLift::Server::StartMatchBackfill(sdkRequest);
  if (outcome.IsSuccess()) {
    return FGameLiftStringOutcome(outcome.GetResult().GetTicketId());
  }
  else {
    return FGameLiftStringOutcome(FGameLiftError(outcome.GetError()));
  }
  #else
  return FGameLiftStringOutcome("");
  #endif
}
```

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

Bricht eine aktive Match-Backfill-Anfrage ab. Weitere Informationen finden Sie unter [FlexMatchBackfill-Funktion](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

### Syntax
<a name="integration-server-sdk5-unreal-stopmatchbackfill-syntax"></a>

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

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

**[FStopMatchBackfillRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-stopmatchbackfillrequest)**  
Ein StopMatchBackfillRequest Objekt, das das zu stornierende Matchmaking-Ticket identifiziert:   
+ Die der Backfill-Anfrage zugewiesene Ticket-ID.
+ Der Matchmaker, an den die Backfill-Anfrage gesendet wurde.
+ Die Spielsitzung, die mit der Backfill-Anfrage verknüpft ist.

### Rückgabewert
<a name="integration-server-sdk5-unreal-stopmatchbackfill-return"></a>

Gibt ein generisches Ergebnis zurück, das aus Erfolg oder Misserfolg besteht, mit einer Fehlermeldung.

### Beispiel
<a name="integration-server-sdk5-unreal-stopmatchbackfill-example"></a>

```
FGameLiftGenericOutcome FGameLiftServerSDKModule::StopMatchBackfill(const FStopMatchBackfillRequest& request)
{
  #if WITH_GAMELIFT
  Aws::GameLift::Server::Model::StopMatchBackfillRequest sdkRequest;
  sdkRequest.SetTicketId(TCHAR_TO_UTF8(*request.m_ticketId));
  sdkRequest.SetGameSessionArn(TCHAR_TO_UTF8(*request.m_gameSessionArn));
  sdkRequest.SetMatchmakingConfigurationArn(TCHAR_TO_UTF8(*request.m_matchmakingConfigurationArn));
  auto outcome = Aws::GameLift::Server::StopMatchBackfill(sdkRequest);
  if (outcome.IsSuccess()) {
    return FGameLiftGenericOutcome(nullptr);
  }
  else {
    return FGameLiftGenericOutcome(FGameLiftError(outcome.GetError()));
  }
  #else
  return FGameLiftGenericOutcome(nullptr);
  #endif
}
```

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

Ruft den Pfad zu dem TLS-Zertifikat ab, mit dem die Netzwerkverbindung zwischen Ihrer Amazon GameLift Servers Anywhere-Rechenressource und verschlüsselt wurde. Amazon GameLift Servers Sie können den Zertifikatspfad verwenden, wenn Sie Ihr Computergerät bei einer Amazon GameLift Servers Anywhere-Flotte registrieren. Weitere Informationen finden Sie unter [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

### Syntax
<a name="integration-server-sdk5-unreal-getcomputecertificate-syntax"></a>

```
FGameLiftGetComputeCertificateOutcome FGameLiftServerSDKModule::GetComputeCertificate()
```

### Rückgabewert
<a name="integration-server-sdk5-unreal-getcomputecertificate-return"></a>

Gibt ein `GetComputeCertificateResponse` Objekt zurück, das Folgendes enthält: 
+ CertificatePath: Der Pfad zum TLS-Zertifikat auf Ihrer Rechenressource. 
+ HostName: Der Hostname Ihrer Rechenressource.

### Beispiel
<a name="integration-server-sdk5-unreal-getcomputecertificate-example"></a>

```
FGameLiftGetComputeCertificateOutcome FGameLiftServerSDKModule::GetComputeCertificate()
{
  #if WITH_GAMELIFT
  auto outcome = Aws::GameLift::Server::GetComputeCertificate();
  if (outcome.IsSuccess()) {
    auto& outres = outcome.GetResult();
    FGameLiftGetComputeCertificateResult result;
    result.m_certificate_path = UTF8_TO_TCHAR(outres.GetCertificatePath());
    result.m_computeName = UTF8_TO_TCHAR(outres.GetComputeName());
    return FGameLiftGetComputeCertificateOutcome(result);
  }
  else {
    return FGameLiftGetComputeCertificateOutcome(FGameLiftError(outcome.GetError()));
  }
  #else
  return FGameLiftGetComputeCertificateOutcome(FGameLiftGetComputeCertificateResult());
  #endif
}
```

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

Ruft Anmeldeinformationen für IAM-Rollen ab, die Amazon GameLift Servers zur Interaktion mit anderen berechtigen. AWS-Services Weitere Informationen finden Sie unter [Connect deinen Amazon GameLift Servers gehosteten Spieleserver mit anderen AWS Ressourcen](gamelift-sdk-server-resources.md).

### Syntax
<a name="integration-server-sdk5-unreal-getfleetrolecredentials-syntax"></a>

```
FGameLiftGetFleetRoleCredentialsOutcome FGameLiftServerSDKModule::GetFleetRoleCredentials(const FGameLiftGetFleetRoleCredentialsRequest &request)
```

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

[FGameLiftGetFleetRoleCredentialsRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsrequest)

### Rückgabewert
<a name="integration-server-sdk5-unreal-getfleetrolecredentials-return"></a>

Gibt ein [FGameLiftGetFleetRoleCredentialsOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsoutcome)-Objekt zurück.

### Beispiel
<a name="integration-server-sdk5-unreal-getfleetrolecredentials-example"></a>

```
FGameLiftGetFleetRoleCredentialsOutcome FGameLiftServerSDKModule::GetFleetRoleCredentials(const FGameLiftGetFleetRoleCredentialsRequest &request)
{
  #if WITH_GAMELIFT
  Aws::GameLift::Server::Model::GetFleetRoleCredentialsRequest sdkRequest;
  sdkRequest.SetRoleArn(TCHAR_TO_UTF8(*request.m_roleArn));
  sdkRequest.SetRoleSessionName(TCHAR_TO_UTF8(*request.m_roleSessionName));

  auto outcome = Aws::GameLift::Server::GetFleetRoleCredentials(sdkRequest);

  if (outcome.IsSuccess()) {
    auto& outres = outcome.GetResult();
    FGameLiftGetFleetRoleCredentialsResult result;
    result.m_assumedUserRoleArn = UTF8_TO_TCHAR(outres.GetAssumedUserRoleArn());
    result.m_assumedRoleId = UTF8_TO_TCHAR(outres.GetAssumedRoleId());
    result.m_accessKeyId = UTF8_TO_TCHAR(outres.GetAccessKeyId());
    result.m_secretAccessKey = UTF8_TO_TCHAR(outres.GetSecretAccessKey());
    result.m_sessionToken = UTF8_TO_TCHAR(outres.GetSessionToken());
    result.m_expiration = FDateTime::FromUnixTimestamp(outres.GetExpiration());
    return FGameLiftGetFleetRoleCredentialsOutcome(result);
  }
  else {
    return FGameLiftGetFleetRoleCredentialsOutcome(FGameLiftError(outcome.GetError()));
  }
  #else
  return FGameLiftGetFleetRoleCredentialsOutcome(FGameLiftGetFleetRoleCredentialsResult());
  #endif
}
```

## Zerstören ()
<a name="integration-server-sdk5-unreal-ref-destroy"></a>

Befreit das Amazon GameLift Servers Spieleserver-SDK aus dem Speicher. Es hat sich bewährt, diese Methode nach `ProcessEnding()` und vor dem Beenden des Prozesses aufzurufen. Wenn Sie eine Anywhere-Flotte verwenden und Serverprozesse nicht nach jeder Spielsitzung beenden, rufen Sie auf `Destroy()` und starten Sie dann `InitSDK()` erneut, bevor Sie benachrichtigen, Amazon GameLift Servers dass der Prozess bereit ist, eine Spielsitzung mit zu hosten. `ProcessReady()`

### Syntax
<a name="integration-server-sdk5-unreal-ref-destroy-syntax"></a>

```
FGameLiftGenericOutcome Destroy();
```

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

Es gibt keine Parameter.

### Rückgabewert
<a name="integration-server-sdk5-unreal-ref-destroy-return"></a>

Gibt ein generisches Ergebnis zurück, das aus Erfolg oder Misserfolg besteht, mit einer Fehlermeldung.

### Beispiel
<a name="integration-server-sdk5-unreal-ref-destroy-example"></a>

```
// First call ProcessEnding()
FGameLiftGenericOutcome processEndingOutcome = GameLiftSdkModule->ProcessEnding();
  
// Then call Destroy() to free the SDK from memory
FGameLiftGenericOutcome destroyOutcome = GameLiftSdkModule->Destroy();
  
// Exit the process with success or failure
if (processEndingOutcome.IsSuccess() && destroyOutcome.IsSuccess()) 
    {
    UE_LOG(GameServerLog, Log, TEXT("Server process ending successfully"));
}
else {
    if (!processEndingOutcome.IsSuccess()) {
        const FGameLiftError& error = processEndingOutcome.GetError();
        UE_LOG(GameServerLog, Error, TEXT("ProcessEnding() failed. Error: %s"),
        error.m_errorMessage.IsEmpty() ? TEXT("Unknown error") : *error.m_errorMessage);
    }
    if (!destroyOutcome.IsSuccess()) {
        const FGameLiftError& error = destroyOutcome.GetError();
        UE_LOG(GameServerLog, Error, TEXT("Destroy() failed. Error: %s"),
        error.m_errorMessage.IsEmpty() ? TEXT("Unknown error") : *error.m_errorMessage);
    }
}
```