View a markdown version of this page

Commandes et fonctionnalités du lecteur pour le suivi des publicités côté client - AWS Elemental MediaTailor

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Commandes et fonctionnalités du lecteur pour le suivi des publicités côté client

MediaTailor les métadonnées de suivi côté client prennent en charge diverses commandes et fonctionnalités du lecteur. La liste suivante décrit les commandes de lecteur les plus courantes.

Gommage

Pour améliorer l'expérience de lecture, le lecteur peut afficher les positions des annonces dans la chronologie de lecture. MediaTailor rend ces positions d'annonces disponibles sous forme de startTimeInSeconds valeurs dans la réponse de suivi côté client.

Note

Certains fournisseurs de streaming empêchent de passer la position d'une annonce à l'autre.

Capture d'écran montrant les positions de MediaTailor marquage dans la chronologie vidéo où les publicités sont diffusées.

La réponse JSON de charge utile de suivi côté client suivante indique l'heure de début de l'avail (ad break) dans l'objet JSON racine du tableau avails. Le joueur utilise ces données pour afficher l'emplacement de la pause publicitaire sur la chronologie du joueur, à 28 secondes.

{ "avails": [ { "adBreakTrackingEvents": [], "adMarkerDuration": null, "ads": [...], "availId": "7", "availProgramDateTime": null, "duration": "PT30S", "durationInSeconds": 30, "meta": null, "nonLinearAdsList": [], "startTime": "PT28S", "startTimeInSeconds": 28 } ], "dashAvailabilityStartTime": null, "hlsAnchorMediaSequenceNumber": null, "nextToken": "UFQxMk0zNC44NjhTXzIwMjMtMDctMjFUMjA6MjM6MDcuNzc1NzE2MzAyWl8x", "nonLinearAvails": [] }

Compte à rebours publicitaire

Avec, MediaTailor vous pouvez utiliser un compte à rebours pour maintenir l'engagement de votre public pendant le visionnage des pauses publicitaires. Le public peut utiliser le chronomètre pour comprendre quand la pause publicitaire prend fin et quand son programme reprend.

Capture d'écran montrant l' MediaTailor affichage d'un compte à rebours publicitaire, qui indique au public le temps restant avant la reprise de son émission.

Les éléments des métadonnées de suivi côté client qui jouent un rôle dans le compte à rebours des publicités sont startTime startTimeInSecondsduration, et. durationInSeconds Le lecteur utilise ces métadonnées, ainsi que la durée de la session qu'il suit séparément, pour déterminer quand afficher le chronomètre et la valeur à partir de laquelle le compte à rebours doit être effectué.

La réponse JSON de charge utile de suivi côté client suivante indique les informations nécessaires à l'affichage d'un compte à rebours publicitaire.

{ "avails": [ { "adBreakTrackingEvents": [], "adMarkerDuration": null, "ads": [...], "availId": "7", "availProgramDateTime": null, "duration": "PT30S", "durationInSeconds": 30, "meta": null, "nonLinearAdsList": [], "startTime": "PT28S", "startTimeInSeconds": 28 } ], "dashAvailabilityStartTime": null, "hlsAnchorMediaSequenceNumber": null, "nextToken": "UFQxMk0zNC44NjhTXzIwMjMtMDctMjFUMjA6MjM6MDcuNzc1NzE2MzAyWl8x", "nonLinearAvails": [] }

Lorsque la durée de la session atteint l'heure de début de la session, le joueur affiche un compte à rebours dont la valeur correspond à la durée de la session. La valeur du compte à rebours diminue au fur et à mesure que le temps écoulé dépasse l'heure de début de la disponibilité.

Exemple formule : compte à rebours pour HLS (live et VOD) et DASH (VOD)
  • session_start_time= la somme de toutes les valeurs de EXT-INF durée - la valeur de durée des trois séquences EXT-INF multimédia les plus récentes

  • valeur du minuteur = duration - (session_elapsed_time-startTime)

Schéma montrant le calcul du compte à rebours des publicités, en fonction de l'heure de début de la session et de l'heure de début de l'offre, pour les manifestes HLS (en direct et VOD) et DASH (VOD).
Exemple formule : compte à rebours pour DASH (en direct)
  • session_start_time= (startTime+ du segment le plus récentduration)/timescale- MPD@suggestedPresentationDelay

  • valeur du minuteur = duration - (session_elapsed_time-startTime)

