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