Let users log into any shared phone with their extension number and PIN. Incoming calls, outgoing caller ID, and voicemail all follow the user — no reload, no admin intervention, no waiting.
Hot desking allows users to log into any shared phone in your office with their own extension number and PIN. Once logged in, the phone becomes theirs — incoming calls ring that phone, outgoing calls show their caller ID, and voicemail works under their mailbox.
When they log out or move to another phone, everything resets automaticaly. Users simply dial a feature code, enter their extension and voicemail PIN, and they're ready to make and receive calls from any designated hot desk phone in the building.
Works with FreePBX 16 and 17, Asterisk 18 through 22, and all major SIP phone brands.
Employees don't have assigned desks and need to use whichever phone is available. Hot desking lets them carry their extension with them.
Day shift and night shift workers share the same physical phones but need seperate extensions, voicemail, and caller ID.
Doctors and nurses move between rooms and stations throughout the day. Their extension follows them to whatever phone they're at.
Agents sit at different stations each day but keep their personal extension, caller ID, and call history.
Tenants rent desks by the hour or day and need phone service at any available station.
Traveling employees visiting other offices need their extension to follow them without any admin setup.
Dial *11 to log in, *12 to log out. The system prompts for extension and voicemail PIN. Authentication takes seconds. No admin involvement, no server reload.
Log into a different phone and the system automatically logs you out of the previous one. No need to explicitly log out first. Calls, caller ID, and voicemail follow you instantly.
Active sessions persist across Asterisk restarts and FreePBX reloads. If the server reboots, all logged-in users remain logged in with correct routing restored.
When logged in, the phone becomes yours completely:
While a user is logged in, direct calls to the phone's own extension are blocked and sent to voicemail. The phone is fully dedicated to the logged-in user.
The module automaticaly clears call forwarding and do-not-disturb on both the user's extension and the hot desk phone during login and logout.
Feature codes can be customized through FreePBX Feature Code Admin.
| Code | Action | Description |
|---|---|---|
*11 | Login | Log into a hot desk phone. Prompts for extension and voicemail PIN. |
*12 | Logout | Log out of the current hot desk phone. Restores the phone to its original state. |
*97 | Voicemail | Access the logged-in user's voicemail (standard FreePBX code, automatically redirected). |
Any phone that's been designated as a hot desk by your admin.
Enter your extension number when prompted, then your voicemail PIN.
Make and receive calls as if this were your own phone. Dial *12 when done, or just log into another phone.
Install via Module Admin or manual upload.
Navigate to Admin → Hot Desking. Add phones to the pool and optionally assign labels (e.g., "Lobby Phone", "Room 201").
The admin panel shows all designated phones, active sessions, and provides force logout buttons for administrative override.
The module uses FreePBX's native Call Forward mechanism to route calls. When a user logs in, the system sets an unconditional call forward from the user's extension to the hot desk phone. This ensures compatability with all FreePBX routing features — ring groups, queues, follow-me, time conditions, and IVRs.
Outbound caller ID is managed through Asterisk's AMPUSER database, providing correct display on both internal and PSTN calls without modifying SIP endpoint configurations.
Login uses the existing voicemail password — no additional PINs to create or manage. If a user changes their voicemail PIN, the hot desk PIN changes with it.
No external dependencies beyond FreePBX core. No additional PHP libraries, external servers, databases, or third-party services required. All routing changes happen through Asterisk's real-time database — no reload needed.
Install as a standard FreePBX module via Module Admin or manually from the command line.
Go to Admin → Module Admin → Upload modules and upload the tarball. Or use the Download (From Web) option to pull it directly from the repo.
Find "Hot Desking" in the module list, click Install, then Apply Config.
After installation, navigate to Admin → Hot Desking in the FreePBX web interface to add phones to the hot desk pool and start managing sessions.
No. Each user can only be logged into one hot desk phone at a time. Logging into a second phone automatically logs out the first.
The phone operates normally under its own extension. It can make and receive calls as any standard FreePBX extension.
Yes to all. Any call path that reaches the user's extension — queues, ring groups, DIDs, follow-me — will ring the hot desk phone they're logged into.
Yes. The admin panel includes a Force Logout button for each active session.
Their voicemail password. No separate PIN configuration is needed. If they change their voicemail PIN, the hot desk login PIN changes with it.
Yes. Released under the MIT license — free for commercial and personal use. No license keys, no subscriptions.
Download the module and have hot desking running on your FreePBX system in minutes.