Schéma montrant le calcul du compte à rebours des publicités, en fonction de l'heure de début de la session et de l'heure de début de l'offre, pour les manifestes DASH en direct.

Annonces pouvant être ignorées

Les publicités ignorables sont des spots publicitaires qui permettent au spectateur d'ignorer une partie de l'annonce pour reprendre le visionnage du programme. Dans VAST, l'Linear@skipOffsetattribut identifie une annonce pouvant être ignorée.

La réponse VAST suivante montre comment utiliser une annonce pouvant être ignorée :

<?xml version="1.0" encoding="UTF-8"?> <VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0"> <Ad> <InLine> ... <Creatives> <Creative id="1" sequence="1"> <Linear skipoffset="00:00:05"> <Duration>00:00:15</Duration> <MediaFiles> <MediaFile id="EMT" delivery="progressive" width="640" height="360" type="video/mp4" bitrate="143" scalable="true" maintainAspectRatio="true"><![CDATA[https://ads.com/file.mp4]]></MediaFile> </MediaFiles> </Linear> </Creative> </Creatives> ... </InLine> </Ad> </VAST>

La réponse JSON de charge utile de suivi côté client suivante affiche les métadonnées de l'annonce dans le tableau. ads Le tableau contient la skipOffset valeur MediaTailor obtenue à partir de la réponse VAST.

{ "avails": [ { "adBreakTrackingEvents": [], "adMarkerDuration": null, "ads": [ { "adId": "1", "adParameters": "", "adProgramDateTime": "2023-07-31T16:11:40.693Z", "adSystem": "2.0", "adTitle": "AD-skiing-15", "adVerifications": [], "companionAds": [...], "creativeId": "1", "creativeSequence": "1", "duration": "PT15.015S", "durationInSeconds": 15.015, "extensions": [], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "skipOffset": "00:00:05", "startTime": "PT9.943S", "startTimeInSeconds": 9.943, "trackingEvents": [ { "beaconUrls": [ "https://adserverbeaconing.com/v1/impression" ], "duration": "PT15.015S", "durationInSeconds": 15.015, "eventId": "2697726", "eventProgramDateTime": null, "eventType": "impression", "startTime": "PT9.943S", "startTimeInSeconds": 9.943 } ], "vastAdId": "" } ], "availId": "2697726", "availProgramDateTime": "2023-07-31T16:11:40.693Z", "duration": "PT15.015S", "durationInSeconds": 15.015, "meta": null, "nonLinearAdsList": [], "startTime": "PT9.943S", "startTimeInSeconds": 9.943 } ], "dashAvailabilityStartTime": null, "hlsAnchorMediaSequenceNumber": null, "nextToken": "", "nonLinearAvails": [] }

Cliquez sur une annonce

Click-through Les URI permettent aux annonceurs de mesurer la capacité d'une annonce à capter l'attention des spectateurs. Lorsqu'un internaute clique sur l'image vidéo active d'une annonce en cours, un navigateur Web ouvre l'URI de la page d'accueil ou de la page de destination de la campagne de l'annonceur. Le développeur du lecteur détermine le comportement des clics, par exemple en superposant un bouton ou une étiquette sur la vidéo publicitaire, avec un message sur lequel cliquer pour en savoir plus. Les développeurs de lecteurs interrompent souvent la vidéo de l'annonce une fois que les spectateurs ont cliqué sur l'image vidéo active.

Capture d'écran d'un clic sur une annonce dans un lecteur vidéo. Les spectateurs cliquent sur l'image vidéo. Le lecteur met la vidéo en pause, puis ouvre un navigateur Web pour rediriger le spectateur vers la page d'accueil ou la page d'accueil de la campagne de l'annonceur.

MediaTailor peut analyser et mettre à disposition toutes les URL d'événements de clic vidéo linéaires renvoyées dans la réponse VAST. La réponse VAST suivante montre un exemple de clic sur une annonce.

