Gunakan Simple Message Queue (formerly MNS) untuk menerima notifikasi event dari ApsaraVideo VOD.
Informasi latar belakang
Simple Message Queue (formerly MNS) (SMQ) adalah layanan antrian pesan terdistribusi yang efisien, andal, aman, dan scalable. Simple Message Queue (formerly MNS) menyediakan model antrian yang memungkinkan beberapa produsen dan konsumen mengakses antrian yang sama secara konkuren. Setelah sebuah message diambil, message tersebut tidak tersedia untuk konsumen lain selama periode tertentu. Anda harus secara eksplisit menghapus message tersebut setelah dikonsumsi; jika tidak, message tersebut dapat dikonsumsi kembali. ApsaraVideo VOD mendukung penggunaan Simple Message Queue (formerly MNS) untuk mengirimkan informasi callback. Untuk informasi lebih lanjut tentang Simple Message Queue (formerly MNS), lihat Apa itu Simple Message Queue (formerly MNS)?.
Mekanisme callback Simple Message Queue (formerly MNS)
-
Buat queue di Simple Message Queue (formerly MNS) dan konfigurasikan callback yang sesuai di ApsaraVideo VOD.
-
Saat event terjadi, ApsaraVideo VOD menuliskan notifikasi event ke antrean pesan Simple Message Queue (formerly MNS) di Simple Message Queue (formerly MNS).
-
Callback dianggap berhasil hanya jika ApsaraVideo VOD berhasil menulis message ke Simple Message Queue (formerly MNS). Jika operasi penulisan gagal karena kesalahan konfigurasi—seperti ApsaraVideo VOD tidak memiliki otorisasi untuk mengakses Simple Message Queue (formerly MNS), endpoint bukan merupakan public endpoint, atau nama queue salah—ApsaraVideo VOD akan mencoba mengirim callback hingga tiga kali. Jika ketiga percobaan tersebut gagal, message akan dibuang. Untuk informasi lebih lanjut tentang validasi dan logika retry callback, lihat Validasi dan retry callback.
-
Setelah callback berhasil, ambil message dari Simple Message Queue (formerly MNS) untuk melihat isi notifikasi event. Setelah memproses sebuah message, Anda harus secara eksplisit menghapusnya agar tidak dikonsumsi kembali.
Cara menggunakan
Prasyarat
-
Akun Alibaba Cloud telah dibuat dan verifikasi identitas telah selesai. Untuk membuat Akun Alibaba Cloud, kunjungi website resmi Alibaba Cloud. Untuk informasi lebih lanjut, lihat Mendaftarkan Akun Alibaba Cloud.
-
ApsaraVideo VOD telah diaktifkan. Untuk informasi lebih lanjut, lihat Mengaktifkan ApsaraVideo VOD.
-
Simple Message Queue (formerly MNS) telah diaktifkan. Untuk informasi lebih lanjut, lihat Mengaktifkan Simple Message Queue (formerly MNS) dan memberikan izin.
Catatan penggunaan
-
ApsaraVideo VOD tersedia di beberapa wilayah. Pengaturan notifikasi event bersifat independen untuk setiap wilayah, sehingga Anda dapat mengonfigurasi metode dan URL callback yang berbeda untuk setiap wilayah.
-
Di Simple Message Queue (formerly MNS), Anda dapat membuat beberapa queue Simple Message Queue (formerly MNS) di wilayah yang berbeda, tetapi di ApsaraVideo VOD, Anda hanya dapat mengonfigurasi satu queue Simple Message Queue (formerly MNS) untuk callback MNS di setiap wilayah. Kami merekomendasikan Anda membuat dan menggunakan queue di wilayah berikut:
-
Jika video Anda disimpan di wilayah Tiongkok Daratan, seperti China (North 2) atau China (East 2), kami merekomendasikan Anda menggunakan queue di wilayah China (Shanghai). Mengirimkan message ke queue di luar wilayah China (Shanghai) dapat menyebabkan sedikit penundaan.
-
Jika video Anda disimpan di wilayah lain, seperti Singapura atau Jepang, kami merekomendasikan Anda membuat atau menggunakan message queue di wilayah yang sama.
Sebagai contoh, jika video Anda disimpan di wilayah Singapura, Anda harus membuat atau menggunakan message queue di wilayah Singapura.
-
-
Callback SMQ mendukung beberapa URL callback untuk lingkungan pengembangan yang berbeda. Untuk informasi lebih lanjut, lihat Mengonfigurasi beberapa URL callback.
Prosedur
-
Berikan otorisasi kepada ApsaraVideo VOD untuk mengakses Simple Message Queue (formerly MNS).
Anda dapat memberikan otorisasi dengan salah satu cara berikut:
-
Metode 1: Berikan izin kepada ApsaraVideo VOD untuk mengakses sumber daya cloud Anda. Ini mencakup sebagian izin untuk OSS, Simple Message Queue (formerly MNS), CDN, dan KMS.
Masuk ke Konsol Alibaba Cloud, buka halaman RAM Quick Authorization, lalu klik Agree to Authorization untuk memberikan izin.
-
Metode 2: Berikan izin yang diperlukan kepada RAM user, RAM user group, atau RAM role untuk mengakses Simple Message Queue (formerly MNS).
Tambahkan kebijakan sistem AliyunMNSFullAccess (izin untuk mengelola Simple Message Queue (formerly MNS)) atau AliyunMNSReadOnlyAccess (izin untuk mengelola Simple Message Queue (formerly MNS)) ke kebijakan otorisasi Anda. Untuk petunjuk detail, lihat Membuat RAM User dan Memberikan Izin.
-
-
Buat queue di Simple Message Queue (formerly MNS).
Buat queue baru atau gunakan queue yang sudah ada di Simple Message Queue (formerly MNS). Anda dapat membuat queue menggunakan konsol atau API/SDK. Untuk petunjuk konsol, lihat Membuat queue. Untuk informasi tentang operasi API dan SDK terkait, lihat Operasi queue.
CatatanKami merekomendasikan Anda membuat atau menggunakan queue di wilayah yang disarankan dalam Catatan penggunaan.
-
Di ApsaraVideo VOD, konfigurasikan notifikasi event untuk menggunakan metode callback Simple Message Queue (formerly MNS).
CatatanPengaturan callback yang dikonfigurasi di konsol ApsaraVideo VOD berlaku secara global. Anda dapat menggunakan OpenAPI untuk mengonfigurasi callback global atau menerapkan override permintaan tunggal.
Konsol
-
Login ke konsol ApsaraVideo VOD.
Pada panel navigasi kiri, pilih Configuration Management > Media Processing > Callback.
-
Pada bilah navigasi atas, pilih wilayah target dari daftar drop-down di samping Workbench.
-
Konfigurasikan Callback.
-
Pada bagian Callback, klik Modify.
-
Konfigurasikan parameter callback.
Parameter
Deskripsi
Callback method
Pilih Simple Message Queue (formerly MNS).
Region
Pilih wilayah tempat video disimpan. Kami merekomendasikan Anda memilih wilayah yang sama dengan queue yang Anda buat di Simple Message Queue (formerly MNS).
Queue
Pilih queue di wilayah yang ditentukan.
CatatanJika tidak ada queue yang tersedia, buat terlebih dahulu. Untuk informasi lebih lanjut, lihat Membuat queue.
Callback event
Pilih jenis event yang ingin Anda terima notifikasinya. Untuk informasi lebih lanjut tentang jenis event yang didukung beserta deskripsinya, lihat Daftar event.
CatatanJika Anda memilih Video AI Processing Complete, notifikasi akan dipicu untuk semua event AI, termasuk AIMediaAuditComplete, AIMediaDNAComplete, dan AIVideoTagComplete.
-
Klik OK untuk menyimpan pengaturan callback Simple Message Queue (formerly MNS).
-
API
Panggil operasi API untuk mengonfigurasi callback global atau melakukan override permintaan tunggal.
-
Konfigurasi global: Panggil API SetMessageCallback, atur parameter permintaan
CallbackTypemenjadi Simple Message Queue (formerly MNS), dan konfigurasikan parameter lainnya, sepertiEventTypeList(jenis event callback),MnsEndpoint(public endpoint message queue), danMnsQueueName(nama message queue). -
Override permintaan tunggal: Saat Anda memanggil operasi API untuk mengunggah file media atau memulai pekerjaan pemrosesan media, Anda dapat menentukan bidang MessageCallback dalam parameter permintaan
UserDatauntuk meng-override pengaturan callback global untuk satu permintaan saja. Metode ini didukung oleh operasi API berikut:
CatatanOverride permintaan tunggal dengan menentukan bidang
MessageCallbackdalam parameterUserDatahanya berlaku jika Anda telah mengaktifkan notifikasi event global di ApsaraVideo VOD dan mengonfigurasi jenis event yang sesuai. Jika tidak, override untuk permintaan tunggal tersebut tidak akan berlaku. -
-
Picu event callback.
Setelah Anda mengonfigurasi notifikasi event, lakukan operasi di ApsaraVideo VOD seperti mengunggah file media atau memulai pekerjaan pemrosesan media untuk memicu event callback.
-
Lihat message di Simple Message Queue (formerly MNS).
Ketika event callback dipicu, ApsaraVideo VOD menulis notifikasi event ke queue yang Anda tentukan. Ambil message dari Simple Message Queue (formerly MNS) dan lihat isi notifikasi dalam detail message.
Anda dapat mengambil message menggunakan konsol atau API/SDK. Untuk petunjuk konsol, lihat Menerima message. Untuk daftar operasi API dan SDK terkait, lihat Ikhtisar operasi API terkait queue.
-
Opsi: Hapus message di Simple Message Queue (formerly MNS).
Anda harus secara eksplisit menghapus message setelah dikonsumsi. Jika tidak, message tersebut akan kembali terlihat di queue setelah periode tertentu dan dapat dikonsumsi lagi.
Anda dapat menghapus message menggunakan konsol atau API/SDK. Untuk petunjuk konsol, lihat Operasi queue. Untuk daftar operasi API dan SDK terkait, lihat Ikhtisar operasi API terkait queue.
Contoh SDK
Simple Message Queue (formerly MNS) menyediakan SDK untuk berbagai bahasa pemrograman. Setelah Anda mengonfigurasi callback, gunakan SDK yang sesuai untuk mengonsumsi message:
-
Untuk Java, lihat Panduan pengguna queue.
-
Untuk Python, lihat Panduan pengguna queue.
-
Untuk C#, lihat Panduan pengguna queue.
-
Untuk PHP, lihat Panduan pengguna queue.
-
Untuk bahasa lainnya, setelah Anda memahami metode pemanggilan, panggil operasi API ReceiveMessage untuk mengambil message dan operasi API DeleteMessage untuk menghapusnya.
Dokumen terkait
-
Untuk perbandingan antara callback HTTP dan SMQ, lihat Perbandingan callback HTTP dan Simple Message Queue (formerly MNS).
-
Jika Anda mengalami masalah, lihat FAQ notifikasi event.