Rastrear a reprodução principal usando o JavaScript 2.x
Criado para:
- Usuário
- Administrador
- Desenvolvedor
As instruções a seguir fornecem orientação para a implementação em todos os SDKs 2.x.
-
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: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: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
NOTE
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);
TIP
O segundo valor é o nome de objeto dos metadados de mídia personalizados, criado na etapa 2.IMPORTANT
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 entretrackSessionStart
etrackPlay
).NOTE
Se não estiver utilizando metadados personalizados, basta enviar um objeto vazio para o argumentodata
emtrackSessionStart
, 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();
IMPORTANT
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 setrackComplete
() é chamado antes detrackSessionEnd
. Qualquer outra chamada de API detrack*
é ignorada depois detrackSessionEnd
, exceto portrackSessionStart
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 chametrackPause()
:- O usuário faz uma pausa explicitamente no aplicativo.
- O player se coloca no estado Pausa.
- (Aplicativos móveis) - O usuário coloca o aplicativo em segundo plano, mas você deseja que ele mantenha a sessão aberta.
- (Aplicativos móveis) - Qualquer tipo de interrupção de sistema que ocorra e faça com que um aplicativo seja colocado em segundo plano. Por exemplo, o usuário recebe uma chamada ou uma pop-up de outro aplicativo ocorre, mas você deseja que o aplicativo mantenha a sessão ativa para dar ao usuário a oportunidade de retomar a mídia a partir do ponto de interrupção.
-
Identifique o evento do reprodutor para reprodução e/ou retomada da pausa e chame
trackPlay
:mediaHeartbeat.trackPlay();
TIP
Esta pode ser a mesma fonte de evento utilizada na Etapa 4. Verifique se cada chamada da APItrackPause()
está emparelhada a uma chamada da APItrackPlay()
quando a reprodução for retomada.
- Cenários de rastreamento: Reprodução de VOD sem anúncios
- Exemplo de player incluído no SDK do JavaScript para obter um exemplo completo de rastreamento.