<?xml version="1.0" encoding="UTF-8"?> <VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0"> <Ad> <InLine> ... <Creatives> <Creative id="1" sequence="1"> <Linear> <Duration>00:00:15</Duration> <MediaFiles> <MediaFile id="EMT" delivery="progressive" width="1280" height="720" type="video/mp4" bitrate="143" scalable="true" maintainAspectRatio="true"><![CDATA[https://ads.com/file.mp4]]></MediaFile> </MediaFiles> <VideoClicks> <ClickThrough id="EMT"><![CDATA[https://aws.amazon.com]]></ClickThrough> <ClickTracking id="EMT"><![CDATA[https://myads.com/beaconing/event=clicktracking]]></ClickTracking> </VideoClicks> </Linear> </Creative> </Creatives> ... </InLine> </Ad> </VAST>

La réponse JSON de charge utile de suivi côté client suivante montre comment MediaTailor s'affiche les URL de clic et de suivi des clics dans le tableau. trackingEvents Le type clickThrough d'événement représente l'annonce cliquable et le type d'clickTrackingévénement représente l'URL de suivi des clics.

{ "avails": [ { "adBreakTrackingEvents": [], "adMarkerDuration": null, "ads": [ { "adId": "1", "adParameters": "", "adProgramDateTime": "2023-07-31T16:53:40.577Z", "adSystem": "2.0", "adTitle": "1", "adVerifications": [], "companionAds": [], "creativeId": "00006", "creativeSequence": "1", "duration": "PT14.982S", "durationInSeconds": 14.982, "extensions": [], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "skipOffset": null, "startTime": "PT39.339S", "startTimeInSeconds": 39.339, "trackingEvents": [ { "beaconUrls": [ "https://myads.com/beaconing/event=impression" ], "duration": "PT14.982S", "durationInSeconds": 14.982, "eventId": "2698188", "eventProgramDateTime": null, "eventType": "impression", "startTime": "PT39.339S", "startTimeInSeconds": 39.339 }, { "beaconUrls": [ "https://aws.amazon.com" ], "duration": "PT14.982S", "durationInSeconds": 14.982, "eventId": "2698188", "eventProgramDateTime": null, "eventType": "clickThrough", "startTime": "PT39.339S", "startTimeInSeconds": 39.339 }, { "beaconUrls": [ "https://myads.com/beaconing/event=clicktracking" ], "duration": "PT14.982S", "durationInSeconds": 14.982, "eventId": "2698795", "eventProgramDateTime": null, "eventType": "clickTracking", "startTime": "PT39.339S", "startTimeInSeconds": 39.339 } ], "vastAdId": "" } ], "availId": "2698188", "availProgramDateTime": "2023-07-31T16:53:40.577Z", "duration": "PT14.982S", "durationInSeconds": 14.982, "meta": null, "nonLinearAdsList": [], "startTime": "PT39.339S", "startTimeInSeconds": 39.339 } ], "dashAvailabilityStartTime": null, "hlsAnchorMediaSequenceNumber": null, "nextToken": "UFQzOS4zMzlTXzIwMjMtMDctMzFUMTY6NTQ6MDQuODA1Mzk2NTI5Wl8x", "nonLinearAvails": [] }

Annonces complémentaires

Une publicité complémentaire apparaît à côté d'une création linéaire. Utilisez des publicités complémentaires pour améliorer l'efficacité d'un spot publicitaire en affichant des informations sur le produit, le logo et la marque. L'annonce graphique peut comporter des codes de réponse rapide (QR) et des zones cliquables pour favoriser l'engagement du public.

MediaTailor prend en charge les publicités complémentaires dans la réponse VAST. Il peut transmettre des métadonnées depuis StaticResourceiFrameResource, et des HTMLResource nœuds, respectivement.

La réponse VAST suivante montre un exemple d'emplacement et de format de l'annonce linéaire et de l'annonce complémentaire.

