Topik ini menjelaskan mekanisme dan prosedur penggunaan Simple Message Queue (formerly MNS) untuk menerima notifikasi event.
Informasi latar belakang
Simple Message Queue (formerly MNS) (SMQ) Alibaba Cloud 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. Layanan ini memastikan bahwa 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 mengirim 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 antrian di Simple Message Queue (formerly MNS) dan konfigurasikan callback yang sesuai di ApsaraVideo VOD.
Ketika sebuah event terjadi, ApsaraVideo VOD menuliskan notifikasi event ke 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 Titik akhir publik, atau nama antrian 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 konten notifikasi event. Setelah memproses sebuah message, Anda harus secara eksplisit menghapusnya agar tidak dikonsumsi lagi.
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 Buat Akun Alibaba Cloud.
ApsaraVideo VOD telah diaktifkan. Untuk informasi lebih lanjut, lihat Aktifkan ApsaraVideo VOD.
Simple Message Queue (formerly MNS) telah diaktifkan. Untuk informasi lebih lanjut, lihat Aktifkan Simple Message Queue (formerly MNS) dan berikan izin.
Catatan penggunaan
ApsaraVideo VOD tersedia di beberapa Wilayah. Pengaturan notifikasi event bersifat independen untuk setiap Wilayah, artinya Anda dapat mengonfigurasi metode dan URL callback yang berbeda untuk setiap Wilayah.
Di Simple Message Queue (formerly MNS), Anda dapat membuat beberapa antrian Simple Message Queue (formerly MNS) di wilayah berbeda. Namun, di ApsaraVideo VOD, Anda hanya dapat mengonfigurasi satu antrian Simple Message Queue (formerly MNS) untuk callback MNS di setiap wilayah. Kami merekomendasikan agar Anda membuat dan menggunakan antrian di wilayah berikut:
Jika video Anda disimpan di Wilayah Tiongkok Daratan, seperti China (North 2) atau China (East 2), kami merekomendasikan Anda menggunakan antrian di Wilayah China (Shanghai). Mengirim message ke antrian 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 antrian pesan di Wilayah yang sama.
Sebagai contoh, jika video Anda disimpan di Wilayah Singapura, Anda harus membuat atau menggunakan antrian pesan di Wilayah Singapura.
Callback SMQ mendukung beberapa URL callback untuk lingkungan pengembangan yang berbeda. Untuk informasi lebih lanjut, lihat Konfigurasi beberapa URL callback.
Prosedur
Berikan otorisasi kepada ApsaraVideo VOD untuk mengakses Simple Message Queue (formerly MNS).
Anda dapat memberikan otorisasi dengan salah satu dari dua 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.
Login ke Konsol Alibaba Cloud, buka halaman Otorisasi Cepat RAM, lalu klik Agree to Authorization untuk memberikan izin.

Metode 2: Berikan izin yang diperlukan kepada RAM user, grup pengguna RAM, atau Peran RAM 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 lengkap, lihat Buat RAM User dan Berikan Izin.
Buat antrian di Simple Message Queue (formerly MNS).
Buat antrian baru atau gunakan antrian yang sudah ada di Simple Message Queue (formerly MNS). Anda dapat membuat antrian menggunakan Konsol atau API/SDK. Untuk petunjuk Konsol, lihat Buat antrian. Untuk informasi tentang operasi API dan SDK terkait, lihat Operasi antrian.
CatatanKami merekomendasikan Anda membuat atau menggunakan antrian 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.
Di panel navigasi kiri, pilih Configuration Management > Media Processing > Callback.
Di bilah navigasi atas, pilih Wilayah target dari daftar drop-down di sebelah Workbench.
Konfigurasikan Callback.

Di 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 antrian yang Anda buat di Simple Message Queue (formerly MNS).
Queue
Pilih antrian di Wilayah yang ditentukan.
CatatanJika tidak ada antrian yang tersedia, buat terlebih dahulu. Untuk informasi lebih lanjut, lihat Buat antrian.
Callback event
Pilih jenis event yang ingin Anda terima notifikasinya. Untuk informasi lebih lanjut tentang jenis event yang didukung dan 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
Anda dapat memanggil operasi API berbeda untuk mengonfigurasi callback global atau melakukan override permintaan tunggal.
Konfigurasi global: Panggil API SetMessageCallback, atur parameter permintaan
CallbackTypeke Simple Message Queue (formerly MNS), dan konfigurasikan parameter lainnya, sepertiEventTypeList(jenis event callback),MnsEndpoint(Titik akhir publik antrian pesan), danMnsQueueName(nama antrian pesan).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 berlaku.Picu event callback.
Setelah Anda mengonfigurasi notifikasi event, Anda dapat melakukan operasi di ApsaraVideo VOD, seperti mengunggah file media (audio, video, atau gambar) atau memulai pekerjaan pemrosesan media seperti Transkoding dan Snapshot, untuk memicu event callback yang sesuai.
Lihat message di Simple Message Queue (formerly MNS).
Ketika event callback dipicu, ApsaraVideo VOD menulis konten callback ke antrian yang Anda tentukan. Anda harus mengambil message dari Simple Message Queue (formerly MNS) dan melihat konten notifikasi event dalam detail message.
Anda dapat mengambil message menggunakan Konsol atau API/SDK. Untuk petunjuk Konsol, lihat Terima message. Untuk daftar operasi API dan SDK terkait, lihat Ikhtisar operasi API terkait antrian.
Opsional: Hapus message di Simple Message Queue (formerly MNS).
Anda harus secara eksplisit menghapus message setelah dikonsumsi. Jika tidak, message tersebut akan kembali terlihat di antrian setelah periode tertentu dan mungkin dikonsumsi lagi.
Anda dapat menghapus message menggunakan Konsol atau API/SDK. Untuk petunjuk Konsol, lihat Operasi antrian. Untuk daftar operasi API dan SDK terkait, lihat Ikhtisar operasi API terkait antrian.
Contoh SDK
Simple Message Queue (formerly MNS) menyediakan SDK untuk berbagai bahasa pemrograman. Setelah Anda mengonfigurasi callback, Anda dapat menggunakan SDK yang sesuai untuk mengonsumsi message, seperti yang dijelaskan dalam panduan pengguna berikut:
Untuk mempelajari cara mengonsumsi message menggunakan kode Java, lihat Panduan pengguna antrian.
Untuk mempelajari cara mengonsumsi message menggunakan kode Python, lihat Panduan pengguna antrian.
Untuk mempelajari cara mengonsumsi message menggunakan kode C#, lihat Panduan pengguna antrian.
Untuk mempelajari cara mengonsumsi message menggunakan kode PHP, lihat Panduan pengguna antrian.
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.