Kundenseitiges Ad-Tracking - AWS Elemental MediaTailor

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Kundenseitiges Ad-Tracking

Verwendung der AWS Elemental MediaTailor Beim clientseitigen Tracking API können Sie die Steuerung des Players während Werbepausen in Streaming-Workflows integrieren. Beim clientseitigen Tracking sendet der Player oder Client Tracking-Ereignisse wie Impressionen und Quartil-Ad-Beaconing an den Ad Decision Server () und andere Einheiten zur Anzeigenverifizierung. ADS Weitere Informationen zu Impressions- und Quartil-Ad-Beaconing finden Sie unter. Clientseitiges Beaconing Weitere Informationen zu ADS und anderen Entitäten zur Anzeigenverifizierung finden Sie unter. Kundenseitige Ad-Tracking-Integrationen

Das clientseitige Tracking ermöglicht Funktionen wie die folgenden:

Mithilfe der MediaTailor clientseitigen Nachverfolgung können Sie Metadaten an das Wiedergabegerät sendenAPI, sodass zusätzlich zur clientseitigen Nachverfolgung weitere Funktionen verfügbar sind:

Aktivierung der clientseitigen Nachverfolgung

Sie aktivieren das clientseitige Tracking für jede Sitzung. Der Player fügt dem Präfix HTTP POST für die Sitzungsinitialisierung der MediaTailor Konfiguration einen Endpunkt hinzu. Optional kann der Spieler zusätzliche Metadaten senden, die dann verwendet werden können, wenn er Werbeaufrufe tätigt, den Ursprung für ein Manifest aufruft und MediaTailor Funktionen auf Sitzungsebene aufruft oder deaktiviert. MediaTailor

Das folgende Beispiel zeigt die Struktur der JSON Metadaten:

