Roku Video エージェントは、2 つの異なる広告 API を通じて広告イベント監視を提供します。
Roku 広告フレームワーク (RAF) をインストールする
RAF の場合、トラッカーは NRAgent 内に統合されているため、追加の手順は必要ありません。
Google IMAをインストールする
IMA の場合、プロジェクト ディレクトリに次のファイルが含まれていることを確認します。
components/NewRelicAgent/trackers IMATracker.brs IMATracker.xmlsource/ IMATrackerInterface.brs
使用方法
RAFの使用
フィールドを使用して、NRAgent オブジェクト ( NewRelic(accountId, apiKey)
の呼び出しで作成) を Ads タスクに渡します。 広告タスク内で、次の操作を実行します。
adIface = Roku_Ads()
' Ad Iface setup code...
logFunc = Function(obj = Invalid as Dynamic, evtType = invalid as Dynamic, ctx = invalid as Dynamic) 'Call RAF tracker, passing the event and context nrTrackRAF(obj, evtType, ctx)End Function
' m.top.nr is the reference to the field where we have the NRAgent objectadIface.setTrackingCallback(logFunc, m.top.nr)
完全な使用例については、現在のリポジトリ内のファイルVideoScene.brs
(関数setupVideoWithAds()
) とAdsTask.brs
参照してください。
IMA の使用
IMA トラッカー オブジェクトを作成します。
tracker = IMATracker(m.nr)
ここで、 m.nr
は NRAgent オブジェクトです。
フィールドを使用してトラッカー オブジェクトを IMA SDK タスクに渡し、タスク XML にスクリプトIMATrackerInterface.brs
を含めます。 タスク内で、次の操作を実行します。
m.player.adBreakStarted = Function(adBreakInfo as Object) ' Ad break start code... ' Send AD_BREAK_START nrSendIMAAdBreakStart(m.top.tracker, adBreakInfo) End Function
m.player.adBreakEnded = Function(adBreakInfo as Object) ' Ad break end code...
' Send AD_BREAK_END nrSendIMAAdBreakEnd(m.top.tracker, adBreakInfo) End Function
' ...
m.streamManager.addEventListener(m.sdk.AdEvent.START, startCallback) m.streamManager.addEventListener(m.sdk.AdEvent.FIRST_QUARTILE, firstQuartileCallback) m.streamManager.addEventListener(m.sdk.AdEvent.MIDPOINT, midpointCallback) m.streamManager.addEventListener(m.sdk.AdEvent.THIRD_QUARTILE, thirdQuartileCallback) m.streamManager.addEventListener(m.sdk.AdEvent.COMPLETE, completeCallback)
Function startCallback(ad as Object) as Void ' Send AD_START nrSendIMAAdStart(m.top.tracker, ad) End Function
Function firstQuartileCallback(ad as Object) as Void ' Send AD_QUARTILE (first) nrSendIMAAdFirstQuartile(m.top.tracker, ad) End Function
Function midpointCallback(ad as Object) as Void ' Send AD_QUARTILE (midpoint) nrSendIMAAdMidpoint(m.top.tracker, ad) End Function
Function thirdQuartileCallback(ad as Object) as Void ' Send AD_QUARTILE (third) nrSendIMAAdThirdQuartile(m.top.tracker, ad) End Function
Function completeCallback(ad as Object) as Void ' Send AD_END nrSendIMAAdEnd(m.top.tracker, ad) End Function
ここで、 m.top.tracker
はタスクに渡されるトラッカー オブジェクトです。
完全な使用例については、ファイルVideoScene.brs
(関数setupVideoWithIMA()
) とimasdk.brs
参照してください。