Linha do tempo 1 - Visualização do conteúdo até o fim

VOD, anúncios precedentes, pausa, buffer, visualização até o fim do conteúdo

Os diagramas a seguir ilustram a linha do tempo do indicador de reprodução e a linha do tempo correspondente das ações de um usuário. Os pormenores de cada ação e os pedidos que a acompanham são apresentados a seguir.

Detalhes da ação

Ação 1 — Iniciar sessão

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Botão Reproduzir automaticamente ou Reproduzir pressionado, o vídeo começa a carregar. 0 0 /api/v1/sessions

Detalhes da implementação

Essa chamada sinaliza a intenção do usuário de reproduzir um vídeo.

Retorna uma ID de sessão ({sid}) ao cliente, usada para identificar todas as chamadas de rastreamento subsequentes na sessão. O estado do reprodutor ainda não é "reproduzindo", mas "iniciando".

Os parâmetros obrigatórios da sessão devem ser incluídos no mapa params no corpo da solicitação.

No back-end, essa chamada gera uma chamada de inicialização do Adobe Analytics.

Exemplo de corpo da solicitação

{
    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
    }
}

Ação 2 — Início do temporizador de ping

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Temporizador do evento ping de início do aplicativo 0 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Inicie o temporizador de ping do aplicativo. O primeiro evento de ping deve disparar 1 segundo se houver anúncios precedentes, 10 segundos se não houver.

Ação 3 — Início de quebra de anúncio

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear início de ad break antes da exibição 0 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Os anúncios somente podem ser rastreados em um ad break.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:adBreakStart, params: {
        "media.ad.podFriendlyName": "ad_pod1",
        "media.ad.podIndex": 0,
        "media.ad.podSecond": 0
    }
}

Ação 4 — Início do anúncio

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear início do anúncio nº 1 antes da exibição 0 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Comece a rastrear o primeiro anúncio precedente, que tem 15 segundos de duração. Incluindo metadados personalizados com este adStart .

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: &lt;timestamp&gt;
    },
    eventType:adStart,
    params: {
        "media.ad.podFriendlyName": "ad_pod1",
        "media.ad.name": "Ad 1",
        "media.ad.id": "001",
        "media.ad.length": 15,
        "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_placement"
    },
    customMetadata: {
        "myCustomData1": "CustomData1",
        "myCustomData2": "CustomData2"
    }
}

Ação 5 — Pings de anúncios

Ação 5.1 — Ping de anúncio 1

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 1 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Faça o ping do back-end a cada 1 segundo enquanto estiver dentro de um anúncio.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:ping
}

Ação 5.2 — Ping de anúncio 2

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 2 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Faça o ping do back-end a cada 1 segundo enquanto estiver dentro de um anúncio.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:ping
}

Ação 5.3 — Ping de anúncio 3

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 3 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Faça o ping do back-end a cada 1 segundo enquanto estiver dentro de um anúncio.

OBSERVAÇÃO

Anúncios subsequentes na linha do tempo ignorarão a exibição da série de pings de um segundo
por razões de brevidade…

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:ping
}

Ação 6 — Anúncio concluído

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear conclusão do anúncio nº 1 antes da exibição 15 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Rastreie o final do primeiro anúncio precedente.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:adComplete
}

Ação 7 — Início do anúncio

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear início do anúncio nº 2 antes da exibição 15 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Rastreie o início do segundo anúncio precedente, que tem 7 segundos de duração.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:adStart, params: {
        "media.ad.podFriendlyName": "ad_pod1",
        "media.ad.name": "Ad 2",
        "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": "2",
        "media.ad.creativeId": "44",
        "media.ad.siteId": "XYZ",
        "media.ad.creativeURL": "https://xyz_creative.com",
        "media.ad.placementId": "sample_placement2"
    },
}

Ação 8 — Pings de anúncios

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 20 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Envie um ping ao back-end a cada 1 segundo.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:ping
}

Ação 9 — Anúncio concluído

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear conclusão do anúncio nº 2 antes da exibição 22 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Rastreie o final do segundo anúncio precedente.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:adComplete
}

Ação 10 — Pausa do anúncio concluída

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear conclusão de ad break antes da exibição 22 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

O ad break está concluído. Ao longo do ad break, o estado da reprodução permaneceu "reproduzindo".

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:adBreakComplete
}

Ação 11 — Reproduzir conteúdo

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear evento de reprodução 22 0 /api/v1/sessions/{sid}/events

Detalhes da implementação

Depois do evento adBreakComplete, coloque o reprodutor no estado "reproduzindo" usando o evento play.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 0,
        ts: <timestamp>
    },
    eventType:play
}

Ação 12 — Ping

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 30 8 /api/v1/sessions/{sid}/events

Detalhes da implementação

Envie um ping ao back-end a cada 10 segundos.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 8,
        ts: <timestamp>
    },
    eventType:ping
}

Ação 13 — Início do buffer

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Ocorreu um evento de início de buffer 33 11 /api/v1/sessions/{sid}/events

Detalhes da implementação

Rastreie o movimento do reprodutor para o estado de "buffering".

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 11,
        ts: <timestamp>
    }, eventType:bufferStart
}

