L'agent vidéo Roku fournit monitoring des événements publicitaires via deux API publicitaires différentes :
Prérequis
Avant d'activer le suivi publicitaire :
- Terminez l'installation de l'agent Roku
- Initialisez l'agent New Relic (référencé en tant que
m.nrdans les exemples ci-dessous)
Framework publicitaire Roku (RAF)
RAF est intégré dans le NRAgent. Aucun fichier supplémentaire n'est requis.
Activer le suivi RAF
Passez l'objet NRAgent (créé avec NewRelic("ACCOUNT ID", "LICENSE KEY")) à la tâche Ads à l'aide d'un champ. Dans la tâche Ads, effectuez les opérations suivantes :
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)Pour un exemple d'utilisation complet, consultez les fichiers VideoScene.brs (fonction setupVideoWithAds()) et AdsTask.brs dans le package de l'agent Roku.
Google IMA
Copier les fichiers requis
Assurez-vous que les fichiers suivants sont inclus dans le répertoire de votre projet :
components/NewRelicAgent/trackers IMATracker.brs IMATracker.xmlsource/ IMATrackerInterface.brsCréer un tracker IMA
Créez l’objet IMA Tracker :
tracker = IMATracker(m.nr)Où m.nr est l'objet NRAgent.
Configurer le suivi publicitaire
Transmettez l'objet tracker à la tâche du SDK IMA à l'aide d'un champ et incluez le script IMATrackerInterface.brs dans le XML de la tâche. Dans la tâche, configurez le suivi suivant :
Suivre les coupures publicitaires :
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 FunctionSuivre les événements publicitaires :
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 FunctionOù m.top.tracker est l’objet de suivi transmis à la tâche.
Pour un exemple d'utilisation complet, consultez les fichiers VideoScene.brs (fonction setupVideoWithIMA()) et imasdk.brs dans le package de l'agent Roku.