ApsaraVideo VOD mendukung notifikasi event melalui callback HTTP (dan HTTPS) serta callback Simple Message Queue (formerly MNS). Topik ini menjelaskan jenis event, metode callback, konfigurasi, protokol, parameter umum, validasi, kebijakan pengulangan, serta pertanyaan yang sering diajukan (FAQ).
Pengantar notifikasi event
ApsaraVideo VOD mendukung beberapa wilayah penyimpanan. Anda dapat mengonfigurasi metode callback dan alamat webhook unik untuk notifikasi event di setiap wilayah. Setelah video diunggah dan diproses, ApsaraVideo VOD mengirimkan notifikasi berdasarkan metode callback dan alamat webhook yang dikonfigurasi untuk wilayah tersebut.
Badan callback hanya mengembalikan URL HTTP. URL HTTPS tidak didukung. Untuk informasi tentang cara memperoleh URL HTTPS, lihat FAQ tentang notifikasi event.
Metode panggilan balik
ApsaraVideo VOD mendukung dua metode untuk menerima notifikasi event: callback HTTP (dan HTTPS) dan callback Simple Message Queue (MNS).
Callback HTTP (dan HTTPS):
Callback HTTP merupakan metode pasif untuk menerima notifikasi event dari ApsaraVideo VOD. Dengan metode ini, Anda men-deploy layanan HTTP untuk menerima pesan callback dan mengonfigurasi alamat webhook di ApsaraVideo VOD. Ketika suatu event terjadi, layanan VOD mengirimkan permintaan HTTP POST ke alamat tersebut, dan notifikasi event dikirimkan dalam badan HTTP.
Panggilan Balik Simple Message Queue (formerly MNS):
Callback Simple Message Queue (formerly MNS) merupakan metode aktif yang memungkinkan Anda menarik notifikasi event dari ApsaraVideo VOD. Setelah Anda memberikan akses ApsaraVideo VOD ke MNS, Anda dapat membuat atau menggunakan antrian yang sudah ada di Simple Message Queue (formerly MNS) dan mengonfigurasi notifikasi event di ApsaraVideo VOD. Ketika suatu event terjadi, ApsaraVideo VOD menulis konten callback ke antrian tersebut. Anda kemudian harus mengambil pesan dari antrian Simple Message Queue (formerly MNS). Untuk informasi selengkapnya tentang cara membuat antrian dan menerima pesan di konsol Simple Message Queue (formerly MNS), lihat Operasi Antrian.
Perbandingan callback HTTP dan MNS
Item | Panggilan balik HTTP | Callback MNS (Direkomendasikan) |
Keandalan | Jika layanan penerima pesan HTTP Anda mengalami gangguan, seperti crash atau restart, pesan mungkin hilang. | Lebih andal. Callback hampir selalu berhasil dengan konfigurasi yang tepat. |
Keamanan | Siapa pun dapat mengirim permintaan ke alamat webhook. Namun, Anda dapat menggunakan autentikasi callback untuk menyaring permintaan ilegal dan meningkatkan keamanan. Untuk informasi lebih lanjut, lihat Autentikasi panggilan balik HTTP. | Lebih aman karena hanya pihak yang berwenang yang dapat membaca dan menulis ke antrian pesan. |
Kenyamanan | Lebih mudah diintegrasikan. Cukup men-deploy layanan penerima pesan. | Memerlukan aktivasi dan konfigurasi Simple Message Queue (formerly MNS). Anda juga perlu mengembangkan dan men-deploy program untuk mengonsumsi pesan. |
Protokol panggilan balik
Panggilan Balik HTTP:
Permintaan: Permintaan HTTP POST dengan badan JSON. Untuk informasi lebih lanjut tentang konten badan spesifik setiap callback, lihat dokumen yang dirujuk di Jenis event.
Tanggapan: ApsaraVideo VOD mengabaikan konten badan respons.
Panggilan Balik Simple Message Queue (formerly MNS):
Konten pesan yang diterima dalam format JSON. Untuk informasi lebih lanjut tentang konten badan spesifik setiap callback, lihat dokumen yang dirujuk di Jenis event.
Parameter panggilan balik umum
Parameter | Tipe | Deskripsi |
EventTime | String | Waktu saat event terjadi, dalam UTC. Waktu mengikuti standar ISO 8601 dalam format yyyy-MM-ddTHH:mm:ssZ. |
EventType | String | Tipe event. |
VideoId | String | ID video. |
Status | String | Status pemrosesan. Nilai yang valid:
|
Extend | String | Saat Anda memanggil operasi API upload atau pengiriman pekerjaan, Anda dapat menentukan parameter UserData. Jika parameter ini berisi bidang Extend, data pengguna kustom akan diteruskan dan dikembalikan dalam callback penyelesaian event. Panjang maksimum adalah 512 byte. |
Validasi dan pengulangan callback
Panggilan Balik HTTP:
Saat ApsaraVideo VOD mengirimkan callback HTTP, callback dianggap berhasil jika layanan penerima merespons dengan kode status HTTP 200. Callback dianggap gagal jika kode status bukan 200 atau jika respons melebihi waktu tunggu 5 detik. ApsaraVideo VOD mengabaikan badan respons dan hanya mengandalkan kode status HTTP.
Jika callback gagal karena kesalahan konfigurasi, seperti alamat webhook salah atau layanan penerima mengalami gangguan, ApsaraVideo VOD mencoba mengirim ulang callback sebanyak dua kali lagi sehingga total menjadi tiga upaya. Setelah tiga kali gagal, pesan dibuang.
Panggilan Balik Simple Message Queue (formerly MNS):
Saat ApsaraVideo VOD mengirimkan callback Simple Message Queue (formerly MNS), callback dianggap berhasil jika pesan berhasil ditulis ke antrian Simple Message Queue (formerly MNS). Jika tidak, callback dianggap gagal.
Jika penulisan pesan ke antrian Simple Message Queue (formerly MNS) gagal karena kesalahan konfigurasi, ApsaraVideo VOD mencoba mengirim ulang sebanyak dua kali lagi sehingga total menjadi tiga upaya. Contoh kesalahan konfigurasi termasuk tidak memberikan izin akses kepada ApsaraVideo VOD, menggunakan alamat antrian yang tidak tersedia di internet, atau menggunakan nama antrian yang salah. Setelah tiga kali gagal, pesan dibuang.
Setelah callback gagal, ApsaraVideo VOD mencoba mengirim ulang setelah interval 1 detik. Jika callback tetap gagal setelah tiga kali percobaan, pesan dibuang. Untuk memastikan notifikasi yang andal, gunakan callback Simple Message Queue (formerly MNS). Metode ini menawarkan keandalan lebih tinggi dan hampir selalu berhasil jika dikonfigurasi dengan benar.
Konfigurasi callback
Prosedur konfigurasi untuk callback HTTP dan MNS berbeda. Anda dapat mengonfigurasi keduanya di konsol ApsaraVideo VOD atau menggunakan API/SDK. Untuk informasi selengkapnya tentang prosedur dan batasan, lihat Cara menggunakan callback HTTP dan Cara menggunakan callback MNS.
Jenis-jenis Event
ApsaraVideo VOD mendukung jenis notifikasi event berikut:
Tipe Event | Referensi |
FileUploadComplete | |
ImageUploadComplete | |
StreamTranscodeComplete | |
TranscodeComplete | |
SnapshotComplete | |
DynamicImageComplete | |
AddLiveRecordVideoComplete | |
LiveRecordVideoComposeStart | |
UploadByURLComplete | |
UploadByURLComplete | |
CreateAuditComplete | |
VideoAnalysisComplete | |
UpdateMediaStorageClassComplete | |
RestoreMediaComplete | |
AttachedMediaUploadComplete | |
ProduceMediaComplete | |
DeleteMediaComplete | |
MediaBaseChangeComplete | |
SubmitMediaRefreshComplete | |
WorkflowTaskComplete |
FAQ
Jika Anda mengalami masalah, seperti cara memperoleh URL HTTPS dari callback atau cara menerapkan beberapa alamat webhook, lihat FAQ tentang notifikasi event.