<?xml version="1.0" encoding="UTF-8"?> <VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0"> <Ad> <InLine> ... <Creatives> <Creative id="1" sequence="1"> <Linear> <Duration>00:00:10</Duration> <MediaFiles> <MediaFile id="EMT" delivery="progressive" width="640" height="360" type="video/mp4" bitrate="143" scalable="true" maintainAspectRatio="true"><![CDATA[https://ads.com/file.mp4]]></MediaFile> </MediaFiles> </Linear> </Creative> <Creative id="2" sequence="1"> <CompanionAds> <Companion id="2" width="300" height="250"> <StaticResource creativeType="image/png"><![CDATA[https://emt.com/companion/9973499273]]></StaticResource> <TrackingEvents> <Tracking event="creativeView"><![CDATA[https://beacon.com/1]]></Tracking> </TrackingEvents> <CompanionClickThrough><![CDATA[https://beacon.com/2]]></CompanionClickThrough> </Companion> <Companion id="3" width="728" height="90"> <StaticResource creativeType="image/png"><![CDATA[https://emt.com/companion/1238901823]]></StaticResource> <TrackingEvents> <Tracking event="creativeView"><![CDATA[https://beacon.com/3]]></Tracking> </TrackingEvents> <CompanionClickThrough><![CDATA[https://beacon.com/4]]></CompanionClickThrough> </Companion> </CompanionAds> </Creative> </Creatives> ... </InLine> </Ad> </VAST>

Les données apparaissent dans la réponse de suivi côté client dans la /avail/x/ads/y/companionAds liste. Chaque création linéaire peut contenir jusqu'à 6 publicités complémentaires. Comme le montre l'exemple ci-dessous, les publicités associées apparaissent dans une liste

Note

Il est recommandé aux développeurs d'applications de mettre en œuvre une logique permettant de supprimer ou de décharger explicitement l'annonce associée à la fin de la création.

{ "avails": [ { "adBreakTrackingEvents": [], "adMarkerDuration": null, "ads": [ { "adId": "0", "adParameters": "", "adProgramDateTime": null, "adSystem": "EMT", "adTitle": "sample", "adVerifications": [], "companionAds": [ { "adParameters": null, "altText": null, "attributes": { "adSlotId": null, "apiFramework": null, "assetHeight": null, "assetWidth": null, "expandedHeight": null, "expandedWidth": null, "height": "250", "id": "2", "pxratio": null, "renderingMode": null, "width": "300" }, "companionClickThrough": "https://beacon.com/2", "companionClickTracking": null, "htmlResource": null, "iFrameResource": null, "sequence": "1", "staticResource": "https://emt.com/companion/9973499273", "trackingEvents": [ { "beaconUrls": [ "https://beacon.com/1" ], "eventType": "creativeView" } ] }, { "adParameters": null, "altText": null, "attributes": { "adSlotId": null, "apiFramework": null, "assetHeight": null, "assetWidth": null, "expandedHeight": null, "expandedWidth": null, "height": "90", "id": "3", "pxratio": null, "renderingMode": null, "width": "728" }, "companionClickThrough": "https://beacon.com/4", "companionClickTracking": null, "htmlResource": null, "iFrameResource": null, "sequence": "1", "staticResource": "https://emt.com/companion/1238901823", "trackingEvents": [ { "beaconUrls": [ "https://beacon.com/3" ], "eventType": "creativeView" } ] } ], "creativeId": "1", "creativeSequence": "1", "duration": "PT10S", "durationInSeconds": 10, "extensions": [], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "skipOffset": null, "startTime": "PT0S", "startTimeInSeconds": 0, "trackingEvents": [ { "beaconUrls": [ "https://beacon.com/impression/1" ], "duration": "PT10S", "durationInSeconds": 10, "eventId": "0", "eventProgramDateTime": null, "eventType": "impression", "startTime": "PT0S", "startTimeInSeconds": 0 } ], "vastAdId": "" } ], "availId": "0", "availProgramDateTime": null, "duration": "PT10S", "durationInSeconds": 10, "meta": null, "nonLinearAdsList": [], "startTime": "PT0S", "startTimeInSeconds": 0 } ], "dashAvailabilityStartTime": null, "hlsAnchorMediaSequenceNumber": null, "nextToken": "UFQxMFNfMjAyMy0wNy0wNlQyMToxMDowOC42NzQ4NDA1NjJaXzE%3D", "nonLinearAvails": [] }

Publicités interactives (SIMID)

SecureInteractive La définition de l'interface multimédia (SIMID) est une norme pour la publicité interactive qui a été introduite dans la norme VAST 4.x de l'Interactive Advertising Bureau (IAB). SIMID dissocie le chargement des éléments interactifs de la création linéaire principale sur le lecteur, en faisant référence à ces deux éléments dans la réponse VAST. MediaTailor intègre la création principale pour préserver l'expérience de lecture et place les métadonnées des composants interactifs dans la réponse de suivi côté client.

