> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orbit.devotel.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Set up the omnichannel wallboard on a TV display

> Choose the right shared wallboard for the ops floor — the KPI tile strip, omnichannel channel board, live operations band, or digital-queue depth — understand how it refreshes (event stream first, poll fallback), and mount it as a kiosk on a TV display.

The shared wallboard at **Wallboard** in the top nav is built to live on a TV or a dedicated monitor: a rotating KPI tile strip, a per-channel omnichannel board, a live operations band, and a digital-queue backlog view, all on one screen that needs no interaction. This guide walks the operator setup — which boards to use for which question, how refresh behaves, and how to mount the display as a kiosk.

## Wallboard roles and entry points

There are two wallboard surfaces, and they answer different questions:

* **Wallboard** (`/wallboard`, top nav) — the **cross-channel operations board**. KPI tiles across messaging and voice, per-channel live figures, the live operations band, and the digital-queue backlog. This is the TV board for the whole ops floor.
* **Voice → Wallboard** (`/voice/wallboard`) — the **voice-specific wallboard** covered in [the wallboard guide](/guides/wallboard). Per-queue waiting/wait-time/service-level figures, the full per-agent state grid, SLA banners, and the top-performers leaderboard. Use it when the question is "which queue or which agent," and where caller numbers can be un-masked for an authorized supervisor.

Both surfaces are supervisor-scoped: owner, admin, and supervisor roles see the full org-wide view, and restricted roles fail closed rather than leak other agents' figures. Sign the TV into a supervisor-level account.

## Choose the right board

The omnichannel wallboard stacks four sections, top to bottom, each answering a different supervisor question:

| Section                  | What it answers                                                                                                                                                                                                                                                                                      |
| ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **KPI tiles**            | "How is the day going?" Headline metrics — messages sent, delivery rate, queue depth, active agents, SLA breaches — each color-coded healthy / warning / critical, with a neutral "no data" state when a metric cannot be honestly computed rather than a fabricated 0%.                             |
| **Omnichannel board**    | "Which channel is backing up?" One tile per digital channel plus voice — live, unassigned, assigned, awaiting a first response, and longest wait. Unassigned + assigned always sums to live, so a tile can never show more waiters than it holds.                                                    |
| **Live operations band** | "How many calls are live, who is on shift, and which queues are stalled?" Four headline tiles (live calls, waiting, service level, agents available), a masked live-calls ticker, and the per-agent state strip. Numbers are masked by default so a floor-mounted TV never shows a raw phone number. |
| **Digital queues**       | "Which digital ACD queue needs staffing?" Per-queue backlog and SLA misses for each configured digital queue — email, web chat, WhatsApp, SMS, and the other routed digital channels.                                                                                                                |

If none of the four answer the question, the dedicated [voice wallboard](/guides/wallboard) one click away holds the full per-agent grid and the per-queue breakdown.

## Refresh: event stream first, polling as the fallback

The wallboard reads both the live **event stream** (SSE) and periodic polls, and the header shows which one is driving the board with a **Live** / **Polling** pill:

* **While the event stream is connected**, it pushes updates in near real time; the polls stretch to a slow **30-second** cadence purely as a backstop.
* **If the event stream drops**, the wallboard falls back to a **5-second** poll until the stream recovers, and the pill flips to **Polling** so the TV's refresh mode is visible at a glance.

If both data sources fail, the KPI area renders a "Data unavailable" banner with a **Retry now** button so an operator can recover without waiting out the next poll tick.

### What Pause actually freezes

Pressing **Space** (or the header pause button) freezes the wallboard. Three independent guarantees kick in so the board cannot twitch while a supervisor reviews it:

1. **Source queries pause** — every wallboard feed stops fetching, so no new data is requested.
2. **In-flight requests cancel** — a request already underway at the moment of the pause is cancelled before its result can land.
3. **The rendered view freezes** — the exact snapshot on screen is held until resume, even if another tab writes fresh data into the shared cache. A value cannot change mid-review, whatever the network does underneath.

The paused state **persists across a browser refresh** — a TV tab that an operator pauses stays paused until someone resumes it, and a **Paused** pill in the header keeps the state visible.

## Tile cycling and page pacing

When there are more KPI metrics than fit one page, the tile strip **auto-cycles every 10 seconds**, five tiles per page. A thin progress bar under the board (and the dotted page indicator in the header) shows where the cycle is; both appear only when there is more than one page to cycle through. Arrow keys (**←**/**→**) step pages manually, and clicking a dot jumps straight to that page.

## Tune the alarm rules that escalate from this board

A metric tile turning red is a visual signal; an **alarm rule** is the escalation on top of it — for example, "the longest wait on Support exceeds 120 seconds" or "tenant-wide service level drops below 80%." Rules are evaluated on the same refresh cadence the board runs on, hold a breach timer to avoid flapping (a breach must persist before it pages), and re-fire at most once every 30 seconds while a breach persists. Deliver them to the live wallboard feed, a browser notification, a webhook, or email.

Wire the rules you want supervised, then tune thresholds to the queue's traffic shape. The full rule vocabulary — metrics, comparators, duration gating, channels, and worked examples — is in [Wallboard alarm rules](/guides/wallboard-alarm-rules).

## Mount it on a TV (kiosk mode)

The board is built for a shared display:

1. Open **Wallboard** in the top nav on the display machine.
2. Sign in with a **supervisor-level account** — the board then renders the full org-wide view on a shared screen.
3. Press **F** (or the header fullscreen button) to strip the browser chrome: the board takes over the whole screen, exits the margins, and gains its own dark full-bleed background. Press **F** again or **Esc** to leave fullscreen.
4. Use a **dedicated browser profile** on the mounted display so casual browsing does not interrupt the board.

Keyboard shortcuts behave like a kiosk: **Space** pauses/resumes, **F** toggles fullscreen, and **←**/**→** step tile pages. The shortcuts ignore keystrokes inside any text input — pressing Space in a search box on the same page never pauses the board — so casual keyboard use cannot interrupt the display.

## Troubleshooting

* **A tile shows "—" instead of a number.** That is the "no data" state — the metric could not be honestly computed (for example, no message reached a terminal outcome yet). It is not a smoke alarm; a fabricated 0% would be worse.
* **The board says Polling instead of Live.** The event stream dropped and the board is on the 5-second fallback. It recovers on its own; check the network path to `orbit.devotel.io` if the state persists.
* **The board does not cycle.** Cycling only runs when there is more than one tile page — with five or fewer metrics there is nothing to cycle through.
* **A paused TV resumes cycling after a refresh.** The pause state is stored locally on the display; it only survives in the same browser profile. If the display runs in a guest/incognito profile that discards storage, pause survives only until the profile is reset.

## See also

* [Wallboard: supervisor real-time tiles](/guides/wallboard) — the voice-specific wallboard and the leaderboard/time-window options
* [Wallboard alarm rules](/guides/wallboard-alarm-rules) — the escalation layer on top of these tiles
* [On-call alerting](/guides/oncall-alerting) — the on-call warning feed SLA banners ride on
