

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

# SDK Pemain IVS: Integrasi JW Player
<a name="player-jwplayer"></a>

Dokumen ini menjelaskan fungsi terpenting yang tersedia dalam integrasi Amazon Interactive Video Service (IVS) JW Player.

**Versi terbaru integrasi JW Player:** 1.51.0 (Catatan [Rilis](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/release-notes.html#apr16-26-player-web-ll))

## Memulai
<a name="jwplayer-getting-started"></a>

Dukungan Amazon IVS untuk JW Player diimplementasikan melalui Penyedia. Penyedia Amazon IVS hanya didukung di pemutar web JW Player. Penyedia dimuat melalui tag skrip, dan aliran apa pun yang memerlukan pemutaran Penyedia Amazon IVS harus ditandai `type: 'ivs'` di daftar putar. Amazon IVS mendukung JW Player versi 8.18.4 dan yang lebih baru.

### Pengaturan
<a name="jwplayer-getting-started-setup"></a>

Dalam instruksi ini, `JW_PLAYER_DIV` adalah nama instance JW Player Anda dan `IVS_STREAM` merupakan URL pemutaran IVS Anda. `<div>` Untuk mengatur Penyedia Amazon IVS dan mengaktifkan pemutaran:

1. Sertakan `script` tag berikut (untuk versi terbaru dari integrasi pemain; dalam hal ini, 1.51.0):

   ```
   <script src="https://player.live-video.net/1.51.0/amazon-ivs-jw-provider.min.js"></script>
   ```

1. Gunakan `ivs` tipe untuk menandai item daftar putar IVS Anda. Tetapkan `cast` nilainya `setup()` ke `null` (karena Chromecast tidak didukung).

   ```
   jwplayer(JW_PLAYER_DIV).setup({
      playlist: [{
         file:IVS_STREAM,
         type: 'ivs',
      }]
   });
   ```

1. Jika Anda ingin referensi ke Amazon IVS Player yang mendasarinya untuk melakukan panggilan Amazon IVS Player API atau Anda ingin referensi ke enum khusus Amazon IVS untuk penanganan panggilan balik, tambahkan pendengar ke acara: `'providerPlayer'`

   ```
   jwplayer(JW_PLAYER_DIV).on('providerPlayer', function (player) {
      // player object has 'ivsPlayer' and 'ivsEvents' properties
      // ...callback code...
   });
   ```

### Kode Sampel
<a name="jwplayer-getting-started-code"></a>

Dalam contoh ini, `JW_PLAYER_LIB` adalah URL ke skrip perpustakaan JW Player Anda dan `IVS_STREAM` merupakan URL pemutaran IVS Anda.

```
<!DOCTYPE html>
<html lang="en">
<head>
   <script src=JW_PLAYER_LIB></script>
   <script src="https://player.live-video.net/1.51.0/amazon-ivs-jw-provider.min.js"></script>
</head>
<body>
   <div id='player'></div>
   <script>
      // set default values for ivsPlayer and ivsEvents
      var ivsPlayer = {};
      var ivsEvents = {};

      // define our player setup
      const ivsConfig = {
         playlist: [{
            file: IVS_STREAM,
            type: 'ivs',
         }]
      };

      jwplayer('player')
         .setup(ivsConfig)
         .on('providerPlayer', function (player) {
            console.log('Amazon IVS Player: ', player.ivsPlayer);
            console.log('Amazon IVS Player Events: ', player.ivsEvents);

            // store the reference to the Amazon IVS Player
            ivsPlayer = player.ivsPlayer;
            // store the reference to the Amazon IVS Player Events
            ivsEvents = player.ivsEvents;
         });
   </script>
</body>
</html>
```

## Peristiwa
<a name="jwplayer-events"></a>

Untuk mendengarkan acara JW Player standar, gunakan fungsi [on](https://docs.jwplayer.com/players/docs/jw8-reference#event-listening-with-the-jwp-api) dari JW Player.

Untuk mendengarkan acara yang khusus untuk Amazon IVS, atau untuk menambah dan menghapus pendengar acara di pemutar Web Amazon IVS, Anda harus mendengarkan `'providerPlayer'` acara tersebut untuk mendapatkan referensi ke Amazon IVS Player dan kemudian menambahkan acara yang mendengarkan ke dalamnya. Contoh:

```
// store a default value for ivsPlayer
var ivsPlayer = {};

// store references to the Amazon IVS Player and Amazon IVS Events:
jwplayer(JW_PLAYER_DIV).on('providerPlayer', function (player) {
   ivsPlayer = player.ivsPlayer;
});

// set up event listening
ivsPlayer.addEventListener(event, callback);
ivsPlayer.removeEventListener(event, callback);
```

di mana `callback` adalah panggilan balik yang Anda definisikan, dan `event` merupakan salah satu dari:`PlayerEventType`,`PlayerState`, atau`ErrorType`. Untuk informasi selengkapnya tentang peristiwa, lihat [Amazon IVS Player SDK: Referensi Web](https://aws.github.io/amazon-ivs-player-docs/1.51.0/web/).

`'providerPlayer'`Acara ini dipancarkan oleh JW Player, dan panggilan balik yang Anda daftarkan akan menerima objek dengan bidang berikut:


| Bidang | Deskripsi | 
| --- | --- | 
|  `ivsPlayer`  |  Mengembalikan instance pemutar Amazon IVS yang mendasarinya. API Web Amazon IVS Player lengkap tersedia melalui instance ini. Sebaiknya gunakan API pemutaran JW Player dasar sebanyak mungkin, dan menggunakan fungsi ini hanya untuk mengakses fitur khusus Amazon IVS. Fungsi paling umum yang mungkin perlu Anda akses di instans pemutar Amazon IVS adalah `addEventListener()` dan`removeEventListener()`.  | 
|  `ivsEvents`  |  Mengembalikan objek dengan`PlayerEventType`,`PlayerState`, dan `ErrorType` bidang, yang memetakan ke enum khusus Amazon IVS terkait. Untuk informasi selengkapnya, lihat [Amazon IVS Player SDK: Referensi Web](https://aws.github.io/amazon-ivs-player-docs/1.51.0/web/).  | 

## Kesalahan
<a name="jwplayer-errors"></a>

[Untuk kesalahan JW Player umum, gunakan fungsi aktif dari JW Player untuk mendengarkan peristiwa kesalahan.](https://docs.jwplayer.com/players/docs/jw8-reference#event-listening-with-the-jwp-api)

Untuk kesalahan khusus untuk Amazon IVS, dengarkan di pemutar Amazon IVS untuk kesalahannya sendiri:

```
// set default values for ivsPlayer and ivsEvents
var ivsPlayer = {};
var ivsEvents = {};

// store references to the Amazon IVS Player and Amazon IVS Events
jwplayer(JW_PLAYER_DIV).on('providerPlayer', function (player) {
   ivsPlayer = player.ivsPlayer;
   ivsEvents = player.ivsEvents;
});

// set up event listening:
let playerEvent = ivsEvents.PlayerEventType;
ivsPlayer.addEventListener(playerEvent.ERROR, callback);
```

Callback akan menerima objek dengan bidang berikut:


| Bidang | Deskripsi | 
| --- | --- | 
|  `type`  |  Jenis kesalahan. Sesuai dengan `ErrorType` acara. Untuk informasi selengkapnya, lihat [Amazon IVS Player SDK: Referensi Web](https://aws.github.io/amazon-ivs-player-docs/1.51.0/web/).  | 
|  `code`  |  Kode kesalahan.  | 
|  `source`  |  Sumber kesalahan.  | 
|  `message`  |  Pesan kesalahan yang dapat dibaca manusia.  | 

## Kebijakan Keamanan Konten
<a name="jwplayer-content-security-policy"></a>

Amazon IVS Provider API dikonfigurasi untuk bekerja pada halaman yang menggunakan Kebijakan Keamanan Konten (CSP). Lihat bagian “Bekerja dengan Kebijakan Keamanan Konten” di[SDK IVS Player: Panduan Web](web-content-security-policy.md).

## Batasan
<a name="jwplayer-limitations"></a>

Penyedia tidak mendukung casting. Jika Anda mengaktifkan casting di dasbor JW Player, Anda dapat menonaktifkannya dengan menyetel `null` saat `cast` menelepon`setup()`. Ini menyembunyikan tombol casting.