Interactive TV — The Screen Talks Back
An open cue format that lets streams, commercials, and web pages pop real, tappable READYWARE controls on screen — on cue. Event-driven. No lock-in.
First — the honest part
READYWARE isn't an interactive-TV app. It's a control-everything app — remotes, room macros, live-camera wallpapers, your whole house on any screen you own. Interactive TV isn't a feature we set out to build. It's what falls out of a control layer that can already lay a real, tappable button over anything on screen.
We didn't sit down and say "let's build an interactive-TV platform." We built a remote that renders real controls over any content — a stream, a page, a commercial. The moment that content could ask for one of those controls, the screen could talk back. It came along, because the buttons were already real.
Build the thing that controls everything, and the rest shows up on its own.
That's the whole idea behind READYWARE. Interactive TV is real — but it isn't the point. It's what a universal control layer looks like when the content finally gets to reach back.
The screen has always talked at you. Now it talks back.
READYWARE already lays real, tappable controls over your content. Interactive TV lets the content itself — a stream, a commercial, a web page — pop those controls on cue. Vote, tap-to-buy, play along, open a link that actually works. Right on the screen, over what you're watching.
Why Interactive TV Is Different
The screen has been trying to reach back for twenty years — red buttons, QR codes, second-screen apps, walled-garden "shoppable TV" SDKs. Each one made the same mistake: it built its own little UI, in its own silo, that couldn't touch anything real in your room. Interactive TV doesn't ship a widget. It hands a cue to a control layer that can pop a real button — and even fire your real devices.
Nobody else pairs a stream cue with a universal control layer that can also fire your real devices.
A READYWARE button isn't a plain link. It can be transparent, any size or shape, and do anything the app does — fire an IR/RF code, run a room macro, switch a wallpaper, launch an app, open a page. When content asks READYWARE to show a button, that button is a full, real control laid over the content. That's the gap Interactive TV fills.
Two Clean Layers — One Cue
Interactive TV keeps the message and the action completely separate, exactly like the .irc standard. The content only ever sends a small, open cue. What that cue turns into on screen is READYWARE's job — the same canvas and rendering you already build remotes with.
- do: the verb — vote, open, buy…
- arg: the payload for that verb
- ttl: how long it stays live
- id: dedupe / update key
- sig: optional signature
- A real, tappable button on the canvas
- Transparent, any size, shape, color
- Fires IR / RF / macro / web / app
- Renders on phone, tablet, or TV
- Laid over the content, in sync
Event-Driven. Zero Speed Cost.
The app only listens. It never polls.
A cue arrives, READYWARE renders it, and the app goes quiet again. There's no background loop, no constant checking, no battery drain — and, critically, nothing added to the hot path that fires your IR and RF. Interactive TV rides the pipes that already exist and stays out of the way until the exact moment a cue lands.
Because cues ride existing transports, they can fire in sync with the moment on screen — the poll opens the instant the host asks the question, the buy button appears exactly when the product is shown.
What Creators Can Do
The Cue Object
Every cue is one small, versioned, human-readable JSON envelope. A page or a stream sends it; READYWARE reads it. That's the whole wire format.
"cue": { "oic": 1, // format version "do": "vote", // verb: toast | open | vote | show | fire | launch | buy "arg": { "a": "Keep it", "b": "Cut it" }, // payload for the verb "ttl": 8000, // ms this cue stays live on screen "id": "poll-42", // dedupe / update key "sig": "…" // optional signature — required for gated verbs }
Versioned On Purpose
The oic field is the version. New verbs and fields can be added over time and older apps simply ignore what they don't understand — the same forward-compatible rule that keeps the .irc format alive. A cue that a viewer's app can't act on safely does nothing at all.
Cue Verbs
Everyday content interactions are open — showing a button, a poll, or a link just works. Anything that could reach your own saved device macros, launch another app, or touch payment is gated and never silent.
| Verb | What it does | Gated? | Example |
|---|---|---|---|
| toast | Show a banner / message over the content | Open | "Now airing: Episode 4" |
| open | Open a link in the wallpaper or browser | Open | "See this site" |
| vote | Pop a poll button-set, collect one tap | Open | "Vote A / Vote B" |
| show | Render a tappable READYWARE button on cue | Open | A shoppable hotspot |
| buy | Open a checkout page — never charges anything | Open* | "Buy now" → your checkout |
| fire | Run one of your saved IR/RF/device macros | Gated | "Movie mode" lights |
| launch | Open another app on the device | Gated | Open the store app |
* buy only ever opens a checkout page — it can never complete a purchase or spend your money on its own. You always finish the purchase yourself.
How Cues Travel
Cues ride the pipes that already exist — nothing proprietary to install on the pipe. READYWARE just listens on whichever one the creator already uses.
You're Always in Control
Content can't touch your world without your say-so.
Showing a button, a poll, or a link just works — but nothing a cue sends can fire your real devices, run a macro, launch an app, or reach your content unless you allowed that source first. A "buy" button only opens a checkout; it never spends your money. Default-deny, opt-in, and nothing you already built changes.
Interactive TV vs. The Alternatives
| Approach | Status | Open | Real controls | Fires your devices |
|---|---|---|---|---|
| HbbTV / Red Button | ⚠️ Regional | Partly | ❌ own UI | ❌ |
| QR codes on screen | ✅ Common | n/a | ❌ phone browser | ❌ |
| Second-screen apps | ⚠️ Fragmented | ❌ per-app | ❌ separate app | ❌ |
| Shoppable-TV SDKs | ☠️ Walled | ❌ | ⚠️ vendor widget | ❌ |
| READYWARE Interactive TV | ✅ 2026 | ✅ CC0 | ✅ real buttons | ✅ IR / RF / macros |
License — CC0 Public Domain
The Interactive TV cue format is published under CC0 1.0 Universal (Public Domain) — the same open footing as the .irc standard.
No attribution required. No restrictions. No company can revoke it. No license to comply with. Any site, stream, or app can send or receive cues, free forever — broadcasters, streamers, creators, and viewers alike.
For Broadcasters, Streamers & Site Creators
Interactive TV is an open, published format — a few lines to add, nothing proprietary, no lock-in. Build against the cue format and your cues land in every READYWARE canvas — on phone, tablet, and TV. Want the drop-in script and reference examples, or a hand wiring your first cues? We'll get you going.
Building on Interactive TV?
Tell us what your stream or page wants to send — a poll, a shoppable hotspot, a play-along — and we'll wire it up with you. See the Help guide and FAQ for how controls render on each screen.
"The screen talks back. Now it has a standard."
— READYWARE, 2026