Dans l'exemple de réponse VAST 4 suivant, la charge utile SIMID se trouve à l'intérieur du InteractiveCreativeFile nœud.

<?xml version="1.0"?> <VAST xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0"> <Ad id="1234567"> <InLine> <AdSystem>SampleAdSystem</AdSystem> <AdTitle>Linear SIMID Example</AdTitle> <Description>SIMID example</Description> <Error>https://www.beacons.com/error</Error> <Impression>https://www.beacons.com/impression</Impression> <Creatives> <Creative sequence="1"> <Linear> <Duration>00:00:15</Duration> <TrackingEvents> ... </TrackingEvents> <VideoClicks> <ClickThrough id="123">https://aws.amazon.com</ClickThrough> <ClickTracking id="123">https://www.beacons.com/click</ClickTracking> </VideoClicks> <MediaFiles> <MediaFile delivery="progressive" type="video/mp4"> https://interactive-ads.com/interactive-media-ad-sample/media/file.mp4 </MediaFile> <InteractiveCreativeFile type="text/html" apiFramework="SIMID" variableDuration="true"> https://interactive-ads.com/interactive-media-ad-sample/sample_simid.html </InteractiveCreativeFile> </MediaFiles> </Linear> </Creative> </Creatives> </InLine> </Ad> </VAST>

Dans la réponse VAST 3 suivante, la charge utile SIMID se trouve à l'intérieur du Extensions nœud.

<?xml version="1.0"?> <VAST xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0"> <Ad id="1234567"> <InLine> <AdSystem>SampleAdSystem</AdSystem> <AdTitle>Linear SIMID Example</AdTitle> <Description>SIMID example</Description> <Impression>https://www.beacons.com/impression</Impression> <Creatives> <Creative id="1" sequence="1"> <Linear> <Duration>00:00:15</Duration> <TrackingEvents> ... </TrackingEvents> <VideoClicks> <ClickThrough id="123">https://aws.amazon.com</ClickThrough> <ClickTracking id="123">https://myads.com/beaconing/event=clicktracking</ClickTracking> </VideoClicks> <MediaFiles> <MediaFile delivery="progressive" type="video/mp4"> https://interactive-ads.com/interactive-media-ad-sample/media/file.mp4 </MediaFile> </MediaFiles> </Linear> </Creative> </Creatives> <Extensions> <Extension type="InteractiveCreativeFile"> <InteractiveCreativeFile type="text/html" apiFramework="SIMID" variableDuration="true"> https://interactive-ads.com/interactive-media-ad-sample/sample_simid.html </InteractiveCreativeFile> </Extension> </Extensions> </InLine> </Ad> </VAST>

Dans la réponse de suivi côté client suivante, les données SIMID apparaissent dans la liste. /avails/x/ads/y/extensions

{ "avails": [ { "adBreakTrackingEvents": [], "adMarkerDuration": null, "ads": [ { "adId": "1", "adParameters": "", "adProgramDateTime": "2023-07-31T16:53:40.577Z", "adSystem": "2.0", "adTitle": "Linear SIMID Example", "adVerifications": [], "companionAds": [], "creativeId": "1", "creativeSequence": "1", "duration": "PT14.982S", "durationInSeconds": 14.982, "extensions": [ { "content": "<InteractiveCreativeFile type=\"text/html\" apiFramework=\"SIMID\" variableDuration=\"true\">\nhttps://interactive-ads.com/interactive-media-ad-sample/sample_simid.html</InteractiveCreativeFile>", "type": "InteractiveCreativeFile" } ], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "skipOffset": null, "startTime": "PT39.339S", "startTimeInSeconds": 39.339, "trackingEvents": [ { "beaconUrls": [ "https://myads.com/beaconing/event=impression" ], "duration": "PT14.982S", "durationInSeconds": 14.982, "eventId": "2698188", "eventProgramDateTime": null, "eventType": "impression", "startTime": "PT39.339S", "startTimeInSeconds": 39.339 }, { "beaconUrls": [ "https://aws.amazon.com" ], "duration": "PT14.982S", "durationInSeconds": 14.982, "eventId": "2698188", "eventProgramDateTime": null, "eventType": "clickThrough", "startTime": "PT39.339S", "startTimeInSeconds": 39.339 }, { "beaconUrls": [ "https://myads.com/beaconing/event=clicktracking" ], "duration": "PT14.982S", "durationInSeconds": 14.982, "eventId": "2698795", "eventProgramDateTime": null, "eventType": "clickTracking", "startTime": "PT39.339S", "startTimeInSeconds": 39.339 } ], "vastAdId": "" } ], "availId": "2698188", "availProgramDateTime": "2023-07-31T16:53:40.577Z", "duration": "PT14.982S", "durationInSeconds": 14.982, "meta": null, "nonLinearAdsList": [], "startTime": "PT39.339S", "startTimeInSeconds": 39.339 } ], "dashAvailabilityStartTime": null, "hlsAnchorMediaSequenceNumber": null, "nextToken": "UFQzOS4zMzlTXzIwMjMtMDctMzFUMTY6NTQ6MDQuODA1Mzk2NTI5Wl8x", "nonLinearAvails": [] }

