Servicio: Nubart SYNC — Integración directa de la posición de vídeo
Versión del documento: 2.0
Autor: Simon Effing
Fecha: 9 de agosto de 2026
Referencia para socios técnicos y de integración. Esta página no está indexada ni enlazada desde la navegación pública. Documenta la integración directa, a nivel de código, con el punto final (endpoint)de sincronización de posición de vídeo de Nubart SYNC, y está pensada para desarrolladores e integradores audiovisuales que estén creando un reproductor personalizado. Si vas a implementarlo en un reproductor BrightSign, usa mejor la guía estándar de instrucciones de BrightSign; este documento es para reproductores que necesitan una integración de nivel más bajo.
Si tu reproductor de vídeo no admite la reproducción basada en navegador, puedes integrar la sincronización de la posición del vídeo directamente en el código JavaScript de tu reproductor reutilizando la función sendVideoPos del script generado.
Si tu reproductor no se puede programar en absoluto con JavaScript, puedes utilizar el archivo HTML generado como plantilla en tu plataforma Nubart:
Reimplementa el mismo patrón de solicitud en cualquier lenguaje o entorno de scripting que admita tu reproductor.
Abre el archivo HTML generado y copia todo lo que hay entre los marcadores:
========== COPY FROM HERE ==========
y
========== COPY TO HERE ==========
en el código JavaScript de tu reproductor. Así obtendrás sendVideoPos() y un playerId para esta sesión. Decidir cuándo llamarla depende totalmente de tu integración.
sendVideoPos(currentVideoTime);
La posición se expresa en segundos, como un número decimal.
La forma de obtener la posición actual depende de tu reproductor: un evento que este active, un bucle de sondeo, un temporizador o una llamada de retorno (callback) desde su API de reproducción. El objetivo es simplemente que el punto final de sincronización nunca tenga una posición con un retraso de más de unos 10 segundos.
Un enfoque sencillo que funciona en la mayoría de entornos:
sendVideoPos() con la posición actual.IMPORTANTE: El intervalo exacto no es crucial. Mientras el vídeo se reproduzca de forma continua, nuestro servidor extrapola la posición actual a partir de la última que recibió, así que un intervalo más largo —o que se te pase alguna actualización de vez en cuando— no supone ninguna diferencia práctica. Lo que importa es que se envíe una nueva posición cada vez que la reproducción salte, por eso vale la pena conectar los eventos de transporte anteriores si tu reproductor los ofrece.
Si tu reproductor no ofrece ningún evento de transporte, basta con el sondeo periódico: la sincronización puede tardar hasta un intervalo completo en ponerse al día tras un salto.
Asegúrate de que lo que sea que controle el sondeo siga funcionando durante los bucles y los reinicios.
sendVideoPos(currentVideoTime, function(status) {
if (status === 200) {
console.log("Sync successful");
} else {
console.log("Sync failed with status: " + status);
}
});
RELACIONADO: El indicador «Sync Status» del portal del cliente (en la pestaña «Nubart SYNC») muestra cuándo fue la última vez que se llamó con éxito a sendVideoPos() para un vídeo concreto. Se actualiza únicamente en función de lo que te informe aquí tu reproductor; no le afecta si el teléfono de algún oyente está conectado o reproduciendo audio.
playerId se genera automáticamente al cargar la página y permanece constante durante esa sesión.