状態終了

ステートエンドイベントは、メディアプレーヤーがフルスクリーン、ミュート、クローズドキャプションなどのトラッキングされた状態から離脱したことを示します。 状態の開始によって開かれた状態を閉じるように送信します。 状態は、同じイベントコールで開始および終了できます。 プレイヤーは複数のステートを同時に終了できます。

有効な状態名:fullscreenmuteclosedCaptioningpictureInPictureinFocus

推奨される実装タイプ

Web SDK

sendEventeventType: "media.statesUpdate"で呼び出し、状態名をstatesEndで呼び出します:

code language-javascript
alloy("sendEvent", {
  xdm: {
    eventType: "media.statesUpdate",
    mediaCollection: {
      statesEnd: [{ name: "fullscreen" }],
      sessionID: "{sid}",
      playhead: 90
    }
  }
});

状態は、同じ呼び出しで開始および終了できます。

code language-javascript
alloy("sendEvent", {
  xdm: {
    eventType: "media.statesUpdate",
    mediaCollection: {
      statesStart: [{ name: "mute" }],
      statesEnd: [{ name: "fullscreen" }],
      sessionID: "{sid}",
      playhead: 90
    }
  }
});
iOS

適切なMediaConstants.PlayerState定数から作成された状態オブジェクトでtrackPlayerStateEndを使用します。

code language-swift
let stateObject = Media.createStateObjectWith(stateName: MediaConstants.PlayerState.FULLSCREEN)

tracker.trackEvent(event: MediaEvent.StateEnd, info: stateObject, metadata: nil)
Android

適切なMediaConstants.PlayerState定数から作成された状態オブジェクトでtrackPlayerStateEndを使用します。

code language-kotlin
val stateObject = Media.createStateObject(MediaConstants.PlayerState.FULLSCREEN)

tracker.trackEvent(Media.Event.StateEnd, stateObject, null)
Roku

sendMediaEventeventType: "media.statesUpdate"で呼び出し、状態名をstatesEndで呼び出します:

code language-brightscript
m.aepSdk.sendMediaEvent({
    "xdm": {
        "eventType": "media.statesUpdate",
        "mediaCollection": {
            "statesEnd": [{ "name": "fullscreen" }],
            "playhead": 90
        }
    }
})
Media Edge API

statesUpdate エンドポイントをstatesEndの状態名で呼び出します。

code language-sh
curl -X POST "https://edge.adobedc.net/ee/va/v1/statesUpdate?configId={datastreamID}" \
--header 'Content-Type: application/json' \
--data '{
  "events": [{
    "xdm": {
      "eventType": "media.statesUpdate",
      "mediaCollection": {
        "sessionID": "{sid}",
        "playhead": 90,
        "statesEnd": [{ "name": "fullscreen" }]
      },
      "timestamp": "YYYY-08-20T22:41:40+00:00"
    }
  }]
}'

従来の実装タイプ (Analyticsのみ)

Media SDK JS 3.x

適切なADB.Media.PlayerState定数でADB.Media.createStateObjectを使用します。

code language-javascript
var stateObject = ADB.Media.createStateObject(ADB.Media.PlayerState.Fullscreen);

tracker.trackPlayerStateEnd(stateObject);
Chromecast

適切なADBMobile.media.PlayerState定数でADBMobile.media.createStateObjectを使用します。

code language-javascript
var stateObject = ADBMobile.media.createStateObject(ADBMobile.media.PlayerState.FullScreen);

ADBMobile.media.trackEvent(ADBMobile.media.Event.StateEnd, stateObject);
Media Collection API

stateEnd件の投稿を​ イベントエンドポイント ​に送信します:

code language-json
{
  "playerTime": { "playhead": 90, "ts": 1699523820000 },
  "eventType": "stateEnd",
  "params": {
    "media.state.name": "fullscreen"
  }
}
recommendation-more-help
media-analytics-help