Dokumen ini memberikan jawaban atas beberapa pertanyaan umum terkait notifikasi peristiwa.
Pertanyaan Umum
Bagaimana cara mendapatkan URL pemutaran HTTPS dari panggilan balik?
URL HTTPS tidak dikembalikan untuk panggilan balik HTTP atau panggilan balik Simple Message Queue (sebelumnya MNS) di ApsaraVideo VOD. Untuk mendapatkan URL pemutaran HTTPS, ikuti langkah-langkah berikut:
Konfigurasikan sertifikat SSL untuk nama domain.
Langkah ini dapat dilewati jika Anda telah mengonfigurasi sertifikat SSL untuk nama domain. Untuk informasi lebih lanjut tentang konfigurasi sertifikat SSL, lihat Aktifkan akselerasi aman HTTPS.
Dalam kode yang digunakan untuk menerima panggilan balik, ganti URL pemutaran HTTP dengan URL pemutaran HTTPS.
Misalnya, dalam Java, Anda dapat menggunakan metode
replace.
Bagaimana cara menentukan beberapa URL panggilan balik?
Jika Anda mengonfigurasi callback menggunakan Konsol ApsaraVideo VOD atau SDK, atau dengan memanggil operasi SetMessageCallback, pengaturan callback tersebut berlaku secara global dan hanya satu URL callback yang tersedia. Jika Anda ingin menentukan beberapa URL callback, gunakan salah satu metode berikut:
Metode 1: Tentukan alamat webhook dalam parameter permintaan
UserDataSaat Anda memanggil API untuk mengunggah aset media atau memulai tugas ApsaraVideo Media Processing, seperti operasi Get Audio/Video Upload URL and Credentials dan Submit Media Transcoding Jobs, Anda dapat menentukan alamat callback lain menggunakan bidang MessageCallback dalam parameter permintaan
UserData. Untuk informasi selengkapnya, lihat Set Multiple Callback Addresses.CatatanMetode ini hanya mendukung panggilan balik HTTP.
Anda harus mengaktifkan notifikasi peristiwa global dan mengonfigurasi peristiwa terkait agar pengaturan panggilan balik HTTP berlaku.
Metode 2: Tentukan URL panggilan balik untuk setiap aplikasi
Anda dapat menggunakan fitur multi-aplikasi untuk menentukan metode callback dan alamat webhook yang independen untuk setiap aplikasi. Untuk informasi selengkapnya, lihat Guide to the multi-application console.
FAQ tentang panggilan balik HTTP
Bagaimana cara memecahkan masalah kegagalan menerima panggilan balik HTTP?
Masuk ke ApsaraVideo VOD console. Di panel navigasi sebelah kiri, pilih Configuration Management > Media Processing > Callback Settings. Pastikan fitur callback telah diaktifkan dan Anda telah berlangganan callback yang diperlukan.
Jalankan contoh berikut untuk memeriksa apakah respons yang valid dikembalikan. Jika tidak, periksa layanan yang menerima callback untuk mengidentifikasi masalah. Ganti
http://example.aliyundoc.com/processMessagedengan alamat webhook HTTP yang telah Anda konfigurasi.curl -l -i -H "Content-type: application/json" -X POST -d '{"VideoId":"videoId","EventType":"FileUploadComplete","Status":"success","Size":1439213}' http://example.aliyundoc.com/processMessage
Berapa lama periode timeout untuk permintaan panggilan balik HTTP? Berapa kali ApsaraVideo VOD mengirim ulang permintaan panggilan balik jika gagal? Berapa lama interval pengulangan?
Secara default, permintaan panggilan balik HTTP akan timeout jika tidak ada respons yang dikembalikan dalam waktu 5 detik. ApsaraVideo VOD akan mengirim ulang permintaan panggilan balik hingga tiga kali dengan interval 1 detik jika terjadi kegagalan.
Apakah permintaan panggilan balik HTTP dibuang setelah jumlah percobaan ulang mencapai batas? Bagaimana cara mencegah hilangnya pesan?
Jika layanan penerima mengalami masalah seperti crash, restart, atau ketidaktersediaan jaringan, pesan akan dibuang setelah batas percobaan ulang terlampaui. Untuk mencegah kehilangan pesan, kami merekomendasikan penggunaan callback MNS.
Apakah kode status HTTP 302 didukung untuk panggilan balik HTTP?
Metode panggilan balik HTTP hanya mendukung kode status HTTP 200. Kode status HTTP lainnya seperti 301 dan 302 tidak didukung karena alasan keamanan.
Mengapa server saya menerima permintaan panggilan balik HTTP berkali-kali?
Panggilan balik HTTP berhasil hanya jika kode status HTTP 200 dikembalikan. Jika kode status HTTP selain 200 dikembalikan atau panggilan balik timeout, panggilan balik gagal dan ApsaraVideo VOD mencoba mengirim ulang permintaan panggilan balik hingga tiga kali.
Apa itu autentikasi HTTP?
Selama autentikasi HTTP, ApsaraVideo VOD memungkinkan Anda menambahkan header signature tertentu ke permintaan callback HTTP. Server yang menerima pesan callback memverifikasi signature tersebut untuk mencegah permintaan tidak sah dari pihak selain ApsaraVideo VOD. Anda dapat memutuskan apakah akan mengaktifkan autentikasi HTTP atau tidak.
FAQ tentang panggilan balik SMQ
Mengapa tidak ada pesan dalam antrian callback Simple Message Queue (formerly MNS)?
Pengiriman pesan gagal jika layanan video-on-demand tidak memiliki izin untuk mengakses Simple Message Queue (formerly MNS), titik akhir bukan titik akhir jaringan publik, atau nama antrian salah.
Jika waktu hidup (TTL) pesan panggilan balik terlalu pendek, pesan tersebut mungkin dilepaskan sebelum dapat dikonsumsi. Kami merekomendasikan Anda mengatur TTL menjadi 3.600 detik.
Jika panjang maksimum pesan diatur di bawah nilai default yang direkomendasikan yaitu 65.536 byte, pengiriman pesan mungkin gagal.
Mengapa saya menerima pesan berkali-kali?
Pesan tidak terlihat untuk jangka waktu singkat setelah dikonsumsi. Anda harus menghapus pesan secara manual atau dengan memanggil operasi API. Jika tidak, pesan dapat dikonsumsi lagi setelah periode tersebut.
Apakah metode panggilan balik SMQ mendukung autentikasi?
Layanan video-on-demand sangat aman karena memerlukan otorisasi untuk menulis ke antrian pengguna dan tidak memiliki izin operasi lainnya. Oleh karena itu, autentikasi umumnya tidak diperlukan.
Di wilayah mana metode panggilan balik SMQ tersedia?
Jika video Anda disimpan di wilayah Tiongkok daratan, seperti China (Beijing) dan China (Shanghai), penundaan kecil mungkin terjadi saat pesan dikirim ke antrian di luar wilayah China (Shanghai). Kami merekomendasikan Anda menggunakan antrian di wilayah China (Shanghai).
Jika video Anda disimpan di wilayah Singapore, gunakan antrian pesan di wilayah Singapore.
Jika video Anda disimpan di wilayah Frankfurt, gunakan antrian pesan di wilayah Frankfurt.
Apakah saya dapat menggunakan antrian SMQ untuk panggilan balik lintas wilayah?
Ya. Sebagai contoh, Anda dapat menyimpan dan memproses video di wilayah China (Shanghai) atau China (Beijing) dan mendorong pesan panggilan balik ke antrian Simple Message Queue (formerly MNS) di wilayah China (Shenzhen). Namun, pengiriman pesan mungkin tertunda karena latensi jaringan. Oleh karena itu, kami merekomendasikan Anda mendorong pesan ke antrian SMQ di wilayah tempat video Anda disimpan.