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.
Client-side suivi des publicités
À l'aide de l'API de suivi AWS Elemental MediaTailor côté client, vous pouvez intégrer les commandes des joueurs pendant les pauses publicitaires dans les flux de diffusion. Dans le cadre du suivi côté client, le joueur ou le client transmet des événements de suivi, tels que le balisage des impressions et des quartiles, à l'Ad Decision Server (ADS) et à d'autres entités de vérification des publicités. Ces événements permettent de suivre à la fois l'état général des interruptions publicitaires et la disponibilité des publicités individuelles au cours de chaque interruption. Pour plus d'informations sur l'impression et le quartile (ADS) et d'autres entités de vérification des publicités. Pour plus d'informations sur le balisage publicitaire par impression et quartile, consultez. Client-side balisage Pour plus d'informations sur ADS et les autres entités de vérification des publicités, consultezClient-side intégrations de suivi des publicités.
Pour plus d'informations sur la transmission des paramètres des joueurs et des données de session à l'ADS pour le suivi côté client, consultez MediaTailor variables de lecteur pour les requêtes ADS et. MediaTailor variables de session pour les requêtes ADS
Client-side le suivi permet des fonctionnalités telles que les suivantes :
-
Ad-break comptes à rebours - Pour plus d'informations, consultezCompte à rebours publicitaire.
-
Cliquez sur l'annonce : pour plus d'informations, consultez. Cliquez sur une annonce
-
Affichage d'annonces complémentaires - Pour plus d'informations, consultezAnnonces complémentaires.
-
Annonces pouvant être ignorées - Pour plus d'informations, consultez. Annonces pouvant être ignorées
-
Affichage des icônes VAST pour garantir le respect de la confidentialité - Pour plus d'informations, consultezIcônes pour Google Why This Ad (WTA).
-
Contrôle du nettoyage des joueurs pendant les publicités - Pour plus d'informations, consultezGommage.
À l'aide de l'API de suivi MediaTailor côté client, vous pouvez envoyer des métadonnées au périphérique de lecture qui active des fonctionnalités en plus du suivi côté client :
Client-side flux de travail de reporting
Le schéma suivant montre l'ensemble du flux de production de rapports côté client, de l'initialisation de la session à la lecture des publicités et au balisage :
Le flux de production de rapports côté client comprend les étapes suivantes :
-
Initialisation de session : le lecteur vidéo envoie une requête POST au point de terminaison de la MediaTailor session avec des métadonnées JSON
adsParams, notamment des jetons d'origine et des fonctionnalités de session. MediaTailor répondtrackingUrlpendantmanifestUrlet pour la session. -
Demande de manifeste et décision publicitaire - Le joueur demande le manifeste personnalisé auprès de MediaTailor. MediaTailor demande le manifeste de contenu original depuis l'origine, envoie une demande d'annonce au serveur ADS (Ad Decision Server) en utilisant les paramètres du lecteur, reçoit une réponse VAST avec les métadonnées de l'annonce et fournit un manifeste personnalisé avec des marqueurs publicitaires au lecteur.
-
Récupération des données de suivi - Le joueur interroge l'URL de suivi à intervalles réguliers (en fonction de la durée cible pour HLS ou de la période de mise à jour minimale pour DASH). MediaTailor renvoie des métadonnées de suivi JSON contenant les disponibilités, les publicités, les événements de suivi, les URL des balises et les données de vérification des publicités.
-
Lecture et balisage des publicités : pendant les pauses publicitaires, le lecteur analyse les métadonnées de suivi, déclenche des balises d'impression lorsque les publicités commencent à s'afficher, déclenche des balises de quartile (début, FirstQuartile, midpoint, ThirdQuartile, terminé) au moment opportun, charge et exécute une vérification des publicités si nécessaire, et envoie les événements à des services de vérification tiers. JavaScript viewability/verification
-
Sondage continu : le joueur continue d'interroger l'URL de suivi tout au long de la session afin de recevoir des métadonnées mises à jour pour les prochaines pauses publicitaires et le contenu dynamique.
Ce flux de travail active des fonctionnalités avancées telles que le compte à rebours des publicités, la fonctionnalité de clic, les publicités associées, les publicités pouvant être ignorées et l'affichage d'icônes VAST pour le respect de la confidentialité.
Activer le suivi côté client
Vous activez le suivi côté client pour chaque session. Le lecteur envoie un HTTP POST au point de terminaison du MediaTailor préfixe d'initialisation de session de la configuration. Le lecteur peut éventuellement envoyer des métadonnées supplémentaires MediaTailor à utiliser pour passer des appels publicitaires, appeler l'origine d'un manifeste et invoquer ou désactiver des MediaTailor fonctionnalités au niveau de la session.
L'exemple suivant montre la structure des métadonnées JSON :
{ "adsParams": { # 'adsParams' is case sensitive "param1": "value1", # key is not case sensitive "param2": "value2", # Values can contain spaces. For example, 'value 2' is an allowed value. }, "origin_access_token":"abc123", # this is an example of a query parameter designated for the origin "overlayAvails":"on" # 'overlayAvails' is case sensitive. This is an example of a feature that is enabled at the session level. }
Utilisez la MediaTailor console ou l'API pour configurer l'URL du modèle de demande ADS afin de référencer ces paramètres. Dans l'exemple suivant, quels player_params.param1 sont les paramètres du lecteur pourparam1, et quels player_params.param2 sont les paramètres du lecteur pourparam2.
https://my.ads.com/path?param1=[player_params.param1]¶m2=[player_params.param2]
Paramètres du serveur publicitaire
Au niveau supérieur de la structure JSON se trouve un objet adsParams JSON. À l'intérieur de cet objet key/value se trouvent des paires qui MediaTailor peuvent lire et envoyer au serveur publicitaire dans toutes les demandes de session. MediaTailor prend en charge les serveurs publicitaires suivants :
-
Gestionnaire de publicités Google
-
SpringServe
-
FreeWheel
-
Publica
Paramètres de requête d'interaction avec l'origine
Les key/value paires réservées situées au niveau supérieur de la structure JSON, telles que, et adsParams availSuppressionoverlayAvails, ne sont pas ajoutées à l'URL de la demande d'origine sous la forme de paramètres de requête. Chaque demande de manifeste de session MediaTailor adressée à l'origine contient ces paramètres de requête. L'origine ignore les paramètres de requête externes. Par exemple, MediaTailor vous pouvez utiliser les key/value paires pour envoyer des jetons d'accès à l'origine.
Session-configured features
Utilisez la structure JSON d'initialisation de session pour activer, désactiver ou remplacer des MediaTailor fonctionnalités telles queoverlayAvails, et. availSuppression adSignaling Toutes les configurations de fonctionnalités transmises lors de l'initialisation de la session remplacent le paramètre au niveau de la MediaTailor configuration.
Note
Les métadonnées soumises MediaTailor lors de l'initialisation de la session sont immuables et aucune métadonnée supplémentaire ne peut être ajoutée pendant la durée de la session. Utilisez SCTE-35 des marqueurs pour enregistrer les données qui changent au cours de la session. Pour de plus amples informations, veuillez consulter MediaTailor variables de session pour les requêtes ADS.
Exemple: Réalisation du suivi des publicités côté client pour HLS
POSTmediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.m3u8 { "adsParams": { "deviceType": "ipad" # This value does not change during the session. "uid": "abdgfdyei-2283004-ueu" } }
Exemple: Suivi des publicités côté client pour DASH
POSTmediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.mpd { "adsParams": { "deviceType": "androidmobile", "uid": "xjhhddli-9189901-uic" } }
Paramètre du mode de rapport
Vous pouvez spécifier le mode de création de rapports lors de l'initialisation d'une session en incluant le reportingMode paramètre dans le corps de la demande. Ce paramètre contrôle si le suivi MediaTailor des publicités est effectué côté client ou côté serveur pour la session.
-
client- Le joueur effectue le suivi des publicités et envoie des balises au serveur publicitaire. Il s'agit du mode par défaut si aucun n'reportingModeest spécifié. -
server- MediaTailor effectue le suivi des publicités côté serveur et envoie des balises directement au serveur publicitaire.
Exemple Initialisation de session avec mode de création de rapports côté serveur
POSTmediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.m3u8 { "adsParams": { "deviceType": "ipad", "uid": "abdgfdyei-2283004-ueu" }, "reportingMode": "server" }
Exemple Initialisation de session avec mode de reporting côté client (explicite)
POSTmediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.mpd { "adsParams": { "deviceType": "androidmobile", "uid": "xjhhddli-9189901-uic" }, "reportingMode": "client" }
Note
Le reportingMode paramètre est défini lors de l'initialisation de la session et ne peut pas être modifié pendant la session. Si aucun n'reportingModeest spécifié, les rapports côté client sont utilisés MediaTailor par défaut pour maintenir la compatibilité descendante.
Une réponse réussie est un HTTP 200 avec un corps de réponse. Le corps contient un objet JSON avec une touche manifestUrl et une trackingUrl touche. Les valeurs sont des URL relatives que le lecteur peut utiliser à la fois à des fins de lecture et de suivi des événements publicitaires.
{ "manifestUrl": "/v1/dashmaster/hashed-account-id/origin-id/asset-id.m3u8?aws.sessionId=session-id", "trackingUrl": "/v1/tracking/hashed-account-id/origin-id/session-id" }
Pour plus d'informations sur le schéma de suivi côté client, consultez. Client-side schéma et propriétés de suivi des publicités
Meilleures pratiques pour le suivi côté client
Cette section décrit les meilleures pratiques en matière de suivi côté client pour les flux de travail en MediaTailor direct et en VOD.
Workflows en direct
Interrogez le terminal de suivi à un intervalle correspondant à chaque durée cible pour HLS, ou à la période de mise à jour minimale pour DASH, afin de toujours disposer des métadonnées de suivi des publicités les plus récentes. Il est particulièrement important de respecter cet intervalle dans les flux de travail où les créations peuvent comporter un composant interactif ou superposé.
Note
Certains joueurs soutiennent les auditeurs des événements, ce qui pourrait être utilisé comme alternative aux sondages. Par exemple, la fonctionnalité de décoration de l'identifiant MediaTailor publicitaire doit être activée pour chaque session. Pour de plus amples informations, veuillez consulter Décoration d'identification publicitaire. L'utilisation de cette fonctionnalité permet de placer un identifiant de plage de dates (HLS) ou d'élément d'événement (DASH) sur chaque annonce disponible. Les joueurs peuvent utiliser ces balises de manifeste pour les inviter à appeler le terminal MediaTailor de suivi de la session.
Flux de travail VOD
Une fois l'initialisation de la session réussie et la MediaTailor réception du premier manifeste contenant du contenu multimédia, vous ne devez appeler le terminal de suivi qu'une seule fois.
Server-guided insertion d'annonces
Server-guided les sessions d'insertion d'annonces (SGAI) n'utilisent pas l'GetTrackingAPI. Au lieu de cela, lorsque vous l'utilisezaws.reportingMode=CLIENT, MediaTailor fournit des informations de suivi dans la TRACKING section de chaque réponse à la liste d'actifs lorsque les joueurs demandent du contenu publicitaire. La réponse d'initialisation de session n'inclut pas detrackingUrl.
La réponse de la liste des actifs pour les sessions SGAI suivies côté client a la structure suivante :
{
"ASSETS": [
{ "DURATION": 20.0, "URI": "https://cdn.example.com/ad1/master.m3u8" },
{ "DURATION": 10.0, "URI": "https://cdn.example.com/ad2/master.m3u8" }
],
"TRACKING": {
...VAST tracking events and beacon URLs for each ad...
}
}
Lors de la mise en œuvre du suivi côté client pour les méthodes SGAI :
-
Analysez la
TRACKINGsection à partir des réponses de la liste d'actifs plutôt que d'appelerGetTracking -
Utilisez les URL de suivi fournies dans la liste des actifs pour les rapports sur les événements publicitaires
-
Balises de suivi des incendies basées sur les événements réels de diffusion des publicités dans le lecteur
-
Gérez le suivi de chaque diffusion publicitaire indépendamment au fur et à mesure que les listes d'actifs sont récupérées
Important
La TRACKING section n'est incluse dans la liste des actifs que lorsqu'elle aws.reportingMode=CLIENT est définie. Lorsque les rapports côté serveur sont utilisés (valeur par défaut pour SGAI), TRACKING cette section est MediaTailor omise et les données des balises sont intégrées dans les URI des annonces à la place. Pour en savoir plus, consultez Server-side suivi avec insertion d'annonces guidée par serveur (SGAI).
Pagination via des balises publicitaires avec GetTracking
Utilisez le GetTracking point de terminaison pour réduire le nombre d'annonces renvoyées à un joueur. Par exemple, si la fenêtre d'un manifeste est large et s'étend sur une longue période, le nombre de balises publicitaires renvoyées peut avoir un impact sur les performances des joueurs.
GetTrackingrenvoie une NextToken valeur que vous pouvez utiliser pour réduire le nombre de balises renvoyées en parcourant la liste des balises renvoyées. Vous pouvez parcourir les NextToken valeurs pour trouver la valeur souhaitée dans le StartTimeInSeconds champ d'une balise publicitaire.
-
Lors du premier appel à
GetTracking, toutes les publicités possibles figurant dans la fenêtre du manifeste sont renvoyées, y compris unNextTokenet une valeur pour chacune. Si une
GetTrackingdemande n'inclut pas deNextToken, toutes les annonces de la fenêtre du manifeste sont renvoyées.Si une
GetTrackingdemande contient unNextTokenmais qu'il n'y a aucune nouvelle balise à renvoyer, MediaTailor renvoie la même valeur que celleNextTokenque vous avez envoyée lors de la demande d'origine.Lorsqu'il n'y a plus de beacons correspondant à une annonce,
GetTrackingsupprime l'annonce de sa réponse.Les jetons
GetTrackingexpirent au bout de 24 heures. Si uneNextTokenvaleur date de plus de 24 heures, le prochain appel àGetTrackingrenvoie une valeur nulle.NextToken
Séquence d'appel généralisée GetTracking du joueur sortant
Émanant du joueur client, une GetTracking requête est un POST dont le corps de requête contient les publicités NextToken et les balises associées au jeton.
https://YouMediaTailorUrl/v1/tracking { "NextToken": "value" . . . }
La séquence générale d'utilisation GetTracking avec NextToken est la suivante :
Passez le premier appel à
GetTracking.Toutes les publicités et balises, ainsi que les premières
NextTokenpour les appels suivants, sont renvoyées.Si la valeur de
NextTokenest nulle, MediaTailor renvoie toutes les balises publicitaires.Si le
NextTokenest expiré, MediaTailor renvoie un message d'erreur HTTP avec le code de retour 400.Passez un nouvel appel à
GetTrackingpour récupérer desNextTokens valides.Scannez l'intégralité de la réponse pour trouver celle
StartTimeInSecondsd'une balise publicitaire se trouvant dans la plage souhaitée.Effectuez un nouvel appel à
GetTrackingavec la valeur deNextTokenassociée à la valeur souhaitéeStartTimeInSeconds.Si nécessaire, parcourez à nouveau les publicités renvoyées jusqu'à ce que vous trouviez exactement celles auxquelles vous souhaitez jouer.
Exemple étendu
Cet exemple montre comment utiliser S GetTracking NextToken pour limiter le nombre de balises publicitaires renvoyées à un joueur.
MediaTailor reçoit une GetTracking demande. La réponse contient une annonce avec l'ID 9935407 et deux balises avec des StartTimeInSeconds valeurs de 52,286 et 48,332 secondes.
MediaTailor envoie la réponse JSON NextToken comme suit :
{ "NextToken": JF57ITe48t1441mv7TmLKuZLroxDzfIslp6BiSNL1IJmzPVMDN0lqrBYycgMbKEb "avails": [ { "ads": [ { "adId": "9935407", "adVerifications": [], "companionAds": [], "creativeId": "", "creativeSequence": "", "duration": "PT15S", "durationInSeconds": 15, "extensions": [], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "startTime": "PT30S", "StartTimeInSeconds": 45, "trackingEvents": [ { "beaconUrls": [ "http://adserver.com/tracking?event=Impression " ], "duration": "PT0S", "durationInSeconds": 0, "eventId": "9935414", "eventType": "secondQuartile", "startTime": "PT52.286S", "StartTimeInSeconds": 52.286 }, { "beaconUrls": [ "http://adserver.com/tracking?event=firstQuartile" ], "duration": "PT0S", "durationInSeconds": 0, "eventId": "9935412", "eventType": "firstQuartile", "startTime": "PT48.332S", "StartTimeInSeconds": 48.332 } ], "vastAdId": "" } ], "startTime": "PT46.47S", "StartTimeInSeconds": 46.47 } ] }
À la GetTracking demande suivante, MediaTailor répond avec la NextToken valeur : JF57ITe48t1441mv7TmLKuZLroxDzfIslp6BiSNL1IJmzPVMDN0lqrBYycgMbKEb.
MediaTailor répond avec des publicités et des balises correspondant à StartTimeInSeconds celles définies lors NextToken de l'appel précédent.
Supposons que la réponse inclut désormais une autre annonce portant l'ID 9235407 en plus de l'annonce précédente portant l'ID 9935407. Les balises de l'ID d'annonce 9235407 portent les numéros 132,41 et 70,339StartTimeInSeconds.
MediaTailor effectue une itération sur toutes les balises de la session pour sélectionner celles dont la durée est StartTimeInSeconds supérieure à 52,286 secondes, à savoir les balises 3 et 4 de l'annonce portant l'ID 9235407 :
{ "NextToken": ZkfknvbfsdgfbsDFRdffg12EdffecFRvhjyjfhdfhnjtsg5SDGN "avails": [ { "ads": [ { "adId": "9235407", "adVerifications": [], "companionAds": [], "creativeId": "", "creativeSequence": "", "duration": "PT15.816S", "durationInSeconds": 19.716, "extensions": [], "mediaFiles": { "mediaFilesList": [], "mezzanine": "" }, "startTime": "PT2M0S", "StartTimeInSeconds": 120.0, "trackingEvents": [ { "beaconUrls": [ "http://adserver.com/tracking?event=complete" ], "duration": "PT0S", "durationInSeconds": 0, "eventId": "8935414", "eventType": "firstQuartile", "startTime": "PT1M10.330S", "StartTimeInSeconds": 70.339 }, { "beaconUrls": [ "http://adserver.com/tracking?event=thirdQuartile" ], "duration": "PT0S", "durationInSeconds": 0, "eventId": "8935412", "eventType": "secondQuartile", "startTime": "PT2M12.41S", "StartTimeInSeconds": 132.41 } ], "vastAdId": "" }, ], "startTime": "PT36.47S", "StartTimeInSeconds": 36.47 } ] }