Publicités interactives (VPAID)

La définition de l'interface publicitaire du lecteur vidéo (VPAID) spécifie le protocole entre l'annonce et le lecteur vidéo qui permet l'interactivité des publicités et d'autres fonctionnalités. Pour les diffusions en direct, MediaTailor prend en charge le format VPAID en assemblant des segments d'ardoise pendant la durée de disponibilité et en insérant des métadonnées pour les créations VPAID dans la réponse de suivi côté client consommée par le lecteur vidéo. Le lecteur télécharge les fichiers VPAID, lit la création linéaire et exécute les scripts du client. Le joueur ne doit jamais jouer les segments de l'ardoise.

Note

VPAID est obsolète depuis VAST 4.1.

Schéma de lecture des publicités VPAID. MediaTailor assemble des segments de l'ardoise pendant la durée disponible dans la chronologie du contenu. Le joueur passe à l'actif VPAID pendant toute la durée d'utilisation.

L'exemple suivant montre le contenu VPAID de la réponse VAST.

<?xml version="1.0"?> <VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0"> <Ad id="1234567"> <InLine> <AdSystem>GDFP</AdSystem> <AdTitle>VPAID</AdTitle> <Description>Vpaid Linear Video Ad</Description> <Error>http://www.example.com/error</Error> <Impression>http://www.example.com/impression</Impression> <Creatives> <Creative sequence="1"> <Linear> <Duration>00:00:00</Duration> <TrackingEvents> <Tracking event="start">http://www.example.com/start</Tracking> <Tracking event="firstQuartile">http://www.example.com/firstQuartile</Tracking> <Tracking event="midpoint">http://www.example.com/midpoint</Tracking> <Tracking event="thirdQuartile">http://www.example.com/thirdQuartile</Tracking> <Tracking event="complete">http://www.example.com/complete</Tracking> <Tracking event="mute">http://www.example.com/mute</Tracking> <Tracking event="unmute">http://www.example.com/unmute</Tracking> <Tracking event="rewind">http://www.example.com/rewind</Tracking> <Tracking event="pause">http://www.example.com/pause</Tracking> <Tracking event="resume">http://www.example.com/resume</Tracking> <Tracking event="fullscreen">http://www.example.com/fullscreen</Tracking> <Tracking event="creativeView">http://www.example.com/creativeView</Tracking> <Tracking event="acceptInvitation">http://www.example.com/acceptInvitation</Tracking> </TrackingEvents> <AdParameters><![CDATA[ {"videos":[ {"url":"https://my-ads.com/interactive-media-ads/media/media_linear_VPAID.mp4","mimetype":"video/mp4"}]} ]]></AdParameters> <VideoClicks> <ClickThrough id="123">http://google.com</ClickThrough> <ClickTracking id="123">http://www.example.com/click</ClickTracking> </VideoClicks> <MediaFiles> <MediaFile delivery="progressive" apiFramework="VPAID" type="application/javascript" width="640" height="480"> https://googleads.github.io/googleads-ima-html5/vpaid/linear/VpaidVideoAd.js </MediaFile> </MediaFiles> </Linear> </Creative> </Creatives> </InLine> </Ad> </VAST>

