sendMediaEvent

Der Befehl sendMediaEvent ist Teil der Web SDK-streamingMedia. Sie können diese Komponente verwenden, um Daten zu Mediensitzungen auf Ihrer Website zu erfassen. Informationen zum Konfigurieren dieser Komponente finden in der streamingMediaDokumentation).

Verwenden Sie den sendMediaEvent-Befehl, um Medienwiedergaben, Pausen, Abschlüsse, Aktualisierungen des Player-Status und andere zugehörige Ereignisse zu verfolgen.

Web SDK kann Medienereignisse je nach Typ des Medien-Sitzungs-Trackings verarbeiten:

  • Ereignisverarbeitung für automatisch verfolgte Sitzungen. In diesem Modus müssen Sie die sessionID nicht an das Medienereignis oder den Abspielkopfwert übergeben. Die Web-SDK übernimmt dies für Sie basierend auf der angegebenen Player-ID und der getPlayerDetails Rückruffunktion, die beim Starten der Mediensitzung bereitgestellt wurde.
  • Ereignisverarbeitung für manuell verfolgte Sitzungen. In diesem Modus müssen Sie die sessionID zusammen mit dem Abspielkopfwert (ganzzahliger Wert) an das Medienereignis übergeben. Bei Bedarf können Sie auch Details zur Erlebnisqualität weitergeben.

Verarbeiten von Medienereignissen nach Typ handle-by-type

Wählen Sie die folgenden Registerkarten aus, um Beispiele für die Verarbeitung von Ereignistypen für jeden Ereignistyp und jede Sitzungsverfolgungsmethode anzuzeigen (automatisch oder manuell).

Play play

Der media.play Ereignistyp wird verwendet, um zu verfolgen, wann die Medienwiedergabe beginnt. Dieses Ereignis sollte gesendet werden, wenn der Player von einem anderen Status aus den Status „Playing“ (Wiedergabe) wechselt. Andere Zustände, von denen der Player zu „Playing“ (Wiedergabe) wechselt, sind „Buffering“ (Pufferung), die Wiederaufnahme von „Paused“ (angehalten), die Wiederherstellung des Players nach einem Fehler oder die automatische Wiedergabe.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.play"
    }
});
Manuelles Sitzungs-Tracking
code language-javascript
sessionPromise.then(sessionID => {
    alloy("sendMediaEvent", {
        xdm: {
            eventType: "media.play",
            mediaCollection: {
                playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
                sessionID
            }
        }
    });
});

Aussetzen pause

Der media.pauseStart Ereignistyp wird verwendet, um zu verfolgen, wann eine Medienwiedergabe angehalten wurde. Dieses Ereignis sollte gesendet werden, wenn der Benutzer auf "". Es gibt keinen Resume-Ereignistyp. Ein Lebenslauf wird abgeleitet, wenn Sie nach einem media.pauseStart ein media.play senden.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.pauseStart"
    }
});
Manuelles Sitzungs-Tracking
code language-javascript
sessionPromise.then(sessionID => {
    alloy("sendMediaEvent", {
        xdm: {
            eventType: "media.pauseStart",
            mediaCollection: {
                playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
                sessionID
            }
        }
    });
});

Fehler error

Der media.error-Ereignistyp wird verwendet, um zu verfolgen, wann während der Medienwiedergabe ein Fehler auftritt. Dieses Ereignis sollte bei einem Fehler gesendet werden.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.error",
        mediaCollection: {
            errorDetails: {
                name: "network-error",
                source: "player"
            }
        }
    }
});
Manuelles Sitzungs-Tracking
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"
                }
            }
        }
    });
});

Start der Werbeunterbrechung ad-break-start

Der media.adBreakStart Ereignistyp wird verwendet, um den Beginn einer Werbeunterbrechung zu verfolgen. Dieses Ereignis sollte gesendet werden, wenn eine Werbeunterbrechung beginnt.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.adBreakStart",
        mediaCollection: {
            advertisingPodDetails: {
                friendlyName: "Mid-roll",
                offset: 0,
                index: 1
            }
        }
    }
});
Manuelles Sitzungs-Tracking
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
                }
            }
        }
    });
});

Werbeunterbrechung abgeschlossen ad-break-complete

Der media.adBreakComplete Ereignistyp wird verwendet, um zu verfolgen, wann eine Werbeunterbrechung abgeschlossen ist. Dieses Ereignis sollte gesendet werden, wenn eine Werbeunterbrechung abgeschlossen ist.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.adBreakComplete"
    }
});
Manuelles Sitzungs-Tracking
code language-javascript
sessionPromise.then(sessionID => {
    alloy("sendMediaEvent", {
        xdm: {
            eventType: "media.adBreakComplete",
            mediaCollection: {
                playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
                sessionID
            }
        }
    });
});

Anzeigenstart ad-start

Der media.adStart Ereignistyp wird verwendet, um den Beginn einer Anzeige zu verfolgen. Dieses Ereignis sollte beim Start einer Anzeige gesendet werden.

Automatisches Sitzungs-Tracking
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"
                }
            ]
        }
    }
});
Manuelles Sitzungs-Tracking
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"
              }]
        }
        }
    });
});

Hinzufügen abgeschlossen ad-complete

Der media.adComplete Ereignistyp wird verwendet, um zu verfolgen, wann eine Anzeige abgeschlossen ist. Dieses Ereignis sollte gesendet werden, wenn eine Anzeige abgeschlossen ist.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.adComplete"
    }
});
Manuelles Sitzungs-Tracking
code language-javascript
sessionPromise.then(sessionID => {
    alloy("sendMediaEvent", {
        xdm: {
            eventType: "media.adComplete",
            mediaCollection: {
                playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
                sessionID
            }
        }
    });
});

