Sebagai penayang video, Anda mungkin ingin mencegah mencari selain iklan mid-roll Anda. Saat pengguna mencari setelah jeda iklan, Anda dapat mengarahkan mereka kembali ke awal jeda iklan, lalu mereka ke lokasi pencarian setelah jeda iklan selesai. Ini fitur disebut "snapback."
Sebagai contoh, lihat diagram di bawah ini. Penonton Anda sedang menonton video, dan memutuskan untuk mencari dari detik 5 ke detik 15. Namun, ada jeda iklan pada tanda 10 menit yang ingin Anda yang harus mereka tonton sebelum mereka dapat menonton konten setelahnya:
Untuk menampilkan jeda iklan ini, lakukan langkah-langkah berikut:
- Periksa apakah pengguna menjalankan pencarian yang melewati jeda iklan yang belum ditonton, dan jika ya, arahkan mereka kembali ke jeda iklan.
- Setelah jeda iklan selesai, kembalikan iklan ke pencarian aslinya.
Dalam bentuk diagram, tampilannya seperti ini:
Berikut cara menerapkan snapback menggunakan IMA DAI SDK, seperti yang ditunjukkan dalam Contoh Lanjutan.
Mencegah pencarian membiarkan jeda iklan tidak ditonton
Periksa apakah pengguna telah menjalankan pencarian
yang melewati jeda iklan yang belum ditonton,
dan jika ya, arahkan mereka kembali ke jeda iklan.
Di HTML5 SDK, tetapkan pemroses peristiwa pada peristiwa seeked
pemutar konten
untuk memicu onSeekEnd()
. Metode tersebut (ditunjukkan di bawah) memeriksa titik tanda
sebelum waktu pencarian pengguna. Jika belum diputar, cari bagian awal
jeda iklan, bukan titik pencarian awal yang diinginkan, dan menyimpan
mencari titik di snapForwardTime
.
function onSeekEnd() {
if (isLiveStream) { return; }
if (isSnapback) {
isSnapback = false;
return;
}
var currentTime = videoElement.currentTime;
var previousCuePoint =
streamManager.previousCuePointForStreamTime(currentTime);
if (previousCuePoint && !previousCuePoint.played) {
isSnapback = true;
snapForwardTime = currentTime;
videoElement.currentTime = previousCuePoint.start;
}
Mengembalikan pengguna ke pencarian awal
Sekarang saat Anda mendapatkan peristiwa AD_BREAK_ENDED
, periksa untuk mengetahui apakah snapForwardTime
sudah diatur. Jika ya, arahkan pengguna ke titik tersebut dalam streaming, karena iklan
jeda yang baru saja mereka tonton adalah hasil dari snapback:
function onAdBreakEnded(e) {
videoElement.controls = true;
clickElement.style.display = 'none';
adUiDiv.style.display = 'none';
if (snapForwardTime && snapForwardTime > videoElement.currentTime) {
videoElement.currentTime = snapForwardTime;
snapForwardTime = null;
}
}