ApsaraVideo Live menyediakan callback event untuk status ingest aliran, perekaman siaran langsung, snapshot siaran langsung, dan tinjauan otomatis. Topik ini menjelaskan cara mengonfigurasi callback event tersebut di Konsol ApsaraVideo Live.
Prasyarat
ApsaraVideo Live mendukung notifikasi event melalui callback HTTP yang juga kompatibel dengan HTTPS. Anda harus men-deploy layanan HTTP untuk menerima pesan callback dan mengonfigurasi alamat webhook di konsol atau menggunakan API.
Ketika terjadi event ingest aliran atau gangguan, server ApsaraVideo Live mengirim permintaan HTTP GET ke alamat tersebut, dengan detail event dikirimkan melalui parameter URL.
Untuk event lainnya, server ApsaraVideo Live mengirim permintaan HTTP POST ke alamat tersebut, dengan detail event dikirimkan dalam body JSON.
Skenario
Ketika event tertentu dipicu selama siaran langsung, Alibaba Cloud mengirim permintaan ke server Anda. Server Anda bertanggung jawab untuk mengakui permintaan tersebut. Setelah autentikasi berhasil, Anda dapat mengambil informasi callback event dari paket data JSON.
ApsaraVideo Live mendukung callback untuk event seperti status ingest aliran, perekaman siaran langsung (rekaman on-demand), snapshot siaran langsung, dan tinjauan otomatis (moderasi video dan audio). Untuk informasi lebih lanjut mengenai parameter callback dan contoh untuk berbagai event, lihat Manajemen callback.
Batasan
URL alamat webhook tidak memerlukan autentikasi dan hanya perlu dapat diakses secara publik. Pengakuan URL memiliki persyaratan berikut:
Jika permintaan ke URL mengalami timeout, permintaan tersebut akan dicoba ulang. Periode timeout adalah 5 detik, jumlah percobaan ulang adalah 5 kali, dan interval antar percobaan ulang adalah 1 detik.
Persyaratan konfigurasi untuk tipe callback yang berbeda:
Callback ingest aliran hanya dapat dikonfigurasi dan diedit untuk domain ingest.
Callback perekaman, snapshot, moderasi video, dan moderasi audio hanya dapat dikonfigurasi dan diedit untuk domain streaming.
Pengenalan fungsi
Callback event dikategorikan menjadi callback ingest dan callback streaming.
Callback ingest aliran: Anda dapat mengatur callback ingest aliran dan autentikasi callback untuk domain ingest.
Callback streaming: Untuk domain streaming, Anda dapat mengonfigurasi callback perekaman, callback snapshot, callback moderasi video, dan callback moderasi audio.
Catatan callback: Anda dapat menggunakan catatan callback untuk melihat dengan cepat catatan dan konten event callback untuk rekaman siaran langsung yang disimpan di OSS. Untuk informasi lebih lanjut, lihat Catatan callback.
Panduan operasi
Masuk ke Konsol ApsaraVideo Live.
Di panel navigasi sebelah kiri, klik Feature Management > Callbacks untuk membuka halaman Callbacks.
Pilih domain ingest atau streaming yang ingin Anda konfigurasi. Anda dapat mengonfigurasi callback ingest untuk domain ingest, serta callback perekaman, snapshot, moderasi video, dan moderasi audio untuk domain streaming.
Di tab Callback Settings, Anda dapat mengonfigurasi fitur-fitur tersebut.