Überspringen einer Anzeige ad-skip

Der media.adSkip Ereignistyp wird verwendet, um zu verfolgen, wann eine Anzeige übersprungen wird. Dieses Ereignis sollte gesendet werden, wenn eine Anzeige übersprungen wird.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.adSkip"
    }
});
Manuelles Sitzungs-Tracking
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

Der media.chapterStart Ereignistyp wird verwendet, um den Beginn eines Kapitels zu verfolgen. Dieses Ereignis sollte gesendet werden, wenn ein Kapitel beginnt.

Automatisches Sitzungs-Tracking
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"
                }
            ]
        }
    }
});
Manuelles Sitzungs-Tracking
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 abgeschlossen chapter-complete

Der media.chapterComplete Ereignistyp wird verwendet, um zu verfolgen, wann ein Kapitel abgeschlossen ist. Dieses Ereignis sollte gesendet werden, wenn ein Kapitel abgeschlossen ist.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.chapterComplete"
    }
});
Manuelles Sitzungs-Tracking
code language-javascript
sessionPromise.then(sessionID => {
    alloy("sendMediaEvent", {
        xdm: {
            eventType: "media.chapterComplete",
            mediaCollection: {
                playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
                sessionID
            }
        }
    });
});

Kapitelübersprung chapter-skip

Der media.chapterSkip Ereignistyp wird verwendet, um zu verfolgen, wann ein Kapitel übersprungen wird. Dieses Ereignis sollte gesendet werden, wenn ein Kapitel übersprungen wird.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.chapterSkip"
    }
});
Manuelles Sitzungs-Tracking
code language-javascript
sessionPromise.then(sessionID => {
    alloy("sendMediaEvent", {
        xdm: {
            eventType: "media.chapterSkip",
            mediaCollection: {
                playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
                sessionID
            }
        }
    });
});

Start der Pufferung buffer-start

Der media.bufferStart Ereignistyp wird verwendet, um zu verfolgen, wann die Pufferung beginnt. Dieses Ereignis sollte beim Start der Pufferung gesendet werden. Es gibt keinen bufferResume Ereignistyp. Ein bufferResume wird abgeleitet, wenn Sie nach dem bufferStart ein Wiedergabeereignis senden.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.bufferStart"
    }
});
Manuelles Sitzungs-Tracking
code language-javascript
sessionPromise.then(sessionID => {
    alloy("sendMediaEvent", {
        xdm: {
            eventType: "media.bufferStart",
            mediaCollection: {
                playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
                sessionID
            }
        }
    });
});

Bitratenänderung bitrate-change

Der media.bitrateChange Ereignistyp wird verwendet, um zu verfolgen, wann sich die Bitrate ändert. Dieses Ereignis sollte gesendet werden, wenn sich die Bitrate ändert.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.bitrateChange",
        mediaCollection: {
            qoeDataDetails: {
                framesPerSecond: 1,
                bitrate: 35000,
                droppedFrames: 30,
                timeToStart: 1364
            }
        }
    }
});
Manuelles Sitzungs-Tracking
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
                }
            }
        }
    });
});

Statusaktualisierungen state-updates

Der media.statesUpdate Ereignistyp wird verwendet, um zu verfolgen, wann sich der Player-Status ändert. Dieses Ereignis sollte gesendet werden, wenn sich der Player-Status ändert.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.statesUpdate",
        mediaCollection: {
            statesStart: [{
                    name: "mute"
                },
                {
                    name: "pictureInPicture"
                }
            ],
            statesEnd: [{
                name: "fullScreen"
            }]
        }
    }
});
Manuelles Sitzungs-Tracking
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"
                }]
            }
        }
    });
});

Sitzungsende session-end

Der Ereignistyp media.sessionEnd wird verwendet, um das Media Analytics-Backend zu benachrichtigen, dass die Sitzung sofort geschlossen wird, wenn der Benutzer die Anzeige des Inhalts verlassen hat und er wahrscheinlich nicht mehr zurückkehren wird.

Wenn Sie kein sessionEnd senden, wird eine abgebrochene Sitzung beendet, wenn für 10 Minuten keine Ereignisse empfangen werden oder wenn für 30 Minuten keine Abspielkopfbewegung stattfindet. Die Sitzung wird automatisch gelöscht.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.sessionEnd"
    }
});
Manuelles Sitzungs-Tracking
code language-javascript
sessionPromise.then(sessionID => {
    alloy("sendMediaEvent", {
        xdm: {
            eventType: "media.sessionEnd",
            mediaCollection: {
                playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
                sessionID
            }
        }
    });
});

Sitzung abgeschlossen session-complete

Der media.sessionComplete Ereignistyp wird verwendet, um den Abschluss einer Mediensitzung zu verfolgen. Dieses Ereignis sollte gesendet werden, wenn das Ende des Hauptinhalts erreicht ist.

Automatisches Sitzungs-Tracking
code language-javascript
alloy("sendMediaEvent", {
    playerId: "movie-test",
    xdm: {
        eventType: "media.sessionComplete"
    }
});
Manuelles Sitzungs-Tracking
code language-javascript
sessionPromise.then(sessionID => {
    alloy("sendMediaEvent", {
        xdm: {
            eventType: "media.sessionComplete",
            mediaCollection: {
                playhead: parseInt(document.getElementById("movie-test").currentTime, 10),
                sessionID
            }
        }
    });
});
recommendation-more-help
ad108910-6329-42f1-aa1d-5920a2b13636