Sitzungsstart

Das Sitzungsstartereignis öffnet eine Medienverfolgungssitzung. Es muss das erste Ereignis sein, das für eine Wiedergabe gesendet wird. Die Antwort gibt eine Sitzungs-ID zurück, die alle nachfolgenden Ereignisse für dieselbe Sitzung enthalten müssen.

Eine Sitzung läuft automatisch ab wenn für 10 Minuten keine Ereignisse empfangen werden oder wenn keine Abspielkopfbewegung für 30 Minuten“. Wenn eine Sitzung abläuft, müssen Sie den Sitzungsstart erneut aufrufen, um eine neue Sitzungs-ID zu erhalten.

  • Voraussetzungen: Keine; immer das erste Ereignis
  • Zugeordnete Metrik: Medienstarts

Empfohlene Implementierungsarten

Web SDK

Rufen Sie sendEvent mit eventType: "media.sessionStart" und den erforderlichen sessionDetails auf. Die Antwort enthält die Sitzungs-ID in handle[].payload[].sessionId (Typ media-analytics:new-session). Speichern Sie diesen Wert und übergeben Sie ihn als sessionID in allen nachfolgenden Ereignissen.

code language-javascript
alloy("sendEvent", {
  xdm: {
    eventType: "media.sessionStart",
    mediaCollection: {
      sessionDetails: {
        name: "video-123",
        length: 128,
        contentType: "vod",
        playerName: "HTML5 Player",
        channel: "Sports",
        streamType: "video"
      },
      playhead: 0
    }
  }
});
iOS

Rufen Sie trackSessionStart mit einem Medienobjekt und optionalen Metadaten auf.

code language-swift
let mediaObject = Media.createMediaObjectWith(name: "video-123",
                                               id: "video-id-123",
                                           length: 128,
                                       streamType: MediaConstants.StreamType.VOD,
                                        mediaType: MediaType.Video)

tracker.trackSessionStart(info: mediaObject, metadata: nil)
Android

Rufen Sie trackSessionStart mit einem Medienobjekt und optionalen Metadaten auf.

code language-kotlin
val mediaObject = Media.createMediaObject("video-123",
                                          "video-id-123",
                                          128,
                                          MediaConstants.StreamType.VOD,
                                          Media.MediaType.Video)

tracker.trackSessionStart(mediaObject, null)
Roku Edge

Rufen Sie createMediaSession mit den erforderlichen Sitzungsdetails an:

code language-brightscript
m.aepSdk.createMediaSession({
    "xdm": {
        "eventType": "media.sessionStart",
        "mediaCollection": {
            "sessionDetails": {
                "name": "video-123",
                "length": 128,
                "contentType": "vod",
                "playerName": "Roku Player",
                "channel": "Sports",
                "streamType": "video"
            },
            "playhead": 0
        }
    }
})
Media Edge-API

Rufen Sie den sessionStart-Endpunkt auf. Die Antwort enthält die Sitzungs-ID in handle[].payload[].sessionId (Typ media-analytics:new-session).

code language-sh
curl -X POST "https://edge.adobedc.net/ee/va/v1/sessionStart?configId={datastreamID}" \
--header 'Content-Type: application/json' \
--data '{
  "events": [{
    "xdm": {
      "eventType": "media.sessionStart",
      "mediaCollection": {
        "sessionDetails": {
          "name": "video-123",
          "playerName": "HTML5 Player",
          "contentType": "VOD",
          "length": 128,
          "channel": "Sports"
        },
        "playhead": 0
      }
    }
  }]
}'

Legacy-Implementierungstypen (nur Analytics)

Media SDK JS 3.x

Rufen Sie trackSessionStart mit einem Medienobjekt auf, das mit ADB.Media.createMediaObject erstellt wurde:

code language-javascript
var mediaObject = ADB.Media.createMediaObject(
  "video-123",                  // name
  "video-id-123",               // media ID
  128,                          // length (seconds)
  ADB.Media.StreamType.VOD,     // stream type
  ADB.Media.MediaType.Video     // media type
);

tracker.trackSessionStart(mediaObject, null);
Chromecast

Rufen Sie trackSessionStart mit einem Medienobjekt auf, das mit ADBMobile.media.createMediaObject erstellt wurde:

code language-javascript
var mediaInfo = ADBMobile.media.createMediaObject(
  "video-123",                        // name
  "video-id-123",                     // media ID
  128,                                // length (seconds)
  ADBMobile.media.StreamType.VOD,
  ADBMobile.media.MediaType.Video
);

ADBMobile.media.trackSessionStart(mediaInfo, null);
Roku 2.x

Erstellen Sie ein Medienobjekt mit adb_media_init_mediainfo und rufen Sie mediaTrackSessionStart auf. Das optionale zweite Argument akzeptiert ein assoziatives Array von a.media.* Metadatenschlüsseln, oder invalid:

code language-brightscript
adb = ADBMobile()
mediaInfo = adb_media_init_mediainfo("video-123", "video-id-123", 128.0, adb.MEDIA_STREAM_TYPE_VOD, adb.MEDIA_TYPE_VIDEO)

adb.mediaTrackSessionStart(mediaInfo, invalid)
Media Collection API

Senden Sie einen sessionStart POST an den sessions-Endpunkt. Die Kopfzeile der Location enthält die Sitzungs-ID, die in allen nachfolgenden Ereignisanfragen verwendet werden soll.