Ingest callback
Aktifkan Stream Ingest Callbacks.
Konfigurasikan parameter callback.
Parameter
Deskripsi
Callback Type
Callback Ingest/Gangguan: Memberi notifikasi saat ingest aliran berhasil dan terjadi gangguan aliran untuk nama domain saat ini.
Callback event ingest anomali: Memberi notifikasi saat terjadi event ingest aliran anomali untuk nama domain saat ini.
Callback URL
Alamat webhook Ingest/Gangguan: Ini adalah URL milik Anda. Ketika terjadi event ingest aliran atau gangguan, server ApsaraVideo Live mengirim permintaan HTTP GET ke alamat ini. Detailnya dikirimkan melalui parameter URL.
Alamat webhook event anomali: Ini adalah URL milik Anda. Ketika terjadi event ingest aliran anomali, server ApsaraVideo Live mengirim permintaan HTTP POST ke alamat ini. Detailnya dikirimkan dalam body JSON.
Callback Authentication
Pilih apakah akan mengaktifkan autentikasi untuk alamat callback ingest. Untuk mengaktifkan autentikasi, nyalakan sakelar dan masukkan Encryption Key.
Klik OK.
Untuk informasi lebih lanjut mengenai metode dan konten callback, lihat Live stream ingest callback. Anda juga dapat memanggil operasi API SetLiveStreamsNotifyUrlConfig.
Recording callback
Aktifkan Recording Callbacks.
Konfigurasikan parameter callback.
Parameter
Deskripsi
Callback Type
Ini adalah URL milik Anda. Ketika event callback perekaman terjadi, server ApsaraVideo Live mengirim permintaan HTTP POST ke alamat ini. Detailnya dikirimkan dalam body JSON.
Triggering Event
File generation callback: Callback dipicu ketika file rekaman dihasilkan.
Recording status callback: Callback dipicu untuk event seperti pembuatan file rekaman, mulai merekam, jeda, dan lanjut merekam.
On-demand Callback URL
Setelah Anda mengonfigurasi perekaman on-demand, ketika ingest siaran langsung dimulai, layanan perekaman siaran langsung mengirim callback HTTP ke alamat webhook on-demand yang telah dikonfigurasi sebelumnya. Respons dari callback ini menentukan apakah siaran langsung akan direkam. Nilai default untuk alamat webhook on-demand adalah
*, yang berarti perekaman on-demand dinonaktifkan.CatatanSebelum menyetel alamat webhook on-demand, Anda harus memanggil operasi API AddLiveAppRecordConfig untuk mengonfigurasi aturan perekaman. Atur parameter
OnDemandke1untuk mengaktifkan perekaman on-demand melalui callback HTTP.Callback Authentication
Fitur ini dinonaktifkan secara default. Jika Anda mengaktifkannya, Anda harus menyetel Authentication Key. Sistem menandatangani setiap permintaan callback, dan penerima dapat melakukan verifikasi signature untuk memastikan permintaan aman. Untuk informasi lebih lanjut mengenai prosedurnya, lihat Callback authentication.
Klik OK.
Untuk informasi lebih lanjut mengenai metode dan konten callback, lihat Live recording callback. Anda juga dapat memanggil operasi API AddLiveRecordNotifyConfig.
Snapshot callback
Aktifkan Snapshot Callbacks.
Konfigurasikan parameter callback.
Parameter
Deskripsi
Callback URL
Ini adalah URL milik Anda. Ketika event callback snapshot terjadi, server ApsaraVideo Live mengirim permintaan HTTP POST ke alamat ini. Detailnya dikirimkan dalam body JSON.
Callback Authentication
Pilih apakah akan mengaktifkan autentikasi untuk alamat callback snapshot. Untuk mengaktifkan autentikasi, nyalakan sakelar dan masukkan Encryption Key.
Untuk informasi lebih lanjut mengenai metode dan konten callback, lihat Live snapshot callback. Anda juga dapat memanggil operasi API AddLiveSnapshotNotifyConfig.
Video review callback
Aktifkan Video Moderation Callbacks.
Konfigurasikan alamat webhook.
Ini adalah URL milik Anda. Ketika event callback moderasi video terjadi, server ApsaraVideo Live mengirim permintaan HTTP POST ke alamat ini, dengan detail event dikirimkan dalam body JSON.
Klik OK.
Untuk informasi lebih lanjut mengenai metode dan konten callback, lihat Automated review callback. Anda juga dapat memanggil operasi API AddLiveDetectNotifyConfig untuk menambahkan URL notifikasi callback.
Tinjauan otomatis untuk siaran langsung hanya didukung di pusat siaran langsung tertentu. Untuk informasi lebih lanjut mengenai pusat siaran langsung yang mendukung fitur ini, lihat Service regions.
Callback moderasi video hanya dipicu untuk konten video bermasalah. Notifikasi berisi informasi tinjauan dan penyimpanan snapshot dari video bermasalah tersebut. Anda dapat melihat informasi callback di server callback Anda. Untuk informasi lebih lanjut mengenai format dan contoh informasi callback, lihat Automated review callback.
Temukan konten yang terdeteksi di OSS. Anda dapat menemukan konten yang ditinjau di Konsol OSS berdasarkan informasi dari callback tinjauan.
Temukan konten yang ditinjau berdasarkan AppName dan StreamName.
Temukan konten yang ditinjau berdasarkan tanggal ingest.
Audio review callback
Aktifkan Audio Moderation Callbacks.
Konfigurasikan alamat webhook.
Ini adalah URL milik Anda. Ketika event callback moderasi audio terjadi, server ApsaraVideo Live mengirim permintaan HTTP POST ke alamat ini, dengan detail event dikirimkan dalam body JSON.
Klik OK.
Untuk informasi lebih lanjut mengenai metode dan konten callback, lihat Automated review callback. Anda juga dapat memanggil operasi API AddLiveAudioAuditNotifyConfig untuk menambahkan informasi callback moderasi audio.
Callback moderasi audio hanya dipicu untuk konten audio bermasalah. Notifikasi berisi teks dari audio bermasalah tersebut dan informasi kontekstual dari satu menit sebelumnya. Anda dapat melihat informasi callback di server callback Anda. Untuk informasi lebih lanjut mengenai format dan contoh informasi callback, lihat Automated review callback.
Temukan konten yang terdeteksi di OSS. Anda dapat menemukan konten yang ditinjau di Konsol OSS berdasarkan informasi dari callback tinjauan.
Temukan konten yang ditinjau berdasarkan AppName dan StreamName.
Temukan konten yang ditinjau berdasarkan tanggal ingest.
Ingest callback logic
Logika untuk callback status publish dalam callback status ingest adalah sebagai berikut:
Untuk ingest aliran RTMP, jika klien ingest tidak secara aktif memutus koneksi dalam waktu 2 detik setelah layanan ApsaraVideo Live menerima pesan On Publish, layanan tersebut mengirim callback ingest berhasil.
Misalkan Anda memiliki domain ingest A dan domain streaming B. Jika Anda memerlukan callback untuk penarikan aliran pada domain B (baik penarikan tetap maupun penarikan back-to-origin yang dipicu), Anda harus mengonfigurasi callback ingest untuk domain A. Setelah konfigurasi selesai, logika callback penarikan aliran untuk domain B sama seperti yang dijelaskan pada langkah sebelumnya. Penarikan aliran dianggap berhasil jika koneksi tidak diputus secara aktif dalam waktu 2 detik setelah terbentuk.
Anda dapat menggunakan notifikasi callback untuk menentukan apakah ingest aliran dan penarikan aliran berjalan normal. Anda juga dapat mengkueri daftar aliran aktif untuk memastikan ingest aliran berjalan normal sebelum mendistribusikan URL pemutaran siaran langsung.
Callback authentication
Fitur autentikasi callback untuk ingest aliran dinonaktifkan secara default. Anda dapat mengaktifkan autentikasi saat mengonfigurasi alamat callback ingest. Setelah fitur ini diaktifkan, logika autentikasinya adalah sebagai berikut:
Ketika ApsaraVideo Live memulai permintaan callback, permintaan tersebut menyertakan bidang
ALI-LIVE-TIMESTAMPdanALI-LIVE-SIGNATUREdalam header permintaan HTTP atau HTTPS. Hal ini memungkinkan server penerima pesan callback untuk melakukan autentikasi signature. NilaiALI-LIVE-SIGNATUREdihitung sebagai berikut:ALI-LIVE-SIGNATURE=MD5SUM(MD5CONTENT) dengan MD5CONTENT= CallbackDomain | Nilai ALI-LIVE-TIMESTAMP | EncryptionKEY.
CatatanDomain callback adalah domain ingest tempat URL callback dikonfigurasi. Kunci enkripsi adalah kunci yang Anda konfigurasi untuk URL callback ingest.
Ketika server Anda menerima pesan callback, server tersebut menggabungkan domain callback, nilai
ALI-LIVE-TIMESTAMP, dan kunci enkripsi. Server kemudian menghitung hash MD5 dari string gabungan tersebut untuk mendapatkan string terenkripsi, lalu membandingkannya dengan nilai bidangALI-LIVE-SIGNATUREdalam header permintaan HTTP atau HTTPS yang dikirim oleh ApsaraVideo Live. Jika kedua string tidak cocok, permintaan dianggap tidak valid.