{ "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. }

Verwenden Sie die MediaTailor Konsole oder konfigurieren Sie API die ADS Anforderungsvorlage soURL, dass sie auf diese Parameter verweist. Im folgenden Beispiel player_params.param1 sind die Player-Parameter für param1 und player_params.param2 die Player-Parameter fürparam2.

https://my.ads.com/path?param1=[player_params.param1]&param2=[player_params.param2]

Serverparameter hinzufügen

Auf der obersten Ebene der JSON Struktur befindet sich ein Objekt. adsParams JSON In diesem Objekt befinden sich Schlüssel/Wert-Paare, die in allen Sitzungsanfragen gelesen und an den Ad-Server gesendet werden MediaTailor können. MediaTailor unterstützt die folgenden Anzeigenserver:

  • Google Ad Manager

  • SpringServe

  • FreeWheel

  • Öffentlich

Abfrageparameter für Origin-Interaktionen

Alle reservierten Schlüssel/Wert-Paare innerhalb der obersten Ebene der JSON Struktur, wie, und adParams availSuppressionoverlayAvails, werden der ursprünglichen Anfrage URL nicht in Form von Abfrageparametern hinzugefügt. Jede Sitzungsmanifestanforderung, die an den Ursprung MediaTailor gerichtet wird, enthält diese Abfrageparameter. Der Ursprung ignoriert überflüssige Abfrageparameter. MediaTailor Kann beispielsweise die Schlüssel/Wert-Paare verwenden, um Zugriffstoken an den Ursprung zu senden.

Für die Sitzung konfigurierte Funktionen

Verwenden Sie die JSON Sitzungsinitialisierungsstruktur, um Funktionen wie, und zu aktivieren, zu deaktivieren oder zu überschreiben. MediaTailor overlayAvails availSuppression adSignaling Alle während der Sitzungsinitialisierung übergebenen Funktionskonfigurationen überschreiben die Einstellung auf der Konfigurationsebene. MediaTailor

Anmerkung

Die MediaTailor bei der Sitzungsinitialisierung übermittelten Metadaten sind unveränderlich, und zusätzliche Metadaten können für die Dauer der Sitzung nicht hinzugefügt werden. Verwenden Sie SCTE -35-Markierungen, um Daten zu übertragen, die sich während der Sitzung ändern. Weitere Informationen finden Sie unter Verwenden von Sitzungsvariablen.

Beispiel : Durchführung von clientseitigem Ad-Tracking für HLS
POST mediatailorURL/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" } }
Beispiel : Durchführung von kundenseitigem Ad-Tracking für DASH
POST mediatailorURL/v1/session/hashed-account-id/origin-id/asset-id.mpd { "adsParams": { "deviceType": "androidmobile", "uid": "xjhhddli-9189901-uic" } }

Eine erfolgreiche Antwort ist eine Antwort HTTP 200 mit einem Antworttext. Der Hauptteil enthält ein JSON Objekt mit einem manifestUrl und einem trackingUrl Schlüssel. Bei den Werten handelt es sich um relative WerteURLs, die der Player sowohl für die Wiedergabe als auch für die Nachverfolgung von Werbeereignissen verwenden kann.

{ "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" }

Weitere Informationen zum clientseitigen Tracking-Schema finden Sie unter. Schema und Eigenschaften für das clientseitige Ad-Tracking

Bewährte Methoden für die clientseitige Nachverfolgung

In diesem Abschnitt werden die bewährten Methoden für das clientseitige Tracking sowohl für Live- als auch MediaTailor für Workflows beschrieben. VOD

Live-Workflows

Fragen Sie den Tracking-Endpunkt in einem Intervall abHLS, das jeder Zieldauer oder dem minimalen Aktualisierungszeitraum entsprichtDASH, um immer über die aktuellsten Ad-Tracking-Metadaten zu verfügen. Die Anpassung dieses Intervalls ist besonders wichtig in Workflows, bei denen die Kreativen möglicherweise über eine interaktive Komponente oder eine Overlay-Komponente verfügen.

Anmerkung

Einige Player unterstützen Event-Listener, die als Alternative zu Umfragen verwendet werden könnten. Beispielsweise müsste die Funktion zur Dekoration von MediaTailor Werbe-IDs für jede Sitzung aktiviert werden. Weitere Informationen finden Sie unter Werbe-ID-Dekoration. Bei Verwendung dieser Funktion wird jeder verfügbaren Anzeige eine Kennung für den Zeitraum (DASH) oder das Ereigniselement () zugewiesen. HLS Spieler können diese Manifest-Tags als Aufforderung verwenden, um den MediaTailor Tracking-Endpunkt für die Sitzung aufzurufen.

VODArbeitsabläufe

Nach einer erfolgreichen Sitzungsinitialisierung und nach Erhalt des ersten MediaTailor Manifests, das Medien enthält, müssen Sie den Tracking-Endpunkt nur einmal aufrufen.

Anrufflow für VOD Workflows. Rufen Sie den clientseitigen Tracking-Endpunkt auf, nachdem die Sitzung initialisiert wurde und das erste Manifest MediaTailor empfangen wurde, das Medien enthält.

Durch Werbe-Beacons blättern mit GetTracking

Verwenden Sie den GetTracking Endpunkt, um die Anzahl der Werbeanzeigen einzuschränken, die an einen Player zurückgegeben werden. Wenn ein Manifestfenster beispielsweise groß ist und sich über einen langen Zeitraum erstreckt, kann sich die Anzahl der zurückgegebenen Werbe-Beacons auf die Leistung des Players auswirken.

GetTrackinggibt einen NextToken Wert zurück, mit dem Sie die Anzahl der zurückgegebenen Beacons einschränken können, indem Sie die Liste der zurückgegebenen Beacons durchblättern. Sie können die NextToken Werte nacheinander durchgehen, um den gewünschten Wert im Feld eines Werbe-Beacons zu finden. StartTimeInSeconds

  • Beim ersten Aufruf von werden alle möglichen Anzeigen zurückgegebenGetTracking, die in das Manifestfenster fallen, einschließlich jeweils eines Werts NextToken und.

  • Wenn eine GetTracking Anfrage kein A enthältNextToken, werden alle Anzeigen im Manifestfenster zurückgegeben.

  • Wenn eine GetTracking Anfrage ein enthält, es NextToken aber keine neuen Beacons gibt, die MediaTailor zurückgegeben werden können, wird derselbe Wert zurückgegebenNextToken, den Sie in der ursprünglichen Anfrage gesendet haben.

  • Wenn einer Anzeige keine Beacons mehr entsprechen, GetTracking wird die Anzeige aus der Antwort entfernt.

  • Tokens von GetTracking laufen nach 24 Stunden ab. Wenn ein NextToken Wert älter als 24 Stunden ist, gibt der nächste Aufruf von einen GetTracking NextToken Nullwert zurück.

Generalisierte Aufrufsequenz von „vom Spieler“ GetTracking

Eine Anfrage vom Client-Spieler ist eine GetTracking Anfrage POST mit einem Anfragetext, der die Werbung NextToken und Beacons enthält, die sich auf das Token beziehen.

https://YouMediaTailorUrl/v1/tracking { "NextToken": "value" . . . }

Die allgemeine Reihenfolge für die Verwendung von GetTracking with NextToken lautet wie folgt:

  1. Rufen Sie zum ersten Mal anGetTracking.

    Alle Anzeigen und Beacons sowie die ersten NextToken für nachfolgende Aufrufe werden zurückgegeben.

  2. Wenn der Wert Null NextToken ist, werden alle Ad Beacons MediaTailor zurückgegeben.

  3. Wenn der abgelaufen NextToken ist, MediaTailor wird eine Fehlermeldung mit dem HTTP Rückgabecode 400 zurückgegeben.

    Rufen Sie erneut auf, GetTracking um gültige NextToken s abzurufen.

  4. Scannen Sie die gesamte Antwort, um herauszufinden, StartTimeInSeconds ob sich ein Werbeanzeigen-Beacon im gewünschten Bereich befindet.

  5. Rufen Sie erneut GetTracking mit dem Wert von auf, der dem gewünschten StartTimeInSeconds Wert NextToken zugeordnet ist.

  6. Schauen Sie sich bei Bedarf die zurückgegebenen Anzeigen erneut an, bis Sie genau die Anzeigen gefunden haben, die Sie abspielen möchten.

Erweitertes Beispiel

Dieses Beispiel zeigt, wie Sie mithilfe GetTracking von s die Anzahl der NextToken an einen Player zurückgegebenen Werbe-Beacons einschränken können.

MediaTailor erhält eine GetTracking Anfrage. Die Antwort enthält eine Anzeige mit der ID 9935407 und zwei Beacons mit den StartTimeInSeconds Werten 52,286 und 48,332 Sekunden, wie in diesem Diagramm dargestellt.

Beispiel für eine einzelne Anzeige mit mehreren Werbe-Beacons zur Verarbeitung nach Endpunkten GetTracking API

MediaTailor sendet die JSON Antwort NextToken wie folgt:

{ "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 } ] }

MediaTailor Antwortet bei der nächsten GetTracking Anfrage mit dem NextToken Wert: JF57ITe48t1441mv7TmLKuZLroxDzfIslp6BiSNL1IJmzPVMDN 0 lqrBYycg bKEb M.

MediaTailor antwortet mit Anzeigen und Beacons, die StartTimeInSeconds denen entsprechen, die NextToken beim vorherigen Anruf eingestellt wurden.

Gehen Sie davon aus, dass die Antwort jetzt zusätzlich zur vorherigen Anzeige mit der ID 9935407 eine weitere Anzeige mit der ID 9235407 enthält. Die Beacons der Anzeigen-ID 9235407 haben die Werte 132,41 und 70.339, StartTimeInSeconds wie in diesem Diagramm dargestellt.

Beispiel für mehrere Anzeigen mit jeweils mehreren Werbe-Beacons für die Verarbeitung nach Endpunkten GetTracking API

MediaTailor durchläuft alle Beacons in der Sitzung, um die Beacons mit StartTimeInSeconds mehr als 52,286 Sekunden auszuwählen, bei denen es sich um Beacon 3 und Beacon 4 aus der Anzeige mit der ID 9235407 handelt:

{ "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 } ] }