Zu einer übersprungenen Werbeunterbrechung zurückkehren

Plattform auswählen: HTML5 Android iOS tvOS Roku

Als Video-Publisher möchten Sie möglicherweise verhindern, dass Zuschauer Ihre Mid-Roll-Anzeigen überspringen. Wenn ein Nutzer eine Werbeunterbrechung überspringt, können Sie ihn zum Beginn dieser Werbeunterbrechung zurückbringen und ihn nach Abschluss der Werbeunterbrechung wieder an die ursprüngliche Position weiterleiten. Diese Funktion wird als „Zurückspringen“ bezeichnet.

Ein Beispiel finden Sie im folgenden Diagramm. Ein Zuschauer sieht sich ein Video an und möchte von der 5-Minuten-Marke zur 15-Minuten-Marke springen. Bei der 10-Minuten-Marke gibt es jedoch eine Werbeunterbrechung, die er sich ansehen soll, bevor er sich den Inhalt danach ansehen kann:

So zeigen Sie diese Werbeunterbrechung:

  1. Prüfen Sie, ob der Nutzer eine Suche durchgeführt hat, bei der eine nicht angesehene Werbeunterbrechung übersprungen wurde. Wenn ja, leiten Sie ihn zur Werbeunterbrechung zurück.
  2. Nach Abschluss der Werbeunterbrechung leiten Sie ihn wieder an die ursprüngliche Position weiter.

Im Diagramm sieht das so aus:

So implementieren Sie das Zurückspringen mit dem IMA DAI SDK, wie in unserem erweiterten Beispiel gezeigt.

Verhindern, dass eine Suche eine Werbeunterbrechung überspringt

Prüfen Sie, ob der Nutzer eine Suche durchgeführt hat, bei der eine nicht angesehene Werbeunterbrechung übersprungen wurde. Wenn ja, leiten Sie ihn zur Werbeunterbrechung zurück. Im erweiterten Roku-Beispiel werden Fernbedienungstasten verwendet, damit der Nutzer suchen kann. Jedes Mal, wenn der Nutzer die Vorwärtstaste drückt, springt er im Stream um eine bestimmte Anzahl von Sekunden vorwärts. Mit derselben Methode, mit der dieser Sprung verarbeitet wird, wird auch geprüft, ob der Sprung den Nutzer an einer Werbeunterbrechung vorbeiführt oder in eine Werbeunterbrechung hineinführt. Wenn dies der Fall ist, wird der Nutzer stattdessen zum Beginn dieser Werbeunterbrechung weitergeleitet:

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

Nutzer wieder an die ursprüngliche Position weiterleiten

Prüfen Sie im adBreakEnded-Handler, ob die vorherige Werbeunterbrechung aufgrund des Zurückspringens wiedergegeben wurde. Wenn ja, leiten Sie den Nutzer an die Position weiter, zu der er ursprünglich springen wollte (sofern es sich nicht um die Mitte der gerade wiedergegebenen Werbeunterbrechung handelt):

player.adBreakEnded = Function(adBreakInfo as Object)
  If m.isSnapback
    m.seek(m.timeAfterSnapback * 1000)
    m.isSnapback = False
  End If
End Function