Last update: Fri Dec 06 2024 00:00:00 GMT+0000 (Coordinated Universal Time)
Kommandot sendMediaEvent
är en del av Web SDK streamingMedia
-komponenten. Du kan använda den här komponenten för att samla in data relaterade till mediesessioner på din webbplats. Mer information om hur du konfigurerar den här komponenten finns i streamingMedia
documentation.
Använd kommandot sendMediaEvent
om du vill spåra medieuppspelningar, pauser, slutföranden, uppdateringar av spelartillstånd och andra relaterade händelser.
Web SDK kan hantera mediahändelser baserat på typen av mediessionsspårning:
- Händelsehantering för automatiskt spårade sessioner. I det här läget behöver du inte skicka
sessionID
till mediahändelsen eller till spelhuvudsvärdet. Web SDK hanterar detta åt dig, baserat på det spelar-ID som anges och återanropsfunktionen getPlayerDetails
som tillhandahölls när mediesessionen startades.
- Händelsehantering för manuellt spårade sessioner. I det här läget måste du skicka
sessionID
till mediahändelsen tillsammans med spelhuvudet (heltalsvärde). Du kan även skicka informationen om Experience-data om det behövs.
Markera flikarna nedan om du vill se exempel på händelsetypshantering för varje händelsetyp och sessionsspårningsmetod (automatisk eller manuell).
Spela upp play
Händelsetypen media.play
används för att spåra när medieuppspelningen startar. Den här händelsen ska skickas när spelaren ändrar läge till "spela upp" från ett annat läge. Andra lägen från vilka spelaren övergår till"uppspelning" är"buffring", användaren återgår från"pausad", spelaren återställs från ett fel eller automatisk uppspelning.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.play"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.play",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
Pausa pause
Händelsetypen media.pauseStart
används för att spåra när en medieuppspelning pausas. Den här händelsen ska skickas när användaren trycker på Pause. Det finns ingen CV-händelsetyp. En CV-händelse härleds när du skickar en media.play
-händelse efter en media.pauseStart
.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.pauseStart"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.pauseStart",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
Fel error
Händelsetypen media.error
används för att spåra när ett fel inträffar under medieuppspelningen. Den här händelsen ska skickas när ett fel inträffar.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.error",
mediaCollection: {
errorDetails: {
name: "network-error",
source: "player"
}
}
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.error",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID,
errorDetails: {
name: "network-error",
source: "player"
}
}
}
});
});
|
Händelsetypen media.adBreakStart
används för att spåra när en annonsbrytning startar. Den här händelsen ska skickas när en annonsbrytning börjar.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.adBreakStart",
mediaCollection: {
advertisingPodDetails: {
friendlyName: "Mid-roll",
offset: 0,
index: 1
}
}
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.adBreakStart",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID,
advertisingPodDetails: {
friendlyName: "Mid-roll",
offset: 0,
index: 1
}
}
}
});
});
|
Händelsetypen media.adBreakComplete
används för att spåra när en annonsbrytning har slutförts. Denna händelse ska skickas när en annonsbrytning har slutförts.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.adBreakComplete"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.adBreakComplete",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
Annonsstart ad-start
Händelsetypen media.adStart
används för att spåra när en annons startar. Den här händelsen ska skickas när en annons börjar.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.adStart",
mediaCollection: {
advertisingDetails: {
friendlyName: "Ad 1",
name: "/uri-reference/001",
length: 10,
advertiser: "Adobe Marketing",
campaignID: "Adobe Analytics",
creativeID: "creativeID",
creativeURL: "https://creativeurl.com",
placementID: "placementID",
siteID: "siteID",
podPosition: 11,
playerName: "HTML5 player"
},
customMetadata: [{
name: "myCustomValue3",
value: "c3"
},
{
name: "myCustomValue2",
value: "c2"
},
{
name: "myCustomValue1",
value: "c1"
}
]
}
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.adStart",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID,
advertisingDetails: {
friendlyName: "Ad 1",
name: "/uri-reference/001",
length: 10,
advertiser: "Adobe Marketing",
campaignID: "Adobe Analytics",
creativeID: "creativeID",
creativeURL: "https://creativeurl.com",
placementID: "placementID",
siteID: "siteID",
podPosition: 11,
playerName: "HTML5 player"
},
customMetadata: [
{
name: "myCustomValue3",
value: "c3"
},
{
name: "myCustomValue2",
value: "c2"
},
{
name: "myCustomValue1",
value: "c1"
}]
}
}
});
});
|
Annonsen är klar ad-complete
Händelsetypen media.adComplete
används för att spåra när en annons har slutförts. Denna händelse ska skickas när en annons är klar.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.adComplete"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.adComplete",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
Annonshoppa ad-skip
Händelsetypen media.adSkip
används för att spåra när en annons hoppas över. Den här händelsen ska skickas när en annons hoppas över.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.adSkip"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.adSkip",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
Kapitelstart chapter-start
Händelsetypen media.chapterStart
används för att spåra när ett kapitel börjar. Den här händelsen ska skickas när ett kapitel börjar.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.chapterStart",
mediaCollection: {
chapterDetails: {
friendlyName: "Chapter 1",
position: 1,
length: 10,
index: 1,
offset: 0
},
customMetadata: [{
name: "myCustomValue3",
value: "c3"
},
{
name: "myCustomValue2",
value: "c2"
},
{
name: "myCustomValue1",
value: "c1"
}
]
}
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.chapterStart",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID,
chapterDetails: {
friendlyName: "Chapter 1",
position: 1,
length: 10,
index: 1,
offset: 0
},
customMetadata: [{
name: "myCustomValue3",
value: "c3"
},
{
name: "myCustomValue2",
value: "c2"
},
{
name: "myCustomValue1",
value: "c1"
}
]
}
}
});
});
|
Kapitel fullständigt chapter-complete
Händelsetypen media.chapterComplete
används för att spåra när ett kapitel har slutförts. Den här händelsen ska skickas när ett kapitel har slutförts.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.chapterComplete"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.chapterComplete",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
Kapitelhopp chapter-skip
Händelsetypen media.chapterSkip
används för att spåra när ett kapitel hoppas över. Den här händelsen ska skickas när ett kapitel hoppas över.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.chapterSkip"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.chapterSkip",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
Buffertstart buffer-start
Händelsetypen media.bufferStart
används för att spåra när buffring startas. Den här händelsen ska skickas när buffringen startar. Det finns ingen bufferResume
-händelsetyp. En bufferResume
härleds när du skickar en play-händelse efter bufferStart
.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.bufferStart"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.bufferStart",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
Bithastighetsändring bitrate-change
Händelsetypen media.bitrateChange
används för att spåra när bithastigheten ändras. Den här händelsen ska skickas när bithastigheten ändras.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.bitrateChange",
mediaCollection: {
qoeDataDetails: {
framesPerSecond: 1,
bitrate: 35000,
droppedFrames: 30,
timeToStart: 1364
}
}
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.bitrateChange",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID,
qoeDataDetails: {
bitrate: 35000,
droppedFrames: 30,
timeToStart: 1364
}
}
}
});
});
|
Tillståndsuppdateringar state-updates
Händelsetypen media.statesUpdate
används för att spåra när spelarläget ändras. Den här händelsen ska skickas när spelarläget ändras.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.statesUpdate",
mediaCollection: {
statesStart: [{
name: "mute"
},
{
name: "pictureInPicture"
}
],
statesEnd: [{
name: "fullScreen"
}]
}
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.stateUpdate",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID,
statesStart: [{
name: "mute"
},
{
name: "pictureInPicture"
}
],
statesEnd: [{
name: "fullScreen"
}]
}
}
});
});
|
Sessionsslut session-end
Händelsetypen media.sessionEnd
används för att meddela Media Analytics-backend-objektet att omedelbart stänga sessionen när användaren har avbrutit sin visning av innehållet och det är osannolikt att de kommer att returnera.
Om du inte skickar en sessionEnd
-händelse kommer en övergiven session att gå över efter att inga händelser har tagits emot under 10 minuter, eller när ingen spelhuvudrörelse sker under 30 minuter. Sessionen tas automatiskt bort.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.sessionEnd"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.sessionEnd",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
Sessionen slutförd session-complete
Händelsetypen media.sessionComplete
används för att spåra när en mediesession har slutförts. Den här händelsen ska skickas när slutet av huvudinnehållet nås.
Automatisk sessionsspårning
code language-javascript |
alloy("sendMediaEvent", {
playerId: "movie-test",
xdm: {
eventType: "media.sessionComplete"
}
});
|
Manuell sessionsspårning
code language-javascript |
sessionPromise.then(sessionID => {
alloy("sendMediaEvent", {
xdm: {
eventType: "media.sessionComplete",
mediaCollection: {
playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
sessionID
}
}
});
});
|
ad108910-6329-42f1-aa1d-5920a2b13636