> ## 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.

# Hot-desking (shared-device sign-in)

> Let agents sign in and out of shared desk phones. One phone re-skins as the signed-in user's extension for the shift, then returns to the shared pool.

# Hot-desking

Hot-desking (also called extension mobility or shared-device login) lets
several agents share the same physical desk phone across rotating shifts.
When an agent signs in, the phone becomes *their* extension: inbound calls
to their number ring that phone, and outbound calls from it carry their
caller ID. When they sign out, the phone returns to the shared pool until
the next agent signs in.

Retail floors, clinics, manufacturing lines, and hybrid offices typically
have more agents than desks. Provisioning one SIP credential per person on
a phone nobody owns leaves devices mis-assigned; hot-desking replaces that
with a transient user-to-device binding that follows the person.

***

## What hot-desking solves

* **Shared physical devices** — one desk phone serves the morning shift,
  the evening shift, and a weekend roster without re-provisioning.
* **Personal call routing on shared hardware** — the agent's extension,
  caller ID, and queue membership attach to the device for the duration of
  the session, anywhere they sit.
* **A clean fallback identity** — a signed-out phone keeps its shared-pool
  SIP credential, so it never dangles without inbound routing. Calls to the
  pool arrive on the device's default inbound rule.

***

## Sign in / sign out workflow

Orbit enforces **one active session per device and one per user** — the
same "follow me" semantics as RingCentral Hot Desking or Cisco Extension
Mobility.

1. The agent opens **Voice → Hot-desking** in the dashboard and enters the
   device's SIP username (the shared credential provisioned for that
   phone), optionally with a friendly label such as `Floor 5 — Desk 2`.
2. They can optionally set an end-of-shift time. Orbit signs them out
   automatically when it passes — treat it as a backstop, not a guarantee.
3. On sign-in, any prior session involving either party is released
   atomically: signing in to a phone someone else is using signs them out,
   and signing in at a second phone signs the agent out of the first.
4. Signing in to the same phone twice is a no-op — the existing session is
   re-confirmed rather than duplicated.

**What follows the user:** their extension, caller ID, voicemail delivery,
and queue membership attach to the device for the duration of the session.

**What stays with the device:** its SIP registration, shared-pool inbound
rule, and line provisioning. The device never loses its own identity — it
only borrows the agent's.

**Sign-out is idempotent.** Repeating a sign-out does not error; it reports
when the session actually ended. An admin can also force-release any active
session (terminated employee, lost device) from the same page.

***

## Configure a hot-desk device

1. **Provision a shared SIP credential** for the phone (for example
   `acme-shared-5F-2`) under **Voice → SIP credentials**. This is the
   pool identity the phone holds while signed out.
2. **Register the device** on that credential and confirm it appears as
   registered.
3. **Label the phone physically** with its SIP username so agents can
   type it at sign-in without guessing.
4. Agents sign in from **Voice → Hot-desking**. Admins see every active
   session there, with signed-in duration and a revoke action per row.

No per-device enablement flag is needed — any registered shared credential
can host a session.

<Note>
  Desk reservations are a related but separate feature: a reserved window
  blocks double-booking, and signing in during your window claims the desk
  automatically. No-show bookings release themselves.
</Note>

***

## How sign-out interacts with queues, wallboards, and emergency calling

**Queue membership.** Signing out releases the user-to-device binding; it
does not alter the agent's queue assignments. If no other device is bound
to that agent, inbound queue calls to them find no registered endpoint and
fall through to the queue's no-answer path (next agent, voicemail, or
overflow) exactly as with any offline agent. See
[Voice call lifecycle](/concepts/voice-call-lifecycle) for how those
fallbacks resolve.

**Wallboards and SLOs.** A signed-out, unassigned device contributes no
agent presence. Agents-away metrics treat it like any offline endpoint —
the device itself is not counted as an idle agent.

**Emergency calling.** Orbit does not route emergency calls, and
hot-desking does not change that: a call to 911 / 112 / 999 / 000 from a
hot-desk device is rejected pre-flight regardless of who is signed in.
Because the binding is transient, the physical location of the phone at
call time cannot be assumed from the signed-in user. Post the limitation
at the shared desk and point agents to a mobile or landline phone for
emergencies. Full detail: [Emergency calling](/voice/emergency-calling).

***

## Session rules

* **One session per user, one per device.** A new sign-in displaces the
  overlapping prior session — there is never a concurrent double-bind.
* **Optional auto-sign-out.** Set an end-of-shift expiry at sign-in
  (up to 24 hours ahead). When it passes, the session releases itself and
  the device returns to the shared pool.
* **Housekeeping.** Sessions record the sign-in IP, time, and a release
  reason (`signed_out`, `displaced_by_new_session`, `revoked`, or expiry),
  and every transition lands in the audit log with the actor, device, and
  timestamps — enough to reconstruct who sat where, when.
* **Concurrent sign-in races** are safe: if two sign-ins collide for the
  same device or user, one wins and the other is asked to retry.

***

## Troubleshooting

**Stuck session** — an agent left without signing out, or a session that
must end now: open **Voice → Hot-desking**, find the active session, and
use the admin revoke action. The device returns to the shared pool
immediately. If the agent sets an end-of-shift expiry at sign-in, stuck
sessions clear themselves.

**"A concurrent sign-in beat this one"** — two people signed in to the
same device (or the same user signed in elsewhere) at the same moment.
Retry; whoever signs in last holds the device.

**Sign-out says the session already ended** — sign-out is idempotent; the
response tells you when it actually ended. Check the release reason to see
whether the agent signed out, was displaced by a newer sign-in, hit their
expiry, or was revoked by an admin.

**Device not registered** — the shared SIP credential must be registered
before it can host a session. Re-check the device's registration under
**Voice → SIP credentials** and see
[SIP trunk troubleshooting](/channels/voice/sip-trunks-troubleshooting).

**Inbound calls do not follow the agent** — confirm the session is active
on **Voice → Hot-desking** and that the agent's own extension routes to
"current signed-in device." While no session is active, calls fall to the
shared pool's default inbound rule.

***

## Related references

* [Emergency calling](/voice/emergency-calling)
* [Voice call lifecycle](/concepts/voice-call-lifecycle)
* [Voice quickstart](/voice/quickstart)
* [SIP trunk troubleshooting](/channels/voice/sip-trunks-troubleshooting)
* [Voicemail in the Voice API reference](/api-reference/voice)
