Flag di contenuto multimediale scaricato

In questa pagina è illustrata la raccolta dati per la variabile Flag di contenuto multimediale scaricato. Vedi File multimediali scaricati per la dimensione di reporting corrispondente.

Il flag Media Download indica che una sessione sta riproducendo contenuto offline scaricato in precedenza anziché un flusso live da Internet. Impostarlo durante l’inizializzazione del tracker (Mobile SDK) o includerlo nel payload sessionStart (Edge/Media Collection API). Usa questo flag per separare la riproduzione offline dalle sessioni in streaming nel reporting.

Proprietà
Valore
Variabile di dati di contesto
a.media.downloaded
Campo raccolta XDM
xdm.mediaCollection.sessionDetails.isDownloaded
Caratteristica Audience Manager
c_contextdata.a.media.downloaded
Obbligatorio
No
Inviato con
Inizio sessione, chiusura sessione

Tipi di implementazione consigliati

Web SDK

Imposta isDownloaded su true all’interno di xdm.mediaCollection.sessionDetails quando chiama sendEvent:

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",
        isDownloaded: true
      },
      playhead: 0
    }
  }
});
iOS

Impostare il flag di contenuto scaricato sulla configurazione del tracker durante la creazione del tracker, utilizzando MediaConstants.TrackerConfig.DOWNLOADED_CONTENT.

code language-swift
var config: [String: Any] = [:]
config[MediaConstants.TrackerConfig.PLAYER_NAME] = "HTML5 Player"
config[MediaConstants.TrackerConfig.CHANNEL] = "Sports"
config[MediaConstants.TrackerConfig.DOWNLOADED_CONTENT] = true

Media.createTrackerWith(config: config) { tracker in
    self.tracker = tracker
}
Android

Impostare il flag di contenuto scaricato sulla configurazione del tracker durante la creazione del tracker, utilizzando MediaConstants.TrackerConfig.DOWNLOADED_CONTENT.

code language-kotlin
val config = HashMap<String, Any>()
config[MediaConstants.TrackerConfig.PLAYER_NAME] = "HTML5 Player"
config[MediaConstants.TrackerConfig.CHANNEL] = "Sports"
config[MediaConstants.TrackerConfig.DOWNLOADED_CONTENT] = true

val tracker = Media.createTracker(config)
Roku

Imposta isDownloaded su true all’interno di xdm.mediaCollection.sessionDetails durante la chiamata a createMediaSession:

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",
                "isDownloaded": true
            },
            "playhead": 0
        }
    }
})
API Media Edge

Chiama l’endpoint downloaded dopo che il dispositivo è tornato online, eseguendo il batch dell’intera sessione offline in mediaDownloadedEvents. Adobe imposta automaticamente isDownloaded su true e assegna un ID sessione; non includere nessuno dei due nel payload.

code language-json
{
  "events": [{
    "xdm": {
      "eventType": "media.downloaded",
      "mediaDownloadedEvents": [
        {
          "mediaEventTimestamp": "YYYY-09-26T15:52:24+00:00",
          "mediaEventType": "media.sessionStart",
          "mediaCollection": {
            "sessionDetails": {
              "name": "video-123",
              "length": 128,
              "contentType": "vod",
              "playerName": "HTML5 Player",
              "channel": "Sports"
            },
            "playhead": 0
          }
        },
        {
          "mediaEventTimestamp": "YYYY-09-26T15:54:32+00:00",
          "mediaEventType": "media.sessionComplete",
          "mediaCollection": {
            "playhead": 128
          }
        }
      ]
    }
  }]
}

Tipi di implementazione legacy (solo Analytics)

Media SDK JS 3.x

Imposta downloadedContent su ADB.MediaConfig prima di creare il tracker:

code language-javascript
var mediaConfig = new ADB.MediaConfig();
mediaConfig.trackingServer = "your.tracking.server";
mediaConfig.playerName = "HTML5 Player";
mediaConfig.channel = "Sports";
mediaConfig.downloadedContent = true;

var tracker = ADB.Media.getInstance(mediaConfig);
Chromecast

Imposta MediaDownloaded sull’oggetto informazioni multimediali prima di chiamare trackSessionStart:

code language-javascript
var mediaInfo = ADBMobile.media.createMediaObject("My Video", "video-123", 128,
  ADBMobile.media.StreamType.VOD, ADBMobile.media.MediaType.Video);
mediaInfo[ADBMobile.media.MediaObjectKey.MediaDownloaded] = true;
ADBMobile.media.trackSessionStart(mediaInfo, null);
API Media Collection

Includi media.downloaded nell’oggetto params della richiesta POST sessionStart:

code language-json
{
  "playerTime": { "playhead": 0, "ts": 1699523820000 },
  "eventType": "sessionStart",
  "params": {
    "media.downloaded": true
  }
}

Per la struttura completa delle richieste, consulta il Riferimento sessioni API di Media Collection.

recommendation-more-help
media-analytics-help