ในฐานะผู้เผยแพร่โฆษณาวิดีโอ คุณอาจต้องการป้องกันไม่ให้ผู้ชมดูผ่านโฆษณาตอนกลางของคุณ เมื่อผู้ใช้เลื่อนผ่านช่วงพักโฆษณาไปแล้ว คุณสามารถนำผู้ใช้กลับไปยังจุดเริ่มต้นของช่วงพักโฆษณาได้ จากนั้นจึงนำผู้ใช้กลับไปยังตำแหน่งเดิมหลังจากช่วงพักโฆษณาสิ้นสุดลง คุณลักษณะนี้เรียกว่า "snapback"
ดูตัวอย่างแผนภาพด้านล่าง ผู้ชมของคุณกำลังดูวิดีโอ และตัดสินใจจากช่วง 5 นาทีไปยัน 15 นาที อย่างไรก็ตาม จะมีช่วงพักโฆษณาเมื่อครบ 10 นาทีที่คุณต้องการให้พวกเขาดูก่อนจึงจะดูเนื้อหาหลังจากนั้นได้
หากต้องการแสดงช่วงพักโฆษณานี้ โปรดทำตามขั้นตอนต่อไปนี้
- ตรวจสอบว่าผู้ใช้ทำการค้นหาผ่านช่วงพักโฆษณาที่ไม่ได้ดูหรือไม่ และถ้าเป็นเช่นนั้น ให้พาผู้ใช้กลับไปที่ช่วงพักโฆษณา
- หลังจากช่วงพักโฆษณาสิ้นสุดแล้ว ให้กลับไปยังหน้าเดิม
ในแบบฟอร์มแผนภาพ จะมีลักษณะดังนี้
วิธีใช้เวิร์กโฟลว์นี้ใน IMA SDK ของ Roku ดังที่แสดงในตัวอย่างขั้นสูง
ป้องกันไม่ให้ผู้ใช้หยุดดูช่วงพักโฆษณา
ตรวจสอบว่าผู้ใช้ทำการค้นหาที่เลยช่วงพักโฆษณาที่ไม่ได้ดูไปหรือไม่ และถ้ามี ให้นำผู้ใช้กลับไปยังช่วงพักโฆษณา ตัวอย่างขั้นสูงของ Roku จะใช้การกดปุ่มระยะไกลเพื่อให้ผู้ใช้กรอวิดีโอ แต่ละครั้งที่ผู้ใช้กดปุ่มไปข้างหน้า ผู้ใช้จะข้ามไปข้างหน้าในสตรีมตามจำนวนวินาทีที่กำหนดไว้ วิธีการเดียวกันกับที่จัดการการข้ามนี้ยังจะตรวจสอบเพื่อดูว่าการข้ามผ่านหรือเข้าสู่ช่วงพักโฆษณาหรือไม่ด้วย และจะนำผู้ใช้ไปยังจุดเริ่มต้นของช่วงพักโฆษณาแทน ดังนี้
Function handleFastForward(player as Object, streamManager as Object, updatedTime As Integer)
previousAd = streamManager.getPreviousCuePoint(updatedTime)
If previousAd = Invalid or previousAd.hasPlayed
player.seek(updatedTime * 1000)
Else If previousAd.start > player.currentTime
player.isSnapback = True
player.timeAfterSnapback = updatedTime
player.seek(previousAd.start * 1000 + 1000)
End If
End Function
นำผู้ใช้กลับไปยังการค้นหาเดิม
ในเครื่องจัดการ adBreakEnded
ให้ตรวจสอบว่ามีการเล่นช่วงพักโฆษณาก่อนหน้าอันเป็นผลมาจาก Snapback หรือไม่ หากใช่ ให้นำผู้ใช้กลับไปยังตำแหน่งที่ต้องการในตอนแรก (ตราบใดที่ไม่อยู่ระหว่างช่วงพักโฆษณาที่เพิ่งเล่น)
player.adBreakEnded = Function(adBreakInfo as Object)
If m.isSnapback
m.seek(m.timeAfterSnapback * 1000)
m.isSnapback = False
End If
End Function