Tidslinje: Kapitel timeline-3-chapters
VOD, förrullningsannonser, pausa, buffra, visa innehållet i slutet
I följande diagram visas spelhuvudets tidslinje och motsvarande tidslinje för en användares åtgärder. Nedan presenteras närmare uppgifter om varje åtgärd och de tillhörande ansökningarna.
Åtgärdsinformation
Åtgärd 1 - Starta session Action-1
/api/v1/sessionsDet här anropet signalerar användarens avsikt att spela upp en video. Det returnerar ett sessions-ID ( {sid}) till klienten som används för att identifiera alla efterföljande spårningsanrop i sessionen. Spelarläget är inte"uppspelning" än, utan är i stället"start". Obligatoriska sessionsparametrar måste inkluderas i kartan params i begärandetexten. I bakgrunden genererar det här samtalet ett Adobe Analytics-initieringssamtal. Mer information om sessioner finns i dokumentationen för Media Collection API.
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "sessionStart",
"params": {
"media.playerName": "sample-html5-api-player",
"analytics.trackingServer": "[ _YOUR-TS_ ]",
"analytics.reportSuite": "[ _YOUR_RSID_ ]",
"analytics.visitorId": "[ _YOUR_VISITOR_ID_ ]",
"media.contentType": "VOD",
"media.length": 60.3333333333333,
"media.id": "VA API Sample Player",
"visitor.marketingCloudOrgId": "[YOUR_MCID]",
"media.name": "ClickMe",
"media.channel": "sample-channel",
"media.sdkVersion": "va-api-0.0.0",
"analytics.enableSSL": false
}
}
Åtgärd 2 - Ping-tidtagaren startar Action-2
Starta ping-timern. Den första ping-händelsen ska sedan utlösas 1 sekund om det finns annonser före rullning, annars 10 sekunder.
Åtgärd 3 - annonsradbrytning - start Action-3
/api/v1/sessions/{sid}/eventsAnnonserna kan bara spåras inom en annonsbrytning.
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "adBreakStart",
"params": {
"media.ad.podFriendlyName": "ad_pod1",
"media.ad.podIndex": 0, "media.ad.podSecond": 0
}
}
Åtgärd 4 - annonsstart Action-4
/api/v1/sessions/{sid}/eventsBörja spåra den första pre-roll-annonsen, som är 15 sekunder lång. Inkluderar anpassade metadata med denna/detta adStart.
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "adStart",
"params": {
"media.ad.podFriendlyName": "ad_pod1",
"media.ad.name": "Ad 1",
"media.ad.id": "001",
"media.ad.length": 15,
"media.ad.podPosition": 1,
"media.ad.playerName": "Sample Player",
"media.ad.advertiser": "Ad Guys",
"media.ad.campaignId": "1",
"media.ad.creativeId": "42",
"media.ad.siteId": "XYZ",
"media.ad.creativeURL": "https://example.com",
"media.ad.placementId": "sample_placement"
},
"customMetadata": {
"myCustomData1": "CustomData1",
"myCustomData2": "CustomData2"
}
}
Åtgärd 5 - annonsmaterial Action-5
/api/v1/sessions/{sid}/eventsRita serverdelen var 1 sekund. (Efterföljande reklamskyltar visas inte av utrymmesskäl.)
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "ping"
}
Åtgärd 6 - annonsen är klar Action-6
/api/v1/sessions/{sid}/eventsSpåra slutet av den första pre-roll-annonsen.
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "adComplete"
}
Åtgärd 7 - annonsstart Action-7
/api/v1/sessions/{sid}/eventsSpåra början av den andra pre-roll-annonsen, som är 7 sekunder lång.
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "adStart",
"params": {
"media.ad.podFriendlyName": "ad_pod1",
"media.ad.name": "Ad 2",
"media.ad.id": "002",
"media.ad.length": 7,
"media.ad.podPosition": 1,
"media.ad.playerName": "Sample Player",
"media.ad.advertiser": "Ad Guys",
"media.ad.campaignId": "2",
"media.ad.creativeId": "44",
"media.ad.siteId": "XYZ",
"media.ad.creativeURL": "https://example.com",
"media.ad.placementId": "sample_placement2"
},
}
Åtgärd 8 - Annonspn Action-8
/api/v1/sessions/{sid}/eventsRita serverdelen var 1 sekund. (Efterföljande reklamskyltar visas inte av utrymmesskäl.)
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "ping"
}
Åtgärd 9 - Ad complete Action-9
/api/v1/sessions/{sid}/eventsSpåra slutet av den andra pre-roll-annonsen.
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "adComplete"
}
Åtgärd 10 - Ad break complete Action-10
/api/v1/sessions/{sid}/eventsAnnonsbrytningen är över. Under reklampausen har lekläget fortsatt att"leka".
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "adBreakComplete"
}
Åtgärd 11 - Spela upp innehåll Action-11
/api/v1/sessions/{sid}/eventsEfter adBreakComplete-händelsen placerar du spelaren i uppspelningsläge med händelsen play.
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "play"
}
Åtgärd 12 - Kapitelstart Action-12
/api/v1/sessions/{sid}/eventsEfter play-händelsen spårar du början av det första kapitlet.
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "chapterStart",
"params": {
"media.chapter.index": 1,
"media.chapter.offset": 0, "media.chapter.length": 20, "media.chapter.friendlyName": "Chapter Uno"
},
}
Åtgärd 13 - Ping Action-13
/api/v1/sessions/{sid}/eventsRinga backend var 10:e sekund.
{
"playerTime": {
"playhead": 8,
"ts": "<timestamp>"
},
"eventType": "ping"
}
Åtgärd 14 - Buffertstart Action-14
/api/v1/sessions/{sid}/eventsSpåra flytten till buffringsläget.
{
"playerTime": {
"playhead": 11,
"ts": "<timestamp>"
},
"eventType": "bufferStart"
}
Åtgärd 15 - Buffertslut (uppspelning) Action-15
/api/v1/sessions/{sid}/eventsBuffringen slutar efter 3 sekunder, så ställ in spelaren i uppspelningsläge igen. Du måste skicka ytterligare en spårets uppspelningshändelse som slutar buffras. Anropet play efter bufferStart angriper ett "bufferEnd"-anrop till bakänden,, så det finns inget behov av en bufferEnd-händelse.
{
"playerTime": {
"playhead": 11,
"ts": "<timestamp>"
},
"eventType": "play"
}
Åtgärd 16 - Ping Action-16
/api/v1/sessions/{sid}/eventsRinga backend var 10:e sekund.
{
"playerTime": {
"playhead": 15,
"ts": "<timestamp>"
},
"eventType": "ping"
}
Åtgärd 17 - Kapitel slut Action-17
/api/v1/sessions/{sid}/eventsDet första kapitlet avslutas precis före den andra annonsbrytningen.
{
"playerTime": {
"playhead": 20,
"ts": "<timestamp>"
},
"eventType": "chapterComplete"
}
Åtgärd 18 - Annonspaus börjar Action-18
/api/v1/sessions/{sid}/eventsAdress mellan rullar med 8 sekunders varaktighet: skicka adBreakStart.
{
"playerTime": {
"playhead": 21,
"ts": "<timestamp>"
},
"eventType": "adBreakStart",
"params": {
"media.ad.podFriendlyName": "ad_pod2",
"media.ad.podIndex": 1, "media.ad.podSecond": 21
}
}
Åtgärd 19 - annonsstart Action-19
/api/v1/sessions/{sid}/eventsSpåra annonsen i mellanrullen.
{
"playerTime": {
"playhead": 21,
"ts": "<timestamp>"
},
"eventType": "adStart",
"params": {
"media.ad.podFriendlyName": "ad_pod2",
"media.ad.name": "Ad 3",
"media.ad.id": "003",
"media.ad.length": 8,
"media.ad.podPosition": 2,
"media.ad.playerName": "Sample Player",
"media.ad.advertiser": "Ad Guys",
"media.ad.campaignId": "7",
"media.ad.creativeId": "40",
"media.ad.siteId": "XYZ",
"media.ad.creativeURL": "https://example.com",
"media.ad.placementId": "sample_placement2"
},
}
Åtgärd 20 - annonsmaterial Action-20
/api/v1/sessions/{sid}/eventsRita serverdelen var 1 sekund. (Efterföljande reklamskyltar visas inte av utrymmesskäl.)
{
"playerTime": {
"playhead": 21,
"ts": "<timestamp>"
},
"eventType": "ping"
}
Åtgärd 21 - Ad complete Action-21
/api/v1/sessions/{sid}/eventsMittrollannonsen är färdig.
{
"playerTime": {
"playhead": 21,
"ts": "<timestamp>"
},
"eventType": "adComplete"
}
Åtgärd 22 - Ad break complete Action-22
/api/v1/sessions/{sid}/eventsAnnonsbrytningen är klar.
{
"playerTime": {
"playhead": 21,
"ts": "<timestamp>"
},
"eventType": "adBreakComplete"
}
Åtgärd 23 - Kapitelstart Action-23
/api/v1/sessions/{sid}/events{
"playerTime": {
"playhead": 22,
"ts": "<timestamp>"
},
"eventType": "chapterStart",
"params": {
"media.chapter.index": 2,
"media.chapter.offset": 22, "media.chapter.length": 22, "media.chapter.friendlyName": "Chapter Dos"
},
}
Åtgärd 24 - Ping Action-24
/api/v1/sessions/{sid}/eventsRinga backend var 10:e sekund.
{
"playerTime": {
"playhead": 27,
"ts": "<timestamp>"
},
"eventType": "ping"
}
Åtgärd 25 - Pausa Action-25
/api/v1/sessions/{sid}/eventsAnvändaråtgärden flyttar uppspelningsläget till "pausad".
{
"playerTime": {
"playhead": 31,
"ts": "<timestamp>"
},
"eventType": "pauseStart"
}
Åtgärd 26 - Ping Action-26
/api/v1/sessions/{sid}/eventsRinga backend var 10:e sekund. Spelaren är fortfarande i buffertläge. Användaren fastnar vid 20 sekunders innehåll. Rensar…
{
"playerTime": {
"playhead": 31,
"ts": "<timestamp>"
},
"eventType": "ping"
}
Action 27 - Spela upp innehåll Action-27
/api/v1/sessions/{sid}/eventsFlytta uppspelningsläget till"uppspelning". Anropet play efter pauseStart angriper ett "resume"-anrop till bakänden, så det finns inget behov av en resume-händelse.
{
"playerTime": {
"playhead": 31,
"ts": "<timestamp>"
},
"eventType": "play"
}
Åtgärd 28 - Ping Action-28
/api/v1/sessions/{sid}/eventsRinga backend var 10:e sekund.
{
"playerTime": {
"playhead": 37,
"ts": "<timestamp>"
},
"eventType": "ping"
}
Åtgärd 29 - Kapitel slut Action-29
/api/v1/sessions/{sid}/eventsSpåra slutet av det andra och sista kapitlet.
{
"playerTime": {
"playhead": 0,
"ts": "<timestamp>"
},
"eventType": "chapterComplete"
}
Åtgärd 30 - Sessionen slutförd Action-30
/api/v1/sessions/{sid}/eventsSkicka sessionComplete till serverdelen för att ange att användaren har tittat klart på hela innehållet.
{
"playerTime": {
"playhead": 45,
"ts": "<timestamp>"
},
"eventType": "sessionComplete"
}
seekStart - eller seekComplete -händelser. Detta beror på att vissa spelare genererar ett mycket stort antal sådana händelser när slutanvändaren rensar, och att flera hundra användare enkelt kan tappa bort nätverksbandbredden för en backend-tjänst. Adobe kan kringgå explicit stöd för seek-händelser genom att beräkna pulsslagets varaktighet baserat på enhetens tidsstämpel i stället för spelhuvudets position.