← Volver al blog
Plugins #scheduled-live

Programá un estreno con el plugin Scheduled Live

Ocultá un stream detrás de una portada con cuenta regresiva hasta su hora de inicio, y revelalo automáticamente. Un plugin de overlay sin worker con agendas por sala y manejo correcto de zonas horarias.

2 min de lectura
Read in English

Generá expectativa, luego revelá

El plugin Scheduled Live te deja programar estrenos de streams. La fuente puede estar ya publicando de forma continua, pero los espectadores no la ven hasta el inicio programado: hasta entonces el reproductor muestra una portada de cuenta regresiva a pantalla completa ("El vivo comienza en…"), y a la hora de inicio la portada se anima hacia afuera y el stream se revela.

Es un plugin tool / player-overlay sin worker — toda la lógica es una cuenta regresiva dibujada por el reproductor, así que no cuesta nada en el servidor.

Dos modos de visualización

  • cover — una portada de cuenta regresiva completa que oculta (y silencia) el stream hasta el inicio. Ideal para un verdadero estreno.
  • badge — un pequeño chip de cuenta regresiva en la esquina que nunca tapa el stream. Ideal cuando querés adelantar un segmento próximo sin bloquear el actual.

Otras opciones de visualización incluyen un color accent y un headline.

Programar un evento

Habilitá el plugin, luego creá eventos en la agenda de la app. Cada evento guarda su hora de inicio como un instante UTC absoluto — el navegador convierte la hora de pared elegida por el operador más la zona IANA en ese instante, así el backend no hace matemática de zonas horarias y no hay ambigüedad entre regiones.

curl -X PATCH $BASE/apps/live/plugins/scheduled-live \
  -H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
  -d '{"enabled": true, "config": {"mode": "cover", "headline": "Estreno Temporada 2"}}'

El room de un evento es opcional: dejalo en null para aplicar la cuenta regresiva a todas las salas de la app, o asignalo para acotar el estreno a una sala. Podés programar múltiples eventos por app.

Por qué el revelado es correcto

La cuenta regresiva, el revelado y la matemática de zonas horarias son funciones puras y están cubiertas por tests unitarios. Como la hora de inicio es un instante absoluto, un espectador en Buenos Aires y uno en Madrid ven caer la portada exactamente en el mismo momento del mundo real — la zona horaria se guarda solo para mostrar y re-editar la hora de pared original del operador.

Dónde aparece

Habilitar el plugin activa el overlay y publica la agenda en el endpoint público de overlays, así los espectadores anónimos de /play y /embed también reciben la cuenta regresiva. Eso lo hace ideal para una página de estreno público: compartí el embed con anticipación, y la audiencia mira el temporizador bajar hasta cero antes de que empiece el show — sin recargar la página, sin un botón manual de "salir al aire" con el que pelear en el momento crucial.