Esta documentação abrange o rastreamento na versão 2.x do SDK. Se estiver implementando uma versão 1.x do SDK, você pode baixar os Guias dos desenvolvedores 1.x aqui: Baixar SDKs.
Configuração de rastreamento inicial
Identifique quando o usuário aciona a intenção de reproduzir (o usuário clica em Reproduzir e/ou a reprodução automática está ativada) e crie uma instância MediaObject
.
Nome da variável | Descrição | Obrigatório |
---|---|---|
name |
Nome da mídia | Sim |
mediaid |
Identificador exclusivo de mídia | Sim |
length |
Duração da mídia | Sim |
streamType |
Tipo de fluxo (consulte Constantes de StreamType abaixo) | Sim |
mediaType |
Tipo de mídia (consulte Constantes de MediaType abaixo) | Sim |
StreamType
Constantes de:
Nome da constante | Descrição |
---|---|
VOD |
Tipo de fluxo para vídeo sob demanda. |
LIVE |
Tipo de fluxo para conteúdo LIVE. |
LINEAR |
Tipo de fluxo para conteúdos lineares. |
AOD |
Tipo de fluxo para áudio sob demanda. |
AUDIOBOOK |
Tipo de fluxo para audiobook. |
PODCAST |
Tipo de fluxo para podcast. |
MediaType
Constantes de:
Nome da constante | Descrição |
---|---|
Audio |
Tipo de mídia para fluxos de áudio. |
Video |
Tipo de mídia para fluxos de vídeo. |
var mediaObject =
MediaHeartbeat.createMediaObject(<MEDIA_NAME>,
<MEDIA_ID,
<MEDIA_LENGTH>,
MediaHeartbeat.StreamType.VOD,
<MEDIA_TYPE>);
Anexar metadados
Opcionalmente, anexe objetos de metadados padrão e/ou personalizados à sessão de rastreamento por meio de variáveis de dados de contexto.
Metadados padrão
Implementar metadados padrão no JavaScript
Anexar o objeto de metadados padrão ao objeto de mídia é opcional.
Referência da API de chaves de metadados de mídia - Chaves de metadados padrão - JavaScript
Consulte o conjunto completo de metadados aqui: Parâmetros de áudio e vídeo
Metadados personalizados
Crie um objeto variável para as variáveis personalizadas e preencha com os dados desta mídia. Por exemplo:
/* Set custom context data */
var customVideoMetadata = {
isUserLoggedIn: "false",
tvStation: "Sample TV station",
programmer: "Sample programmer"
};
Rastrear a intenção de iniciar a reprodução
Para começar a rastrear uma sessão de mídia, chame trackSessionStart
na instância do Media Heartbeat:
mediaHeartbeat.trackSessionStart(mediaObject, customVideoMetadata);
O segundo valor é o nome de objeto dos metadados de mídia personalizados, criado na etapa 2.
trackSessionStart
rastreia a intenção de reproduzir do usuário e não o início da reprodução. Essa API é utilizada para carregar os dados/metadados e estimar a métrica de tempo do início de QoS (duração entre trackSessionStart
e trackPlay
).
Se não estiver utilizando metadados personalizados, basta enviar um objeto vazio para o argumento data
em trackSessionStart
, como mostrado na linha comentada do exemplo de iOS acima.
Rastrear o início real da reprodução
Identifique o evento no reprodutor de mídia para o início da reprodução, em que o primeiro quadro da mídia é renderizado na tela, e chame trackPlay
:
mediaHeartbeat.trackPlay();
Rastrear a conclusão da reprodução
Identifique o evento no reprodutor de mídia para a conclusão da reprodução, em que o usuário assistiu ao conteúdo até o fim, e chame trackComplete
:
mediaHeartbeat.trackComplete();
Rastrear o final da sessão
Identifique o evento no reprodutor de mídia para o descarregamento/encerramento da reprodução, em que o usuário fecha a mídia, e/ou a mídia é concluída e descarregada, e chame trackSessionEnd
:
mediaHeartbeat.trackSessionEnd();
trackSessionEnd
marca o fim de uma sessão de rastreamento. Se a sessão tiver sido assistida até o final, onde o usuário assistiu ao conteúdo até o fim, verifique se trackComplete
() é chamado antes de trackSessionEnd
. Qualquer outra chamada de API de track*
é ignorada depois de trackSessionEnd
, exceto por trackSessionStart
para uma nova sessão de rastreamento.
Rastrear todos os cenários de pausa possíveis
Identifique o evento do reprodutor de mídia para pausa e chame trackPause
:
mediaHeartbeat.trackPause();
Pausar cenários
Identifique qualquer cenário no qual o reprodutor de mídia será pausado e verifique se trackPause
foi chamado corretamente. Os seguintes cenários exigem que o aplicativo chame trackPause()
:
Identifique o evento do reprodutor para reprodução e/ou retomada da pausa e chame trackPlay
:
mediaHeartbeat.trackPlay();
Esta pode ser a mesma fonte de evento utilizada na Etapa 4. Verifique se cada chamada da API trackPause()
está emparelhada a uma chamada da API trackPlay()
quando a reprodução for retomada.