Konfigurasi Wowza Streaming Engine REST API

Konfigurasi Wowza REST API memungkinkan pengembang dan administrator server untuk mengelola Wowza Streaming Engine secara programatik, mulai dari manajemen virtual host, aplikasi live stream, hingga pemantauan statistik koneksi secara real-time. Layanan API ini menggunakan arsitektur HTTP berbasis REST (Representational State Transfer) dengan format data pertukaran JSON.

Secara default, layanan REST API pada Wowza Streaming Engine berjalan pada port 8087 dan memerlukan kredensial administrator yang valid. Langkah awal yang wajib dilakukan adalah memastikan modul REST API aktif pada file konfigurasi server dan mengonfigurasi hak akses (Access Control List/ACL) demi menjaga keamanan infrastruktur streaming.

Langkah Pengaktifan dan Konfigurasi Dasar REST API

Untuk mengaktifkan dan mengatur parameter REST API di lingkungan produksi, Anda harus menyunting berkas konfigurasi utama server dan mengatur kredensial akses. Berikut adalah tahapan teknis konfigurasinya:

  1. Buka direktori instalasi Wowza Streaming Engine, secara default berada di /usr/local/WowzaStreamingEngine/conf/ pada sistem Linux atau C:\Program Files\Wowza Media Systems\Wowza Streaming Engine\conf\ pada Windows.
  2. Sunting berkas Server.xml menggunakan teks editor dengan hak akses administrator.
  3. Cari blok konfigurasi dan pastikan parameter pengaktifan bernilai true.
  4. Atur alamat IP binding dan port sesuai dengan kebijakan jaringan server Anda.

Tabel Parameter Konfigurasi Server.xml

Parameter XML Nilai Standar Keterangan Fungsi
<Name>enable</Name> true Mengaktifkan atau menonaktifkan modul REST API server.
<Name>ipAddress</Name> * (Semua IP) Menentukan antarmuka jaringan (IP) yang mendengarkan permintaan API.
<Name>port</Name> 8087 Nomor port TCP untuk komunikasi HTTP/HTTPS REST API.
<Name>connectionThrottleRate</Name> 100 Batasan laju koneksi untuk mencegah serangan penolakan layanan (DoS).

Manajemen Pengguna dan Pengamanan Akses (Digest Authentication)

Wowza REST API menggunakan metode autentikasi Digest Access Authentication untuk mengamankan setiap permintaan HTTP. Data pengguna disimpan di dalam berkas Admin.password yang terletak di dalam folder conf/.

Untuk menambahkan pengguna administrator baru yang berhak mengakses API, jalankan skrip utilitas bawaan melalui terminal baris perintah:

[install-dir]/bin/addPublisher.sh -username [nama_pengguna] -password [kata_sandi] -role admin

Atau pada sistem operasi Windows menggunakan Command Prompt:

[install-dir]\bin\addPublisher.bat -username [nama_pengguna] -password [kata_sandi] -role admin

Pastikan berkas VHost.xml juga dikonfigurasi untuk membatasi alamat IP mana saja yang diizinkan melakukan panggilan API (Host Access List) guna meminimalisir risiko eksploitasi dari jaringan publik.

Contoh Pemanggilan API Menggunakan cURL

Setelah server dikonfigurasi dan layanan dihidupkan ulang (restart), Anda dapat menguji koneksi REST API menggunakan perintah cURL dari terminal. Permintaan harus menyertakan header Accept: application/json dan Content-Type: application/json.

Berikut adalah contoh perintah untuk mengambil informasi status server secara menyeluruh:

curl -X GET --digest -u "admin:password_anda" -H "Accept: application/json" -H "Content-Type: application/json" http://localhost:8087/v2

Jika konfigurasi berhasil, server akan mengembalikan respons JSON berisi informasi versi Wowza Streaming Engine, status lisensi, dan modul yang aktif.

Troubleshooting Kendala Umum REST API

Kendala yang sering ditemui saat konfigurasi awal meliputi:

  • HTTP 401 Unauthorized: Pastikan kombinasi nama pengguna dan kata sandi pada parameter -u sudah benar dan terdaftar di berkas Admin.password.
  • Connection Refused (Port 8087): Periksa aturan firewall sistem operasi atau layanan cloud (Security Group) apakah port 8087 sudah dibuka untuk lalu lintas TCP.
  • HTTP 403 Forbidden: Periksa pengaturan kontrol akses IP pada berkas konfigurasi XML untuk memastikan IP klien Anda masuk dalam daftar diizinkan.