廣告事件和廣告物件

本文檔說明並演示了在廣告系列中實現的一組通用的廣告事件和廣告對象的用法videojs-contrib-ads插入。

概覽

videojs-contrib-ads, 位於videojs / videojs-contrib-ads GitHub存儲庫提供了視頻廣告庫和視頻廣告集成所需的通用功能,從而減少了為特定廣告集成編寫的代碼。

這些事件和對像在Brightcove提供的FreeWheel和IMA3插件中實現。這些相同的事件和對像在SSAI插件中實現,但以下各項除外:

  • player.ads.pod接口
  • player.ads.provider目的

廣告活動

每個廣告提供商可以發出一組獨特的事件。通常,這些事件用於跟踪廣告的播放狀態(用於度量目的)和創建自定義UI。建議實施以下事件以鼓勵統一性,並允許自定義UI和分析提供程序保持廣告提供程序不可知。

事件 傳送時間:
ads-request 請求廣告數據
ads-load 廣告請求後即可提供廣告數據
ads-pod-started 線性廣告連播已開始
ads-pod-ended 線性廣告連播已完成
ads-allpods-completed 所有線性廣告均已完成
ads-ad-started 廣告開始播放
ads-ad-ended 廣告播放完畢
ads-first-quartile 廣告播放頭跨過第一個四分位數
ads-midpoint 廣告播放頭越過中點
ads-third-quartile 廣告播放頭超過了第三個四分位數
ads-pause 廣告已暫停
ads-play 廣告恢復
ads-volumechange 廣告量已更改
ads-click 點擊廣告

可以從播放器對像中偵聽這些事件。下面是監聽的代碼ads-ad-started對象,以及該對像傳遞給事件處理程序的屏幕快照。

videojs.getPlayer('myPlayerID').on('loadedmetadata',function(){
  var myPlayer = this;
  ...
  myPlayer.on('ads-ad-started',function( evt ){
    console.log('ads-ad-started event passed to event handler', evt);
  });
廣告事件對象

廣告對象

如您所見,傳遞給事件處理程序的事件對象並不是十分有用。因此,您可以利用兩個對象來收集更多廣告信息,它們是player.ads.adplayer.ads.pod

在下面的屏幕截圖中,您會看到player.ads.ad對象包含有關廣告的信息typeduration廣告以及其他詳細信息

播放器廣告

player.ads.pod對象包含與以下內容相似的信息player.ads.ad,並增加廣告連播中的廣告數量。以下第一個屏幕截圖顯示了一個廣告連播,其中包含一個廣告,而第二個屏幕截圖顯示了一個連播中的三個廣告。

廣告連播對象
多個廣告連播

谷歌的廣告經理

有一些方法和屬性可以從谷歌的谷歌。您可以使用接口的屬性/方法來檢索信息。不建議使用執行動作的方法,例如destroy setAutoPlayAdBreaks stop 。例如,您可以使用的一種方法如下所示:

廣告管理員. 取得維護時間

類型:google.ima.AdsManager.getRemainingTime

用法:myPlayer.ima3.adsManager.getRemainingTime()

呼叫此方法會傳回目前廣告的剩餘時間量。如果廣告無法使用或播放完成,則會傳回-1。有關更多信息,請參見Google的文件在方法上。