L'exemple suivant montre les informations de suivi.

{ "avails": [ { "adBreakTrackingEvents": [], "adMarkerDuration": null, "ads": [ { "adId": "1", "adParameters": "", "adProgramDateTime": "2023-07-31T16:53:40.577Z", "adSystem": "2.0", "adTitle": "1", "adVerifications": [], "companionAds": [], "creativeId": "00006", "creativeSequence": "1", "duration": "PT14.982S", "durationInSeconds": 14.982, "extensions": [], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "skipOffset": null, "startTime": "PT39.339S", "startTimeInSeconds": 39.339, "trackingEvents": [ { "beaconUrls": [ "https://myads.com/beaconing/event=impression" ], "duration": "PT14.982S", "durationInSeconds": 14.982, "eventId": "2698188", "eventProgramDateTime": null, "eventType": "impression", "startTime": "PT39.339S", "startTimeInSeconds": 39.339 }, { "beaconUrls": [ "https://aws.amazon.com" ], "duration": "PT14.982S", "durationInSeconds": 14.982, "eventId": "2698188", "eventProgramDateTime": null, "eventType": "clickThrough", "startTime": "PT39.339S", "startTimeInSeconds": 39.339 }, { "beaconUrls": [ "https://myads.com/beaconing/event=clicktracking" ], "duration": "PT14.982S", "durationInSeconds": 14.982, "eventId": "2698795", "eventProgramDateTime": null, "eventType": "clickTracking", "startTime": "PT39.339S", "startTimeInSeconds": 39.339 } ], "vastAdId": "" } ], "availId": "2698188", "availProgramDateTime": "2023-07-31T16:53:40.577Z", "duration": "PT14.982S", "durationInSeconds": 14.982, "meta": null, "nonLinearAdsList": [], "startTime": "PT39.339S", "startTimeInSeconds": 39.339 } ], "dashAvailabilityStartTime": null, "hlsAnchorMediaSequenceNumber": null, "nextToken": "UFQzOS4zMzlTXzIwMjMtMDctMzFUMTY6NTQ6MDQuODA1Mzk2NTI5Wl8x", "nonLinearAvails": [] }{ "avails": [ { "adBreakTrackingEvents": [], "adMarkerDuration": null, "ads": [ { "adId": "2922274", "adParameters": "", "adProgramDateTime": "2023-08-14T19:49:53.998Z", "adSystem": "Innovid Ads", "adTitle": "VPAID", "adVerifications": [], "companionAds": [], "creativeId": "", "creativeSequence": "", "duration": "PT16.016S", "durationInSeconds": 16.016, "extensions": [], "mediaFiles": { "mediaFilesList": [ { "apiFramework": "VPAID", "bitrate": 0, "codec": null, "delivery": "progressive", "height": 9, "id": "", "maintainAspectRatio": false, "maxBitrate": 0, "mediaFileUri": "http://my-ads.com/mobileapps/js/vpaid/1h41kg?cb=178344c0-8e67-281a-58ca-962e4987cd60&deviceid=&ivc=", "mediaType": "application/javascript", "minBitrate": 0, "scalable": false, "width": 16 } ], "mezzanine": "http://my-ads.com/mobileapps/js/vpaid/1h41kg?cb=178344c0-8e67-281a-58ca-962e4987cd60&deviceid=&ivc=" }, "skipOffset": null, "startTime": "PT8M42.289S", "startTimeInSeconds": 522.289, "trackingEvents": [ { "beaconUrls": [ "about:blank" ], "duration": "PT16.016S", "durationInSeconds": 16.016, "eventId": "2922274", "eventProgramDateTime": null, "eventType": "impression", "startTime": "PT8M42.289S", "startTimeInSeconds": 522.289 } ], "vastAdId": "1h41kg" } ], "availId": "2922274", "availProgramDateTime": "2023-08-14T19:49:53.998Z", "duration": "PT16.016S", "durationInSeconds": 16.016, "meta": null, "nonLinearAdsList": [], "startTime": "PT8M42.289S", "startTimeInSeconds": 522.289 } ], "dashAvailabilityStartTime": null, "hlsAnchorMediaSequenceNumber": null, "nextToken": "UFQ4TTQyLjI4OVNfMjAyMy0wOC0xNFQxOTo1MDo0MS4zOTc5MjAzODVaXzE%3D", "nonLinearAvails": [] }

