Skip to main content

Attendant Console

The attendant console is the operator workspace for a front desk: a receptionist, office administrator, or dispatch desk that handles live inbound calls for your team. One screen shows every caller still waiting, the live presence of every extension, the shared park lobby, and the calls ringing on colleagues’ phones that the operator can grab. Find it in the dashboard under Voice → Attendant Console. Every action on the page — transfer, park, retrieve, pickup — re-targets an inbound call that is already in progress. The console never originates a new outbound call.

Console layout

The console is organized into four panels:
  • Waiting calls — inbound callers currently ringing or queued, sorted longest-waiting first. Each row shows the caller’s number (or a name when one resolves), a live elapsed-time counter, and the destination number or extension the caller reached.
  • Extensions (lamp field) — a grid of every extension with its live busy-lamp presence state. This is the operator’s view of who can take a call right now.
  • Parked — the shared park lobby: callers placed in one of nine numbered park slots, with how long they have been waiting and a retrieve action on each row.
  • Calls you can pick up — calls currently ringing on colleagues’ extensions. Each row can be answered on the operator’s own SIP device, or the operator can grab the oldest ringing call in one click.
A header badge counts how many extensions are currently free, and a refresh button reloads all four panels on demand. The panels also update automatically every few seconds.

Presence states

Each extension in the lamp field carries one of six presence states: Only Idle and Away extensions accept a transfer; every other state is shown but not selectable as a transfer target.

Core workflows

All workflows start from a caller in the Waiting calls panel.

Answer then transfer — blind

  1. Answer the waiting caller on your own device or softphone.
  2. Click Transfer on the caller’s row. The lamp field enters pick-target mode and a banner shows which caller you are moving.
  3. Click a free extension in the Extensions grid. The caller goes straight to that extension’s ringing device; your call with the caller closes.
  4. To abandon the pick, click Cancel in the banner — the caller stays with you.
The result is a blind transfer: the destination extension rings and, when it answers, hears the caller with no announcement. For the equivalent API operation see the blind transfer endpoint (POST /api/v1/voice/calls/{id}/transfer).

Warm (attended) transfer with an announcement

When the destination must hear who is on the line before the caller arrives, use a warm transfer instead of a blind one: the original caller goes on hold, you speak to the colleague privately, then complete the handoff. Warm transfer is the attended counterpart and is available from the call controls on the connected call — see POST /api/v1/voice/calls/{id}/warm-transfer in the voice API reference. On the console grid, an extension already ringing or talking shows its state so the operator can wait for it to free up before completing the handoff.

Park a call, then retrieve it

Park moves the caller into a numbered holding slot visible to every operator on the console.
  1. From the caller’s row, park the call — the caller lands on a free slot between 1 and 9 and appears in the Parked panel with the slot number and a running timer.
  2. Any colleague retrieves it by clicking Retrieve on the row, or by dialling the slot’s short code from their own device — whichever happens first wins the call.
  3. If the caller should not have been parked at all, click the release action on the row and confirm. Release clears the slot and disconnects the held caller — it cannot be undone.
Park etiquette: agree on a longest-hold window (for example two minutes) after which the parking operator retrieves the call back instead of letting the caller sit. The elapsed-time counter on every parked row makes that timeout visible to the whole team. For more on park slots, retrieve-by-code, and the softphone side, see the Parked calls page under Voice in the dashboard and the /api/v1/voice/park endpoints.

Take over a colleague’s unattended call

When a colleague’s phone rings unanswered, the call appears in the Calls you can pick up panel with the extension it is ringing on and how long it has been ringing.
  1. Pick the device you want to answer on in the Answer on… selector (it lists your enabled SIP devices).
  2. Click Pick up on the row to take that specific call, or Pick up oldest to grab the longest-ringing call without choosing a row.
  3. The call connects to your selected device; it disappears from every operator’s panel.
This is the directed and group call-pickup workflow — the same calls you could also take from a desk phone with directed (*97-style) and group (*8-style) pickup feature codes.

Set up the console for a team

  1. Grant access. The console lists caller numbers and names, so it is limited to workspace owner, admin, and developer roles. Assign one of those roles to each receptionist or operator who needs the console page.
  2. Give every colleague an extension. Issue a SIP credential per teammate (Voice → SIP credentials in the dashboard, or the /api/v1/sip-credentials API). Each enabled credential lights up as a lamp in the Extensions grid; colleagues with no credential cannot appear in presence or receive a console transfer.
  3. Give operators an answering device. The pickup panel needs at least one enabled SIP device per operator to answer picked-up calls on; without one, the pickup actions stay disabled.
  4. Wire inbound calls to the team. Point the inbound number at a ring group containing the teammates’ extensions (see the ring-group section of the voice API reference), and use that ring group as the console team’s overflow lane — when the desk is fully occupied, callers land on the group and reappear in the Waiting calls panel instead of going to voicemail.
  5. Standardize park usage. Decide who owns each retrieving habit (front desk vs. floor) and the hold-timeout window, then stick to the nine numbered slots the lobby exposes.

Worked example: front desk with ring-group overflow

Acme’s front desk takes every inbound call on +14155551234.
  1. The number’s inbound routing points at the Front desk ring group, which contains the receptionist’s extension and two back-office extensions.
  2. In calm hours, the waiting caller lands in the receptionist’s Waiting calls panel, gets answered, and is blind-transferred to the Idle extension of the right colleague.
  3. In rush hours, both back-office extensions are On call. The receptionist parks the caller on slot 2, messages the sales manager (“client parked on 2”), and keeps answering new callers. The sales manager finishes, retrieves slot 2 from the Parked panel — or dials the slot’s short code from a desk phone — and the call moves without the front desk touching it again.
  4. Meanwhile a new caller rings the sales manager’s still-off-hook desk. The call shows in the receptionist’s Calls you can pick up panel; the receptionist takes it with Pick up and starts the same transfer flow again.

Limits

  • One organization per console. The console shows the callers, extensions, park lobby, and ringing calls of the organization the signed-in operator belongs to. It does not span multiple organizations; a shared-services desk that serves several Orbit workspaces needs a separate console sign-in per workspace.
  • Roles see everything, others see nothing. Owner, admin, and developer roles see the same four panels in full. Teammates without those roles cannot open the page at all — there is no reduced view.
  • Inbound callers only. The waiting list deliberately excludes outbound legs; the console is a front-desk surface, not an outbound dialer.
  • Nine park slots. The lobby has numbered slots 1–9. A tenth parking attempt on a full lobby fails, so retrieve or release before parking more.
  • Polling, not push. Panels refresh on a short interval (seconds), so a brand-new call can take a few seconds to appear.

Troubleshooting

  • Calls not appearing in Waiting calls — confirm the operator’s workspace role is owner, admin, or developer; confirm the inbound number’s routing actually lands the call on the team’s queue or ring group; then hit Refresh once before assuming the queue is empty.
  • Extensions panel is empty or missing people — the missing colleagues have no enabled SIP credential, or their credential is disabled. Issue or re-enable the credential and the lamp appears on the next refresh.
  • Pickup actions greyed out — no enabled SIP device exists for the operator to answer on. Add one under Voice → SIP credentials, then select it in the Answer on… selector.
  • Retrieve fails on a parked call — another operator already retrieved it (first retrieval wins), or the caller hung up. The row disappears on the next poll.
  • A transfer target stays unselectable — the extension is ringing, on call, do-not-disturb, or disabled. Only Idle and Away extensions accept a transfer.

Cross-references