Ação 14 — Fim do buffer

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Buffering encerrado, o aplicativo rastreia a retomada do conteúdo 36 11 /api/v1/sessions/{sid}/events

Detalhes da implementação

O buffering termina após 3 segundos; coloque o reprodutor no estado "reproduzindo". Você deve enviar outro evento de rastreamento de reprodução a partir do buffering. A chamadaplaydepois de umbufferStartinfere uma chamada de "bufferEnd" ao back-end, assim, um evento bufferEnd não é necessário.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 11,
        ts: <timestamp>
    },
    eventType:play
}

Ação 15 — Ping

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 40 15 /api/v1/sessions/{sid}/events

Detalhes da implementação

Envie um ping ao back-end a cada 10 segundos.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 15,
        ts: <timestamp>
    }, eventType:ping
}

Ação 16 — Início de quebra de anúncio

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear início de ad break durante a exibição 46 21 /api/v1/sessions/{sid}/events

Detalhes da implementação

Anúncio intermediário de 8 segundos: envie adBreakStart .

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 21,
        ts: <timestamp>
    },
    eventType:adBreakStart,
    params: {
        "media.ad.podFriendlyName": "ad_pod2",
        "media.ad.podIndex": 1,
        "media.ad.podSecond": 21
    }
}

Ação 17 — Início do anúncio

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear início do anúncio nº 3 durante a exibição 46 21 /api/v1/sessions/{sid}/events

Detalhes da implementação

Rastreie o anúncio intermediário.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 21,
        ts: <timestamp>
    },
    eventType:adStart, params: {
        "media.ad.podFriendlyName": "ad_pod2",
        "media.ad.name": "Ad 3",
        "media.ad.id": "003",
        "media.ad.length": 8,
        "media.ad.podPosition": 2,
        "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"
    },
}

Ação 18 — Ping do anúncio

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 50 21 /api/v1/sessions/{sid}/events

Detalhes da implementação

Envie um ping ao back-end a cada 10 segundos.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 21,
        ts: <timestamp>
    }, eventType:ping
}

Ação 19 — Anúncio concluído

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear conclusão do anúncio nº 1 durante a exibição 54 21 /api/v1/sessions/{sid}/events

Detalhes da implementação

O anúncio intermediário está concluído.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 21,
        ts: <timestamp>
    },
    eventType:adComplete
}

Ação 20 — Pausa do anúncio concluída

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
Rastrear conclusão de ad break durante a exibição 54 21 /api/v1/sessions/{sid}/events

Detalhes da implementação

O ad break está concluído.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 21,
        ts: <timestamp>
    },
    eventType:adBreakComplete
}

Ação 21 — Ping

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 60 27 /api/v1/sessions/{sid}/events

Detalhes da implementação

Envie um ping ao back-end a cada 10 segundos.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 27,
        ts: <timestamp>
    },
    eventType:ping
}

Ação 22 — Pausar

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O usuário pressionou Pause 64 31 /api/v1/sessions/{sid}/events

Detalhes da implementação

A ação do usuário move o estado de reprodução para "pausado".

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 31,
        ts: <timestamp>
    },
    eventType:pauseStart
}

Ação 23 — Ping

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 70 31 /api/v1/sessions/{sid}/events

Detalhes da implementação

Envie um ping ao back-end a cada 10 segundos. O player ainda está no estado "buffering"; o usuário fica preso nos 20 segundos de conteúdo. Procurando…

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 31,
        ts: <timestamp>
    }, eventType:ping
}

Ação 24 — Reproduzir

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O usuário pressionou Play para retomar o conteúdo principal 74 31 /api/v1/sessions/{sid}/events

Detalhes da implementação

Mova o estado de reprodução para "reproduzindo". A chamadaplaydepois de umpauseStartinfere uma chamada de "retomada" ao back-end, assim, um evento resume não é necessário.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 31,
        ts: <timestamp>
    }, eventType:play
}

Ação 25 — Ping

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O aplicativo envia o evento de ping 80 37 /api/v1/sessions/{sid}/events

Detalhes da implementação

Envie um ping ao back-end a cada 10 segundos.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 37,
        ts: <timestamp>
    }, eventType:ping
}

Ação 26 — Sessão concluída

Ação Linha do tempo de ação (segundos) Posição do indicador de reprodução (segundos) Solicitação de cliente
O usuário termina de assistir ao conteúdo até o fim. 88 45 /api/v1/sessions/{sid}/events

Detalhes da implementação

Envie sessionComplete ao back-end para indicar que o usuário terminou de assistir todo o conteúdo.

Exemplo de corpo da solicitação

{
    playerTime: {
        playhead: 45,
        ts: <timestamp>
    }, eventType:sessionComplete
}
OBSERVAÇÃO

Nenhum evento de busca? - Não há suporte explícito na API Media Collection para eventos seekStart ou seekComplete. Isso ocorre porque certos players geram um número muito grande desses eventos quando o usuário final está depurando, e várias centenas de usuários podem facilmente afunilar a largura de banda da rede de um serviço de backend. A Adobe oferece suporte explícito para eventos de busca, calculando a duração da pulsação com base no carimbo de data e hora do dispositivo, em vez da posição do indicador de reprodução.

Nesta página

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now