Fim do estado
O evento de fim de estado indica que o reprodutor de mídia saiu de um estado rastreado, como tela cheia, mudo ou legendas ocultas. Enviá-lo para fechar um estado aberto por Início do estado. Os estados podem ser iniciados e encerrados na mesma chamada de evento. Um reprodutor pode sair de vários estados simultaneamente.
Nomes de estados válidos: fullscreen, mute, closedCaptioning, pictureInPicture, inFocus
- Pré-requisitos: Início da sessão, Início do estado
- Métrica associada: varia por estado; consulte Rastreamento do estado do player
SDK da web
Chame sendEvent com eventType: "media.statesUpdate" e o nome do estado em statesEnd:
alloy("sendEvent", {
xdm: {
eventType: "media.statesUpdate",
mediaCollection: {
statesEnd: [{ name: "fullscreen" }],
sessionID: "{sid}",
playhead: 90
}
}
});
Os estados podem ser iniciados e encerrados na mesma chamada:
alloy("sendEvent", {
xdm: {
eventType: "media.statesUpdate",
mediaCollection: {
statesStart: [{ name: "mute" }],
statesEnd: [{ name: "fullscreen" }],
sessionID: "{sid}",
playhead: 90
}
}
});
SDK móvel
Use trackPlayerStateEnd com um objeto de estado criado a partir da constante MediaConstants.PlayerState apropriada.
iOS (Swift)
let stateObject = Media.createStateObjectWith(stateName: MediaConstants.PlayerState.FULLSCREEN)
tracker.trackEvent(event: MediaEvent.StateEnd, info: stateObject, metadata: nil)
Android (Kotlin)
val stateObject = Media.createStateObject(MediaConstants.PlayerState.FULLSCREEN)
tracker.trackEvent(Media.Event.StateEnd, stateObject, null)
Roku (BrightScript)
Chame sendMediaEvent com eventType: "media.statesUpdate" e o nome do estado em statesEnd:
m.aepSdk.sendMediaEvent({
"xdm": {
"eventType": "media.statesUpdate",
"mediaCollection": {
"statesEnd": [{ "name": "fullscreen" }],
"playhead": 90
}
}
})
API de borda de mídia
Chame o ponto de extremidade statesUpdate com o nome de estado em statesEnd:
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"
}
}]
}'
SDK de mídia
Usar ADB.Media.createStateObject com a constante ADB.Media.PlayerState apropriada:
var stateObject = ADB.Media.createStateObject(ADB.Media.PlayerState.Fullscreen);
tracker.trackPlayerStateEnd(stateObject);
API da coleção de mídia
Enviar uma POSTAGEM stateEnd para o ponto de extremidade de eventos:
{
"playerTime": { "playhead": 90, "ts": 1699523820000 },
"eventType": "stateEnd",
"params": {
"media.state.name": "fullscreen"
}
}