Icônes pour Google Why This Ad (WTA)

AdChoicesest une norme du secteur qui fournit aux internautes des informations sur les publicités qu'ils voient, notamment sur la manière dont ces publicités les ciblaient.

Logo Google Why This Ad (WTA). La WTA informe les spectateurs des publicités qu'ils voient, y compris de la manière dont ces publicités les ciblaient.

L'API de suivi MediaTailor côté client prend en charge les métadonnées des icônes contenues dans le nœud d'extensions VAST de la réponse VAST. Pour plus d'informations sur le WTA dans la réponse VAST, consultez cet exemple de réponse XML VAST.

Note

MediaTailor ne prend actuellement en charge que la version 3 de VAST.

<VAST> <Ad> <InLine> ... <Extensions> <Extension type="IconClickFallbackImages"> <IconClickFallbackImages program="GoogleWhyThisAd"> <IconClickFallbackImage width="400" height="150"> <AltText>Alt icon fallback</AltText> <StaticResource creativeType="image/png"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png]]></StaticResource> </IconClickFallbackImage> </IconClickFallbackImages> <IconClickFallbackImages program="AdChoices"> <IconClickFallbackImage width="400" height="150"> <AltText>Alt icon fallback</AltText> <StaticResource creativeType="image/png"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png?size=1x]]></StaticResource> </IconClickFallbackImage> <IconClickFallbackImage width="800" height="300"> <AltText>Alt icon fallback</AltText> <StaticResource creativeType="image/png"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png?size=2x]]></StaticResource> </IconClickFallbackImage> </IconClickFallbackImages> </Extension> </Extensions> </InLine> </Ad> </VAST>

L'exemple suivant montre la réponse de suivi côté client dans la /avails/x/ads/y/extensions liste.

{ "avails": [ { "adBreakTrackingEvents": [], "adMarkerDuration": null, "ads": [ { "adId": "0", "adParameters": "", "adProgramDateTime": null, "adSystem": "GDFP", "adTitle": "Google Why This Ad VAST 3 Sample", "adVerifications": [], "companionAds": [], "creativeId": "7891011", "creativeSequence": "1", "duration": "PT10S", "durationInSeconds": 10, "extensions": [ { "content": "<IconClickFallbackImages program=\"GoogleWhyThisAd\"> <IconClickFallbackImage height=\"150\" width=\"400\"> <AltText>Alt icon fallback</AltText> <StaticResource creativeType=\"image/png\"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png]]> </StaticResource> </IconClickFallbackImage> </IconClickFallbackImages> <IconClickFallbackImages program=\"AdChoices\"> <IconClickFallbackImage height=\"150\" width=\"400\"> <AltText>Alt icon fallback</AltText> <StaticResource creativeType=\"image/png\"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png?size=1x]]> </StaticResource> </IconClickFallbackImage> <IconClickFallbackImage height=\"300\" width=\"800\"> <AltText>Alt icon fallback</AltText> <StaticResource creativeType=\"image/png\"><![CDATA[https://storage.googleapis.com/interactive-media-ads/images/wta_dialog.png?size=2x]]> </StaticResource> </IconClickFallbackImage> </IconClickFallbackImages>", "type": "IconClickFallbackImages" } ], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "skipOffset": "00:00:03", "startTime": "PT0S", "startTimeInSeconds": 0, "trackingEvents": [ { "beaconUrls": [ "https://example.com/view" ], "duration": "PT10S", "durationInSeconds": 10, "eventId": "0", "eventProgramDateTime": null, "eventType": "impression", "startTime": "PT0S", "startTimeInSeconds": 0 } ], "vastAdId": "123456" } ], "availId": "0", "availProgramDateTime": null, "duration": "PT10S", "durationInSeconds": 10, "meta": null, "nonLinearAdsList": [], "startTime": "PT0S", "startTimeInSeconds": 0 } ], "dashAvailabilityStartTime": null, "hlsAnchorMediaSequenceNumber": null, "nextToken": "UFQxMFNfMjAyMy0wNy0wNlQyMDo0MToxNy45NDE4MDM0NDhaXzE%3D", "nonLinearAvails": [] }