Seguimiento de reproducción de contenido
El seguimiento de reproducción principal abarca la carga de medios, el inicio, la pausa, la reanudación, la finalización y el final de sesión. Aunque no es obligatorio, el almacenamiento en búfer y la búsqueda de seguimiento también son componentes principales de una implementación de reproducción completa.
Eventos del reproductor
Pasos de implementación
- Identificar cuándo el usuario déclencheur la reproducción (el usuario hace clic en reproducir o la reproducción automática se activa). Cree un objeto de medios con nombre de contenido, ID, longitud, tipo de flujo y tipo de medios. Consulte Nombre de contenido, ID de contenido, Longitud del contenido, Tipo de emisión y Tipo de contenido para ver las definiciones de los campos.
- Opcionalmente, se pueden adjuntar metadatos — metadatos estándar (programa, temporada, episodio, etc.) y variables de datos de contexto personalizadas. Consulte Programa, Temporada, Episodio, Género y Red para ver las referencias de claves de metadatos estándar.
- Llame a Inicio de sesión para iniciar el seguimiento de la sesión. Esto carga los datos y los metadatos e inicia la medición de QoS (tiempo de inicio). SessionStart hace un seguimiento de Intent para reproducir, no el primer fotograma.
- Llamar a Reproducir cuando el primer fotograma de contenido aparece en pantalla.
- Invocar a Pausar inicio cuando el reproductor se detenga. Vuelva a llamar a Reproducir cuando se reanude la reproducción. No hay ningún evento de reanudación independiente.
- Invocar a sesión completada cuando el visor llegue al final del contenido.
- Invocar a Fin de sesión cuando se descargue el reproductor o el visor abandone el contenido sin llegar al final. SessionEnd cierra inmediatamente la sesión; no se puede realizar un seguimiento de más eventos después de ella.
SessionEnd marca el final de una sesión de seguimiento. Si la sesión se vio por completo correctamente, llame a SessionComplete antes de SessionEnd. Se omite cualquier otra llamada de seguimiento después de SessionEnd, excepto SessionStart para una nueva sesión.Reproducción principal
Los siguientes ejemplos muestran un flujo de sesión completo, desde el inicio de la sesión hasta la finalización del contenido y el final de la sesión.
Para obtener detalles de implementación por plataforma, consulte Inicio de sesión, Reproducir, Pausar inicio, Sesión completa y Fin de sesión.
Almacenamiento en búfer
El inicio del búfer indica que el reproductor está esperando datos. El final del búfer se infiere al enviar un evento de reproducción después de BufferStart (API basadas en XDM). En Mobile SDK, llame también explícitamente a BufferComplete.
Para obtener detalles de implementación, consulte Inicio del búfer.
Buscando
Las señales de inicio de búsqueda indican que el usuario está borrando. La función de búsqueda final va seguida de Reproducción para reanudar la reproducción del contenido.
Para obtener detalles de implementación, vea Pausar inicio (inicio de búsqueda) y Reproducir (fin de búsqueda).
Gestión de interrupciones de aplicaciones
La reproducción en una aplicación multimedia se puede interrumpir de varias formas: el usuario hace una pausa, la aplicación se pone en segundo plano y se produce una llamada telefónica. Independientemente de la causa, las instrucciones de seguimiento son las mismas:
- Invoque PauseStart cuando la aplicación se interrumpa (se pone en segundo plano, se pausa el contenido, etc.).
- Invoque Play cuando la aplicación vuelva a estar en primer plano o cuando se reanude la reproducción de contenido.
¿Cuándo debe finalizar una sesión en pausa? Si la aplicación no permite la reproducción en segundo plano, llame a PauseStart inmediatamente y, a continuación, a SessionEnd después de aproximadamente un minuto en segundo plano. La aplicación no puede continuar enviando pings de pausa desde segundo plano y mantener la sesión abierta indefinidamente proporciona una mala experiencia. Si la aplicación admite la reproducción en segundo plano (aplicaciones de audio y de podcast de vídeo), siga enviando pings mientras está en segundo plano.
Reinicio después de un largo período de tiempo en segundo plano: Si la aplicación se puso en segundo plano el tiempo suficiente para que la sesión caducara (inactividad de 30 minutos), llame a SessionEnd para cerrar sin problemas cualquier sesión persistente y, a continuación, llame a SessionStart para comenzar una nueva cuando regrese el visor.
Reanudación de sesiones inactivas
Una sesión caduca automáticamente si no se reciben eventos durante 10 minutos o si no hay movimiento del cabezal de reproducción durante 30 minutos. Si el usuario vuelve después de que haya caducado una sesión, vuelva a llamar a SessionStart para abrir una nueva sesión.
Reanudación entre dispositivos (transferencia entre dispositivos): Cuando un visor transfiera la reproducción entre dispositivos (por ejemplo, pasar de un teléfono a un televisor), use el indicador de reanudación para unir las sesiones en los informes de Analytics:
- En el dispositivo de origen, llame a SessionEnd cuando el visor inicie la conversión. No llamar a SessionComplete: el contenido no ha finalizado.
- En el dispositivo de destino, llame a SessionStart con el indicador de reanudación establecido en
truey pase los mismos metadatos de contenido y la posición del cabezal de reproducción desde el dispositivo de origen.
Si se establece el indicador de reanudación, Analytics incrementará las reanudaciones de contenido en lugar de los inicios de medios en la segunda parte del envío.
Reanudar manualmente una sesión previamente cerrada: Si la aplicación almacena datos de usuario y puede reanudar una sesión previamente cerrada, establezca el indicador de reanudación al inicio de la sesión. Consulte Inicio de sesión para obtener detalles de implementación en todas las plataformas.