Los siguientes diagramas ilustran la cronología del cabezal de reproducción y la cronología correspondiente de las acciones de un usuario. A continuación se presentan los detalles de cada acción y sus solicitudes correspondientes.
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
Botón de reproducción o de reproducción automática pulsado | 0 | 0 | /api/v1/sessions |
Detalles de implementación
Esta llamada indica la intención del usuario de reproducir un vídeo. Devuelve un ID de sesión ({sid}
) al cliente que se utiliza para identificar todas las llamadas de seguimiento subsiguientes dentro de la sesión. El estado del reproductor no es "reproduciendo", sino "comenzando". Los parámetros de sesión obligatorios deben incluirse en el mapa de params
en la solicitud. En el servidor, esta llamada genera una llamada de inicio a Adobe Analytics.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 0,
ts: <timestamp>
},
eventType:sessionStart, params: {
"media.playerName": "sample-html5-api-player",
"analytics.trackingServer": "[ _YOUR-TS_ ]",
"analytics.reportSuite": "[ _YOUR-RSID_ ]",
"analytics.visitorId": "[ _YOUR-VISITOR-ID_ ]",
"media.contentType": "VOD",
"media.length": 60.3333333333333,
"media.id": "VA API Sample Player",
"visitor.marketingCloudOrgId": "[YOUR-MCID]",
"media.name": "ClickMe",
"media.channel": "sample-channel",
"media.sdkVersion": "va-api-0.0.0",
"analytics.enableSSL": false
}
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
La aplicación inicia el temporizador de eventos de ping | 0 | 0 |
Detalles de implementación
Inicie el temporizador de ping de su aplicación. El primer evento de ping debe activarse en el primer segundo si hay anuncios previos a la emisión y en los 10 primeros segundos en caso contrario.
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
Rastrear inicio de pausa del anuncio previo a la emisión | 0 | 0 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Se debe hacer un seguimiento de los anuncios previos a la emisión. Los anuncios solo se pueden rastrear durante una pausa publicitaria.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 0,
ts: <timestamp>
},
eventType:adBreakStart, params: {
"media.ad.podFriendlyName": "ad_pod1",
"media.ad.podIndex": 0,
"media.ad.podSecond": 0
}
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
Rastrear inicio del anuncio previo a la emisión n.º 1 | 0 | 0 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Se inicia una publicidad de 12 segundos.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 0,
ts: <timestamp>
},
eventType:adStart, params: {
"media.ad.podFriendlyName": "ad_pod1",
"media.ad.name": "Ad 1",
"media.ad.id": "002",
"media.ad.length": 7,
"media.ad.podPosition": 1,
"media.ad.playerName": "Sample Player",
"media.ad.advertiser": "Ad Guys",
"media.ad.campaignId": "1",
"media.ad.creativeId": "42",
"media.ad.siteId": "XYZ",
"media.ad.creativeURL": "https://xyz-creative.com",
"media.ad.placementId": "sample-placement2"
},
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
La aplicación envía eventos de ping | 1 | 0 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Mandar un ping al servidor cada segundo. (No se muestran los pings de anuncios posteriores en interés de la brevedad).
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 0,
ts: <timestamp>
},
eventType:ping
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
Rastrear finalización del anuncio previo a la emisión n.º 1 | 12 | 0 | /api/v1/sessions/{sid}/events |
Detalles de implementación
El primer anuncio pre-roll ha finalizado.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 0,
ts: <timestamp>
},
eventType:adComplete
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
Rastrear finalización de pausa del anuncio previo a la emisión | 12 | 0 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Terminó la pausa publicitaria. Durante la pausa publicitaria, el reproductor ha permanecido en el estado de "reproducción".
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 0,
ts: <timestamp>
},
eventType:adBreakComplete
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
Rastrear el evento de reproducción | 12 | 0 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Cambie el reproductor al estado "reproducir"; comience a rastrear el inicio de la reproducción del contenido.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 0,
ts: <timestamp>
},
eventType:play,
qoeData: { bitrate: 10000 }
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
La aplicación envía eventos de ping | 20 | 8 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Mandar un ping al servidor cada 10 segundos.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 8ß,
ts: <timestamp>
},
eventType:ping
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
La aplicación envía eventos de ping | 30 | 18 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Mandar un ping al servidor cada 10 segundos.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 18,
ts: <timestamp>
},
eventType:ping
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
Se produce un error, la aplicación envía información de error. | 32 | 20 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 20,
ts: <timestamp>
},
eventType:error
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
La aplicación se recupera de un error, el usuario pulsa Reproducir | 37 | 20 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 18,
ts: <timestamp>
},
eventType:play, qoeData: { bitrate: 10000 }
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
La aplicación envía eventos de ping | 40 | 28 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Mandar un ping al servidor cada 10 segundos.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 28,
ts: <timestamp>
},
eventType:ping
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
Rastrear inicio de pausa del anuncio durante la emisión | 45 | 33 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Anuncio mid-roll de 8 segundos: enviar adBreakStart
.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 33,
ts: <timestamp>
},
eventType:adBreakStart, params: {
"media.ad.podFriendlyName": "ad_pod2",
"media.ad.podIndex": 1,
"media.ad.podSecond": 33
}
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
Rastrear inicio del anuncio durante la emisión n.º 1 | 45 | 33 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Seguimiento del anuncio mid-roll.
Cuerpo de la solicitud de muestra
{
playerTime: { playhead: 33, ts: <timestamp>
},
eventType:adStart, params: {
"media.ad.podFriendlyName": "ad_pod1",
"media.ad.name": "Ad 1",
"media.ad.id": "002",
"media.ad.length": 8,
"media.ad.podPosition": 1,
"media.ad.playerName": "Sample Player",
"media.ad.advertiser": "Ad Guys",
"media.ad.campaignId": "7",
"media.ad.creativeId": "40",
"media.ad.siteId": "XYZ",
"media.ad.creativeURL": "https://xyz_creative.com",
"media.ad.placementId": "sample_placement2"
},
}
Acción | Cronología de acción (segundos) | Posición del cabezal de reproducción (segundos) | Solicitud de cliente |
---|---|---|---|
El usuario cierra la aplicación. La aplicación determina que el usuario ha abandonado la visualización y no vuelve a esta sesión. | 48 | 33 | /api/v1/sessions/{sid}/events |
Detalles de implementación
Envíe sessionEnd
al servidor de VA para indicar que la sesión debe cerrarse inmediatamente, sin procesar más.
Cuerpo de la solicitud de muestra
{
playerTime: {
playhead: 33,
ts: <timestamp>
},
eventType:sessionEnd
}