

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

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

Bagian ini menyediakan dokumentasi referensi untuk server SDK 5.x untuk. Amazon GameLift Servers Server SDK menyediakan fungsionalitas inti yang digunakan server game Anda untuk berinteraksi dengan Amazon GameLift Servers layanan. Misalnya, server game Anda menerima permintaan dari layanan untuk memulai dan menghentikan sesi permainan dan menyediakan pembaruan status sesi permainan reguler ke layanan. Integrasikan server game Anda dengan SDK server sebelum Anda menerapkannya untuk hosting.

Gunakan referensi SDK server ini untuk mengintegrasikan server game multipemain khusus Anda untuk hosting. Amazon GameLift Servers Untuk panduan tentang proses integrasi, lihat[Tambahkan Amazon GameLift Servers ke server game Anda dengan SDK server](gamelift-sdk-server-api.md).

Versi utama terbaru dari SDK server untuk Amazon GameLift Servers adalah 5.x. Fitur hosting berikut memerlukan penggunaan versi 5.x: 
+ Amazon GameLift Servers Anywhere
+ Amazon GameLift Serversplugin untuk Unreal Engine dan Unity

**catatan**  
Jika Anda perlu menggunakan SDK server versi 4.x atau yang lebih lama, lihat informasi [Server SDK untuk Amazon GameLift Servers versi 4 dan sebelumnya](reference-serversdk4.md) dokumentasi dan unduhan.

