## Overview

The **Monitoring board** is the **Monitoring** tab of the Conversa Labs Team Management area —
a single screen for a supervisor to see, in real time, who is available, on a break or offline right
now, and how each agent is performing over the selected period. It combines three blocks:

- **Live counts** at the top — how many agents are Online, Busy, On break and Offline.
- **Roll-up cards** — total agents, total conversations, average performance (response /
  resolution time) and average CSAT.
- **Per-agent table** — live status, teams, inboxes, conversations, performance, CSAT and
  login/logout sessions, with a link to each agent's detail page.

The board reads the pre-aggregated data in a single pass and **overlays each agent's live status via
ActionCable** — so when someone changes status, their row updates instantly, with **no reload and no
polling**.

## Prerequisites

- The **Team Management** module must be **enabled for the account**.
- The board is **read-only** and meant for administrators (and custom roles granted the Team Management
  permissions). It has no management action — it is for observation only.
- An agent only appears in the table if they are part of the **monitored agents** set (defined by
  the enrollment mode). See the **Agent enrollment** article to choose who is monitored.

## Step by step

### Open the board

1. Open **Team Management** from the sidebar.
2. Go to the **Monitoring** tab.

### Read the live counts

1. At the top, read the four counters: **Online** (teal), **Busy** (amber), **On break** (violet)
   and **Offline** (slate).
2. Just below, the roll-up cards show: **Agents** (total monitored), **Conversations** (sum across
   all agents), **Performance** (average response time) and **CSAT** (average; shows `—` when there
   are no responses yet).

### Choose the period

1. Use the **period filter**: Today / This week / This month / This year / Custom.
2. In **Custom**, enter the start and end dates.
3. The period affects the time-bound metrics — **performance, CSAT and sessions**. Live status,
   teams and inboxes always reflect the current state.

### Read the per-agent table

Each row shows:

- **Agent** — avatar and name.
- **Status** — the live status (with the colored dot). On breaks, a **count-up timer** shows how
  long the agent has been on that break; presence statuses (Online/Busy/Offline) show **no** timer.
- **Teams** and **Inboxes** — the count; hover to see the names.
- **Conversations** — the total, with the `(open/resolved)` split.
- **Performance** — the average response time (or `—` when there is no data).
- **CSAT** — the score as a percentage (or `—`).
- **Sessions** — the number of logins in the period · the time of the last login.

### Open an agent's detail

1. Click **Details** on the agent's row.
2. You land on the **agent performance page**, with the status timeline, adherence and the full
   change history.

## Settings & options

- **Period filter** — Today / This week / This month / This year / Custom. The week start and
  timezone come from the Team Management settings (General tab).
- **Refresh** — the **Refresh** button re-pulls the aggregated numbers on demand; live status
  already arrives on its own over ActionCable.
- **Live status** — overlaid on the aggregated board in real time; the dot and label reflect the
  agent's current status, colored from the status catalog.
- **Conversations** — reflect the current state (open / resolved / pending), not the period window.
- **Sessions** — derived live from the status timeline: each Online stretch counts as one login, and
  the board shows the count in the period and the time of the last login.

## Filter by team

Next to the period filter, the **Filter by team** selector narrows the board (summary and rows) to
the monitored agents that belong to the chosen team. The filter is applied server-side and lives on
the URL (`?team=`), so a per-team view can be bookmarked/shared. It never widens the monitored set —
it only trims the view.

## Use cases

- Keep a single supervision screen to see, right now, who is available, on a break or offline.
- Spot long breaks from the count-up timer without opening each agent.
- Compare conversation load and response time across agents over the same period.
- Quickly check logins and last access per agent before redistributing work.

## Tips, limits and best practices

- The count-up timer appears **only on breaks** — presence (Online/Busy/Offline) has no timer, so a
  row with no timer is normal.
- If an agent is missing, the cause is usually **enrollment** (monitoring mode), not the board.
- For the **Today** period, performance and CSAT may use a live calculation before the aggregation
  job runs — the numbers stay consistent with the agent's page.
- The board is observation only: to change a status, a limit or who is monitored, use the Team Management
  settings.

## Troubleshooting

- **An agent is missing** — check the enrollment mode and the agent's Monitored toggle in Agent
  enrollment.
- **Status doesn't update live** — confirm the real-time connection (ActionCable); use **Refresh**
  to re-pull the aggregates.
- **Performance/CSAT show `—`** — there are no responses/ratings in the selected period; change the
  period or wait for data.
- **No timer on an Online agent** — expected: the count-up is for breaks only.

## See also

- Team Management overview
- Agent statuses and breaks
- Monitored agent enrollment
- Schedules
- Queues
- Reports & Analytics