code language-json
{
  "playerTime": { "playhead": 0, "ts": 1699523820000 },
  "eventType": "sessionStart",
  "params": {
    "media.channel": "Sports",
    "media.playerName": "HTML5 Player",
    "media.contentType": "vod",
    "media.length": 128,
    "media.id": "video-123"
  }
}

Wiederaufnehmen einer Sitzung

Setzen Sie beim Wiederaufnehmen einer zuvor geschlossenen Sitzung (z. B. nach einer geräteübergreifenden Übergabe oder nachdem die Anwendung den gespeicherten Wiedergabestatus wiederhergestellt hat) das Wiederaufnahme-Flag beim Sitzungsstart. Dadurch wird Analytics Inhaltswiederaufnahmen anstelle von „Medienstarts​ erhöht.

Empfohlene Implementierungsarten

Web SDK

hasResume: true zu sessionDetails hinzufügen:

code language-javascript
alloy("sendEvent", {
  xdm: {
    eventType: "media.sessionStart",
    mediaCollection: {
      sessionDetails: {
        name: "video-123",
        length: 128,
        contentType: "vod",
        playerName: "HTML5 Player",
        channel: "Sports",
        streamType: "video",
        hasResume: true
      },
      playhead: 0
    }
  }
});
iOS

Legen Sie den resumed Schlüssel des Medienobjekts fest, bevor Sie trackSessionStart aufrufen:

code language-swift
var mediaObject = Media.createMediaObjectWith(name: "video-123",
                                               id: "video-id-123",
                                           length: 128,
                                       streamType: MediaConstants.StreamType.VOD,
                                        mediaType: MediaType.Video)

mediaObject[MediaConstants.MediaObjectKey.resumed] = true
tracker.trackSessionStart(info: mediaObject, metadata: nil)
Android

Legen Sie den RESUMED Schlüssel des Medienobjekts fest, bevor Sie trackSessionStart aufrufen:

code language-kotlin
val mediaObject = Media.createMediaObject("video-123", "video-id-123", 128,
                                          MediaConstants.StreamType.VOD,
                                          Media.MediaType.Video)

mediaObject[Media.MediaObjectKey.RESUMED] = true
tracker.trackSessionStart(mediaObject, null)
Roku Edge

"hasResume": true zu sessionDetails hinzufügen:

code language-brightscript
m.aepSdk.createMediaSession({
    "xdm": {
        "eventType": "media.sessionStart",
        "mediaCollection": {
            "sessionDetails": {
                "name": "video-123",
                "length": 128,
                "contentType": "vod",
                "playerName": "Roku Player",
                "channel": "Sports",
                "streamType": "video",
                "hasResume": true
            },
            "playhead": 0
        }
    }
})
Media Edge-API

"hasResume": true zu sessionDetails hinzufügen:

code language-sh
curl -X POST "https://edge.adobedc.net/ee/va/v1/sessionStart?configId={datastreamID}" \
--header 'Content-Type: application/json' \
--data '{
  "events": [{
    "xdm": {
      "eventType": "media.sessionStart",
      "mediaCollection": {
        "sessionDetails": {
          "name": "video-123",
          "playerName": "HTML5 Player",
          "contentType": "VOD",
          "length": 128,
          "channel": "Sports",
          "hasResume": true
        },
        "playhead": 0
      }
    }
  }]
}'

Legacy-Implementierungstypen (nur Analytics)

Media SDK JS 3.x

Legen Sie den MediaResumed auf das Medienobjekt fest:

code language-javascript
var mediaObject = ADB.Media.createMediaObject(
  "video-123", "video-id-123", 128,
  ADB.Media.StreamType.VOD, ADB.Media.MediaType.Video
);

mediaObject[ADB.Media.MediaObjectKey.MediaResumed] = true;
tracker.trackSessionStart(mediaObject, null);
Chromecast

Legen Sie den MediaResumed auf das Medienobjekt fest:

code language-javascript
var mediaObject = ADBMobile.media.createMediaObject(
  "video-123", "video-id-123", 128,
  ADBMobile.media.StreamType.VOD, ADBMobile.media.MediaType.Video
);

mediaObject[ADBMobile.media.MediaObjectKey.MediaResumed] = true;
ADBMobile.media.trackSessionStart(mediaObject, null);
Roku 2.x

Legen Sie den resumed Schlüssel des Medienobjekts fest, bevor Sie mediaTrackSessionStart aufrufen:

code language-brightscript
adb = ADBMobile()
mediaInfo = adb_media_init_mediainfo("video-123", "video-id-123", 128.0, adb.MEDIA_STREAM_TYPE_VOD, adb.MEDIA_TYPE_VIDEO)
mediaInfo.resumed = true

adb.mediaTrackSessionStart(mediaInfo, invalid)
Media Collection API

Fügen Sie "media.resume": true zum params hinzu:

code language-json
{
  "playerTime": { "playhead": 0, "ts": 1699523820000 },
  "eventType": "sessionStart",
  "params": {
    "media.channel": "Sports",
    "media.playerName": "HTML5 Player",
    "media.contentType": "vod",
    "media.length": 128,
    "media.id": "video-123",
    "media.resume": true
  }
}
recommendation-more-help
media-analytics-help