Topik ini menjelaskan peristiwa SnapshotComplete, termasuk isi notifikasi dan contoh callback.
Jenis Peristiwa
SnapshotComplete
Deskripsi Peristiwa
Peristiwa SnapshotComplete dihasilkan setelah snapshot video berhasil dibuat.
Proses pengambilan snapshot dan transkoding dilakukan secara bersamaan.
Jika snapshot tersebut merupakan snapshot thumbnail dan parameter CoverUrl tidak ditentukan, salah satu snapshot thumbnail akan dipilih sebagai thumbnail video. Untuk informasi lebih lanjut tentang snapshot thumbnail, lihat Snapshot Video.
Anda dapat memanggil operasi GetVideoInfo untuk mendapatkan URL thumbnail video dan snapshot tipe CoverSnapshot.
Anda dapat memanggil operasi ListSnapshots untuk mendapatkan URL snapshot terbaru yang diambil untuk video tertentu.
Jika Anda telah mengaktifkan penandatanganan URL, Anda harus membuat auth_key sendiri untuk mengakses URL snapshot. Jika tidak, permintaan Anda akan mengembalikan kode kesalahan HTTP 403. Untuk informasi lebih lanjut tentang penandatanganan URL, lihat Penandatanganan URL.
Isi Notifikasi Peristiwa
Parameter | Tipe | Diperlukan | Deskripsi |
|---|---|---|---|
EventTime | String | Ya | Waktu ketika peristiwa dihasilkan. Waktu ditampilkan dalam format yyyy-MM-ddTHH:mm:ssZ dan dalam UTC. |
EventType | String | Ya | Jenis peristiwa. Nilainya adalah SnapshotComplete. |
VideoId | String | Ya | ID video. |
Status | String | Ya | Menunjukkan apakah snapshot diambil untuk video. Nilai valid:
|
SubType | String | Tidak | Subjenis snapshot. Nilainya adalah SpecifiedTime. Catatan Nilai SpecifiedTime menunjukkan bahwa snapshot diambil melalui pemanggilan operasi SubmitSnapshotJob. |
ErrorCode | String | Tidak | Kode kesalahan. Parameter ini tersedia ketika gagal mengambil snapshot untuk video. |
ErrorMessage | String | Tidak | Pesan kesalahan. Parameter ini tersedia ketika gagal mengambil snapshot untuk video. |
CoverUrl | String | Tidak | URL thumbnail. Parameter ini tidak tersedia jika gagal mengambil snapshot. |
SnapshotInfos | SnapshotInfo[] | Tidak | Detail tentang snapshot. Parameter ini tidak tersedia jika gagal mengambil snapshot. Untuk informasi lebih lanjut, lihat tabel berikut SnapshotInfos. |
Extend | String | Tidak | Parameter yang ditentukan pengguna yang dikembalikan dalam mode pass-through dalam callback. Untuk informasi lebih lanjut, lihat bagian "UserData" di Parameter Permintaan. |
SnapshotInfos
Bidang | Tipe | Diperlukan | Deskripsi |
|---|---|---|---|
Status | String | Ya | Menunjukkan apakah snapshot diambil untuk video. Nilai valid:
|
SnapshotType | String | Ya | Jenis snapshot. Nilai valid:
Untuk informasi lebih lanjut, lihat Snapshot Video. |
SnapshotCount | Long | Ya | Jumlah total snapshot. |
SnapshotFormat | String | Ya | Format nama snapshot. Parameter ini dapat digunakan bersama dengan URL penyimpanan OSS atau nama domain CDN untuk menghasilkan URL snapshot. Catatan Jika Anda memiliki nama domain yang mungkin sering berubah, Anda dapat menghasilkan URL snapshot berdasarkan parameter ini. |
SnapshotRegular | String | Ya | Aturan yang digunakan untuk menghasilkan URL snapshot. URL snapshot dapat dihasilkan berdasarkan aturan. Kami merekomendasikan agar Anda menghasilkan URL snapshot berdasarkan nilai SnapshotRegular. Untuk informasi lebih lanjut tentang cara menghasilkan URL snapshot, lihat bagian berikut. Catatan Jika Anda memiliki nama domain, aturan untuk menghasilkan URL CDN dikembalikan. Jika Anda tidak memiliki nama domain, aturan yang digunakan untuk menghasilkan URL penyimpanan OSS dikembalikan. Parameter ini tidak mengembalikan aturan untuk menghasilkan URL HTTPS. |
JobId | String | Ya | ID pekerjaan pengambilan snapshot. |
Video yang baru diunggah dan snapshotnya memiliki URL penyimpanan OSS yang sama. Untuk informasi lebih lanjut, lihat Kelola Sumber Daya VOD.
Pembuatan URL Snapshot
URL snapshot dapat dihasilkan menggunakan salah satu metode berikut:
Hasilkan URL snapshot berdasarkan nilai SnapshotFormat:
Aturan: http(s)://{Nama Domain CDN atau URL Penyimpanan OSS}/SnapshotFormat.
Deskripsi: Nilai {SnapshotCount} adalah nomor seri setiap snapshot. Tambahkan nol di depan untuk memastikan nilainya terdiri dari lima digit.
Contoh:
Jika nomor seri snapshot pertama adalah 00001, URL snapshot adalah:
http://example.com/2327a6ec24b44844b3a5e2c1b691****/covers/990f3820db2948b5b4a13d65d9a4****-00001.jpg.Jika nomor seri snapshot kedua adalah 00002, URL snapshot adalah:
http://contoh.com/2327a6ec24b44844b3a5e2c1b691****/covers/990f3820db2948b5b4a13d65d9a4****-00002.jpg.URL untuk snapshot lainnya dapat dihasilkan dengan cara yang sama.
Hasilkan URL snapshot berdasarkan nilai SnapshotRegular:
Aturan: Nilai SnapshotRegular menunjukkan aturan lengkap untuk menghasilkan URL snapshot.
Deskripsi: URL snapshot dapat dihasilkan berdasarkan nilai SnapshotRegular dengan cara yang sama seperti berdasarkan nilai SnapshotFormat.
Contoh Callback
Deskripsi:
Untuk callback HTTP, contoh berikut adalah body dari permintaan HTTP POST.
Untuk callback MNS, contoh berikut adalah body pesan.
{
"EventType": "SnapshotComplete",
"EventTime": "2018-07-31T10:07:31Z",
"CoverUrl": "http://contoh/covers/990f3820db2948b5b4a13d65d9a4****-00002.jpg",
"Extend":"data uji",
"SnapshotInfos": [
{
"Status": "success",
"SnapshotType": "CoverSnapshot",
"SnapshotCount": 2,
"SnapshotFormat": "2327a6ec24b44844b3a5e2c1b691****/covers/990f3820db2948b5b4a13d65d9a4****-{SnapshotCount}.jpg",
"SnapshotRegular": "http://contoh/covers/990f3820db2948b5b4a13d65d9a4****-{SnapshotCount}.jpg",
"JobId": "ee16d4bbf3f7*****e094bcb8cf8ddde"
},
{
"Status": "success",
"SnapshotType": "SpriteSnapshot",
"SnapshotCount": 1,
"SnapshotFormat": "2327a6ec24b44844b3a5e2c1b691****/covers/sprite/990f3820db2948b5b4a13d65d9a4****-{SnapshotCount}.jpg",
"SnapshotRegular": "http://contoh/covers/sprite/990f3820db2948b5b4a13d65d9a4****-{SnapshotCount}.jpg",
"JobId": "b3187205eed*****b72adf4eb3840713"
}
]
}