**Topics**
+ [Pembaruan di server SDK 5 untuk Amazon GameLift Servers](#reference-serversdk5-about)
+ [Migrasi ke server SDK 5.x untuk Amazon GameLift Servers](reference-serversdk5-migration.md)
+ [Server C \$1\$1 SDK 5.x untuk Amazon GameLift Servers -- Tindakan](integration-server-sdk5-cpp-actions.md)
+ [C\$1 server SDK 5.x untuk Amazon GameLift Servers -- Tindakan](integration-server-sdk5-csharp-actions.md)
+ [Go server SDK untuk Amazon GameLift Servers -- Tindakan](integration-server-sdk-go-actions.md)
+ [Server C \$1\$1 (Tidak nyata) SDK 5.x untuk -- Tindakan Amazon GameLift Servers](integration-server-sdk5-unreal-actions.md)

## Pembaruan di server SDK 5 untuk Amazon GameLift Servers
<a name="reference-serversdk5-about"></a>

Server game yang dihosting menggunakan SDK server Amazon GameLift Servers untuk berkomunikasi dengan Amazon GameLift Servers layanan untuk memulai dan mengelola sesi permainan bagi pemain. Versi terbaru, Amazon GameLift Servers server SDK 5, menawarkan sejumlah perbaikan dan dukungan untuk Amazon GameLift Servers fitur-fitur baru. Jika pembuatan server game Anda saat ini menggunakan Amazon GameLift Servers server SDK 4 atau versi lebih lama, ikuti panduan dalam topik ini untuk memperbarui game Anda. 

Amazon GameLift Serversserver SDK versi 5.0.0 dan di atasnya mencakup pembaruan ini:
+ Bahasa yang diperluas — Perpustakaan tersedia dalam bahasa berikut: C \$1\$1, C \$1, Go. Anda dapat membangun pustaka C\$1\$1 untuk digunakan dengan Unreal Engine.
+ Dukungan plugin mesin game - Plugin Amazon GameLift Servers mandiri untuk Unreal Engine dan Unity memerlukan pustaka SDK 5 Amazon GameLift Servers server. Plugin ini menawarkan alur kerja terpandu untuk mengintegrasikan, menguji, dan menyebarkan game Anda untuk hosting. Amazon GameLift Servers Lihat [Amazon GameLift Serversplugin untuk Unity (server SDK 5.x)](unity-plug-in.md) dan [Amazon GameLift Serversplugin untuk Unreal Engine](unreal-plugin.md) dokumentasi.
+ Amazon GameLift ServersDukungan di mana saja - Dengan armada Anywhere Anda dapat mengatur sumber daya hosting Anda sendiri untuk menggunakan Amazon GameLift Servers fitur (termasuk perjodohan). Tambahkan Amazon GameLift Servers Agen untuk mengotomatiskan manajemen siklus hidup sesi game. Gunakan armada Anywhere untuk hosting produksi dengan perangkat keras lokal, atau siapkan lingkungan pengujian untuk pengembangan game berulang yang cepat. Lihat [Hosting di mana saja](gamelift-intro-flavors.md#gamelift-intro-flavors-hosting-anywhere) dan [Amazon GameLift ServersAgen](https://github.com/aws/amazon-gamelift-agent).
+ Alat pengujian yang diperbarui — Fitur Amazon GameLift Servers Anywhere memungkinkan Anda mengatur lingkungan pengujian lokal atau berbasis cloud untuk game Anda. Siapkan pengujian dengan atau tanpa Amazon GameLift Servers Agen. Alat-alat ini menggantikan Amazon GameLift Servers Lokal. Lihat [Siapkan pengujian lokal dengan Amazon GameLift Servers Anywhere](integration-testing.md).
+ Solusi .NET terkonsolidasi untuk C \$1 - Server C \$1 SDK 5.1\$1 mendukung .NET Framework 4.6.2 (ditingkatkan dari 4.6.1) dan.NET 6.0 dalam satu solusi. .NET Standard 2.1 tersedia dengan pustaka Unity-built.
+ `Compute`Sumber daya baru - Sumber daya baru ini menggabungkan berbagai jenis sumber daya hosting. Ini termasuk sumber daya hosting berbasis cloud (armada terkelola EC2 atau kontainer) dan sumber daya hosting yang dikendalikan pelanggan (armada Anywhere). Ini termasuk pembaruan berikut: 
  + Panggilan API baru untuk `Compute` sumber daya meliputi: [ListCompute()](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_ListCompute.html), [DescribeCompute()](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_DescribeCompute.html), dan [GetComputeAccess()](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAccess.html). Tindakan ini mengembalikan informasi sumber daya hosting untuk semua jenis Amazon GameLift Servers armada. Secara umum, untuk armada dengan server game yang menggunakan server SDK 5.x, gunakan tindakan khusus komputasi untuk mengganti tindakan khusus instance. Selain itu, tindakan ini untuk digunakan dalam armada Anywhere tanpa Amazon GameLift Servers Agen: [RegisterCompute()](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html), [DeregisterCompute()](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_DeregisterCompute.html), dan [GetComputeAuthToken()](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).
  + Metrik baru `ActiveCompute` dengan CloudWatch dimensi`FleetId`,`Location`, dan`ComputeType`. Metrik ini menggantikan metrik `ActiveInstances` sebelumnya.
+ Amazon EC2 Systems Manager (SSM) untuk akses jarak jauh — Untuk keamanan tambahan, gunakan SSM alih-alih SSH saat menghubungkan ke instans di armada terkelola. Amazon GameLift Servers Lihat [Connect ke instance armada](fleets-remote-access.md).

# Migrasi ke server SDK 5.x untuk Amazon GameLift Servers
<a name="reference-serversdk5-migration"></a>

Untuk memperbarui proyek game agar menggunakan server SDK versi 5.x, buat perubahan berikut:

**catatan**  
Jika Anda perlu terus menggunakan SDK server versi 4.x atau yang lebih lama, lihat informasi [Server SDK untuk Amazon GameLift Servers versi 4 dan sebelumnya](reference-serversdk4.md) dokumentasi dan unduhan. Untuk SDK versi 4.0.2 khusus, Anda dapat mengunduhnya dari rilis [resmi GitHub ](https://github.com/amazon-gamelift/amazon-gamelift-servers-csharp-server-sdk/releases).

1. Dapatkan SDK server terbaru untuk Amazon GameLift Servers paket untuk lingkungan pengembangan Anda **[[Unduh situs](https://aws.amazon.com/gamelift/servers/getting-started-sdks/)]**. Ikuti petunjuk penginstalan dalam `Readme` file untuk paket dan versi yang Anda unduh. Lihat petunjuk ini untuk menggunakan server SDKs dengan proyek game Anda.
   + [Untuk lingkungan pengembangan menggunakan C \$1\$1, C \$1, atau Go](gamelift-sdk-server-api.md)
   + [Untuk proyek Unreal Engine (SDK server C\$1\$1 hanya untuk pustaka Unreal)](integration-engines-setup-unreal.md)
   + [Untuk proyek Unity (SDK server C\$1 hanya untuk pustaka SDK for Unity)](integration-engines-unity-using.md)
   + [Untuk digunakan dengan Amazon GameLift Servers plugin untuk Unreal Engine](unreal-plugin.md)
   + [Untuk digunakan dengan Amazon GameLift Servers plugin untuk Unity](unity-plug-in.md)

1. Perbarui kode server Anda sebagai berikut:
   + Ubah fungsi callback kode server `onCreateGameSession()` menjadi`onStartGameSession()`.
   + Perbarui `InitSDK()` input yang sesuai: 
     + Jika Anda berencana untuk menerapkan build server game ke armada EC2 Amazon GameLift Servers terkelola atau armada Anywhere dengan Agen: Amazon GameLift Servers 

       Panggilan `InitSDK()` tanpa parameter ([C \$1\$1](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk)) (C [\$1](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initsdk)) ([Tidak](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-initsdk) nyata). Panggilan ini mengatur lingkungan komputasi dan WebSocket koneksi ke Amazon GameLift Servers layanan. 
     + Jika Anda berencana untuk menyebarkan build server game ke armada Anywhere tanpa Amazon GameLift Servers Agen:

       Panggilan `InitSDK()` dengan parameter server ([C \$1\$1](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk-anywhere)) (C [\$1](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initsdk-anywhere)) ([Tidak](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-initsdk-anywhere) nyata). Proses server game menggunakan parameter ini untuk membuat koneksi dengan Amazon GameLift Servers layanan.

1. Jika build server game atau aplikasi host lainnya berkomunikasi dengan AWS sumber daya lain saat berjalan, Anda harus mengubah cara aplikasi mendapatkan akses ke sumber daya tersebut. Ganti penggunaan `AssumeRoleCredentials` dengan aksi SDK server baru `GetFleetRoleCredentials()` (untuk server game) atau gunakan kredensyal bersama (untuk aplikasi lain). Untuk informasi lebih lanjut tentang cara menerapkan perubahan ini, lihat[Hubungkan server game yang Amazon GameLift Servers di-host ke AWS sumber daya lain](gamelift-sdk-server-resources.md).

1. [Jika proyek Anda memanggil tindakan SDK server `GetInstanceCertificate()` untuk mengambil sertifikat TLS, ubah kode Anda untuk menggunakan new `GetComputeCertificate()` ([C\$1\$1) ([C\$1](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-getcomputecertificate)) (Unreal](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-getcomputecertificate)) sebagai gantinya.](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-getcomputecertificate)

1. Saat mengunggah build game Anda Amazon GameLift Servers (seperti dengan [upload-build](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/upload-build.html) atau [CreateBuild())](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateBuild.html), setel `ServerSdkVersion` parameter ke versi 5.x yang Anda gunakan (parameter ini saat ini default ke 4.0.2). Parameter ini harus cocok dengan pustaka SDK server yang sebenarnya di build server game. Jika Anda menentukan versi yang salah untuk build server game yang diunggah, armada apa pun yang Anda buat dengan build tersebut akan gagal. Lihat [Buat build server game untuk Amazon GameLift Servers](gamelift-build-cli-uploading.md).

   Contoh berikut menggambarkan cara menentukan versi SDK server: 

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

1. Jika Anda menggunakan skrip untuk terhubung dari jarak jauh ke armada terkelola, perbarui skrip untuk menggunakan proses baru, seperti yang dijelaskan dalam. [Connect ke instance armada](fleets-remote-access.md)

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

Gunakan referensi SDK 5.x server untuk mengintegrasikan game multipemain Anda untuk hosting. Amazon GameLift Servers Untuk panduan tentang proses integrasi, lihat[Tambahkan Amazon GameLift Servers ke server game Anda dengan SDK server](gamelift-sdk-server-api.md).

**catatan**  
Topik ini menjelaskan Amazon GameLift Servers C\$1\$1 API yang dapat Anda gunakan saat membangun dengan C\$1\$1 Standard Library ()`std`. Secara khusus, dokumentasi ini berlaku untuk kode yang Anda kompilasi dengan `-DDGAMELIFT_USE_STD=1` opsi. 

# Server C \$1\$1 SDK 5.x untuk Amazon GameLift Servers -- Tipe data
<a name="integration-server-sdk5-cpp-datatypes"></a>

Gunakan referensi SDK 5.x server Amazon GameLift Servers C \$1\$1 untuk mengintegrasikan game multipemain Anda untuk hosting. Amazon GameLift Servers Untuk panduan tentang proses integrasi, lihat[Tambahkan Amazon GameLift Servers ke server game Anda dengan SDK server](gamelift-sdk-server-api.md).

**catatan**  
Topik ini menjelaskan Amazon GameLift Servers C\$1\$1 API yang dapat Anda gunakan saat membangun dengan C\$1\$1 Standard Library ()`std`. Secara khusus, dokumentasi ini berlaku untuk kode yang Anda kompilasi dengan `-DDGAMELIFT_USE_STD=1` opsi. 

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

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

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

Objek yang mengidentifikasi file yang dihasilkan selama sesi permainan yang Amazon GameLift Servers ingin Anda unggah dan simpan setelah sesi permainan berakhir. Server game menyediakan `LogParameters` Amazon GameLift Servers sebagai bagian dari `ProcessParameters` objek dalam [ProcessReady()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-processready) panggilan.


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| LogPaths |  Daftar jalur direktori ke file log server game yang ingin Anda simpan Amazon GameLift Servers untuk akses future. Proses server menghasilkan file-file ini selama setiap sesi permainan. Anda menentukan jalur dan nama file di server game Anda dan menyimpannya di direktori build game root.  Jalur log harus absolut. Misalnya, jika build game Anda menyimpan log sesi game di jalur seperti`MyGame\sessionLogs\`, maka jalurnya akan berada `c:\game\MyGame\sessionLogs` di instance Windows. **Jenis**: `std:vector<std::string>` **Wajib**: Tidak  | 

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

Gunakan tipe data ini untuk mengonfigurasi pengumpulan metrik dan pelaporan kerusakan untuk server game. Server game berkomunikasi `MetricsParameters` Amazon GameLift Servers dalam [InitMetrics()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initmetrics) panggilan.


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| StatsdHost |  Nama host atau alamat IP server StatSD untuk pengumpulan metrik. **Jenis**: `std::string` **Wajib**: Tidak  | 
| StatsdPort |  Nomor port server StatSD untuk pengumpulan metrik. **Jenis**: `int` **Wajib**: Tidak  | 
| CrashReporterHost |  Nama host atau alamat IP dari server reporter kerusakan. **Jenis**: `std::string` **Wajib**: Tidak  | 
| CrashReporterPort |  Nomor port server reporter kerusakan. **Jenis**: `int` **Wajib**: Tidak  | 
| FlushIntervalMs |  Interval dalam milidetik untuk pembilasan data metrik ke server. **Jenis**: `int` **Wajib**: Tidak  | 
| MaxPacketSize |  Ukuran maksimum dalam byte untuk paket metrik yang dikirim ke server. **Jenis**: `int` **Wajib**: Tidak  | 

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

Tipe data ini berisi kumpulan parameter yang dikirim ke Amazon GameLift Servers dalam file[ProcessReady()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-processready).


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| LogParameters | Objek dengan jalur direktori ke file yang dihasilkan selama sesi permainan. Amazon GameLift Serversmenyalin dan menyimpan file untuk akses future.**Jenis**: `Aws::GameLift::Server::LogParameters`**Wajib**: Tidak | 
| OnHealthCheck | Fungsi callback yang Amazon GameLift Servers memanggil untuk meminta laporan status kesehatan dari proses server. Amazon GameLift Serversmemanggil fungsi ini setiap 60 detik dan menunggu 60 detik untuk respons. Proses server kembali TRUE jika sehat, FALSE jika tidak sehat. Jika tidak ada respons yang dikembalikan, Amazon GameLift Servers mencatat proses server sebagai tidak sehat.**Jenis**: `std::function<bool()> onHealthCheck`**Wajib**: Tidak | 
| OnProcessTerminate | Fungsi callback yang Amazon GameLift Servers memanggil untuk memaksa proses server dimatikan. Setelah memanggil fungsi ini, Amazon GameLift Servers tunggu 5 menit hingga proses server dimatikan dan merespons dengan [ProcessEnding()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-processending) panggilan sebelum mematikan proses server.**Jenis**: `std::function<void()> onProcessTerminate`**Wajib**: Ya | 
| OnStartGameSession | Fungsi callback yang Amazon GameLift Servers memanggil untuk mengaktifkan sesi permainan baru. Amazon GameLift Serversmemanggil fungsi ini dalam menanggapi permintaan klien [CreateGameSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateGameSession.html). Fungsi callback melewati [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession) objek.**Jenis**: `const std::function<void(Aws::GameLift::Model::GameSession)> onStartGameSession`**Wajib**: Ya | 
| OnUpdateGameSession | Fungsi callback yang Amazon GameLift Servers memanggil untuk meneruskan objek sesi game yang diperbarui ke proses server. Amazon GameLift Serversmemanggil fungsi ini ketika permintaan pengisian ulang kecocokan telah diproses untuk menyediakan data mak comblang yang diperbarui. Ini melewati [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession) objek, pembaruan status (updateReason), dan ID tiket isi ulang pertandingan.**Jenis**: `std::function<void(Aws::GameLift::Server::Model::UpdateGameSession)> onUpdateGameSession`**Wajib**: Tidak | 
| Port | Nomor port yang didengarkan oleh proses server untuk koneksi pemain baru. Nilai harus masuk ke dalam kisaran port yang dikonfigurasi untuk setiap armada yang men-deploy build server game ini. Nomor port ini termasuk dalam sesi game dan objek sesi pemain, yang digunakan sesi game saat menghubungkan ke proses server.**Jenis**: `Integer`**Wajib**: Ya | 

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

Jenis data ini diperbarui ke objek sesi permainan, yang mencakup alasan bahwa sesi permainan diperbarui dan ID tiket isi ulang terkait jika pengisian ulang digunakan untuk mengisi sesi pemain dalam sesi permainan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSession | Sebuah objek [GameSession](#integration-server-sdk5-cpp-dataypes-gamesession). GameSessionObjek berisi properti yang menggambarkan sesi permainan. **Jenis**: `Aws::GameLift::Server::GameSession`**Wajib**: Ya | 
| UpdateReason | Alasan bahwa sesi permainan sedang diperbarui.**Jenis**: `Aws::GameLift::Server::UpdateReason`**Wajib**: Ya | 
| BackfillTicketId | ID tiket isi ulang yang mencoba memperbarui sesi permainan.**Jenis**: `std::string`**Wajib**: Tidak | 

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

Tipe data ini memberikan detail sesi permainan. 


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionId |  Pengenal unik untuk sesi permainan. Sesi permainan ARN memiliki format berikut:. `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>` **Jenis**: `std::string` **Wajib**: Tidak  | 
| Nama |  Label deskriptif dari sesi permainan.  **Jenis**: `std::string` **Wajib**: Tidak  | 
| FleetId |  Pengenal unik untuk armada tempat sesi permainan berjalan. **Jenis**: `std::string` **Wajib**: Tidak  | 
| MaximumPlayerSessionCount |  Jumlah maksimum koneksi pemain ke sesi permainan. **Jenis**: `int` **Wajib**: Tidak  | 
| Port |  Nomor port untuk sesi permainan. Untuk terhubung ke server Amazon GameLift Servers game, aplikasi memerlukan alamat IP dan nomor port. **Jenis**: `in` **Wajib**: Tidak  | 
| IpAddress |  Alamat IP dari sesi game. Untuk terhubung ke server Amazon GameLift Servers game, aplikasi memerlukan alamat IP dan nomor port. **Jenis**: `std::string` **Wajib**: Tidak  | 
| GameSessionData |  Set properti sesi game khusus, diformat sebagai nilai string tunggal.  **Jenis**: `std::string` **Wajib**: Tidak  | 
| MatchmakerData |  Informasi tentang proses perjodohan yang digunakan untuk membuat sesi permainan, dalam sintaks JSON, diformat sebagai string. Selain konfigurasi perjodohan yang digunakan, ini berisi data tentang semua pemain yang ditugaskan untuk pertandingan, termasuk atribut pemain dan tugas tim. **Jenis**: `std::string` **Wajib**: Tidak  | 
| GameProperties |  Satu set properti kustom untuk sesi permainan, diformat sebagai pasangan key:value. Properti ini diteruskan dengan permintaan untuk memulai sesi permainan baru. **Jenis**: `std :: vector < GameProperty >` **Wajib**: Tidak  | 
| DnsName |  Pengenal DNS yang ditetapkan ke instance yang menjalankan sesi permainan. Nilai memiliki format berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) Saat menghubungkan ke sesi permainan yang berjalan pada armada yang mendukung TLS, Anda harus menggunakan nama DNS, bukan alamat IP. **Jenis**: `std::string` **Wajib**: Tidak  | 

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

Informasi yang digunakan oleh proses server game untuk membuat koneksi dengan Amazon GameLift Servers layanan. Sertakan parameter ini saat menelepon [InitSDK()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk-anywhere) hanya jika build server game akan dikerahkan ke armada Anywhere atau armada kontainer tanpa Amazon GameLift Servers Agen. Untuk semua skenario penerapan lainnya, panggil [InitSDK()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk) tanpa parameter.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| webSocketUrl |  `GameLiftServerSdkEndpoint`Amazon GameLift ServersPengembalian ketika Anda [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)untuk sumber daya komputasi Amazon GameLift Servers Anywhere. **Jenis**: `std::string` **Wajib**: Ya   | 
| ProsesSid |  Pengenal unik yang terdaftar pada proses server yang menghosting game Anda. **Jenis**: `std::string` **Wajib**: Ya  | 
| hostId | HostIDIni adalah yang ComputeName digunakan saat Anda mendaftarkan komputasi Anda. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Jenis**: `std::string`**Wajib**: Ya | 
| FleeTID | Pengidentifikasi unik armada tempat komputasi terdaftar. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Jenis**: `std::string`**Wajib**: Ya | 
| AuthToken | Token otentikasi yang dihasilkan oleh Amazon GameLift Servers itu mengotentikasi server Anda. Amazon GameLift Servers Untuk informasi selengkapnya, lihat [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Jenis**: `std::string`**Wajib**: Ya | 

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

Informasi yang digunakan untuk membuat permintaan pengisian ulang perjodohan. Server game mengkomunikasikan informasi ini Amazon GameLift Servers dalam [StartMatchBackfill()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-startmatchbackfill) panggilan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionArn |  Pengidentifikasi sesi permainan yang unik. Operasi API `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-actions.html#integration-server-sdk5-cpp-getgamesessionid)` mengembalikan pengenal dalam format ARN. **Jenis**: `std::string` **Wajib**: Ya  | 
| MatchmakingConfigurationArn |  Pengidentifikasi unik, dalam bentuk ARN, untuk digunakan mak comblang untuk permintaan ini. ARN mak comblang untuk sesi permainan asli ada di objek sesi permainan di properti data mak comblang. Pelajari selengkapnya tentang data matchmaker di [ Bekerja dengan data matchmaker](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html). **Jenis**: `std::string` **Wajib**: Ya  | 
| Pemain |  Satu set data yang mewakili semua pemain yang berada di sesi permainan. Matchmaker menggunakan informasi ini untuk mencari pemain baru yang cocok untuk pemain saat ini. **Jenis**: `std::vector<Player>` **Wajib**: Ya  | 
| TicketId |  Pengenal unik untuk tiket permintaan pencocokan atau pencocokan isi ulang. Jika Anda tidak memberikan nilai, Amazon GameLift Servers hasilkan satu. Gunakan pengidentifikasi ini untuk melacak status tiket backfill match atau membatalkan permintaan jika diperlukan.  **Jenis**: `std::string` **Wajib**: Tidak  | 

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

Tipe data ini mewakili pemain dalam perjodohan. Saat memulai permintaan perjodohan, pemain memiliki ID pemain, atribut, dan mungkin data latensi. Amazon GameLift Serversmenambahkan informasi tim setelah pertandingan dibuat.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| LatencyInMS |  Satu set nilai yang dinyatakan dalam milidetik yang menunjukkan jumlah latensi yang dialami pemain saat terhubung ke suatu lokasi.  Jika properti ini digunakan, pemain hanya cocok untuk lokasi yang terdaftar. Jika mak comblang memiliki aturan yang mengevaluasi latensi pemain, pemain harus melaporkan latensi untuk dicocokkan. **Jenis**: `Dictionary<string,int>` **Wajib**: Tidak  | 
| PlayerAttributes |  Kumpulan pasangan kunci:nilai yang berisi informasi pemain untuk digunakan dalam perjodohan. Kunci atribut pemain harus cocok dengan yang PlayerAttributes digunakan dalam set aturan perjodohan. Untuk informasi selengkapnya tentang atribut pemain, lihat [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Jenis**: `std::map<std::string,AttributeValue>` **Wajib**: Tidak  | 
| PlayerId |  Pengenal unik untuk pemain. **Jenis**: `std::string` **Wajib**: Tidak  | 
| Tim |  Nama tim yang ditugaskan pemain dalam pertandingan. Anda menentukan nama tim dalam set aturan perjodohan. **Jenis**: `std::string` **Wajib**: Tidak  | 

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

Objek yang menentukan sesi pemain mana yang akan diambil. Proses server menyediakan informasi ini dengan [DescribePlayerSessions()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-describeplayersessions) panggilan keAmazon GameLift Servers.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionId |  Pengidentifikasi sesi permainan yang unik. Gunakan parameter ini untuk meminta semua sesi pemain untuk sesi game yang ditentukan.  Format ID sesi game adalah`arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>`. `GameSessionID`Ini adalah string ID kustom atau **Jenis**: `std::string` **Wajib**: Tidak  | 
| PlayerSessionId |  Pengenal unik untuk sesi pemain. Gunakan parameter ini untuk meminta satu sesi pemain tertentu. **Jenis**: `std::string` **Wajib**: Tidak  | 
| PlayerId |  Pengenal unik untuk pemain. Gunakan parameter ini untuk meminta semua sesi pemain untuk pemain tertentu. Lihat [Hasilkan pemain IDs](player-sessions-player-identifiers.md). **Jenis**: `std::string` **Wajib**: Tidak  | 
| PlayerSessionStatusFilter |  Status sesi pemain untuk memfilter hasil. Status sesi pemain yang mungkin meliputi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **Jenis**: `std::string` **Wajib**: Tidak  | 
| NextToken |  Token yang menunjukkan awal halaman hasil berikutnya. Untuk menentukan awal kumpulan hasil, jangan berikan nilai. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `std::string` **Wajib**: Tidak  | 
| Kuota |  Jumlah hasil maksimum yang akan dikembalikan. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `int` **Wajib**: Tidak  | 

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

Informasi yang digunakan untuk membatalkan permintaan pengisian ulang perjodohan. Server game mengkomunikasikan informasi ini ke Amazon GameLift Servers layanan dalam [StopMatchBackfill()](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-stopmatchbackfill) panggilan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionArn |  Pengidentifikasi sesi permainan unik dari permintaan yang dibatalkan. **Jenis**: `char[]` **Wajib**: Tidak  | 
| MatchmakingConfigurationArn |  Pengidentifikasi unik dari mak comblang permintaan ini dikirim ke. **Jenis**: `char[]` **Wajib**: Tidak  | 
| TicketId |  Pengenal unik dari tiket permintaan isi ulang yang akan dibatalkan. **Jenis**: `char[]` **Wajib**: Tidak  | 

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

Gunakan nilai-nilai ini dalam [Pemain](#integration-server-sdk5-cpp-dataypes-player) atribut pasangan kunci-nilai. Objek ini memungkinkan Anda menentukan nilai atribut menggunakan salah satu tipe data yang valid: string, nomor, array string, atau peta data. Setiap `AttributeValue` objek harus menggunakan persis salah satu properti yang tersedia:`S`,`N`,`SL`, atau`SDM`.


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| AttrType |  Menentukan jenis nilai atribut. Jenis nilai atribut yang mungkin meliputi:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **Wajib**: Tidak  | 
| D |  Merupakan nilai atribut string. **Jenis**: `std::string` **Wajib**: Tidak  | 
| T |  Merupakan nilai atribut numerik. **Jenis**: `double` **Wajib**: Tidak  | 
| SL |  Merupakan array nilai atribut string. **Jenis**: `std::vector<std::string>` **Wajib**: Tidak  | 
| SDM |  Merupakan kamus kunci string dan nilai ganda. **Jenis**: `std::map<std::string, double>` **Wajib**: Tidak  | 

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

Tipe data ini memberi server game akses terbatas ke AWS sumber daya Anda yang lain. Untuk informasi selengkapnya, lihat [Menyiapkan peran layanan IAM untuk Amazon GameLift Servers](setting-up-role.md).


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| RoleArn | Nama Sumber Daya Amazon (ARN) dari peran layanan yang memperluas akses terbatas ke sumber daya Anda. AWS **Jenis**: `std::string`**Wajib**: Tidak | 
| RoleSessionName | Nama sesi peran yang dapat Anda gunakan untuk mengidentifikasi sesi secara unik. AWS Security Token Service [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) Nama ini diekspos di log audit seperti yang ada di CloudTrail. **Jenis**: `std::string`  **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: `long` **Wajib**: Tidak  | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `long&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: `std::string` **Wajib**: Tidak  | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `long&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [DescribePlayerSessionsResult](#integration-server-sdk5-cpp-datatypes-describeplayersessionsresult) **Wajib**: Tidak   | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `Aws::GameLift::Server::Model::DescribePlayerSessionsResult&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Kumpulan objek yang berisi properti untuk setiap sesi pemain yang cocok dengan permintaan. 


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| NextToken |  Token yang menunjukkan awal halaman hasil sekuensial berikutnya. Gunakan token yang dikembalikan dengan panggilan sebelumnya untuk operasi ini. Untuk memulai di awal set hasil, jangan tentukan nilai. Jika ID sesi pemain ditentukan, parameter ini diabaikan.  **Jenis**: `std::string` **Wajib**: Ya  | 
| PlayerSessions |  **Jenis**: `IList<PlayerSession>` **Diperlukan:**   | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `std::string&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini adalah hasil generik asinkron. Ini memiliki sifat-sifat berikut: 


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini mewakili sesi pemain yang Amazon GameLift Servers lolos ke server game. Untuk informasi selengkapnya, lihat [PlayerSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_PlayerSession.html). 


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| CreationTime |  **Jenis**: `long` **Wajib**: Tidak  | 
| FleetId |  **Jenis**: `std::string` **Wajib**: Tidak  | 
| GameSessionId |  **Jenis**: `std::string` **Wajib**: Tidak  | 
| IpAddress |  **Jenis**: `std::string` **Wajib**: Tidak  | 
| PlayerData |  **Jenis**: `std::string` **Wajib**: Tidak  | 
| PlayerId |  **Jenis**: `std::string` **Wajib**: Tidak  | 
| PlayerSessionId |  **Jenis**: `std::string` **Wajib**: Tidak  | 
| Port |  **Jenis**: `int` **Wajib**: Tidak  | 
| Status |  Status sesi pemain untuk mem-filter hasil. Ketika a PlayerSessionId atau PlayerId disediakan, maka tidak PlayerSessionStatusFilter berpengaruh pada respons.  **Tipe:** A `PlayerSessionStatus` enum. Kemungkinan nilainya mencakup berikut ini:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **Wajib**: Tidak  | 
| TerminationTime |  **Jenis**: `long` **Wajib**: Tidak  | 
| DnsName |  **Jenis**: `std::string` **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [StartMatchBackfillResult](#integration-server-sdk5-cpp-datatypes-startmatchbackfillresult) **Wajib**: Tidak  | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `StartMatchBackfillResult&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| TicketId |  Pengenal unik untuk tiket perjodohan. Jika tidak ada ID tiket yang ditentukan di sini, Amazon GameLift Servers akan menghasilkan satu dalam bentuk UUID. Gunakan pengenal ini untuk melacak status tiket isi ulang pertandingan dan mengambil hasil pertandingan.  **Jenis**: `std::string` **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [GetComputeCertificateResult](#integration-server-sdk5-cpp-datatypes-getcomputecertificateresult) **Wajib**: Tidak   | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `Aws::GameLift::Server::Model::GetComputeCertificateResult&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Jalur ke sertifikat TLS pada komputasi Anda dan nama host komputasi.


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| CertificatePath |  Jalur ke sertifikat TLS pada sumber daya komputasi Anda. Saat menggunakan armada Amazon GameLift Servers terkelola, jalur ini berisi:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-cpp-datatypes.html) **Jenis**: `std::string` **Wajib**: Tidak  | 
| ComputeName |  Nama sumber daya komputasi Anda. **Jenis**: `std::string` **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [GetFleetRoleCredentialsResult](#integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsresult) **Wajib**: Tidak   | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `Aws::GameLift::Server::Model::GetFleetRoleCredentialsResult` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| AccessKeyId |  ID kunci akses untuk mengautentikasi dan menyediakan akses ke AWS sumber daya Anda. **Jenis**: `string` **Wajib**: Tidak  | 
| AssumedRoleId |  ID pengguna yang menjadi milik peran layanan. **Jenis**: `string` **Wajib**: Tidak  | 
| AssumedRoleUserArn |  Nama Sumber Daya Amazon (ARN) pengguna yang menjadi milik peran layanan. **Jenis**: `string` **Wajib**: Tidak  | 
| Kedaluwarsa |  Jumlah waktu hingga kredensi sesi Anda kedaluwarsa. **Jenis**: `DateTime` **Wajib**: Tidak  | 
| SecretAccessKey |  ID kunci akses rahasia untuk otentikasi. **Jenis**: `string` **Wajib**: Tidak  | 
| SessionToken |  Token untuk mengidentifikasi sesi aktif saat ini yang berinteraksi dengan AWS sumber daya Anda. **Jenis**: `string` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

**catatan**  
`InitSDKOutcome`dikembalikan hanya ketika Anda membangun SDK dengan `std` flag. Jika Anda membangun dengan `nostd` bendera, maka [GenericOutcome](#integration-server-sdk5-cpp-datatypes-genericoutcome) dikembalikan sebagai gantinya.


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-cpp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| ErrorType |  Jenis kesalahan. **Tipe:** A `GameLiftErrorType` [enum](#integration-server-sdk5-cpp-dataypes-enums). **Wajib**: Tidak   | 
| ErrorName |  Nama kesalahannya.  **Jenis**: `std::string`  **Wajib**: Tidak   | 
| ErrorMessage |  Pesan kesalahan.  **Jenis**: `std::string`  **Wajib**: Tidak   | 

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

Enum yang didefinisikan untuk SDK server untuk Amazon GameLift Servers (C \$1\$1) didefinisikan sebagai berikut: 

**GameLiftErrorType**  
Nilai string yang menunjukkan jenis kesalahan. Nilai yang valid meliputi:  
+ **BAD\$1REQUEST\$1EXCEPTION** 
+ **GAMESESSION\$1ID\$1NOT\$1SET — ID sesi permainan belum ditetapkan**. 
+ **INTERNAL\$1SERVICE\$1EXCEPTION** 
+ **LOCAL\$1CONNECTION\$1FAILED — Koneksi lokal gagal**. Amazon GameLift Servers 
+ **NETWORK\$1NOT\$1INITIALIZED — Jaringan belum diinisialisasi**. 
+ **SERVICE\$1CALL\$1FAILED - Panggilan ke layanan telah gagal**. AWS 
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FALURE\$1FORBIDDEN** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1INVALID\$1URL** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **ALREADY\$1INITIALIZED** — Amazon GameLift Servers Server atau Klien telah diinisialisasi dengan Initialize (). 
+ **FLEET\$1MISMATCH** — Armada target tidak cocok dengan armada GameSession atau PlayerSession. 
+ **GAMELIFT\$1CLIENT\$1NOT\$1INITIALIZED — Klien belum diinisialisasi**. Amazon GameLift Servers 
+ **GAMELIFT\$1SERVER\$1NOT\$1INITIALIZED — Server belum diinisialisasi**. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1ENDED\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan sesi permainan berakhir. 
+ **GAME\$1SESSION\$1NOT\$1READY — Sesi Game Server** tidak diaktifkan. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1READY\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan sesi permainan sudah siap. 
+ **INITIALIZATION\$1MISMATCH** — Metode klien dipanggil setelah Server: :Initialize (), atau sebaliknya. 
+ **NOT\$1INITIALIZED** — Amazon GameLift Servers Server atau Klien belum diinisialisasi dengan Initialize (). 
+ **NO\$1TARGET\$1ALIASID\$1SET — AliaID target belum ditetapkan**. 
+ **NO\$1TARGET\$1FLEET\$1SET — Armada target belum ditetapkan**. 
+ **PROCESS\$1ENDING\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan proses berakhir. 
+ **PROCESS\$1NOT\$1ACTIVE** — Proses server belum aktif, tidak terikat pada GameSession, dan tidak dapat menerima atau memproses. PlayerSessions 
+ **PROCESS\$1NOT\$1READY** — Proses server belum siap untuk diaktifkan. 
+ **PROCESS\$1READY\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan proses siap. 
+ **SDK\$1VERSION\$1DETECTION\$1FAILED — Deteksi versi** SDK gagal. 
+ **STX\$1CALL\$1FAILED — Panggilan ke komponen backend XStx server telah gagal**. 
+ **STX\$1INITIALIZATION\$1FAILED — Komponen backend server gagal** XStx menginisialisasi. 
+ **UNEXPECTED\$1PLAYER\$1SESSION — Sesi** pemain yang tidak terdaftar ditemui oleh server. 
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FALURE\$1FORBIDDEN** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1INVALID\$1URL** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **WEBSOCKET\$1RETRIABLE\$1SEND\$1MESSAGE\$1FAILURE - Kegagalan yang dapat diambil untuk mengirim pesan ke Layanan**. GameLift WebSocket 
+ **WEBSOCKET\$1SEND\$1MESSAGE\$1FAILURE — Kegagalan untuk mengirim pesan** ke Layanan. GameLift WebSocket 
+ **MATCH\$1BACKFILL\$1REQUEST\$1VALIDATION — Validasi permintaan gagal**. 
+ **PLAYER\$1SESSION\$1REQUEST\$1VALIDATION — Validasi permintaan gagal**. 

**PlayerSessionCreationPolicy**  
Nilai string yang menunjukkan apakah sesi game menerima pemain baru. Nilai yang valid meliputi:   
+ **ACCEPT\$1ALL** — Menerima semua sesi pemain baru. 
+ **DENY\$1ALL** — Menolak semua sesi pemain baru. 
+ **NOT\$1SET** — Sesi permainan tidak diatur untuk menerima atau menolak sesi pemain baru. 

[Server C \$1\$1 SDK 5.x untuk Amazon GameLift Servers -- Tipe data](integration-server-sdk5-cpp-datatypes.md)

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

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

Mengembalikan nomor versi SDK saat ini yang dibangun ke dalam proses server.

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk5-cpp-getsdkversion-return"></a>

Jika berhasil, ini mengembalikan versi SDK saat ini sebagai objek [AwsStringOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-awsstringoutcome). Objek yang dikembalikan menyertakan nomor versi (contoh`5.0.0`). Jika tidak berhasil, ini mengembalikan pesan kesalahan.

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

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

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

Menginisialisasi sistem metrik untuk mengumpulkan dan melaporkan data kinerja server. Untuk hasil terbaik, hubungi metode ini sebelumnya [InitSDK()](#integration-server-sdk5-cpp-initsdk) untuk mengaktifkan pengumpulan metrik selama inisialisasi SDK.

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

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

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

[MetricsParameters](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-metricsparameters) (opsional)  
Parameter konfigurasi untuk pengumpulan metrik. Jika tidak disediakan, menggunakan nilai default yang dapat diganti oleh variabel lingkungan.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-initmetrics-return"></a>

Jika berhasil, mengembalikan [GenericOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-genericoutcome) objek yang menunjukkan keberhasilan. Jika tidak berhasil, ini mengembalikan pesan kesalahan.

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

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

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

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

Menginisialisasi Amazon GameLift Servers SDK. Panggil metode ini saat diluncurkan sebelum langkah inisialisasi lain yang terkait Amazon GameLift Servers dengan. Tindakan ini membaca parameter server dari lingkungan host untuk mengatur komunikasi antara proses server game dan Amazon GameLift Servers layanan. Ini menggunakan token idempotensi, jadi Anda mencoba kembali panggilan ini dengan aman ketika gagal.

Jika build server game akan dikerahkan tanpa Amazon GameLift Servers Agen ke armada atau armada kontainer Amazon GameLift Servers Anywhere, panggil [InitSDK()](#integration-server-sdk5-cpp-initsdk-anywhere) dan tentukan satu set parameter server.

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk5-cpp-initsdk-return"></a>

Mengembalikan [Init SDKOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-initsdkoutcome) objek yang menunjukkan apakah proses server siap untuk memanggil[ProcessReady()](#integration-server-sdk5-cpp-processready). 

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

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

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

Menginisialisasi Amazon GameLift Servers SDK. Panggil metode ini saat diluncurkan sebelum langkah inisialisasi lain yang terkait Amazon GameLift Servers dengan. Tindakan ini membutuhkan seperangkat parameter server untuk mengatur komunikasi antara proses server game dan Amazon GameLift Servers layanan. Ini menggunakan token idempotensi, jadi Anda mencoba kembali panggilan ini dengan aman ketika gagal.

Jika build server game akan dikerahkan ke armada EC2 Amazon GameLift Servers terkelola atau ke armada Amazon GameLift Servers Anywhere atau armada kontainer dengan Amazon GameLift Servers Agen, hubungi [InitSDK()](#integration-server-sdk5-cpp-initsdk) tanpa parameter server.

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

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

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

[ServerParameters](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-serverparameters)  
Untuk menginisialisasi server game pada armada Amazon GameLift Servers Anywhere, buat `ServerParameters` objek dengan informasi berikut:  
+ URL yang WebSocket digunakan untuk terhubung ke server game Anda. 
+ ID dari proses yang digunakan untuk meng-host server game Anda. 
+ ID komputasi yang menghosting proses server game Anda. 
+ ID Amazon GameLift Servers armada yang berisi komputasi Amazon GameLift Servers Anywhere Anda.
+ Token otorisasi yang dihasilkan oleh Amazon GameLift Servers operasi. 

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-initsdk-anywhere-return"></a>

Mengembalikan [Init SDKOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-initsdkoutcome) objek yang menunjukkan apakah proses server siap untuk memanggil[ProcessReady()](#integration-server-sdk5-cpp-processready). 

**catatan**  
Jika panggilan gagal untuk build game yang diterapkan ke `InitSDK()` armada Anywhere, periksa `ServerSdkVersion` parameter yang digunakan saat membuat sumber daya build. Anda harus secara eksplisit menetapkan nilai ini ke versi SDK server yang digunakan. Nilai default untuk parameter ini adalah 4.x, yang tidak kompatibel. Untuk mengatasi masalah ini, buat build baru dan terapkan ke armada baru.

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

Amazon GameLift ServersContoh di mana saja

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

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

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

Memberitahu Amazon GameLift Servers bahwa proses server siap untuk meng-host sesi permainan. Panggil metode ini setelah memanggil[InitSDK()](#integration-server-sdk5-cpp-initsdk). Metode ini harus dipanggil hanya satu kali per proses.

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

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

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

**processParameters**  
Sebuah objek [ProcessParameters](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-process) yang mengomunikasikan informasi berikut tentang proses server:  
+ Nama metode callback yang diimplementasikan dalam kode server game yang dipanggil Amazon GameLift Servers layanan untuk berkomunikasi dengan proses server.
+ Nomor port yang didengarkan oleh proses server.
+ Jalur ke file khusus sesi game apa pun yang Amazon GameLift Servers ingin Anda tangkap dan simpan.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-processready-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini menggambarkan panggilan [ProcessReady()](#integration-server-sdk5-cpp-processready) dan mendelegasi implementasi fungsi.

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

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

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

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

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

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

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

Memberitahu Amazon GameLift Servers layanan bahwa proses server siap untuk meng-host sesi permainan. Metode ini harus dipanggil setelah proses server siap untuk meng-host sesi permainan. Parameter menentukan nama fungsi callback Amazon GameLift Servers untuk dipanggil dalam keadaan tertentu. Kode server game harus menerapkan fungsi-fungsi ini.

Ini adalah panggilan asinkron. Untuk membuat panggilan sinkron, gunakan [ProcessReady()](#integration-server-sdk5-cpp-processready). Lihat [Inisialisasi proses server](gamelift-sdk-server-api.md#gamelift-sdk-server-initialize) untuk detail selengkapnya.

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

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

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

**processParameters**  
Sebuah objek [ProcessParameters](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-process) yang mengomunikasikan informasi berikut tentang proses server:  
+ Nama metode callback yang diimplementasikan dalam kode server game yang dipanggil Amazon GameLift Servers layanan untuk berkomunikasi dengan proses server.
+ Nomor port yang didengarkan oleh proses server.
+ Jalur ke file khusus sesi game apa pun yang Amazon GameLift Servers ingin Anda tangkap dan simpan.
Wajib: Ya

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-processreadyasync-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

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

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

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

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

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

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

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

Memberitahu Amazon GameLift Servers bahwa proses server berakhir. Panggil metode ini setelah semua tugas pembersihan lainnya (termasuk mematikan sesi permainan aktif) dan sebelum mengakhiri proses. Tergantung pada hasil`ProcessEnding()`, proses keluar dengan sukses (0) atau kesalahan (-1) dan menghasilkan peristiwa armada. Jika proses berakhir dengan kesalahan, peristiwa armada yang dihasilkan adalah`SERVER_PROCESS_TERMINATED_UNHEALTHY`.

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk5-cpp-processending-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini memanggil `ProcessEnding()` dan `Destroy()` sebelum menghentikan proses server dengan kode keluar sukses atau kesalahan.

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

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

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

Memberitahu Amazon GameLift Servers bahwa proses server telah mengaktifkan sesi permainan dan sekarang siap menerima koneksi pemain. Tindakan ini harus dipanggil sebagai bagian dari fungsi `onStartGameSession()` callback, setelah semua inisialisasi sesi game.

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk5-cpp-activategamesession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini menunjukkan `ActivateGameSession()` dipanggil sebagai bagian dari fungsi `onStartGameSession()` delegasi. 

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

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

Memperbarui kemampuan sesi game saat ini untuk menerima sesi pemain baru. Sesi game dapat diatur untuk menerima atau menolak semua sesi pemain baru.

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

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

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

**playerCreationSessionKebijakan**  
Jenis: nilai `PlayerSessionCreationPolicy` [enum](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-enums).  
Wajib: Ya

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-updateplayersessioncreationpolicy-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini menetapkan kebijakan bergabung sesi game saat ini untuk menerima semua pemain.

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

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

Mengambil ID sesi permainan yang dihosting oleh proses server aktif. 

Untuk proses idle yang tidak diaktifkan dengan sesi game, panggilan akan menampilkan file. [GameLiftError](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-gamelifterror)

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

```
AwsStringOutcome GetGameSessionId()
```

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

Tindakan ini tidak memiliki parameter.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-getgamesessionid-return"></a>

Jika berhasil, ini mengembalikan ID sesi game sebagai objek [AwsStringOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-awsstringoutcome). Jika tidak berhasil, ini mengembalikan pesan kesalahan.

Untuk proses idle yang tidak diaktifkan dengan sesi game, panggilan mengembalikan `Success` = `True` dan `GameSessionId` =`""`.

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

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

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

Mengembalikan waktu yang merupakan jadwal proses server akan ditutup, jika waktu penghentian tersedia. Proses server mengambil tindakan setelah menerima `onProcessTerminate()` panggilan balik dariAmazon GameLift Servers. Amazon GameLift Serverspanggilan `onProcessTerminate()` untuk alasan berikut: 
+ Ketika proses server telah melaporkan kesehatan yang buruk atau belum Amazon GameLift Servers merespons.
+ Saat mengakhiri instance selama acara scale-down.
+ Ketika sebuah instance dihentikan karena gangguan [spot-instance](spot-tasks.md).

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

```
AwsDateTimeOutcome GetTerminationTime()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-cpp-getterm-return"></a>

Jika berhasil, ini mengembalikan waktu penghentian sebagai objek `AwsDateTimeOutcome`. Nilainya adalah waktu penghentian, dinyatakan dalam kutu yang telah berlalu sejak. `0001 00:00:00` Misalnya, nilai waktu tanggal `2020-09-13 12:26:40 -000Z` sama dengan `637355968000000000` kutu. Jika tidak ada waktu penghentian tersedia, pesan kesalahan ditampilkan.

Jika proses belum menerima ProcessParameters. OnProcessTerminate() callback, pesan kesalahan dikembalikan. Untuk informasi selengkapnya tentang mematikan proses server, lihat[Menanggapi notifikasi shutdown proses server](gamelift-sdk-server-api.md#gamelift-sdk-server-terminate).

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

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

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

Memberitahu Amazon GameLift Servers bahwa pemain dengan ID sesi pemain tertentu telah terhubung ke proses server dan membutuhkan validasi. Amazon GameLift Serversmemverifikasi bahwa ID sesi pemain valid. Setelah sesi pemain divalidasi, Amazon GameLift Servers mengubah status slot pemain dari RESERVED menjadi AKTIF. 

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

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

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

playerSessionId  
ID unik yang dikeluarkan oleh Amazon GameLift Servers saat sesi pemain baru dibuat.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-acceptplayersession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan. 

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

Contoh ini menangani permintaan koneksi yang mencakup memvalidasi dan menolak sesi pemain yang tidak valid. IDs

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

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

Memberitahu Amazon GameLift Servers bahwa pemain telah terputus dari proses server. Sebagai tanggapan, Amazon GameLift Servers ubah slot pemain menjadi tersedia. 

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

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

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

**`playerSessionId`**  
ID unik yang dikeluarkan oleh Amazon GameLift Servers saat sesi pemain baru dibuat.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-removeplayersession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

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

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

Mengambil data sesi pemain yang mencakup pengaturan, metadata sesi, dan data pemain. Gunakan metode ini untuk mendapatkan informasi tentang hal-hal berikut:
+ Sesi pemain tunggal
+ Semua sesi pemain dalam sesi permainan
+ Semua sesi pemain yang terkait dengan ID pemain tunggal

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

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

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

**[DescribePlayerSessionsRequest](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-playersessions)**  
[DescribePlayerSessionsRequest](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-playersessions)Objek yang menggambarkan sesi pemain mana yang akan diambil.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-describeplayersessions-return"></a>

Jika berhasil, ini mengembalikan objek [DescribePlayerSessionsOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-describeplayersessionsoutcome) yang berisi satu set objek sesi pemain yang sesuai dengan parameter permintaan.

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

Contoh ini meminta semua sesi pemain yang terhubung secara aktif ke sesi permainan tertentu. Dengan menghilangkan *NextToken*dan mengatur nilai *Batas* ke 10, Amazon GameLift Servers mengembalikan catatan sesi 10 pemain pertama yang cocok dengan permintaan.

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

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

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

Mengirim permintaan untuk menemukan pemain baru untuk slot terbuka dalam sesi permainan yang dibuat denganFlexMatch. Untuk informasi selengkapnya, lihat [fitur FlexMatch isi ulang](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Tindakan ini asinkron. Jika pemain baru dicocokkan, kirimkan data Amazon GameLift Servers mak comblang yang diperbarui menggunakan fungsi panggilan balik. `OnUpdateGameSession()`

Proses server hanya dapat melakukan satu permintaan backfill match yang aktif dalam satu waktu. Untuk mengirim permintaan baru, panggil [StopMatchBackfill()](#integration-server-sdk5-cpp-stopmatchbackfill) terlebih dahulu untuk membatalkan permintaan asli.

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

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

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

**[StartMatchBackfillRequest](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-startmatchbackfillrequest)**  
 StartMatchBackfillRequest Objek yang mengkomunikasikan informasi berikut:  
+ ID tiket untuk ditetapkan ke permintaan backfill. Informasi ini opsional; jika tidak ada ID yang diberikan, Amazon GameLift Servers akan menghasilkan satu.
+ Matchmaker untuk dikirimi permintaan. ARN konfigurasi penuh diperlukan. Nilai ini ada dalam data mak comblang sesi permainan.
+ ID sesi permainan untuk mengisi ulang.
+ Data perjodohan yang tersedia untuk pemain sesi permainan saat ini.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-startmatchbackfill-return"></a>

Mengembalikan [StartMatchBackfillOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-startmatchbackfilloutcome) objek dengan ID tiket isi ulang kecocokan, atau kegagalan dengan pesan kesalahan. 

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

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

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

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

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

Membatalkan permintaan pengisian ulang pertandingan yang aktif. Untuk informasi selengkapnya, lihat [fitur FlexMatch isi ulang](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

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

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

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

**[StopMatchBackfillRequest](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-stopmatchbackfillrequest)**  
 StopMatchBackfillRequest Objek yang mengidentifikasi tiket perjodohan untuk dibatalkan:   
+ ID tiket yang ditetapkan untuk permintaan pengisian ulang.
+ Mak comblang permintaan isi ulang dikirim ke.
+ Sesi permainan yang terkait dengan permintaan isi ulang.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-stopmatchbackfill-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

```
// Set backfill stop request parameters

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

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

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

Mengambil jalur ke sertifikat TLS yang digunakan untuk mengenkripsi koneksi jaringan antara sumber daya komputasi Amazon GameLift Servers Anywhere Anda dan. Amazon GameLift Servers Anda dapat menggunakan jalur sertifikat saat mendaftarkan perangkat komputasi ke armada Amazon GameLift Servers Anywhere. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk5-cpp-getcomputecertificate-return"></a>

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

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

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

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

Mengambil kredensyal peran IAM yang memberi wewenang Amazon GameLift Servers untuk berinteraksi dengan orang lain. Layanan AWS Untuk informasi selengkapnya, lihat [Hubungkan server game yang Amazon GameLift Servers di-host ke AWS sumber daya lain](gamelift-sdk-server-resources.md).

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

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

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

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

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-getfleetrolecredentials-return"></a>

Mengembalikan objek [GetFleetRoleCredentialsOutcome](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-datatypes-getfleetrolecredentialsoutcome).

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

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

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

Contoh ini menunjukkan penggunaan `RoleSessionName` nilai opsional untuk menetapkan nama ke sesi kredensyal untuk tujuan audit. Jika Anda tidak memberikan nama sesi peran, nilai default "*[fleet-id]*-*[host-id]*" digunakan.

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

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

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

Membebaskan SDK server Amazon GameLift Servers game dari memori. Sebagai praktik terbaik, hubungi metode ini setelah `ProcessEnding()` dan sebelum mengakhiri proses. Jika Anda menggunakan armada Anywhere dan Anda tidak menghentikan proses server setelah setiap sesi game, panggil `Destroy()` dan kemudian `InitSDK()` untuk menginisialisasi ulang sebelum memberi tahu Amazon GameLift Servers bahwa proses tersebut siap untuk menjadi tuan rumah sesi game. `ProcessReady()`

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

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

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

Tidak ada parameter.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-cpp-ref-destroy-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

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

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

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

Gunakan referensi SDK 5.x server untuk mengintegrasikan game multipemain Anda untuk hosting. Amazon GameLift Servers Untuk panduan tentang proses integrasi, lihat[Tambahkan Amazon GameLift Servers ke server game Anda dengan SDK server](gamelift-sdk-server-api.md). Jika Anda menggunakan Amazon GameLift Servers plugin untuk Unity, lihat juga[Amazon GameLift Serversplugin untuk Unity (server SDK 5.x)](unity-plug-in.md).

# C\$1 server SDK 5.x untuk Amazon GameLift Servers - Tipe data
<a name="integration-server-sdk5-csharp-datatypes"></a>

Gunakan referensi SDK 5.x server Amazon GameLift Servers C \$1 untuk mengintegrasikan game multipemain Anda untuk hosting. Amazon GameLift Servers Untuk panduan tentang proses integrasi, lihat[Tambahkan Amazon GameLift Servers ke server game Anda dengan SDK server](gamelift-sdk-server-api.md). Jika Anda menggunakan Amazon GameLift Servers plugin untuk Unity, lihat juga[Amazon GameLift Serversplugin untuk Unity (server SDK 5.x)](unity-plug-in.md).

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

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

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

Gunakan tipe data ini untuk mengidentifikasi file mana yang dihasilkan selama sesi permainan yang Anda inginkan untuk diunggah oleh server game Amazon GameLift Servers setelah sesi permainan berakhir. Server game berkomunikasi `LogParameters to` Amazon GameLift Servers dalam [ProcessReady()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-processready) panggilan.


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| LogPaths |  Daftar jalur direktori ke file log server game yang ingin Anda simpan Amazon GameLift Servers untuk akses future. Proses server menghasilkan file-file ini selama setiap sesi permainan. Anda menentukan jalur dan nama file di server game Anda dan menyimpannya di direktori build game root.  Jalur log harus absolut. Misalnya, jika build game Anda menyimpan log sesi game di jalur seperti`MyGame\sessionLogs\`, maka jalurnya akan berada `c:\game\MyGame\sessionLogs` di instance Windows. **Jenis**: `List<String>` **Wajib**: Tidak  | 

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

Gunakan tipe data ini untuk mengonfigurasi pengumpulan metrik dan pelaporan kerusakan untuk server game. Server game berkomunikasi `MetricsParameters` Amazon GameLift Servers dalam [InitMetrics()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initmetrics) panggilan.


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| StatsdHost |  Nama host atau alamat IP server StatSD untuk pengumpulan metrik. **Jenis**: `String` **Wajib**: Tidak  | 
| StatsdPort |  Nomor port server StatSD untuk pengumpulan metrik. **Jenis**: `Integer` **Wajib**: Tidak  | 
| CrashReporterHost |  Nama host atau alamat IP dari server reporter kerusakan. **Jenis**: `String` **Wajib**: Tidak  | 
| CrashReporterPort |  Nomor port server reporter kerusakan. **Jenis**: `Integer` **Wajib**: Tidak  | 
| FlushIntervalMs |  Interval dalam milidetik untuk pembilasan data metrik ke server. **Jenis**: `Integer` **Wajib**: Tidak  | 
| MaxPacketSize |  Ukuran maksimum dalam byte untuk paket metrik yang dikirim ke server. **Jenis**: `Integer` **Wajib**: Tidak  | 

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

Tipe data ini berisi kumpulan parameter yang dikirim ke Amazon GameLift Servers dalam [ProcessReady()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-processready) panggilan.


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| LogParameters | Objek dengan daftar jalur direktori ke file log sesi game.**Jenis**: `Aws::GameLift::Server::LogParameters`**Wajib**: Ya | 
| OnHealthCheck | Nama fungsi callback yang Amazon GameLift Servers memanggil untuk meminta laporan status kesehatan dari proses server. Amazon GameLift Serversmemanggil fungsi ini setiap 60 detik. Setelah memanggil fungsi ini Amazon GameLift Servers menunggu 60 detik untuk respons, jika tidak ada yang diterima, Amazon GameLift Servers mencatat proses server sebagai tidak sehat.**Jenis**: `void OnHealthCheckDelegate()`**Wajib**: Ya | 
| OnProcessTerminate | Nama fungsi callback yang Amazon GameLift Servers memanggil untuk memaksa proses server dimatikan. Setelah memanggil fungsi ini, Amazon GameLift Servers tunggu lima menit hingga proses server dimatikan dan merespons dengan [ProcessEnding()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-processending) panggilan sebelum mematikan proses server.**Jenis**: `void OnProcessTerminateDelegate()`**Wajib**: Ya | 
| OnStartGameSession | Nama fungsi callback yang Amazon GameLift Servers memanggil untuk mengaktifkan sesi permainan baru. Amazon GameLift Serversmemanggil fungsi ini sebagai tanggapan atas permintaan klien [CreateGameSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateGameSession.html). Fungsi callback mengambil [GameSession](#integration-server-sdk5-csharp-dataypes-gamesession) objek.**Jenis**: `void OnStartGameSessionDelegate(GameSession)`**Wajib**: Ya | 
| OnUpdateGameSession | Nama fungsi callback yang Amazon GameLift Servers memanggil untuk meneruskan objek sesi permainan yang diperbarui ke proses server. Amazon GameLift Serversmemanggil fungsi ini ketika permintaan pengisian ulang kecocokan telah diproses untuk menyediakan data mak comblang yang diperbarui. Ini melewati [GameSession](#integration-server-sdk5-csharp-dataypes-gamesession) objek, pembaruan status (updateReason), dan ID tiket penimbunan ulang pertandingan.**Jenis:** void OnUpdateGameSessionDelegate () [UpdateGameSession](#integration-server-sdk5-csharp-dataypes-updategamesession)**Wajib**: Tidak | 
| Port | Nomor port yang didengarkan oleh proses server untuk koneksi pemain baru. Nilai harus masuk ke dalam kisaran port yang dikonfigurasi untuk setiap armada yang men-deploy build server game ini. Nomor port ini termasuk dalam sesi game dan objek sesi pemain, yang digunakan sesi game saat menghubungkan ke proses server.**Jenis**: `Integer`**Wajib**: Ya | 

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

Informasi yang diperbarui untuk objek sesi permainan, termasuk alasan bahwa sesi permainan diperbarui. Jika pembaruan terkait dengan tindakan pengisian ulang kecocokan, tipe data ini menyertakan ID tiket isi ulang.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSession | Sebuah objek [GameSession](#integration-server-sdk5-csharp-dataypes-gamesession). GameSessionObjek berisi properti yang menggambarkan sesi permainan. **Jenis**: `GameSession GameSession()`**Wajib**: Ya | 
| UpdateReason | Alasan bahwa sesi permainan sedang diperbarui.**Jenis**: `UpdateReason UpdateReason()`**Wajib**: Ya | 
| BackfillTicketId | ID tiket isi ulang yang mencoba memperbarui sesi permainan.**Jenis**: `String`**Wajib**: Ya | 

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

Detail sesi permainan. 


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionId |  Pengenal unik untuk sesi permainan. Sesi permainan ARN memiliki format berikut:. `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>` **Jenis**: `String` **Wajib**: Tidak  | 
| Nama |  Label deskriptif dari sesi permainan.  **Jenis**: `String` **Wajib**: Tidak  | 
| FleetId |  Pengenal unik untuk armada tempat sesi permainan berjalan. **Jenis**: `String` **Wajib**: Tidak  | 
| MaximumPlayerSessionCount |  Jumlah maksimum koneksi pemain ke sesi permainan. **Jenis**: `Integer` **Wajib**: Tidak  | 
| Port |  Nomor port untuk sesi permainan. Untuk terhubung ke server Amazon GameLift Servers game, aplikasi memerlukan alamat IP dan nomor port. **Jenis**: `Integer` **Wajib**: Tidak  | 
| IpAddress |  Alamat IP dari sesi game. Untuk terhubung ke server Amazon GameLift Servers game, aplikasi memerlukan alamat IP dan nomor port. **Jenis**: `String` **Wajib**: Tidak  | 
| GameSessionData |  Set properti sesi game khusus, diformat sebagai nilai string tunggal.  **Jenis**: `String` **Wajib**: Tidak  | 
| MatchmakerData |  Informasi tentang proses perjodohan yang digunakan untuk membuat sesi permainan, dalam sintaks JSON, diformat sebagai string. Selain konfigurasi perjodohan yang digunakan, ini berisi data tentang semua pemain yang ditugaskan untuk pertandingan, termasuk atribut pemain dan tugas tim. **Jenis**: `String` **Wajib**: Tidak  | 
| GameProperties |  Satu set properti kustom untuk sesi permainan, diformat sebagai pasangan key:value. Properti ini diteruskan dengan permintaan untuk memulai sesi permainan baru. **Jenis**: `Dictionary<string, string>` **Wajib**: Tidak  | 
| DnsName |  Pengenal DNS yang ditetapkan ke instance yang menjalankan sesi permainan. Nilai memiliki format berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-csharp-datatypes.html) Saat menghubungkan ke sesi permainan yang berjalan pada armada yang mendukung TLS, Anda harus menggunakan nama DNS, bukan alamat IP. **Jenis**: `String` **Wajib**: Tidak  | 

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

Informasi yang digunakan untuk menjaga koneksi antara server Amazon GameLift Servers Anywhere dan Amazon GameLift Servers layanan. Informasi ini digunakan saat meluncurkan proses server baru dengan[InitSDK()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initsdk). Untuk server yang Amazon GameLift Servers dihosting pada instans EC2 terkelola, gunakan objek kosong.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| WebSocketUrl |  Yang `GameLiftServerSdkEndpoint` kembali ketika Anda `RegisterCompute` sebagai bagian dari Amazon GameLift Servers Anywhere. **Jenis**: `String` **Wajib**: Ya  | 
| ProcessId |  Pengenal unik yang terdaftar pada proses server yang menghosting game Anda. **Jenis**: `String` **Wajib**: Ya  | 
| HostId |  Pengenal unik untuk host dengan server memproses hosting game Anda. HostID adalah yang digunakan saat Anda mendaftarkan ComputeName komputasi Anda. Untuk informasi lebih lanjut lihat, [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html) **Jenis**: `String` **Wajib**: Ya  | 
| FleetId | ID armada armada tempat komputasi terdaftar. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Jenis**: `String`**Wajib**: Ya | 
| AuthToken | Token otentikasi yang dihasilkan oleh Amazon GameLift Servers itu mengotentikasi server Anda ke. Amazon GameLift Servers Untuk informasi selengkapnya, lihat [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Jenis**: `String`**Wajib**: Ya | 

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

Informasi yang digunakan untuk membuat permintaan pengisian ulang perjodohan. Server game mengkomunikasikan informasi ini ke Amazon GameLift Servers dalam [StartMatchBackfill()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-startmatchbackfill) panggilan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionArn |  Pengidentifikasi sesi permainan yang unik. Operasi API `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-csharp-actions.html#integration-server-sdk5-csharp-getgamesessionid)` mengembalikan pengenal dalam format ARN. **Jenis**: `String` **Wajib**: Ya  | 
| MatchmakingConfigurationArn |  Pengidentifikasi unik, dalam bentuk ARN, untuk digunakan mak comblang untuk permintaan ini. ARN mak comblang untuk sesi permainan asli ada di objek sesi permainan di properti data mak comblang. Pelajari selengkapnya tentang data matchmaker di [ Bekerja dengan data matchmaker](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html). **Jenis**: `String` **Wajib**: Ya  | 
| Pemain |  Satu set data yang mewakili semua pemain yang saat ini dalam sesi permainan. Matchmaker menggunakan informasi ini untuk mencari pemain baru yang cocok untuk pemain saat ini. **Jenis**: `List<Player>` **Wajib**: Ya  | 
| TicketId |  Pengenal unik untuk tiket permintaan pencocokan atau pencocokan isi ulang. Jika Anda tidak memberikan nilai, Amazon GameLift Servers hasilkan satu. Gunakan pengidentifikasi ini untuk melacak status tiket backfill match atau membatalkan permintaan jika diperlukan.  **Jenis**: `String` **Wajib**: Tidak  | 

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

Merupakan pemain dalam perjodohan. Ketika permintaan perjodohan dimulai, pemain memiliki ID pemain, atribut, dan mungkin data latensi. Amazon GameLift Serversmenambahkan informasi tim setelah pertandingan dibuat.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| LatencyInMS |  Satu set nilai yang dinyatakan dalam milidetik, yang menunjukkan jumlah latensi yang dialami pemain saat terhubung ke suatu lokasi.  Jika properti ini digunakan, pemain hanya cocok untuk lokasi yang terdaftar. Jika mak comblang memiliki aturan yang mengevaluasi latensi pemain, pemain harus melaporkan latensi untuk dicocokkan. **Jenis**: `Dictionary<string, int>` **Wajib**: Tidak  | 
| PlayerAttributes |  Kumpulan pasangan kunci:value yang berisi informasi pemain untuk digunakan dalam perjodohan. Kunci atribut pemain harus cocok dengan yang PlayerAttributes digunakan dalam set aturan perjodohan. Untuk informasi selengkapnya tentang atribut pemain, lihat [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Jenis**: `Dictionary<string, AttributeValue` **Wajib**: Tidak  | 
| PlayerId |  Pengenal unik untuk pemain. **Jenis**: `String` **Wajib**: Tidak  | 
| Tim |  Nama tim yang ditugaskan pemain dalam pertandingan. Anda menentukan nama tim dalam set aturan perjodohan. **Jenis**: `String` **Wajib**: Tidak  | 

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

Jenis data ini digunakan untuk menentukan sesi pemain untuk diambil. Ini dapat digunakan dalam beberapa cara: (1) menyediakan PlayerSessionId untuk meminta sesi pemain tertentu; (2) menyediakan GameSessionId untuk meminta semua sesi pemain dalam sesi permainan yang ditentukan; atau (3) menyediakan PlayerId untuk meminta semua sesi pemain untuk pemain yang ditentukan. Untuk koleksi sesi pemain yang besar, gunakan parameter pemberian nomor halaman untuk mengambil hasil dalam halaman berurutan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionId |  Pengidentifikasi sesi permainan yang unik. Gunakan parameter ini untuk meminta semua sesi pemain untuk sesi game yang ditentukan. Format ID sesi game adalah sebagai berikut: `arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>`. Nilai <ID string> adalah string ID kustom (jika salah satu ditentukan saat sesi game dibuat) atau string yang dihasilkan.  **Jenis**: `String` **Wajib**: Tidak  | 
| PlayerSessionId |  Pengenal unik untuk sesi pemain. **Jenis**: `String` **Wajib**: Tidak  | 
| PlayerId |  Pengenal unik untuk pemain. Lihat [Hasilkan pemain IDs](player-sessions-player-identifiers.md). **Jenis**: `String` **Wajib**: Tidak  | 
| PlayerSessionStatusFilter |  Status sesi pemain untuk memfilter hasil. Kemungkinan status sesi pemain meliputi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-csharp-datatypes.html) **Jenis**: `String` **Wajib**: Tidak  | 
| NextToken |  Token yang menunjukkan awal halaman hasil berikutnya. Untuk menentukan awal kumpulan hasil, jangan berikan nilai. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `String` **Wajib**: Tidak  | 
| Kuota |  Jumlah hasil maksimum yang akan dikembalikan. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `int` **Wajib**: Tidak  | 

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

Informasi yang digunakan untuk membatalkan permintaan pengisian ulang perjodohan. Server game mengkomunikasikan informasi ini ke Amazon GameLift Servers layanan dalam [StopMatchBackfill()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-stopmatchbackfill) panggilan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionArn |  Pengidentifikasi sesi permainan unik dari permintaan yang dibatalkan. **Jenis**: `string` **Wajib**: Ya  | 
| MatchmakingConfigurationArn |  Pengidentifikasi unik dari mak comblang permintaan ini dikirim ke. **Jenis**: `string` **Wajib**: Ya  | 
| TicketId |  Pengenal unik dari tiket permintaan isi ulang yang akan dibatalkan. **Jenis**: `string` **Wajib**: Ya  | 

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

Tipe data ini memberi server game akses terbatas ke AWS sumber daya Anda yang lain. Untuk informasi selengkapnya, lihat [Menyiapkan peran layanan IAM untuk Amazon GameLift Servers](setting-up-role.md).


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| RoleArn | Nama Sumber Daya Amazon (ARN) dari peran layanan yang memperluas akses terbatas ke sumber daya Anda. AWS **Jenis**: `string` **Wajib**: Ya  | 
| RoleSessionName | Nama sesi yang menjelaskan penggunaan kredensyal peran. **Jenis**: `string` **Wajib**: Tidak  | 

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

Gunakan nilai-nilai ini dalam [Pemain](#integration-server-sdk5-csharp-dataypes-player) atribut pasangan kunci-nilai. Objek ini memungkinkan Anda menentukan nilai atribut menggunakan salah satu tipe data yang valid: string, nomor, array string, atau peta data. Setiap `AttributeValue` objek hanya dapat menggunakan salah satu properti yang tersedia.


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| ATTRType |  Menentukan jenis nilai atribut. **Jenis:** Nilai `AttrType` [enum](#integration-server-sdk5-csharp-datatypes-enums).  **Wajib**: Tidak  | 
| D |  Merupakan nilai atribut string. **Jenis**: `string` **Wajib**: Ya  | 
| T |  Merupakan nilai atribut numerik. **Jenis**: `double` **Wajib**: Ya  | 
| SL |  Merupakan array nilai atribut string. **Jenis**: `string[]` **Wajib**: Ya  | 
| SDM |  Merupakan kamus kunci string dan nilai ganda. **Jenis**: `Dictionary<string, double>` **Wajib**: Ya  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: `string` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Merupakan hasil [InitMetrics()](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initmetrics) panggilan. Berisi MetricsManager contoh tentang keberhasilan atau kesalahan informasi tentang kegagalan.


|  |  | 
| --- |--- |
| Hasil |   MetricsManager Contoh untuk mengumpulkan dan melaporkan metrik. **Jenis**: `MetricsManager` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [DescribePlayerSessionsResult](#integration-server-sdk5-csharp-datatypes-describeplayersessionsresult) **Wajib**: Tidak   | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| NextToken |  Token yang menunjukkan awal halaman hasil berikutnya. Untuk menentukan awal kumpulan hasil, jangan berikan nilai. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `string` **Wajib**: Ya  | 
| PlayerSessions |  Kumpulan objek yang berisi properti untuk setiap sesi pemain yang cocok dengan permintaan.  **Jenis**: `IList<PlayerSession>` **Diperlukan:**   | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| CreationTime |  **Jenis**: `long` **Wajib**: Ya  | 
| FleetId |  **Jenis**: `string` **Wajib**: Ya  | 
| GameSessionId |  **Jenis**: `string` **Wajib**: Ya  | 
| IpAddress |  **Jenis**: `string` **Wajib**: Ya  | 
| PlayerData |  **Jenis**: `string` **Wajib**: Ya  | 
| PlayerId |  **Jenis**: `string` **Wajib**: Ya  | 
| PlayerSessionId |  **Jenis**: `string` **Wajib**: Ya  | 
| Port |  **Jenis**: `int` **Wajib**: Ya  | 
| Status |  **Jenis:** A `PlayerSessionStatus` [enum](#integration-server-sdk5-csharp-datatypes-enums). **Wajib**: Ya  | 
| TerminationTime |  **Jenis**: `long` **Wajib**: Ya  | 
| DnsName |  **Jenis**: `string` **Wajib**: Ya  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [StartMatchBackfillResult](#integration-server-sdk5-csharp-datatypes-startmatchbackfillresult) **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| TicketId |  **Jenis**: `string` **Wajib**: Ya  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [GetComputeCertificateResult](#integration-server-sdk5-csharp-datatypes-getcomputecertificateresult) **Wajib**: Tidak   | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Jalur ke sertifikat TLS pada komputasi Anda dan nama host komputasi.


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| CertificatePath |  **Jenis**: `string` **Wajib**: Ya  | 
| ComputeName |  **Jenis**: `string` **Wajib**: Ya  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [GetFleetRoleCredentialsResult](#integration-server-sdk5-csharp-datatypes-getfleetrolecredentialsresult) **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| AccessKeyId |  ID kunci akses untuk mengautentikasi dan menyediakan akses ke AWS sumber daya Anda. **Jenis**: `string` **Wajib**: Tidak  | 
| AssumedRoleId |  ID pengguna yang menjadi milik peran layanan. **Jenis**: `string` **Wajib**: Tidak  | 
| AssumedRoleUserArn |  Nama Sumber Daya Amazon (ARN) pengguna yang menjadi milik peran layanan. **Jenis**: `string` **Wajib**: Tidak  | 
| Kedaluwarsa |  Jumlah waktu hingga kredensi sesi Anda kedaluwarsa. **Jenis**: `DateTime` **Wajib**: Tidak  | 
| SecretAccessKey |  ID kunci akses rahasia untuk otentikasi. **Jenis**: `string` **Wajib**: Tidak  | 
| SessionToken |  Token untuk mengidentifikasi sesi aktif saat ini yang berinteraksi dengan AWS sumber daya Anda. **Jenis**: `string` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: `DateTime` **Wajib**: Tidak   | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| ErrorType |  Jenis kesalahan. **Jenis:** A `GameLiftErrorType` [enum](#integration-server-sdk5-csharp-datatypes-enums). **Wajib**: Tidak   | 
| ErrorName |  Nama kesalahannya.  **Jenis**: `string`  **Wajib**: Tidak   | 
| ErrorMessage |  Pesan kesalahan.  **Jenis**: `string`  **Wajib**: Tidak   | 

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

Enum yang didefinisikan untuk SDK server untuk Amazon GameLift Servers (C \$1) didefinisikan sebagai berikut:

**AttrType**  
+ **TIDAK ADA**
+ **STRING**
+ **GANDA**
+ **STRING\$1LIST**
+ **STRING\$1DOUBLE\$1PETA**

**GameLiftErrorType**  
Nilai string yang menunjukkan jenis kesalahan. Nilai yang valid meliputi:  
+ **SERVICE\$1CALL\$1FAILED - Panggilan ke layanan telah gagal**. AWS 
+ **LOCAL\$1CONNECTION\$1FAILED — Koneksi lokal gagal**. Amazon GameLift Servers 
+ **NETWORK\$1NOT\$1INITIALIZED — Jaringan belum diinisialisasi**. 
+ **GAMESESSION\$1ID\$1NOT\$1SET — ID sesi permainan belum ditetapkan**. 
+ **BAD\$1REQUEST\$1EXCEPTION** 
+ **INTERNAL\$1SERVICE\$1EXCEPTION** 
+ **ALREADY\$1INITIALIZED** — Amazon GameLift Servers Server atau Klien telah diinisialisasi dengan Initialize (). 
+ **FLEET\$1MISMATCH** — Armada target tidak cocok dengan armada GameSession atau PlayerSession. 
+ **GAMELIFT\$1CLIENT\$1NOT\$1INITIALIZED — Klien belum diinisialisasi**. Amazon GameLift Servers 
+ **GAMELIFT\$1SERVER\$1NOT\$1INITIALIZED — Server belum diinisialisasi**. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1ENDED\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan sesi permainan berakhir. 
+ **GAME\$1SESSION\$1NOT\$1READY — Sesi Game Server** tidak diaktifkan. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1READY\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan sesi permainan sudah siap. 
+ **INITIALIZATION\$1MISMATCH** — Metode klien dipanggil setelah Server: :Initialize (), atau sebaliknya. 
+ **NOT\$1INITIALIZED** — Amazon GameLift Servers Server atau Klien belum diinisialisasi dengan Initialize (). 
+ **NO\$1TARGET\$1ALIASID\$1SET — AliaID target belum ditetapkan**. 
+ **NO\$1TARGET\$1FLEET\$1SET — Armada target belum ditetapkan**. 
+ **PROCESS\$1ENDING\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan proses berakhir. 
+ **PROCESS\$1NOT\$1ACTIVE** — Proses server belum aktif, tidak terikat pada GameSession, dan tidak dapat menerima atau memproses. PlayerSessions 
+ **PROCESS\$1NOT\$1READY** — Proses server belum siap untuk diaktifkan. 
+ **PROCESS\$1READY\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan proses siap. 
+ **SDK\$1VERSION\$1DETECTION\$1FAILED — Deteksi versi** SDK gagal. 
+ **STX\$1CALL\$1FAILED — Panggilan ke komponen backend XStx server telah gagal**. 
+ **STX\$1INITIALIZATION\$1FAILED — Komponen backend server gagal** XStx menginisialisasi. 
+ **UNEXPECTED\$1PLAYER\$1SESSION — Sesi** pemain yang tidak terdaftar ditemui oleh server. 
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FALURE\$1FORBIDDEN** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1INVALID\$1URL** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **WEBSOCKET\$1RETRIABLE\$1SEND\$1MESSAGE\$1FAILURE - Kegagalan yang dapat diambil untuk mengirim pesan ke Layanan**. GameLift WebSocket 
+ **WEBSOCKET\$1SEND\$1MESSAGE\$1FAILURE — Kegagalan untuk mengirim pesan** ke Layanan. GameLift WebSocket 
+ **MATCH\$1BACKFILL\$1REQUEST\$1VALIDATION — Validasi permintaan gagal**. 
+ **PLAYER\$1SESSION\$1REQUEST\$1VALIDATION — Validasi permintaan gagal**. 

**PlayerSessionCreationPolicy**  
Nilai string yang menunjukkan apakah sesi game menerima pemain baru. Nilai yang valid meliputi:   
+ **ACCEPT\$1ALL** — Menerima semua sesi pemain baru. 
+ **DENY\$1ALL** — Menolak semua sesi pemain baru. 
+ **NOT\$1SET** — Sesi permainan tidak diatur untuk menerima atau menolak sesi pemain baru. 

**PlayerSessionStatus**  
+ **AKTIF**
+ **SELESAI**
+ **NOT\$1SET**
+ **DIPESAN**
+ **TIMEDOUT**

[C\$1 server SDK 5.x untuk Amazon GameLift Servers - Tipe data](integration-server-sdk5-csharp-datatypes.md)

**Topics**
+ [C\$1 server SDK 5.x untuk Amazon GameLift Servers - Tipe data](integration-server-sdk5-csharp-datatypes.md)
+ [GetSdkVersion()](#integration-server-sdk5-csharp-getsdkversion)
+ [InitMetrics()](#integration-server-sdk5-csharp-initmetrics)
+ [InitSDK()](#integration-server-sdk5-csharp-initsdk)
+ [InitSDK()](#integration-server-sdk5-csharp-initsdk-anywhere)
+ [ProcessReady()](#integration-server-sdk5-csharp-processready)
+ [ProcessEnding()](#integration-server-sdk5-csharp-processending)
+ [ActivateGameSession()](#integration-server-sdk5-csharp-activategamesession)
+ [UpdatePlayerSessionCreationPolicy()](#integration-server-sdk5-csharp-updateplayersessioncreationpolicy)
+ [GetGameSessionId()](#integration-server-sdk5-csharp-getgamesessionid)
+ [GetTerminationTime()](#integration-server-sdk5-csharp-getterm)
+ [AcceptPlayerSession()](#integration-server-sdk5-csharp-acceptplayersession)
+ [RemovePlayerSession()](#integration-server-sdk5-csharp-removeplayersession)
+ [DescribePlayerSessions()](#integration-server-sdk5-csharp-describeplayersessions)
+ [StartMatchBackfill()](#integration-server-sdk5-csharp-startmatchbackfill)
+ [StopMatchBackfill()](#integration-server-sdk5-csharp-stopmatchbackfill)
+ [GetComputeCertificate()](#integration-server-sdk5-csharp-getcomputecertificate)
+ [GetFleetRoleCredentials()](#integration-server-sdk5-csharp-getfleetrolecredentials)
+ [Hancurkan ()](#integration-server-sdk5-csharp-destroy)

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

Mengembalikan nomor versi SDK saat ini yang dibangun ke dalam proses server.

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

```
AwsStringOutcome GetSdkVersion();
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-csharp-getsdkversion-return"></a>

Jika berhasil, ini mengembalikan versi SDK saat ini sebagai objek [AwsStringOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-awsstringoutcome). String yang dikembalikan mencakup nomor versi (contoh`5.0.0`). Jika tidak berhasil, ini mengembalikan pesan kesalahan.

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

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

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

Menginisialisasi sistem metrik untuk mengumpulkan dan melaporkan data kinerja server. Untuk hasil terbaik, hubungi metode ini sebelumnya [InitSDK()](#integration-server-sdk5-csharp-initsdk) untuk mengaktifkan pengumpulan metrik selama inisialisasi SDK.

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

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

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

[MetricsParameters](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-metricsparameters) (opsional)  
Parameter konfigurasi untuk pengumpulan metrik. Jika tidak disediakan, menggunakan nilai default yang dapat diganti oleh variabel lingkungan.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-initmetrics-return"></a>

Jika berhasil, mengembalikan [MetricsManagerOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-metricsmanageroutcome) objek yang berisi MetricsManager instance. Jika tidak berhasil, ini mengembalikan pesan kesalahan.

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

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

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

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

Menginisialisasi Amazon GameLift Servers SDK untuk armada EC2 terkelola. Panggil metode ini saat peluncuran, sebelum inisialisasi lain yang terkait dengan Amazon GameLift Servers terjadi. Metode ini membaca parameter server dari lingkungan host untuk mengatur komunikasi antara server dan Amazon GameLift Servers layanan. Ini menggunakan token idempotensi, jadi Anda mencoba kembali panggilan ini dengan aman ketika gagal.

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

```
GenericOutcome InitSDK();
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-csharp-initsdk-return"></a>

Jika berhasil, mengembalikan InitSdkOutcome objek untuk menunjukkan bahwa proses server siap untuk memanggil[ProcessReady()](#integration-server-sdk5-csharp-processready). 

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

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

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

Menginisialisasi Amazon GameLift Servers SDK untuk armada Anywhere. Panggil metode ini saat peluncuran, sebelum inisialisasi lain yang terkait dengan Amazon GameLift Servers terjadi. Metode ini memerlukan parameter server eksplisit untuk mengatur komunikasi antara server dan Amazon GameLift Servers layanan. Ini menggunakan token idempotensi, jadi Anda mencoba kembali panggilan ini dengan aman ketika gagal.

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

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

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

[ServerParameters](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-serverparameters)  
Untuk menginisialisasi server game pada armada Amazon GameLift Servers Anywhere, buat `ServerParameters` objek dengan informasi berikut:  
+ URL yang WebSocket digunakan untuk terhubung ke server game Anda. 
+ ID dari proses yang digunakan untuk meng-host server game Anda. 
+ ID komputasi yang menghosting proses server game Anda. 
+ ID Amazon GameLift Servers armada yang berisi komputasi Amazon GameLift Servers Anywhere Anda.
+ Token otorisasi yang dihasilkan oleh Amazon GameLift Servers operasi. 

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-initsdk-anywhere-return"></a>

Jika berhasil, mengembalikan InitSdkOutcome objek untuk menunjukkan bahwa proses server siap untuk memanggil[ProcessReady()](#integration-server-sdk5-csharp-processready). 

**catatan**  
Jika panggilan gagal untuk build game yang diterapkan ke `InitSDK()` armada Anywhere, periksa `ServerSdkVersion` parameter yang digunakan saat membuat sumber daya build. Anda harus secara eksplisit menetapkan nilai ini ke versi SDK server yang digunakan. Nilai default untuk parameter ini adalah 4.x, yang tidak kompatibel. Untuk mengatasi masalah ini, buat build baru dan terapkan ke armada baru.

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

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

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

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

Memberitahu Amazon GameLift Servers bahwa proses server siap untuk meng-host sesi permainan. Panggil metode ini setelah memanggil[InitSDK()](#integration-server-sdk5-csharp-initsdk). Metode ini harus dipanggil hanya satu kali per proses.

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

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

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

**[ProcessParameters](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-process)**  
Sebuah `ProcessParameters` objek menyimpan informasi tentang proses server.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-processready-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini menggambarkan baik metode dan delegasi implementasi fungsi.

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

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

Memberitahu Amazon GameLift Servers bahwa proses server berakhir. Panggil metode ini setelah semua tugas pembersihan lainnya (termasuk mematikan sesi permainan aktif) dan sebelum mengakhiri proses. Tergantung pada hasil`ProcessEnding()`, proses keluar dengan sukses (0) atau kesalahan (-1) dan menghasilkan peristiwa armada. Jika proses berakhir dengan kesalahan, peristiwa armada yang dihasilkan adalah`SERVER_PROCESS_TERMINATED_UNHEALTHY`.

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

```
GenericOutcome ProcessEnding()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-csharp-processending-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini memanggil `ProcessEnding()` dan `Destroy()` sebelum menghentikan proses server dengan kode keluar sukses atau kesalahan.

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

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

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

Memberitahu Amazon GameLift Servers bahwa proses server telah mengaktifkan sesi permainan dan sekarang siap menerima koneksi pemain. Tindakan ini harus dipanggil sebagai bagian dari fungsi `onStartGameSession()` callback, setelah semua inisialisasi sesi game.

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

```
GenericOutcome ActivateGameSession()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-csharp-activategamesession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini menunjukkan `ActivateGameSession()` yang dipanggil sebagai bagian dari fungsi delegasi `onStartGameSession()`. 

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

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

Memperbarui kemampuan sesi game saat ini untuk menerima sesi pemain baru. Sesi game dapat diatur untuk menerima atau menolak semua sesi pemain baru.

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

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

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

**playerSessionPolicy**  
Nilai string yang menunjukkan apakah sesi permainan menerima pemain baru.   
Nilai yang valid meliputi:  
+ **ACCEPT\$1ALL** — Menerima semua sesi pemain baru.
+ **DENY\$1ALL** — Menolak semua sesi pemain baru.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-updateplayersessioncreationpolicy-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini menetapkan kebijakan bergabung sesi game saat ini untuk menerima semua pemain.

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

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

Mengambil ID sesi permainan yang dihosting oleh proses server aktif.

Untuk proses idle yang tidak diaktifkan dengan sesi game, panggilan akan menampilkan file. [GameLiftError](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-gamelifterror)

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

```
AwsStringOutcome GetGameSessionId()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-csharp-getgamesessionid-return"></a>

Jika berhasil, ini mengembalikan ID sesi game sebagai objek [AwsStringOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-awsstringoutcome). Jika tidak berhasil, mengembalikan pesan kesalahan.

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

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

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

Mengembalikan waktu yang merupakan jadwal proses server akan ditutup, jika waktu penghentian tersedia. Proses server mengambil tindakan ini setelah menerima `onProcessTerminate()` panggilan balik dariAmazon GameLift Servers. Amazon GameLift Serverspanggilan `onProcessTerminate()` untuk alasan berikut: 
+ Ketika proses server telah melaporkan kesehatan yang buruk atau belum Amazon GameLift Servers merespons.
+ Saat mengakhiri instance selama acara scale-down.
+ Ketika sebuah instance dihentikan karena gangguan [spot-instance](spot-tasks.md).

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

```
AwsDateTimeOutcome GetTerminationTime()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-csharp-getterm-return"></a>

Jika berhasil, ini mengembalikan waktu penghentian sebagai objek [AwsDateTimeOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-awsdatetimeoutcome). Nilainya adalah waktu penghentian, dinyatakan dalam kutu yang telah berlalu sejak. `0001 00:00:00` Misalnya, nilai waktu tanggal `2020-09-13 12:26:40 -000Z` sama dengan `637355968000000000` kutu. Jika tidak ada waktu penghentian tersedia, pesan kesalahan ditampilkan.

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

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

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

Memberitahu Amazon GameLift Servers bahwa pemain dengan ID sesi pemain tertentu telah terhubung ke proses server dan perlu validasi. Amazon GameLift Serversmemverifikasi bahwa ID sesi pemain valid. Setelah sesi pemain divalidasi, Amazon GameLift Servers mengubah status slot pemain dari RESERVED menjadi AKTIF. 

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

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

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

playerSessionId  
ID unik yang dikeluarkan oleh GameLift saat sesi pemain baru dibuat.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-acceptplayersession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan. 

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

Contoh ini menggambarkan fungsi untuk menangani permintaan koneksi, termasuk memvalidasi dan menolak sesi pemain yang tidak valid. IDs 

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

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

Memberitahu Amazon GameLift Servers bahwa pemain telah terputus dari proses server. Sebagai tanggapan, Amazon GameLift Servers ubah slot pemain menjadi tersedia. 

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

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

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

**playerSessionId**  
ID unik yang dikeluarkan oleh Amazon GameLift Servers saat sesi pemain baru dibuat.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-removeplayersession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

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

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

Mengambil data sesi pemain yang mencakup pengaturan, metadata sesi, dan data pemain. Gunakan tindakan ini untuk mendapatkan informasi untuk satu sesi pemain, untuk semua sesi pemain dalam sesi game, atau untuk semua sesi pemain yang terkait dengan ID pemain tunggal.

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

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

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

**[DescribePlayerSessionsRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-playersessions)**  
[DescribePlayerSessionsRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-playersessions)Objek yang menggambarkan sesi pemain mana yang akan diambil.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-describeplayersessions-return"></a>

Jika berhasil, mengembalikan [DescribePlayerSessionsOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-describeplayersessionsoutcome) objek yang berisi satu set objek sesi pemain yang sesuai dengan parameter permintaan.

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

Contoh ini menggambarkan permintaan untuk semua sesi pemain yang secara aktif terhubung ke sesi game tertentu. Dengan menghilangkan *NextToken*dan mengatur nilai *Batas* ke 10, Amazon GameLift Servers akan mengembalikan catatan sesi 10 pemain pertama yang cocok dengan permintaan.

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

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

Mengirim permintaan untuk menemukan pemain baru untuk slot terbuka dalam sesi permainan yang dibuat denganFlexMatch. Untuk informasi selengkapnya, lihat [fitur FlexMatch isi ulang](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Tindakan ini asinkron. Jika pemain baru dicocokkan, kirimkan data Amazon GameLift Servers mak comblang yang diperbarui menggunakan fungsi panggilan balik. `OnUpdateGameSession()`

Proses server hanya dapat melakukan satu permintaan backfill match yang aktif dalam satu waktu. Untuk mengirim permintaan baru, panggil [StopMatchBackfill()](#integration-server-sdk5-csharp-stopmatchbackfill) terlebih dahulu untuk membatalkan permintaan asli.

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

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

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

**[StartMatchBackfillRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-startmatchbackfillrequest)**  
Sebuah `StartMatchBackfillRequest` objek menyimpan informasi tentang permintaan isi ulang.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-startmatchbackfill-return"></a>

Mengembalikan [StartMatchBackfillOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-startmatchbackfilloutcome) objek dengan ID tiket isi ulang pertandingan, atau kegagalan dengan pesan kesalahan. 

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

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

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

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

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

Membatalkan permintaan pengisian ulang pertandingan yang aktif. Untuk informasi selengkapnya, lihat [fitur FlexMatch isi ulang](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

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

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

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

**[StopMatchBackfillRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-stopmatchbackfillrequest)**  
`StopMatchBackfillRequest`Objek yang memberikan detail tentang tiket perjodohan yang Anda hentikan.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-stopmatchbackfill-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

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

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

 Mengambil jalur ke sertifikat TLS yang digunakan untuk mengenkripsi koneksi jaringan antara server game dan klien game Anda. Anda dapat menggunakan jalur sertifikat saat mendaftarkan perangkat komputasi ke armada Amazon GameLift Servers Anywhere. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

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

```
GetComputeCertificateOutcome GetComputeCertificate();
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-csharp-getcomputecertificate-return"></a>

Mengembalikan GetComputeCertificateResponse objek yang berisi berikut: 
+  CertificatePath: Jalur ke sertifikat TLS pada sumber daya komputasi Anda. Saat menggunakan armada Amazon GameLift Servers terkelola, jalur ini berisi:
  + `certificate.pem`: Sertifikat pengguna akhir. Rantai sertifikat lengkap adalah kombinasi dari `certificateChain.pem` ditambahkan ke sertifikat ini.
  + `certificateChain.pem`: Rantai sertifikat yang berisi sertifikat root dan sertifikat perantara.
  + `rootCertificate.pem`: Sertifikat root.
  + `privateKey.pem`: Kunci pribadi untuk sertifikat pengguna akhir.
+ ComputeName: Nama sumber daya komputasi Anda.

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

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

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

Mengambil kredensyal peran IAM yang mengizinkan Amazon GameLift Servers untuk berinteraksi dengan orang lain. Layanan AWS Untuk informasi selengkapnya, lihat [Hubungkan server game yang Amazon GameLift Servers di-host ke AWS sumber daya lain](gamelift-sdk-server-resources.md).

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

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

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

[GetFleetRoleCredentialsRequest](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-dataypes-getfleetrolecredentialsrequest)  
Kredensyal peran yang memperluas akses terbatas ke AWS sumber daya Anda ke server game.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-csharp-getfleetrolecredentials-return"></a>

Mengembalikan objek [GetFleetRoleCredentialsOutcome](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-getfleetrolecredentialsoutcome).

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

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

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

Membebaskan SDK server Amazon GameLift Servers game dari memori. Sebagai praktik terbaik, hubungi metode ini setelah `ProcessEnding()` dan sebelum mengakhiri proses. Jika Anda menggunakan armada Anywhere dan Anda tidak menghentikan proses server setelah setiap sesi game, panggil `Destroy()` dan kemudian `InitSDK()` inisialisasi ulang sebelum memberi tahu Amazon GameLift Servers bahwa proses tersebut siap untuk meng-host sesi game. `ProcessReady()`

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

```
GenericOutcome Destroy()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-csharp-destroy-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

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

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

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

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

Gunakan referensi SDK 5.x server untuk mengintegrasikan game multipemain Anda untuk hosting. Amazon GameLift Servers Untuk panduan tentang proses integrasi, lihat[Tambahkan Amazon GameLift Servers ke server game Anda dengan SDK server](gamelift-sdk-server-api.md).

`GameLiftServerAPI.go`mendefinisikan tindakan SDK server Go.

# Go server SDK untuk Amazon GameLift Servers - Jenis data
<a name="integration-server-sdk-go-datatypes"></a>

Gunakan referensi SDK server untuk mengintegrasikan game multipemain Anda untuk hosting. Amazon GameLift Servers Untuk panduan tentang proses integrasi, lihat[Tambahkan Amazon GameLift Servers ke server game Anda dengan SDK server](gamelift-sdk-server-api.md).

`GameLiftServerAPI.go`mendefinisikan tindakan SDK server Go.

[Go server SDK untuk Amazon GameLift Servers -- Tindakan](integration-server-sdk-go-actions.md)

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

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

Objek yang mengidentifikasi file yang dihasilkan selama sesi permainan yang Amazon GameLift Servers ingin Anda unggah dan simpan setelah sesi permainan berakhir. Server game menyediakan `LogParameters` Amazon GameLift Servers sebagai bagian dari `ProcessParameters` objek dalam [ProcessReady()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processready) panggilan.


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| LogPaths |  Daftar path direktori ke file log server game yang ingin Anda simpan Amazon GameLift Servers untuk akses future. Proses server menghasilkan file-file ini selama setiap sesi permainan. Anda menentukan jalur dan nama file di server game Anda dan menyimpannya di direktori build game root.  Jalur log harus absolut. Misalnya, jika build game Anda menyimpan log sesi game di jalur seperti`MyGame\sessionLogs\`, maka jalurnya akan berada `c:\game\MyGame\sessionLogs` di instance Windows. **Jenis**: `[]string` **Wajib**: Tidak  | 

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

Objek yang mengkomunikasikan parameter konfigurasi untuk menginisialisasi sistem metrik. Konfigurasi ini digunakan untuk mengatur pelaporan StatSD, pelaporan kerusakan, dan perilaku pemrosesan metrik. Server game menyediakan `MetricsParameters` Amazon GameLift Servers sebagai bagian dari [InitMetrics()](integration-server-sdk-go-actions.md#integration-server-sdk-go-initmetrics) panggilan.


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| StatsdHost |  Host server StatSD untuk pelaporan metrik (misalnya, “localhost”). **Jenis**: `string` **Wajib**: Ya  | 
| StatsdPort |  Port server StatSD untuk pelaporan metrik (mis., 8125). **Jenis**: `int` **Wajib**: Ya  | 
| CrashReporterHost |  Reporter kecelakaan menjadi tuan rumah untuk pelacakan kerusakan dan pemantauan proses. **Jenis**: `string` **Wajib**: Ya  | 
| CrashReporterPort |  Port reporter kecelakaan untuk pelacakan kecelakaan dan pemantauan proses. **Jenis**: `int` **Wajib**: Ya  | 
| FlushIntervalMs |  Metrik flush interval dalam milidetik. Mengontrol seberapa sering metrik dikirim ke StatSD. **Jenis**: `int` **Wajib**: Ya  | 
| MaxPacketSize |  Ukuran paket maksimum untuk metrik dalam byte. Membatasi ukuran paket UDP yang dikirim ke StatSD. **Jenis**: `int` **Wajib**: Ya  | 

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

Objek yang menggambarkan komunikasi antara proses server danAmazon GameLift Servers. Proses server menyediakan informasi ini Amazon GameLift Servers dengan panggilan ke[ProcessReady()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processready).


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| LogParameters | Objek dengan jalur direktori ke file yang dihasilkan selama sesi permainan. Amazon GameLift Serversmenyalin dan menyimpan file untuk akses future.**Jenis**: `LogParameters`**Wajib**: Tidak | 
| OnHealthCheck | Fungsi callback yang Amazon GameLift Servers memanggil untuk meminta laporan status kesehatan dari proses server. Amazon GameLift Serversmemanggil fungsi ini setiap 60 detik dan menunggu 60 detik untuk respons. Proses server kembali TRUE jika sehat, FALSE jika tidak sehat. Jika tidak ada respons yang dikembalikan, Amazon GameLift Servers mencatat proses server sebagai tidak sehat.**Jenis**: `OnHealthCheck func() bool`**Wajib**: Tidak | 
| OnProcessTerminate | Fungsi callback yang Amazon GameLift Servers memanggil untuk memaksa proses server dimatikan. Setelah memanggil fungsi ini, Amazon GameLift Servers tunggu 5 menit hingga proses server dimatikan dan merespons dengan [ProcessEnding()](integration-server-sdk-go-actions.md#integration-server-sdk-go-processending) panggilan sebelum mematikan proses server.**Jenis**: `OnProcessTerminate func()`**Wajib**: Ya | 
| OnStartGameSession | Fungsi callback yang Amazon GameLift Servers memanggil untuk meneruskan objek sesi game yang diperbarui ke proses server. Amazon GameLift Serversmemanggil fungsi ini ketika permintaan pengisian ulang kecocokan telah diproses untuk menyediakan data mak comblang yang diperbarui. Ini melewati [GameSession](#integration-server-sdk-go-dataypes-gamesession) objek, pembaruan status (updateReason), dan ID tiket penimbunan ulang pertandingan.**Jenis**: `OnStartGameSession func (model.GameSession )`**Wajib**: Ya | 
| OnUpdateGameSession | Fungsi callback yang Amazon GameLift Servers memanggil untuk meneruskan informasi sesi game yang diperbarui ke proses server. Amazon GameLift Serversmemanggil fungsi ini setelah memproses permintaan pengisian ulang kecocokan untuk menyediakan data mak comblang yang diperbarui. **Jenis**: `OnUpdateGameSession func (model.UpdateGameSession)`**Wajib**: Tidak | 
| Port | Nomor port yang didengarkan oleh proses server untuk koneksi pemain baru. Nilai harus masuk ke dalam kisaran port yang dikonfigurasi untuk setiap armada yang men-deploy build server game ini. Nomor port ini termasuk dalam sesi game dan objek sesi pemain, yang digunakan sesi game saat menghubungkan ke proses server.**Jenis**: `int`**Wajib**: Ya | 

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

Pembaruan untuk objek sesi permainan, yang mencakup alasan bahwa sesi permainan diperbarui, dan ID tiket isi ulang terkait jika pengisian ulang digunakan untuk mengisi sesi pemain dalam sesi permainan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSession | Sebuah objek [GameSession](#integration-server-sdk-go-dataypes-gamesession). GameSessionObjek berisi properti yang menggambarkan sesi permainan. **Jenis**: `GameSession GameSession()`**Wajib**: Ya | 
| UpdateReason | Alasan bahwa sesi permainan sedang diperbarui.**Jenis**: `UpdateReason UpdateReason()`**Wajib**: Ya | 
| BackfillTicketId | ID tiket isi ulang yang mencoba memperbarui sesi permainan.**Jenis**: `String`**Wajib**: Tidak | 

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

Detail sesi permainan. 


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionId |  Pengenal unik untuk sesi permainan. Sesi permainan Nama Sumber Daya Amazon (ARN) memiliki format berikut:. `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>` **Jenis**: `String` **Wajib**: Tidak  | 
| Nama |  Label deskriptif dari sesi permainan.  **Jenis**: `String` **Wajib**: Tidak  | 
| FleetId |  Pengenal unik untuk armada tempat sesi permainan berjalan. **Jenis**: `String` **Wajib**: Tidak  | 
| MaximumPlayerSessionCount |  Jumlah maksimum koneksi pemain ke sesi permainan. **Jenis**: `Integer` **Wajib**: Tidak  | 
| Port |  Nomor port untuk sesi permainan. Untuk terhubung ke server Amazon GameLift Servers game, aplikasi memerlukan alamat IP dan nomor port. **Jenis**: `Integer` **Wajib**: Tidak  | 
| IpAddress |  Alamat IP dari sesi game. Untuk terhubung ke server Amazon GameLift Servers game, aplikasi memerlukan alamat IP dan nomor port. **Jenis**: `String` **Wajib**: Tidak  | 
| GameSessionData |  Set properti sesi game khusus, diformat sebagai nilai string tunggal.  **Jenis**: `String` **Wajib**: Tidak  | 
| MatchmakerData |  Informasi tentang proses perjodohan yang digunakan untuk membuat sesi permainan, dalam sintaks JSON, diformat sebagai string. Selain konfigurasi perjodohan yang digunakan, ini berisi data tentang semua pemain yang ditugaskan untuk pertandingan, termasuk atribut pemain dan tugas tim. **Jenis**: `String` **Wajib**: Tidak  | 
| GameProperties |  Satu set properti kustom untuk sesi permainan, diformat sebagai pasangan key:value. Properti ini diteruskan dengan permintaan untuk memulai sesi permainan baru. **Jenis**: `map[string] string` **Wajib**: Tidak  | 
| DnsName |  Pengenal DNS yang ditetapkan ke instance yang menjalankan sesi permainan. Nilai memiliki format berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk-go-datatypes.html) Saat menghubungkan ke sesi permainan yang berjalan pada armada yang mendukung TLS, Anda harus menggunakan nama DNS, bukan alamat IP. **Jenis**: `String` **Wajib**: Tidak  | 

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

Informasi yang digunakan untuk menjaga koneksi antara server Amazon GameLift Servers Anywhere dan Amazon GameLift Servers layanan. Informasi ini digunakan saat meluncurkan proses server baru dengan[InitSDK()](integration-server-sdk-go-actions.md#integration-server-sdk-go-initsdk). Untuk server yang Amazon GameLift Servers dihosting pada instans EC2 terkelola, gunakan objek kosong.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| WebSocketURL |  `GameLiftServerSdkEndpoint`Amazon GameLift ServersPengembalian ketika Anda [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)untuk sumber daya komputasi Amazon GameLift Servers Anywhere. **Jenis**: `string` **Wajib**: Ya  | 
| ProcessID |  Pengenal unik yang terdaftar pada proses server yang menghosting game Anda. **Jenis**: `string` **Wajib**: Ya  | 
| HostID |  Identifier unik dari sumber daya komputasi yang menghosting proses server baru.  `HostID`Ini adalah yang `ComputeName` digunakan saat Anda mendaftarkan komputasi Anda. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html). **Jenis**: `string` **Wajib**: Ya  | 
| FleetID | Pengidentifikasi unik armada tempat komputasi terdaftar. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Jenis**: `string`**Wajib**: Ya | 
| AuthToken | Token otentikasi yang dihasilkan oleh Amazon GameLift Servers itu mengotentikasi server Anda ke. Amazon GameLift Servers Untuk informasi selengkapnya, lihat [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Jenis**: `string`**Wajib**: Ya | 

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

Informasi yang digunakan untuk membuat permintaan pengisian ulang perjodohan. Server game mengkomunikasikan informasi ini ke Amazon GameLift Servers dalam [StartMatchBackfill()](integration-server-sdk-go-actions.md#integration-server-sdk-go-startmatchbackfill) panggilan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionArn |  Pengidentifikasi sesi permainan yang unik. Operasi API `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk-go-actions.html#integration-server-sdk-go-getgamesessionid)` mengembalikan pengenal dalam format ARN. **Jenis**: `String` **Wajib**: Ya  | 
| MatchmakingConfigurationArn |  Pengidentifikasi unik (dalam bentuk ARN) untuk mak comblang untuk digunakan untuk permintaan ini. ARN mak comblang untuk sesi permainan asli ada di objek sesi permainan di properti data mak comblang. Untuk informasi selengkapnya tentang data mak comblang, lihat [Bekerja dengan data mak](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html) comblang. **Jenis**: `String` **Wajib**: Ya  | 
| Pemain |  Satu set data yang mewakili semua pemain yang saat ini dalam sesi permainan. Matchmaker menggunakan informasi ini untuk mencari pemain baru yang cocok untuk pemain saat ini. **Jenis**: `[]model.Player` **Wajib**: Ya  | 
| TicketId |  Pengenal unik untuk tiket permintaan pencocokan atau pencocokan isi ulang. Jika Anda tidak memberikan nilai, Amazon GameLift Servers hasilkan satu. Gunakan pengidentifikasi ini untuk melacak status tiket backfill match atau membatalkan permintaan jika diperlukan.  **Jenis**: `String` **Wajib**: Tidak  | 

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

Objek yang mewakili pemain dalam perjodohan. Ketika permintaan perjodohan dimulai, pemain memiliki ID pemain, atribut, dan mungkin data latensi. Amazon GameLift Serversmenambahkan informasi tim setelah pertandingan dibuat.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| LatencyInMS |  Satu set nilai yang dinyatakan dalam milidetik yang menunjukkan jumlah latensi yang dialami pemain saat terhubung ke suatu lokasi.  Jika properti ini digunakan, pemain hanya cocok untuk lokasi yang terdaftar. Jika mak comblang memiliki aturan yang mengevaluasi latensi pemain, pemain harus melaporkan latensi untuk dicocokkan. **Jenis**: `map[string] int` **Wajib**: Tidak  | 
| PlayerAttributes |  Kumpulan pasangan kunci:value yang berisi informasi pemain untuk digunakan dalam perjodohan. Kunci atribut pemain harus cocok dengan yang PlayerAttributes digunakan dalam set aturan perjodohan. Untuk informasi selengkapnya tentang atribut pemain, lihat [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Jenis**: `map[string] AttributeValue` **Wajib**: Tidak  | 
| PlayerId |  Pengenal unik untuk pemain. **Jenis**: `String` **Wajib**: Tidak  | 
| Tim |  Nama tim yang ditugaskan pemain dalam pertandingan. Anda menentukan nama tim dalam set aturan perjodohan. **Jenis**: `String` **Wajib**: Tidak  | 

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

Objek yang menentukan sesi pemain mana yang akan diambil. Proses server menyediakan informasi ini dengan [DescribePlayerSessions()](integration-server-sdk-go-actions.md#integration-server-sdk-go-describeplayersessions) panggilan keAmazon GameLift Servers.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionID |  Pengidentifikasi sesi permainan yang unik. Gunakan parameter ini untuk meminta semua sesi pemain untuk sesi game yang ditentukan.  Format ID sesi game adalah`arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>`. `GameSessionID`Ini adalah string ID kustom atau string yang dihasilkan.  **Jenis**: `String` **Wajib**: Tidak  | 
| PlayerSessionID |  Pengidentifikasi unik untuk sesi pemain. Gunakan parameter ini untuk meminta satu sesi pemain tertentu. **Jenis**: `String` **Wajib**: Tidak  | 
| PlayerID |  Pengenal unik untuk pemain. Gunakan parameter ini untuk meminta semua sesi pemain untuk pemain tertentu. Lihat [Hasilkan pemain IDs](player-sessions-player-identifiers.md). **Jenis**: `String` **Wajib**: Tidak  | 
| PlayerSessionStatusFilter |  Status sesi pemain untuk memfilter hasil. Status sesi pemain yang mungkin meliputi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk-go-datatypes.html) **Jenis**: `String` **Wajib**: Tidak  | 
| NextToken |  Token yang menunjukkan awal halaman hasil berikutnya. Untuk menentukan awal kumpulan hasil, jangan berikan nilai. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `String` **Wajib**: Tidak  | 
| Limit |  Jumlah hasil maksimum yang akan dikembalikan. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `int` **Wajib**: Tidak  | 

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

Informasi yang digunakan untuk membatalkan permintaan pengisian ulang perjodohan. Server game mengkomunikasikan informasi ini ke Amazon GameLift Servers layanan dalam [StopMatchBackfill()](integration-server-sdk-go-actions.md#integration-server-sdk-go-stopmatchbackfill) panggilan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionArn |  Pengidentifikasi sesi permainan unik dari permintaan yang dibatalkan. **Jenis**: `string` **Wajib**: Tidak  | 
| MatchmakingConfigurationArn |  Pengidentifikasi unik dari mak comblang permintaan ini dikirim ke. **Jenis**: `string` **Wajib**: Tidak  | 
| TicketId |  Pengenal unik dari tiket permintaan isi ulang yang akan dibatalkan. **Jenis**: `string` **Wajib**: Tidak  | 

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

Kredensi peran yang memperluas akses terbatas ke AWS sumber daya Anda ke server game. Untuk informasi selengkapnya, lihat [Menyiapkan peran layanan IAM untuk Amazon GameLift Servers](setting-up-role.md).


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| RoleArn | ARN dari peran layanan yang memperluas akses terbatas ke sumber daya Anda. AWS **Jenis**: `string`**Wajib**: Ya | 
| RoleSessionName | Nama sesi yang menjelaskan penggunaan kredensi peran.**Jenis**: `string`**Wajib**: Ya | 

[Go server SDK untuk Amazon GameLift Servers - Jenis data](integration-server-sdk-go-datatypes.md)

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

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

Mengembalikan nomor versi SDK saat ini yang dibangun ke dalam proses server.

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk-go-getsdkversion-return"></a>

Jika berhasil, mengembalikan versi SDK saat ini sebagai string. String yang dikembalikan mencakup nomor versi (contoh`5.0.0`). Jika tidak berhasil, mengembalikan pesan kesalahan seperti`common.SdkVersionDetectionFailed`.

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

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

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

Menginisialisasi koleksi metrik untuk SDK. Amazon GameLift Servers Metode ini mengatur pelaporan metrik untuk membantu memantau kinerja dan kesehatan server. Panggil metode ini setelah [InitSDK()](#integration-server-sdk-go-initsdk) tetapi sebelumnya[ProcessReady()](#integration-server-sdk-go-processready).

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

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

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

MetricsParameters (opsional)  
`MetricsParameters`Objek yang mengonfigurasi koleksi metrik. Jika tidak disediakan, konfigurasi metrik default digunakan. MetricsParametersStruktur berisi bidang-bidang berikut:  
+ `StatsdHost`- Nama host atau alamat IP server StatSD.
+ `StatsdPort`- Nomor port untuk server StatSD.
+ `CrashReporterHost`- Nama host atau alamat IP dari layanan reporter kerusakan.
+ `CrashReporterPort`- Nomor port untuk layanan reporter kecelakaan.
+ `FlushIntervalMs`- Interval dalam milidetik untuk pembilasan data metrik.
+ `MaxPacketSize`- Ukuran maksimum paket metrik dalam byte.
Untuk informasi selengkapnya tentang MetricsParameters struktur, lihat [Server SDK 5.x untuk tipe data C\$1](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-csharp-datatypes.html).

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-initmetrics-return"></a>

Jika berhasil, mengembalikan `nil` kesalahan untuk menunjukkan bahwa pengumpulan metrik telah berhasil diinisialisasi.

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

Inisialisasi metrik dengan konfigurasi default:

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

Inisialisasi metrik dengan konfigurasi khusus:

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

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

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

Menginisialisasi pengumpulan metrik untuk Amazon GameLift Servers SDK menggunakan konfigurasi dari variabel lingkungan. Metode ini mengatur pelaporan metrik menggunakan pengaturan default yang berasal dari lingkungan runtime.

Panggil metode ini setelah [InitSDK()](#integration-server-sdk-go-initsdk) tetapi sebelumnya[ProcessReady()](#integration-server-sdk-go-processready).

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

```
func InitMetricsFromEnvironment() error
```

### Nilai yang ditampilkan
<a name="integration-server-sdk-go-initmetricsfromenv-return"></a>

Jika berhasil, mengembalikan `nil` kesalahan untuk menunjukkan bahwa pengumpulan metrik telah berhasil diinisialisasi menggunakan konfigurasi lingkungan.

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

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

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

Menginisialisasi Amazon GameLift Servers SDK. Panggil metode ini saat peluncuran sebelum inisialisasi lain yang terkait dengan Amazon GameLift Servers terjadi. Metode ini mengatur komunikasi antara server dan Amazon GameLift Servers layanan.

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

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

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

[ServerParameters](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-serverparameters)  
Untuk menginisialisasi server game pada armada Amazon GameLift Servers Anywhere, buat `ServerParameters` objek dengan informasi berikut:  
+ URL yang WebSocket digunakan untuk terhubung ke server game Anda. 
+ ID dari proses yang digunakan untuk meng-host server game Anda. 
+ ID komputasi yang menghosting proses server game Anda. 
+ ID Amazon GameLift Servers armada yang berisi komputasi Amazon GameLift Servers Anywhere Anda.
+ Token otorisasi yang dihasilkan oleh Amazon GameLift Servers operasi. 
Untuk menginisialisasi server game pada armada EC2 Amazon GameLift Servers terkelola, buat `ServerParameters` objek tanpa parameter. Dengan panggilan ini, Amazon GameLift Servers agen mengatur lingkungan komputasi dan secara otomatis terhubung ke Amazon GameLift Servers layanan untuk Anda. 

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-initsdk-return"></a>

Jika berhasil, mengembalikan `nil` kesalahan untuk menunjukkan bahwa proses server siap untuk memanggil[ProcessReady()](#integration-server-sdk-go-processready). 

**catatan**  
Jika panggilan gagal untuk build game yang diterapkan ke `InitSDK()` armada Anywhere, periksa `ServerSdkVersion` parameter yang digunakan saat membuat sumber daya build. Anda harus secara eksplisit menetapkan nilai ini ke versi SDK server yang digunakan. Nilai default untuk parameter ini adalah 4.x, yang tidak kompatibel. Untuk mengatasi masalah ini, buat build baru dan terapkan ke armada baru.

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

Amazon GameLift ServersContoh di mana saja

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

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

Amazon GameLift Serverscontoh EC2 yang dikelola

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

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

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

Memberitahu Amazon GameLift Servers bahwa proses server siap untuk meng-host sesi permainan. Panggil metode ini setelah memanggil[InitSDK()](#integration-server-sdk-go-initsdk). Metode ini harus dipanggil hanya satu kali per proses.

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

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

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

**ProcessParameters**  
[ProcessParameters](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-process)Objek mengkomunikasikan informasi berikut tentang proses server:  
+ Nama-nama metode callback yang diimplementasikan dalam kode server game yang dipanggil Amazon GameLift Servers layanan untuk berkomunikasi dengan proses server.
+ Nomor port yang didengarkan oleh proses server.
+ Tipe [LogParameters](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-log) data yang berisi jalur ke file khusus sesi game apa pun yang Amazon GameLift Servers ingin Anda ambil dan simpan.

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-processready-return"></a>

Mengembalikan kesalahan dengan pesan kesalahan jika metode gagal. Mengembalikan `nil` jika metode ini berhasil.

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

Contoh ini menggambarkan panggilan [ProcessReady()](#integration-server-sdk-go-processready) dan mendelegasi implementasi fungsi.

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

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

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

Memberitahu Amazon GameLift Servers bahwa proses server berakhir. Panggil metode ini setelah semua tugas pembersihan lainnya (termasuk mematikan sesi permainan aktif) dan sebelum mengakhiri proses. Tergantung pada hasil`ProcessEnding()`, proses keluar dengan sukses (0) atau kesalahan (-1) dan menghasilkan peristiwa armada. Jika proses berakhir dengan kesalahan, peristiwa armada yang dihasilkan adalah`SERVER_PROCESS_TERMINATED_UNHEALTHY`.

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

```
func ProcessEnding() error
```

### Nilai yang ditampilkan
<a name="integration-server-sdk-go-processending-return"></a>

Mengembalikan kode kesalahan 0 atau kode kesalahan yang ditentukan.

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

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

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

Memberitahu Amazon GameLift Servers bahwa proses server telah mengaktifkan sesi permainan dan sekarang siap menerima koneksi pemain. Tindakan ini disebut sebagai bagian dari fungsi `onStartGameSession()` callback, setelah semua inisialisasi sesi game.

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

```
func ActivateGameSession() error
```

### Nilai yang ditampilkan
<a name="integration-server-sdk-go-activategamesession-return"></a>

Mengembalikan kesalahan dengan pesan kesalahan jika metode gagal.

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

Contoh ini menunjukkan `ActivateGameSession()` dipanggil sebagai bagian dari fungsi `onStartGameSession()` delegasi. 

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

## UpdatePlayerSessionCreationPolicy()
<a name="integration-server-sdk-go-updateplayersessioncreationpolicy"></a>

Memperbarui kemampuan sesi game saat ini untuk menerima sesi pemain baru. Sesi game dapat diatur untuk menerima atau menolak semua sesi pemain baru.

### Sintaks
<a name="integration-server-sdk-go-updateplayersessioncreationpolicy-syntax"></a>

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

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

**playerSessionCreationKebijakan**  
Nilai string yang menunjukkan apakah sesi permainan menerima pemain baru.   
Nilai yang valid meliputi:  
+ **`model.AcceptAll`**— Terima semua sesi pemain baru.
+ **`model.DenyAll`**— Tolak semua sesi pemain baru.

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-updateplayersessioncreationpolicy-return"></a>

Mengembalikan kesalahan dengan pesan kesalahan jika terjadi kegagalan.

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

Contoh ini menetapkan kebijakan bergabung sesi game saat ini untuk menerima semua pemain.

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

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

Mengambil ID sesi permainan yang dihosting oleh proses server aktif.

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

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

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

Tindakan ini tidak memiliki parameter.

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-getgamesessionid-return"></a>

Jika berhasil, mengembalikan ID sesi permainan dan kesalahan nihil. Untuk proses idle yang belum diaktifkan dengan sesi permainan, panggilan mengembalikan string kosong dan `nil` kesalahan.

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

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

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

Mengembalikan waktu proses server dijadwalkan untuk dimatikan jika waktu penghentian tersedia. Proses server mengambil tindakan ini setelah menerima `onProcessTerminate()` panggilan balik dariAmazon GameLift Servers. Amazon GameLift Serverspanggilan `onProcessTerminate()` untuk alasan berikut: 
+ Ketika proses server telah melaporkan kesehatan yang buruk atau belum Amazon GameLift Servers merespons.
+ Saat mengakhiri instance selama acara scale-down.
+ Ketika sebuah instance dihentikan karena gangguan [spot-instance](spot-tasks.md).

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk-go-getterm-return"></a>

Jika berhasil, mengembalikan stempel waktu dalam detik epoch yang proses server dijadwalkan untuk dimatikan dan penghentian kesalahan. `nil` Nilainya adalah waktu penghentian, dinyatakan dalam kutu yang telah berlalu dari. `0001 00:00:00` Misalnya, nilai waktu tanggal `2020-09-13 12:26:40 -000Z` sama dengan `637355968000000000` kutu. Jika tidak ada waktu penghentian tersedia, pesan kesalahan ditampilkan.

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

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

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

Memberitahu Amazon GameLift Servers bahwa pemain dengan ID sesi pemain tertentu telah terhubung ke proses server dan membutuhkan validasi. Amazon GameLift Serversmemverifikasi bahwa ID sesi pemain valid. Setelah sesi pemain divalidasi, Amazon GameLift Servers ubah status slot pemain dari `RESERVED` ke`ACTIVE`. 

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

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

### Parameter
<a name="integration-server-sdk-go-acceptplayersession-parameter"></a>

`playerSessionId`  
ID unik yang dikeluarkan oleh Amazon GameLift Servers saat sesi pemain baru dibuat.

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-acceptplayersession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan. 

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

Contoh ini menangani permintaan koneksi yang mencakup memvalidasi dan menolak sesi pemain yang tidak valid. IDs 

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

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

Memberitahu Amazon GameLift Servers bahwa pemain telah terputus dari proses server. Sebagai tanggapan, Amazon GameLift Servers ubah slot pemain menjadi tersedia. 

### Sintaks
<a name="integration-server-sdk-go-removeplayersession-syntax"></a>

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

### Parameter
<a name="integration-server-sdk-go-removeplayersession-parameter"></a>

**`playerSessionId`**  
ID unik yang dikeluarkan oleh Amazon GameLift Servers saat sesi pemain baru dibuat.

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-removeplayersession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

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

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

Mengambil data sesi pemain yang mencakup pengaturan, metadata sesi, dan data pemain. Gunakan metode ini untuk mendapatkan informasi tentang hal-hal berikut:
+ Sesi pemain tunggal
+ Semua sesi pemain dalam sesi permainan
+ Semua sesi pemain yang terkait dengan ID pemain tunggal

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

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

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

**[DescribePlayerSessionsRequest](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-playersessions)**  
Sebuah `DescribePlayerSessionsRequest` objek menjelaskan sesi pemain mana yang akan diambil.

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-describeplayersessions-return"></a>

Jika berhasil, mengembalikan `DescribePlayerSessionsResult` objek yang berisi satu set objek sesi pemain yang sesuai dengan parameter permintaan.

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

Contoh ini meminta semua sesi pemain yang terhubung secara aktif ke sesi permainan tertentu. Dengan menghilangkan *NextToken*dan mengatur nilai *Batas* ke 10, Amazon GameLift Servers mengembalikan catatan sesi 10 pemain pertama yang cocok dengan permintaan.

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

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

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

Mengirim permintaan untuk menemukan pemain baru untuk slot terbuka dalam sesi permainan yang dibuat denganFlexMatch. Untuk informasi selengkapnya, lihat [fitur FlexMatch isi ulang](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Tindakan ini asinkron. Jika pemain baru dicocokkan, kirimkan data Amazon GameLift Servers mak comblang yang diperbarui menggunakan fungsi panggilan balik. `OnUpdateGameSession()`

Proses server hanya dapat melakukan satu permintaan backfill match yang aktif dalam satu waktu. Untuk mengirim permintaan baru, panggil [StopMatchBackfill()](#integration-server-sdk-go-stopmatchbackfill) terlebih dahulu untuk membatalkan permintaan asli.

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

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

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

**[StartMatchBackfillRequest](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-startmatchbackfillrequest)**  
Sebuah StartMatchBackfillRequest objek mengkomunikasikan informasi berikut:  
+ ID tiket untuk ditetapkan ke permintaan backfill. Informasi ini opsional; jika tidak ada ID yang diberikan, Amazon GameLift Servers hasilkan satu.
+ Matchmaker untuk dikirimi permintaan. ARN konfigurasi penuh diperlukan. Nilai ini ada dalam data mak comblang sesi permainan.
+ ID sesi permainan untuk mengisi ulang.
+ Data perjodohan yang tersedia untuk pemain sesi permainan saat ini.

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-startmatchbackfill-return"></a>

Mengembalikan `StartMatchBackfillResult` objek dengan ID tiket isi ulang kecocokan, atau kegagalan dengan pesan kesalahan. 

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

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

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

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

Membatalkan permintaan pengisian ulang pertandingan yang aktif. Untuk informasi selengkapnya, lihat [fitur FlexMatch isi ulang](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

### Sintaks
<a name="integration-server-sdk-go-stopmatchbackfill-syntax"></a>

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

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

**[StopMatchBackfillRequest](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-stopmatchbackfillrequest)**  
 StopMatchBackfillRequest Objek yang mengidentifikasi tiket perjodohan untuk dibatalkan:   
+ ID tiket yang ditetapkan untuk permintaan pengisian ulang.
+ Mak comblang permintaan isi ulang dikirim ke.
+ Sesi permainan terkait dengan permintaan isi ulang.

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-stopmatchbackfill-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

### Contoh
<a name="integration-server-sdk-go-stopmatchbackfill-example"></a>

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

## GetComputeCertificate()
<a name="integration-server-sdk-go-getcomputecertificate"></a>

Mengambil jalur ke sertifikat TLS yang digunakan untuk mengenkripsi koneksi jaringan antara server game dan klien game Anda. Anda dapat menggunakan jalur sertifikat saat mendaftarkan perangkat komputasi ke armada Amazon GameLift Servers Anywhere. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk-go-getcomputecertificate-return"></a>

Mengembalikan `GetComputeCertificateResult` objek yang berisi berikut: 
+  CertificatePath: Jalur ke sertifikat TLS pada sumber daya komputasi Anda. Saat menggunakan armada Amazon GameLift Servers terkelola, jalur ini berisi: 
  + `certificate.pem`: Sertifikat pengguna akhir. Rantai sertifikat lengkap adalah kombinasi dari `certificateChain.pem` ditambahkan ke sertifikat ini.
  + `certificateChain.pem`: Rantai sertifikat yang berisi sertifikat root dan sertifikat perantara.
  + `rootCertificate.pem`: Sertifikat root.
  + `privateKey.pem`: Kunci pribadi untuk sertifikat pengguna akhir.
+ ComputeName: Nama sumber daya komputasi Anda.

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

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

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

Mengambil kredensyal peran layanan yang Anda buat untuk memperluas izin ke orang lain. Layanan AWS Amazon GameLift Servers Kredensyal ini memungkinkan server game Anda menggunakan sumber daya Anda AWS . Untuk informasi selengkapnya, lihat [Menyiapkan peran layanan IAM untuk Amazon GameLift Servers](setting-up-role.md).

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

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

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

[GetFleetRoleCredentialsRequest](integration-server-sdk-go-datatypes.md#integration-server-sdk-go-dataypes-getfleetrolecredentialsrequest)  
Kredensyal peran yang memperluas akses terbatas ke AWS sumber daya Anda ke server game.

### Nilai yang dikembalikan
<a name="integration-server-sdk-go-getfleetrolecredentials-return"></a>

Mengembalikan `GetFleetRoleCredentialsResult` objek yang berisi berikut: 
+ AssumedRoleUserArn - Nama Sumber Daya Amazon (ARN) pengguna yang menjadi milik peran layanan. 
+ AssumedRoleId - ID pengguna yang menjadi milik peran layanan. 
+ AccessKeyId - ID kunci akses untuk mengautentikasi dan menyediakan akses ke AWS sumber daya Anda. 
+ SecretAccessKey - ID kunci akses rahasia untuk otentikasi. 
+ SessionToken - Token untuk mengidentifikasi sesi aktif saat ini yang berinteraksi dengan AWS sumber daya Anda. 
+ Kedaluwarsa - Jumlah waktu hingga kredensyal sesi Anda kedaluwarsa.

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

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

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

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

Membebaskan SDK server Amazon GameLift Servers game dari memori. Sebagai praktik terbaik, hubungi metode ini setelah `ProcessEnding()` dan sebelum mengakhiri proses. Jika Anda menggunakan armada Anywhere dan Anda tidak menghentikan proses server setelah setiap sesi game, panggil `Destroy()` dan kemudian `InitSDK()` untuk menginisialisasi ulang sebelum memberi tahu Amazon GameLift Servers bahwa proses tersebut siap untuk menjadi tuan rumah sesi game. `ProcessReady()`

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk-go-destroy-return"></a>

Mengembalikan kesalahan dengan pesan kesalahan jika metode gagal.

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

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

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

Gunakan referensi Amazon GameLift Servers Unreal server SDK 5.x untuk membantu Anda mempersiapkan game multipemain untuk digunakan. Amazon GameLift Servers Untuk detail tentang proses integrasi, lihat[Tambahkan Amazon GameLift Servers ke server game Anda dengan SDK server](gamelift-sdk-server-api.md). Jika Anda menggunakan Amazon GameLift Servers plugin untuk Unreal, lihat juga[Amazon GameLift Serversplugin untuk Unreal Engine](unreal-plugin.md).

**catatan**  
Topik ini menjelaskan Amazon GameLift Servers C\$1\$1 API yang dapat Anda gunakan saat membuat Unreal Engine. Secara khusus, dokumentasi ini berlaku untuk kode yang Anda kompilasi dengan `-DBUILD_FOR_UNREAL=1` opsi. 

# Server C \$1\$1 (Tidak nyata) SDK 5.x untuk Amazon GameLift Servers -- Tipe data
<a name="integration-server-sdk5-unreal-datatypes"></a>

Gunakan referensi Amazon GameLift Servers Unreal server SDK 5.x untuk membantu Anda mempersiapkan game multipemain untuk digunakan. Amazon GameLift Servers Untuk detail tentang proses integrasi, lihat[Tambahkan Amazon GameLift Servers ke server game Anda dengan SDK server](gamelift-sdk-server-api.md). Jika Anda menggunakan Amazon GameLift Servers plugin untuk Unreal, lihat juga[Amazon GameLift Serversplugin untuk Unreal Engine](unreal-plugin.md).

**catatan**  
Topik ini menjelaskan Amazon GameLift Servers C\$1\$1 API yang dapat Anda gunakan saat membuat Unreal Engine. Secara khusus, dokumentasi ini berlaku untuk kode yang Anda kompilasi dengan `-DBUILD_FOR_UNREAL=1` opsi. 

[Server C \$1\$1 (Tidak nyata) SDK 5.x untuk -- Tindakan Amazon GameLift Servers](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)
+ [FAttributeNilai](#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)
+ [FGenericHasil](#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)
+ [Enum](#integration-server-sdk5-unreal-dataypes-enums)

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

Tipe data ini berisi kumpulan parameter yang dikirim ke Amazon GameLift Servers dalam file[ProcessReady()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-processready).


|  |  | 
| --- |--- |
|  **Sifat-sifat**  | Deskripsi | 
| LogParameters | Objek dengan jalur direktori ke file yang dihasilkan selama sesi permainan. Amazon GameLift Serversmenyalin dan menyimpan file untuk akses future.**Jenis**: `TArray<FString>`**Wajib**: Tidak | 
| OnHealthCheck | Fungsi callback yang Amazon GameLift Servers memanggil untuk meminta laporan status kesehatan dari proses server. Amazon GameLift Serversmemanggil fungsi ini setiap 60 detik dan menunggu 60 detik untuk respons. Proses server kembali TRUE jika sehat, FALSE jika tidak sehat. Jika tidak ada respons yang dikembalikan, Amazon GameLift Servers mencatat proses server sebagai tidak sehat. Properti ini adalah fungsi delegasi yang didefinisikan sebagai`DECLARE_DELEGATE_RetVal(bool, FOnHealthCheck)`;   **Jenis**: `FOnHealthCheck`**Wajib**: Tidak | 
| OnProcessTerminate | Fungsi callback yang Amazon GameLift Servers memanggil untuk memaksa proses server dimatikan. Setelah memanggil fungsi ini, Amazon GameLift Servers tunggu 5 menit hingga proses server dimatikan dan merespons dengan [ProcessEnding()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-processending) panggilan sebelum mematikan proses server.**Jenis**: `FSimpleDelegate`**Wajib**: Ya | 
| OnStartGameSession | Fungsi callback yang Amazon GameLift Servers memanggil untuk mengaktifkan sesi permainan baru. Amazon GameLift Serversmemanggil fungsi ini sebagai tanggapan atas permintaan klien [CreateGameSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateGameSession.html). Fungsi callback melewati [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession) objek. Properti ini adalah fungsi delegasi didefinisikan sebagai `DECLARE_DELEGATE_OneParam(FOnStartGameSession, Aws::GameLift::Server::Model::GameSession);`  **Jenis**: `FOnStartGameSession`**Wajib**: Ya | 
| OnUpdateGameSession | Fungsi callback yang Amazon GameLift Servers memanggil untuk meneruskan objek sesi game yang diperbarui ke proses server. Amazon GameLift Serversmemanggil fungsi ini ketika permintaan pengisian ulang kecocokan telah diproses untuk menyediakan data mak comblang yang diperbarui. Ini melewati [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession) objek, pembaruan status (updateReason), dan ID tiket isi ulang pertandingan. Properti ini adalah fungsi delegasi didefinisikan sebagai `DECLARE_DELEGATE_OneParam(FOnUpdateGameSession, Aws::GameLift::Server::Model::UpdateGameSession);` **Jenis**: `FOnUpdateGameSession`**Wajib**: Tidak | 
| Port | Nomor port yang didengarkan oleh proses server untuk koneksi pemain baru. Nilai harus masuk ke dalam kisaran port yang dikonfigurasi untuk setiap armada yang men-deploy build server game ini. Nomor port ini termasuk dalam sesi game dan objek sesi pemain, yang digunakan sesi game saat menghubungkan ke proses server.**Jenis**: `int`**Wajib**: Ya | 

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

Jenis data ini diperbarui ke objek sesi permainan, yang mencakup alasan bahwa sesi permainan diperbarui dan ID tiket isi ulang terkait jika pengisian ulang digunakan untuk mengisi sesi pemain dalam sesi permainan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSession | Sebuah objek [GameSession](#integration-server-sdk5-unreal-dataypes-gamesession). GameSessionObjek berisi properti yang menggambarkan sesi permainan. **Jenis**: `Aws::GameLift::Server::GameSession`**Wajib**: Tidak | 
| UpdateReason | Alasan bahwa sesi permainan sedang diperbarui. **Jenis**: `enum class UpdateReason`  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-datatypes.html) **Wajib**: Tidak   | 
| BackfillTicketId | ID tiket isi ulang yang mencoba memperbarui sesi permainan.**Jenis**: `char[]`**Wajib**: Tidak | 

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

Tipe data ini memberikan detail sesi permainan. 


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionId |  Pengenal unik untuk sesi permainan. Sesi permainan ARN memiliki format berikut:. `arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>` **Jenis**: `char[]` **Wajib**: Tidak  | 
| Nama |  Label deskriptif dari sesi permainan.  **Jenis**: `char[]` **Wajib**: Tidak  | 
| FleetId |  Pengenal unik untuk armada tempat sesi permainan berjalan. **Jenis**: `char[]` **Wajib**: Tidak  | 
| MaximumPlayerSessionCount |  Jumlah maksimum koneksi pemain ke sesi permainan. **Jenis**: `int` **Wajib**: Tidak  | 
| Port |  Nomor port untuk sesi permainan. Untuk terhubung ke server Amazon GameLift Servers game, aplikasi memerlukan alamat IP dan nomor port. **Jenis**: `int` **Wajib**: Tidak  | 
| IpAddress |  Alamat IP dari sesi game. Untuk terhubung ke server Amazon GameLift Servers game, aplikasi memerlukan alamat IP dan nomor port. **Jenis**: `char[]` **Wajib**: Tidak  | 
| GameSessionData |  Set properti sesi game khusus, diformat sebagai nilai string tunggal.  **Jenis**: `char[]` **Wajib**: Tidak  | 
| MatchmakerData |  Informasi tentang proses perjodohan yang digunakan untuk membuat sesi permainan, dalam sintaks JSON, diformat sebagai string. Selain konfigurasi perjodohan yang digunakan, ini berisi data tentang semua pemain yang ditugaskan untuk pertandingan, termasuk atribut pemain dan tugas tim. **Jenis**: `char[]` **Wajib**: Tidak  | 
| GameProperties |  Satu set properti kustom untuk sesi permainan, diformat sebagai pasangan key:value. Properti ini diteruskan dengan permintaan untuk memulai sesi permainan baru. **Jenis**: `GameProperty[]` **Wajib**: Tidak  | 
| DnsName |  Pengenal DNS yang ditetapkan ke instance yang menjalankan sesi permainan. Nilai memiliki format berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-datatypes.html) Saat menghubungkan ke sesi permainan yang berjalan pada armada yang mendukung TLS, Anda harus menggunakan nama DNS, bukan alamat IP. **Jenis**: `char[]` **Wajib**: Tidak  | 

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

Informasi yang digunakan untuk menjaga koneksi antara server Amazon GameLift Servers Anywhere dan Amazon GameLift Servers layanan. Informasi ini digunakan saat meluncurkan proses server baru dengan[InitSDK()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-initsdk). Untuk server yang Amazon GameLift Servers dihosting pada instans EC2 terkelola, gunakan objek kosong.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| webSocketUrl |  `GameLiftServerSdkEndpoint`Amazon GameLift ServersPengembalian ketika Anda [https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html)untuk sumber daya komputasi Amazon GameLift Servers Anywhere. **Jenis**: `char[]` **Wajib**: Ya   | 
| ProsesSid |  Pengenal unik yang terdaftar pada proses server yang menghosting game Anda. **Jenis**: `char[]` **Wajib**: Ya  | 
| hostId | HostIDIni adalah yang ComputeName digunakan saat Anda mendaftarkan komputasi Anda. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Jenis**: `char[]`**Wajib**: Ya | 
| FleeTID | Pengidentifikasi unik armada tempat komputasi terdaftar. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).**Jenis**: `char[]`**Wajib**: Ya | 
| AuthToken | Token otentikasi yang dihasilkan oleh Amazon GameLift Servers itu mengotentikasi server Anda ke. Amazon GameLift Servers Untuk informasi selengkapnya, lihat [GetComputeAuthToken](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_GetComputeAuthToken.html).**Jenis**: `char[]`**Wajib**: Ya | 

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

Informasi yang digunakan untuk membuat permintaan pengisian ulang perjodohan. Server game mengkomunikasikan informasi ini ke Amazon GameLift Servers dalam [StartMatchBackfill()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-startmatchbackfill) panggilan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionArn |  Pengidentifikasi sesi permainan yang unik. Operasi API `[GetGameSessionId](https://docs.aws.amazon.com/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-actions.html#integration-server-sdk5-unreal-getgamesessionid)` mengembalikan pengenal dalam format ARN. **Jenis**: `char[]` **Wajib**: Ya  | 
| MatchmakingConfigurationArn |  Pengidentifikasi unik, dalam bentuk ARN, untuk digunakan mak comblang untuk permintaan ini. ARN mak comblang untuk sesi permainan asli ada di objek sesi permainan di properti data mak comblang. Pelajari selengkapnya tentang data matchmaker di [ Bekerja dengan data matchmaker](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-server.html#match-server-data.html). **Jenis**: `char[]` **Wajib**: Ya  | 
| Pemain |  Satu set data yang mewakili semua pemain yang berada di sesi permainan. Matchmaker menggunakan informasi ini untuk mencari pemain baru yang cocok untuk pemain saat ini. **Jenis**: `TArray<FPlayer>` **Wajib**: Ya  | 
| TicketId |  Pengenal unik untuk tiket permintaan pencocokan atau pencocokan isi ulang. Jika Anda tidak memberikan nilai, Amazon GameLift Servers hasilkan satu. Gunakan pengidentifikasi ini untuk melacak status tiket backfill match atau membatalkan permintaan jika diperlukan.  **Jenis**: `char[]` **Wajib**: Tidak  | 

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

Tipe data ini mewakili pemain dalam perjodohan. Saat memulai permintaan perjodohan, pemain memiliki ID pemain, atribut, dan mungkin data latensi. Amazon GameLift Serversmenambahkan informasi tim setelah pertandingan dibuat.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| LatencyInMS |  Satu set nilai yang dinyatakan dalam milidetik yang menunjukkan jumlah latensi yang dialami pemain saat terhubung ke suatu lokasi.  Jika properti ini digunakan, pemain hanya cocok untuk lokasi yang terdaftar. Jika mak comblang memiliki aturan yang mengevaluasi latensi pemain, pemain harus melaporkan latensi untuk dicocokkan. **Jenis**: `TMap>FString, int32<` **Wajib**: Tidak  | 
| PlayerAttributes |  Kumpulan pasangan kunci:nilai yang berisi informasi pemain untuk digunakan dalam perjodohan. Kunci atribut pemain harus cocok dengan yang PlayerAttributes digunakan dalam set aturan perjodohan. Untuk informasi selengkapnya tentang atribut pemain, lihat [AttributeValue](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_AttributeValue.html). **Jenis**: `TMap>FString, FAttributeValue<` **Wajib**: Tidak  | 
| PlayerId |  Pengenal unik untuk pemain. **Jenis**: `std::string` **Wajib**: Tidak  | 
| Tim |  Nama tim yang ditugaskan pemain dalam pertandingan. Anda menentukan nama tim dalam set aturan perjodohan. **Jenis**: `FString` **Wajib**: Tidak  | 

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

Objek yang menentukan sesi pemain mana yang akan diambil. Proses server menyediakan informasi ini dengan [DescribePlayerSessions()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-describeplayersessions) panggilan keAmazon GameLift Servers.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionId |  Pengidentifikasi sesi permainan yang unik. Gunakan parameter ini untuk meminta semua sesi pemain untuk sesi game yang ditentukan.  Format ID sesi game adalah`FString`. `GameSessionID`Ini adalah string ID kustom atau **Jenis**: `std::string` **Wajib**: Tidak  | 
| PlayerSessionId |  Pengenal unik untuk sesi pemain. Gunakan parameter ini untuk meminta satu sesi pemain tertentu. **Jenis**: `FString` **Wajib**: Tidak  | 
| PlayerId |  Pengenal unik untuk pemain. Gunakan parameter ini untuk meminta semua sesi pemain untuk pemain tertentu. Lihat [Hasilkan pemain IDs](player-sessions-player-identifiers.md). **Jenis**: `FString` **Wajib**: Tidak  | 
| PlayerSessionStatusFilter |  Status sesi pemain untuk memfilter hasil. Status sesi pemain yang mungkin meliputi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/gameliftservers/latest/developerguide/integration-server-sdk5-unreal-datatypes.html) **Jenis**: `FString` **Wajib**: Tidak  | 
| NextToken |  Token yang menunjukkan awal halaman hasil berikutnya. Untuk menentukan awal kumpulan hasil, jangan berikan nilai. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `FString` **Wajib**: Tidak  | 
| Kuota |  Jumlah hasil maksimum yang akan dikembalikan. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `int` **Wajib**: Tidak  | 

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

Informasi yang digunakan untuk membatalkan permintaan pengisian ulang perjodohan. Server game mengkomunikasikan informasi ini ke Amazon GameLift Servers layanan dalam [StopMatchBackfill()](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-stopmatchbackfill) panggilan.


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| GameSessionArn |  Pengidentifikasi sesi permainan unik dari permintaan yang dibatalkan. **Jenis**: `FString` **Wajib**: Ya  | 
| MatchmakingConfigurationArn |  Pengidentifikasi unik dari mak comblang permintaan ini dikirim ke. **Jenis**: `FString` **Wajib**: Ya  | 
| TicketId |  Pengenal unik dari tiket permintaan isi ulang yang akan dibatalkan. **Jenis**: `FString` **Wajib**: Ya  | 

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

Gunakan nilai-nilai ini dalam [FPlayer](#integration-server-sdk5-unreal-dataypes-player) atribut pasangan kunci-nilai. Objek ini memungkinkan Anda menentukan nilai atribut menggunakan salah satu tipe data yang valid: string, nomor, array string, atau peta data. Setiap `AttributeValue` objek hanya dapat menggunakan salah satu properti yang tersedia.


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| ATTRType |  Menentukan jenis nilai atribut. **Jenis:** Nilai `FAttributeType` [enum](#integration-server-sdk5-unreal-dataypes-enums).  **Wajib**: Tidak  | 
| D |  Merupakan nilai atribut string. **Jenis**: `FString` **Wajib**: Tidak  | 
| T |  Merupakan nilai atribut numerik. **Jenis**: `double` **Wajib**: Tidak  | 
| SL |  Merupakan array nilai atribut string. **Jenis**: `TArray<FString>` **Wajib**: Tidak  | 
| SDM |  Merupakan kamus kunci string dan nilai ganda. **Jenis**: `TMap<FString, double>` **Wajib**: Tidak  | 

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

Tipe data ini menyediakan kredensi peran yang memperluas akses terbatas ke AWS sumber daya Anda ke server game. Untuk informasi selengkapnya, lihat [Menyiapkan peran layanan IAM untuk Amazon GameLift Servers](setting-up-role.md).


| Sifat-sifat | **Deskripsi** | 
| --- | --- | 
| RoleArn | Nama Sumber Daya Amazon (ARN) dari peran layanan yang memperluas akses terbatas ke sumber daya Anda. AWS **Jenis**: `FString`**Wajib**: Tidak | 
| RoleSessionName | Nama sesi yang menjelaskan penggunaan kredensi peran.**Jenis**: `FString`**Wajib**: Tidak | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: `long` **Wajib**: Tidak  | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `long&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: `FString` **Wajib**: Tidak  | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `FString&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [FGameLiftDescribePlayerSessionsResult](#integration-server-sdk5-unreal-dataypes-describeplayersessionresult) **Wajib**: Tidak   | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `FGameLiftDescribePlayerSessionsResult&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| PlayerSessions |   **Jenis**: `TArray<FGameLiftPlayerSession>` **Wajib**: Ya  | 
| NextToken |  Token yang menunjukkan awal halaman hasil berikutnya. Untuk menentukan awal kumpulan hasil, jangan berikan nilai. Jika Anda memberikan ID sesi pemain, parameter ini diabaikan. **Jenis**: `FString` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Wajib**: Tidak  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| CreationTime |  **Jenis**: `long` **Wajib**: Ya  | 
| FleetId |  **Jenis**: `FString` **Wajib**: Ya  | 
| GameSessionId |  **Jenis**: `FString` **Wajib**: Ya  | 
| IpAddress |  **Jenis**: `FString` **Wajib**: Ya  | 
| PlayerData |  **Jenis**: `FString` **Wajib**: Ya  | 
| PlayerId |  **Jenis**: `FString` **Wajib**: Ya  | 
| PlayerSessionId |  **Jenis**: `FString` **Wajib**: Ya  | 
| Port |  **Jenis**: `int` **Wajib**: Ya  | 
| Status |  **Jenis:** A `PlayerSessionStatus` [enum](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-enums). **Wajib**: Ya  | 
| TerminationTime |  **Jenis**: `long` **Wajib**: Ya  | 
| DnsName |  **Jenis**: `FString` **Wajib**: Ya  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [FGameLiftGetComputeCertificateResult](#integration-server-sdk5-unreal-dataypes-getcomputecertificateresult) **Wajib**: Tidak   | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `FGameLiftGetComputeCertificateResult&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Wajib**: Tidak  | 

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

Jalur ke sertifikat TLS pada komputasi Anda dan nama host komputasi.


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| CertificatePath |  **Jenis**: `FString` **Wajib**: Ya  | 
| ComputeName |  **Jenis**: `FString` **Wajib**: Ya  | 

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

Tipe data ini dihasilkan dari tindakan dan menghasilkan objek dengan properti berikut:


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| Hasil |  Hasil dari tindakan. **Jenis**: [FGetFleetRoleCredentialsResult](#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsresult) **Wajib**: Tidak   | 
| ResultWithOwnership |   Hasil dari tindakan, dilemparkan sebagai rvalue, sehingga kode panggilan dapat mengambil kepemilikan objek.  **Jenis**: `FGameLiftGetFleetRoleCredentialsResult&&` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [FGameLiftError](#integration-server-sdk5-unreal-dataypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| AccessKeyId |  ID kunci akses untuk mengautentikasi dan menyediakan akses ke AWS sumber daya Anda. **Jenis**: `FString` **Wajib**: Tidak  | 
| AssumedRoleId |  ID pengguna yang menjadi milik peran layanan. **Jenis**: `FString` **Wajib**: Tidak  | 
| AssumedRoleUserArn |  Nama Sumber Daya Amazon (ARN) pengguna yang menjadi milik peran layanan. **Jenis**: `FString` **Wajib**: Tidak  | 
| Kedaluwarsa |  Jumlah waktu hingga kredensi sesi Anda kedaluwarsa. **Jenis**: `FDateTime` **Wajib**: Tidak  | 
| SecretAccessKey |  ID kunci akses rahasia untuk otentikasi. **Jenis**: `FString` **Wajib**: Tidak  | 
| SessionToken |  Token untuk mengidentifikasi sesi aktif saat ini yang berinteraksi dengan AWS sumber daya Anda. **Jenis**: `FString` **Wajib**: Tidak  | 
| Berhasil |  Apakah tindakan itu berhasil atau tidak. **Jenis**: `bool` **Wajib**: Ya  | 
| Kesalahan |  Kesalahan yang terjadi jika tindakan tidak berhasil. **Jenis**: [GameLiftError](integration-server-sdk5-csharp-datatypes.md#integration-server-sdk5-csharp-datatypes-gamelifterror) **Wajib**: Tidak  | 

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


| Sifat-sifat | Deskripsi | 
| --- | --- | 
| ErrorType |  Jenis kesalahan. **Jenis:** A `GameLiftErrorType` [enum](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-enums). **Wajib**: Tidak   | 
| ErrorName |  Nama kesalahannya.  **Jenis**: `std::string`  **Wajib**: Tidak   | 
| ErrorMessage |  Pesan kesalahan.  **Jenis**: `std::string`  **Wajib**: Tidak   | 

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

Enum yang didefinisikan untuk SDK server untuk Amazon GameLift Servers (Unreal) didefinisikan sebagai berikut:

**FAttributeJenis**  
+ **TIDAK ADA**
+ **STRING**
+ **GANDA**
+ **STRING\$1LIST**
+ **STRING\$1DOUBLE\$1PETA**

**GameLiftErrorType**  
Nilai string yang menunjukkan jenis kesalahan. Nilai yang valid meliputi:  
+ **SERVICE\$1CALL\$1FAILED - Panggilan ke layanan telah gagal**. AWS 
+ **LOCAL\$1CONNECTION\$1FAILED — Koneksi lokal gagal**. Amazon GameLift Servers 
+ **NETWORK\$1NOT\$1INITIALIZED — Jaringan belum diinisialisasi**. 
+ **GAMESESSION\$1ID\$1NOT\$1SET — ID sesi permainan belum ditetapkan**. 
+ **BAD\$1REQUEST\$1EXCEPTION** 
+ **INTERNAL\$1SERVICE\$1EXCEPTION** 
+ **ALREADY\$1INITIALIZED** — Amazon GameLift Servers Server atau Klien telah diinisialisasi dengan Initialize (). 
+ **FLEET\$1MISMATCH** — Armada target tidak cocok dengan armada GameSession atau PlayerSession. 
+ **GAMELIFT\$1CLIENT\$1NOT\$1INITIALIZED — Klien belum diinisialisasi**. Amazon GameLift Servers 
+ **GAMELIFT\$1SERVER\$1NOT\$1INITIALIZED — Server belum diinisialisasi**. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1ENDED\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan sesi permainan berakhir. 
+ **GAME\$1SESSION\$1NOT\$1READY — Sesi Game Server** tidak diaktifkan. Amazon GameLift Servers 
+ **GAME\$1SESSION\$1READY\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan sesi permainan sudah siap. 
+ **INITIALIZATION\$1MISMATCH** — Metode klien dipanggil setelah Server: :Initialize (), atau sebaliknya. 
+ **NOT\$1INITIALIZED** — Amazon GameLift Servers Server atau Klien belum diinisialisasi dengan Initialize (). 
+ **NO\$1TARGET\$1ALIASID\$1SET — AliaID target belum ditetapkan**. 
+ **NO\$1TARGET\$1FLEET\$1SET — Armada target belum ditetapkan**. 
+ **PROCESS\$1ENDING\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan proses berakhir. 
+ **PROCESS\$1NOT\$1ACTIVE** — Proses server belum aktif, tidak terikat pada GameSession, dan tidak dapat menerima atau memproses. PlayerSessions 
+ **PROCESS\$1NOT\$1READY** — Proses server belum siap untuk diaktifkan. 
+ **PROCESS\$1READY\$1FAILED** — SDK server untuk tidak Amazon GameLift Servers dapat menghubungi layanan untuk melaporkan proses siap. 
+ **SDK\$1VERSION\$1DETECTION\$1FAILED — Deteksi versi** SDK gagal. 
+ **STX\$1CALL\$1FAILED — Panggilan ke komponen backend XStx server telah gagal**. 
+ **STX\$1INITIALIZATION\$1FAILED — Komponen backend server gagal** XStx menginisialisasi. 
+ **UNEXPECTED\$1PLAYER\$1SESSION — Sesi** pemain yang tidak terdaftar ditemui oleh server. 
+ **WEBSOCKET\$1CONNECT\$1FAILURE** 
+ **WEBSOCKET\$1CONNECT\$1FALURE\$1FORBIDDEN** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1INVALID\$1URL** 
+ **WEBSOCKET\$1CONNECT\$1FAILURE\$1TIMEOUT** 
+ **WEBSOCKET\$1RETRIABLE\$1SEND\$1MESSAGE\$1FAILURE - Kegagalan yang dapat diambil untuk mengirim pesan ke Layanan**. GameLift WebSocket 
+ **WEBSOCKET\$1SEND\$1MESSAGE\$1FAILURE — Kegagalan untuk mengirim pesan** ke Layanan. GameLift WebSocket 
+ **MATCH\$1BACKFILL\$1REQUEST\$1VALIDATION — Validasi permintaan gagal**. 
+ **PLAYER\$1SESSION\$1REQUEST\$1VALIDATION — Validasi permintaan gagal**. 

**EPlayerSessionCreationPolicy**  
Nilai string yang menunjukkan apakah sesi game menerima pemain baru. Nilai yang valid meliputi:   
+ **ACCEPT\$1ALL** — Menerima semua sesi pemain baru. 
+ **DENY\$1ALL** — Menolak semua sesi pemain baru. 
+ **NOT\$1SET** — Sesi permainan tidak diatur untuk menerima atau menolak sesi pemain baru. 

**EPlayerSessionStatus**  
+ **AKTIF**
+ **SELESAI**
+ **NOT\$1SET**
+ **DIPESAN**
+ **TIMEDOUT**

[Server C \$1\$1 (Tidak nyata) SDK 5.x untuk Amazon GameLift Servers -- Tipe data](integration-server-sdk5-unreal-datatypes.md)

**Topics**
+ [Server C \$1\$1 (Tidak nyata) SDK 5.x untuk Amazon GameLift Servers -- Tipe data](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)
+ [Hancurkan ()](#integration-server-sdk5-unreal-ref-destroy)

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

Mengembalikan nomor versi SDK saat ini yang dibangun ke dalam proses server.

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

```
FGameLiftStringOutcome GetSdkVersion();
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-unreal-getsdkversion-return"></a>

Jika berhasil, ini mengembalikan versi SDK saat ini sebagai objek [FGameLiftStringOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-awsstringoutcome). Objek yang dikembalikan menyertakan nomor versi (contoh`5.0.0`). Jika tidak berhasil, ini mengembalikan pesan kesalahan.

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

Menginisialisasi Amazon GameLift Servers SDK untuk armada EC2 terkelola. Panggil metode ini saat peluncuran, sebelum inisialisasi lain yang terkait dengan Amazon GameLift Servers terjadi. Metode ini membaca parameter server dari lingkungan host untuk mengatur komunikasi antara server dan Amazon GameLift Servers layanan. Ini menggunakan token idempotensi, jadi Anda mencoba kembali panggilan ini dengan aman ketika gagal.

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

```
FGameLiftGenericOutcome InitSDK()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-unreal-initsdk-return"></a>

Jika berhasil, mengembalikan `InitSdkOutcome` objek yang menunjukkan bahwa proses server siap untuk memanggil[ProcessReady()](#integration-server-sdk5-unreal-processready). 

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

Menginisialisasi Amazon GameLift Servers SDK untuk armada Anywhere atau armada kontainer terkelola. Panggil metode ini saat peluncuran, sebelum inisialisasi lain yang terkait dengan Amazon GameLift Servers terjadi. Metode ini memerlukan parameter server eksplisit untuk mengatur komunikasi antara server dan Amazon GameLift Servers layanan. Ini menggunakan token idempotensi, jadi Anda mencoba kembali panggilan ini dengan aman ketika gagal.

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

```
FGameLiftGenericOutcome InitSDK(serverParameters)
```

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

[FServerParameter](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-serverparameters)  
Untuk menginisialisasi server game pada armada Amazon GameLift Servers Anywhere, buat `ServerParameters` objek dengan informasi berikut:  
+ URL yang WebSocket digunakan untuk terhubung ke server game Anda. 
+ ID dari proses yang digunakan untuk meng-host server game Anda. 
+ ID komputasi yang menghosting proses server game Anda. 
+ ID Amazon GameLift Servers armada yang berisi komputasi Amazon GameLift Servers Anywhere Anda.
+ Token otorisasi yang dihasilkan oleh Amazon GameLift Servers operasi. 

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-initsdk-anywhere-return"></a>

Jika berhasil, mengembalikan `InitSdkOutcome` objek yang menunjukkan bahwa proses server siap untuk memanggil[ProcessReady()](#integration-server-sdk5-unreal-processready). 

**catatan**  
Jika panggilan gagal untuk build game yang diterapkan ke `InitSDK()` armada Anywhere, periksa `ServerSdkVersion` parameter yang digunakan saat membuat sumber daya build. Anda harus secara eksplisit menetapkan nilai ini ke versi SDK server yang digunakan. Nilai default untuk parameter ini adalah 4.x, yang tidak kompatibel. Untuk mengatasi masalah ini, buat build baru dan terapkan ke armada baru.

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

Memberitahu Amazon GameLift Servers bahwa proses server siap untuk meng-host sesi permainan. Panggil metode ini setelah memanggil[InitSDK()](#integration-server-sdk5-unreal-initsdk). Metode ini harus dipanggil hanya satu kali per proses.

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

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

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

**processParameters**  
[FProcessParameter](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-process)Objek yang mengkomunikasikan informasi berikut tentang proses server:  
+ Nama metode callback yang diimplementasikan dalam kode server game yang dipanggil Amazon GameLift Servers layanan untuk berkomunikasi dengan proses server.
+ Nomor port yang didengarkan oleh proses server.
+ Jalur ke file khusus sesi game apa pun yang Amazon GameLift Servers ingin Anda tangkap dan simpan.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-processready-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini menggambarkan panggilan [ProcessReady()](#integration-server-sdk5-unreal-processready) dan mendelegasi implementasi fungsi.

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

Memberitahu Amazon GameLift Servers bahwa proses server berakhir. Panggil metode ini setelah semua tugas pembersihan lainnya (termasuk mematikan sesi permainan aktif) dan sebelum mengakhiri proses. Tergantung pada hasil`ProcessEnding()`, proses keluar dengan sukses (0) atau kesalahan (-1) dan menghasilkan peristiwa armada. Jika proses berakhir dengan kesalahan, peristiwa armada yang dihasilkan adalah`SERVER_PROCESS_TERMINATED_UNHEALTHY`).

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

```
FGameLiftGenericOutcome ProcessEnding()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-unreal-processending-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Memberitahu Amazon GameLift Servers bahwa proses server telah mengaktifkan sesi permainan dan sekarang siap menerima koneksi pemain. Tindakan ini harus dipanggil sebagai bagian dari fungsi `onStartGameSession()` callback, setelah semua inisialisasi sesi game.

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

```
FGameLiftGenericOutcome ActivateGameSession()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-unreal-activategamesession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini menunjukkan `ActivateGameSession()` dipanggil sebagai bagian dari fungsi `onStartGameSession()` delegasi. 

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

Memperbarui kemampuan sesi game saat ini untuk menerima sesi pemain baru. Sesi game dapat diatur untuk menerima atau menolak semua sesi pemain baru.

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

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

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

**playerCreationSessionKebijakan**  
Nilai string yang menunjukkan apakah sesi game menerima pemain baru.   
Nilai yang valid meliputi:  
+ **ACCEPT\$1ALL** — Menerima semua sesi pemain baru.
+ **DENY\$1ALL** — Menolak semua sesi pemain baru.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-updateplayersessioncreationpolicy-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Contoh ini menetapkan kebijakan bergabung sesi game saat ini untuk menerima semua pemain.

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

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

Mengambil ID sesi permainan yang dihosting oleh proses server aktif. 

Untuk proses idle yang tidak diaktifkan dengan sesi game, panggilan akan menampilkan file. [FGameLiftError](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-gamelifterror)

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

```
FGameLiftStringOutcome GetGameSessionId()
```

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

Tindakan ini tidak memiliki parameter.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-getgamesessionid-return"></a>

Jika berhasil, ini mengembalikan ID sesi game sebagai objek [FGameLiftStringOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-awsstringoutcome). Jika tidak berhasil, mengembalikan pesan kesalahan.

Untuk proses idle yang tidak diaktifkan dengan sesi game, panggilan mengembalikan `Success` = `True` dan `GameSessionId` =`""`.

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

Mengembalikan waktu yang merupakan jadwal proses server akan ditutup, jika waktu penghentian tersedia. Proses server mengambil tindakan setelah menerima `onProcessTerminate()` panggilan balik dariAmazon GameLift Servers. Amazon GameLift Serverspanggilan `onProcessTerminate()` untuk alasan berikut: 
+ Ketika proses server telah melaporkan kesehatan yang buruk atau belum Amazon GameLift Servers merespons.
+ Saat mengakhiri instance selama acara scale-down.
+ Ketika sebuah instance dihentikan karena gangguan [spot-instance](spot-tasks.md).

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

```
AwsDateTimeOutcome GetTerminationTime()
```

### Nilai yang ditampilkan
<a name="integration-server-sdk5-unreal-getterm-return"></a>

Jika berhasil, ini mengembalikan waktu penghentian sebagai objek `AwsDateTimeOutcome`. Nilainya adalah waktu penghentian, dinyatakan dalam kutu yang telah berlalu sejak. `0001 00:00:00` Misalnya, nilai waktu tanggal `2020-09-13 12:26:40 -000Z` sama dengan `637355968000000000` kutu. Jika tidak ada waktu penghentian tersedia, pesan kesalahan ditampilkan.

Jika proses belum menerima ` ProcessParameters.OnProcessTerminate()` panggilan balik, pesan kesalahan akan dikembalikan. Untuk informasi selengkapnya tentang mematikan proses server, lihat[Menanggapi notifikasi shutdown proses server](gamelift-sdk-server-api.md#gamelift-sdk-server-terminate).

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

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

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

Memberitahu Amazon GameLift Servers bahwa pemain dengan ID sesi pemain tertentu telah terhubung ke proses server dan membutuhkan validasi. Amazon GameLift Serversmemverifikasi bahwa ID sesi pemain valid. Setelah sesi pemain divalidasi, Amazon GameLift Servers mengubah status slot pemain dari RESERVED menjadi AKTIF. 

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

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

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

playerSessionId  
ID unik yang dikeluarkan oleh Amazon GameLift Servers saat sesi pemain baru dibuat.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-acceptplayersession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan. 

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

Contoh ini menangani permintaan koneksi yang mencakup memvalidasi dan menolak sesi pemain yang tidak valid. 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>

Memberitahu Amazon GameLift Servers bahwa pemain telah terputus dari proses server. Sebagai tanggapan, Amazon GameLift Servers ubah slot pemain menjadi tersedia. 

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

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

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

**`playerSessionId`**  
ID unik yang dikeluarkan oleh Amazon GameLift Servers saat sesi pemain baru dibuat.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-removeplayersession-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Mengambil data sesi pemain yang mencakup pengaturan, metadata sesi, dan data pemain. Gunakan metode ini untuk mendapatkan informasi tentang hal-hal berikut:
+ Sesi pemain tunggal
+ Semua sesi pemain dalam sesi permainan
+ Semua sesi pemain yang terkait dengan ID pemain tunggal

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

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

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

**[FGameLiftDescribePlayerSessionsRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-playersessions)**  
[FGameLiftDescribePlayerSessionsRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-playersessions)Objek yang menggambarkan sesi pemain mana yang akan diambil.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-describeplayersessions-return"></a>

Jika berhasil, ini mengembalikan objek [FGameLiftDescribePlayerSessionsOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-describeplayersessionsoutcome) yang berisi satu set objek sesi pemain yang sesuai dengan parameter permintaan.

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

Contoh ini meminta semua sesi pemain yang terhubung secara aktif ke sesi permainan tertentu. Dengan menghilangkan *NextToken*dan mengatur nilai *Batas* ke 10, Amazon GameLift Servers mengembalikan catatan sesi 10 pemain pertama yang cocok dengan permintaan.

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

Mengirim permintaan untuk menemukan pemain baru untuk slot terbuka dalam sesi permainan yang dibuat denganFlexMatch. Untuk informasi selengkapnya, lihat [fitur FlexMatch isi ulang](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

Tindakan ini asinkron. Jika pemain baru dicocokkan, kirimkan data Amazon GameLift Servers mak comblang yang diperbarui menggunakan fungsi panggilan balik. `OnUpdateGameSession()`

Proses server hanya dapat melakukan satu permintaan backfill match yang aktif dalam satu waktu. Untuk mengirim permintaan baru, panggil [StopMatchBackfill()](#integration-server-sdk5-unreal-stopmatchbackfill) terlebih dahulu untuk membatalkan permintaan asli.

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

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

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

**[FStartMatchBackfillRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-startmatchbackfillrequest)**  
 StartMatchBackfillRequest Objek yang mengkomunikasikan informasi berikut:  
+ ID tiket untuk ditetapkan ke permintaan backfill. Informasi ini opsional; jika tidak ada ID yang diberikan, Amazon GameLift Servers akan menghasilkan satu.
+ Matchmaker untuk dikirimi permintaan. ARN konfigurasi penuh diperlukan. Nilai ini ada dalam data mak comblang sesi permainan.
+ ID sesi permainan untuk mengisi ulang.
+ Data perjodohan yang tersedia untuk pemain sesi permainan saat ini.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-startmatchbackfill-return"></a>

Mengembalikan `StartMatchBackfillOutcome` objek dengan ID tiket isi ulang kecocokan, atau kegagalan dengan pesan kesalahan. 

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

Membatalkan permintaan pengisian ulang pertandingan yang aktif. Untuk informasi selengkapnya, lihat [fitur FlexMatch isi ulang](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/match-backfill.html).

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

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

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

**[FStopMatchBackfillRequest](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-stopmatchbackfillrequest)**  
 StopMatchBackfillRequest Objek yang mengidentifikasi tiket perjodohan untuk dibatalkan:   
+ ID tiket yang ditetapkan untuk permintaan pengisian ulang.
+ Mak comblang permintaan isi ulang dikirim ke.
+ Sesi permainan yang terkait dengan permintaan isi ulang.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-stopmatchbackfill-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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

Mengambil jalur ke sertifikat TLS yang digunakan untuk mengenkripsi koneksi jaringan antara sumber daya komputasi Amazon GameLift Servers Anywhere Anda dan. Amazon GameLift Servers Anda dapat menggunakan jalur sertifikat saat mendaftarkan perangkat komputasi ke armada Amazon GameLift Servers Anywhere. Untuk informasi selengkapnya, lihat [RegisterCompute](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_RegisterCompute.html).

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

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

### Nilai yang ditampilkan
<a name="integration-server-sdk5-unreal-getcomputecertificate-return"></a>

Mengembalikan `GetComputeCertificateResponse` objek yang berisi berikut: 
+ CertificatePath: Jalur ke sertifikat TLS pada sumber daya komputasi Anda. 
+ HostName: Nama host sumber daya komputasi Anda.

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

Mengambil kredensyal peran IAM yang memberi wewenang Amazon GameLift Servers untuk berinteraksi dengan orang lain. Layanan AWS Untuk informasi selengkapnya, lihat [Hubungkan server game yang Amazon GameLift Servers di-host ke AWS sumber daya lain](gamelift-sdk-server-resources.md).

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

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

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

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

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-getfleetrolecredentials-return"></a>

Mengembalikan objek [FGameLiftGetFleetRoleCredentialsOutcome](integration-server-sdk5-unreal-datatypes.md#integration-server-sdk5-unreal-dataypes-getfleetrolecredentialsoutcome).

### Contoh
<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
}
```

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

Membebaskan SDK server Amazon GameLift Servers game dari memori. Sebagai praktik terbaik, hubungi metode ini setelah `ProcessEnding()` dan sebelum mengakhiri proses. Jika Anda menggunakan armada Anywhere dan Anda tidak menghentikan proses server setelah setiap sesi game, panggil `Destroy()` dan kemudian `InitSDK()` untuk menginisialisasi ulang sebelum memberi tahu Amazon GameLift Servers bahwa proses tersebut siap untuk menjadi tuan rumah sesi game. `ProcessReady()`

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

```
FGameLiftGenericOutcome Destroy();
```

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

Tidak ada parameter.

### Nilai yang dikembalikan
<a name="integration-server-sdk5-unreal-ref-destroy-return"></a>

Mengembalikan hasil generik yang terdiri dari keberhasilan atau kegagalan dalam sebuah pesan kesalahan.

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