Back to home

Roxom TV

Operator Manual

RTV Planner is the control room for Roxom TV: build the schedule, protect every block with fallbacks, run preflight and send a browser-based signal into OBS or vMix. This page is public; admin actions still require login.

Status

Production live

Workflow

Prepare -> Program -> Operate

Output

Browser playout

Backend

Supabase

Operator Map

Latest Updates

Browser output was confirmed in the web player, vMix and OBS.
Schedule now highlights the block that was just created.
Calendar blocks show start/end ranges and a readable duration chip.
Gaps show their full time range so operators can fill the right window faster.
Admin navigation is now grouped around Prepare, Program and Operate.
Loop Builder separates scheduled loops from fallback-only carousel updates.
Local Supabase media uploads now play publicly through /api/media/assets/:assetId.
Deploy/read-only smoke scripts now persist the latest smoke result for health checks.
Guest lineup plates can now be individualized per slide from /admin/guests.
Metals plates now use the Roxom metals API for gold and silver with Pyth fallback.
Weather plates now have a no-key Open-Meteo fallback.
Calendar/event plates now use a persisted events table.
Normal video programs can show a four-corner Previously Recorded bug in browser output.
The US debt plate no longer depends on a missing background asset.
Supabase bootstrap SQL is available for setting up a fresh backend.
A standalone guest lineup SQL migration is available at /manual/guest-lineup-migration.sql.
OpenNext/Cloudflare Workers deploy scripts are configured for alternate production validation.

Go Live Workflow

  1. 1Open Prepare and add or sync videos, graphics, slides, audio, Vimeo shows, guest plates, weather cities and live endpoints.
  2. 2Create guest records and individualized guest lineup plates when the programming needs guest cards.
  3. 3Open Program to create the broadcast day, build the rundown and assign ready media, slides or live streams.
  4. 4Use Loop Builder for silent slide loops. Save as scheduled blocks, fallback carousel, or both.
  5. 5Enable the optional Previously Recorded bug on normal video programs when needed.
  6. 6Confirm fallback policy before active: block fallback, day fallback, global fallback video or visual fallback carousel.
  7. 7Resolve critical health issues before the signal goes live.
  8. 8Complete runbook preflight checks.
  9. 9Set the day active.
  10. 10Open Operate, launch Live Browser Output, click Start Output, then capture the browser in OBS or vMix.
  11. 11During live, watch active block, next block, fallback reason, drift, playback state and runbook notes.
  12. 12Stop broadcast from Output and complete shutdown checks.

Core Surfaces

Prepare

Open

Unified intake for uploaded media, remote URLs, music beds, Vimeo episodes, guests, weather cities, data plates and reusable graphics before anything reaches air. Uploaded ads/promos and guest media play through the public app media proxy even when Supabase storage is local.

Guests

Open

Create guest records with URL or uploaded photo/video media, then build one Guest Lineup plate per show segment or guest group.

Program

Open

Build a broadcast day as a timed rundown. Program owns Calendar, Schedule, Loop Builder, fallback policy and schedule health.

Runbook

Open

Give operators a repeatable checklist for preflight, live operation, incident response and shutdown.

Operate

Open

Live control-room hub for Output, health, runbook, audit, current block, next block, fallback state and recovery actions.

Preview

Open

Check Vimeo, HLS, MP4, images, audio-backed slides and fallback behavior before a block becomes part of the active day.

Health

Open

Confirm environment, Supabase, storage, Vimeo, Reuters, output token, schema and Go Live Drill readiness from one screen.

Current Limits

  • Production app is live and usable with an operator present.
  • Browser output has been confirmed through web player, vMix and OBS.
  • Uploaded ads/promos use the public app proxy; older 127.0.0.1 asset URLs were backfilled.
  • Guest lineup plates now use operator-configured guests, uploaded/remote photos and short muted videos.
  • Prepare, Program and Operate hubs reduce the visible operator path while keeping direct routes available.
  • Loop Builder can create scheduled slide loops, set the global visual fallback carousel, or do both.
  • Weather plates can be created per city from the admin graphics surface.
  • Metals use Roxom API data when available; weather falls back to Open-Meteo when OpenWeather is not configured.
  • Calendar/event plates use the Supabase events table from the latest migration/bootstrap SQL.
  • Previously Recorded bugs apply only to normal video program blocks, not ads, promos, slides, images, fallbacks, Reuters or manual overrides.
  • The final broadcast plate design still needs a visual remodel.
  • OpenNext/Cloudflare Workers is configured as an alternate deploy path but still needs a real Workers smoke before becoming primary.
  • Browser audio requires one operator click after load or reload.
  • Reuters endpoints are dynamic; refresh expired URLs before or during air.
  • Fallback assets are required for reliable unattended operation.
  • Secrets must stay in environment variables or encrypted settings.