상태 시작

상태 시작 이벤트는 미디어 플레이어가 전체 화면, 음소거 또는 자막 등 추적된 상태에 들어갔음을 나타냅니다. 플레이어는 동시에 여러 상태에 있을 수 있으며 상태는 동일한 이벤트 호출에서 시작되고 종료될 수 있습니다. 상태 끝 이벤트로 각 상태를 닫으십시오.

올바른 상태 이름: fullscreen, mute, closedCaptioning, pictureInPicture, inFocus

권장 구현 유형

웹 SDK

eventType: "media.statesUpdate"statesStart의 상태 이름으로 sendEvent을(를) 호출합니다.

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

동일한 호출에서 여러 상태를 시작할 수 있습니다.

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

적절한 MediaConstants.PlayerState 상수에서 만든 상태 개체에 trackPlayerStateStart을(를) 사용합니다.

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

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

적절한 MediaConstants.PlayerState 상수에서 만든 상태 개체에 trackPlayerStateStart을(를) 사용합니다.

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

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

eventType: "media.statesUpdate"statesStart의 상태 이름으로 sendMediaEvent을(를) 호출합니다.

code language-brightscript
m.aepSdk.sendMediaEvent({
    "xdm": {
        "eventType": "media.statesUpdate",
        "mediaCollection": {
            "statesStart": [{ "name": "fullscreen" }],
            "playhead": 60
        }
    }
})
미디어 Edge API

statesStart에서 상태 이름으로 statesUpdate 끝점을 호출합니다.

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": 60,
        "statesStart": [{ "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.trackPlayerStateStart(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.StateStart, stateObject);
미디어 컬렉션 API

이벤트 끝점stateStart POST 보내기:

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