User Guide·Reference

Phone Provisioning

What's covered here

Chapter 7 walked through provisioning your first desk phone. This chapter goes deeper: button layouts, expansion modules, multi-phone management, and the operational considerations of running a fleet of desk phones.

The Phones page

Top nav → Phones (or Provisioning → Phones depending on your menu layout).

Columns:

  • MAC address
  • Phone model
  • Extension assigned
  • Status (Pending / Registered / Online / Offline / Disabled)
  • IP address
  • Firmware version
  • Last registered timestamp
  • Actions (edit, reboot, reset, unassign, delete)

Supported phone models

Most major business desk phone manufacturers:

  • Yealink — T4x, T5x series, EXP modules
  • Grandstream — GXP series, GRP series, GXV (video) series
  • Cisco SPA — SPA303, SPA504G, SPA525G, etc. (older but still common)
  • Polycom — VVX series

Other models: contact your service provider. They can usually add support for new models with a few hours of work.

Adding a phone

Click Add Phone:

Field What to enter
MAC Address 12-character ID from the phone's sticker
Phone Model Pick from dropdown
Extension Which extension this phone registers as
Display Name Optional friendly label
Timezone Defaults to tenant default
Button Layout Optional — apply a saved layout
Expansion Modules Optional — apply expansion module layouts
Admin Password Optional override of the device's local admin password
Local SIP Port Defaults to 5060

Save.

Plugging in the phone

Connect to network (Ethernet recommended). Phone boots, gets IP, looks up provisioning server, downloads config, registers. Total time: 2-5 minutes.

Status flips Pending → Provisioning → Registered → Online.

Phone status meanings

  • Pending — added to dashboard, hasn't checked in yet
  • Provisioning — checked in, downloading config
  • Registered — config loaded, SIP-registered
  • Online — registered and reachable for incoming calls
  • Offline — was registered, hasn't sent a keepalive in 60+ seconds
  • Disabled — manually disabled in dashboard

Button Layouts

Most phones have programmable buttons. Configure once, apply to many phones.

Where they live

Top nav → Provisioning → Button Layouts.

Creating a layout

Click New Button Layout. Form fields:

  • Name — display name
  • Description
  • Phone Model — which model this layout is for (button counts vary)
  • Default — toggle on if this should be the default layout for new phones of this model

The layout editor shows the phone's button positions. Click each to assign:

  • Line key — registers an additional SIP line on the phone
  • BLF (Busy Lamp Field) — monitors another extension's status (free/busy/ringing); button lights match
  • Speed Dial — one-touch dial of a number (internal extension or external)
  • Feature Code — one-touch dial of a star code
  • Park — park the active call to a parking slot
  • Park Retrieve — pick up a call parked on a specific slot
  • Conference — start a conference
  • Custom — manually enter a dial string

Save.

Applying to a phone

When adding a phone (or editing an existing one), pick the button layout from the dropdown. Save. The phone re-downloads config and the buttons update on the next reboot or check-in.

Updating a layout

Edit the layout. Save. Every phone using this layout picks up the change on the next config check (within 1 hour by default; sooner if you reboot).

Common layout patterns

Receptionist phone — line keys for the main lines, BLF for every extension in the office (so the receptionist can see who's on a call), park-retrieve buttons for slots 71-75.

Sales rep phone — line keys for personal extension, BLF for fellow reps, speed dial for the manager, feature code button for "queue agent toggle pause."

Conference room phone — line keys for the main line, speed dial for IT support and the front desk.

Expansion modules (sidecars)

Some phones (Yealink T58, Polycom VVX 401, etc.) support expansion modules — sidecars that add 20-50 more buttons.

Compatible modules

The platform tracks which expansion modules are compatible with which phones. When editing a phone, the dropdown only shows compatible modules.

Common modules:

  • Yealink EXP40 — 40 buttons (with 2 pages → 80)
  • Yealink EXP50 — 20 buttons (color)
  • Polycom VVX EXP — 28 buttons

Configuring buttons on the module

Same as the phone: assign each button to BLF, speed dial, feature code, etc.

Expansion Module Layouts

Same concept as Button Layouts but for the modules. Create once, apply to many.

Top nav → Provisioning → Expansion Module Layouts.

Multi-phone operations

For a fleet of 50+ phones, individual config gets tedious. Use:

  • Bulk apply layout — select multiple phones, apply the same button layout
  • Bulk reboot — restart many phones at once
  • Provisioning Profile — a saved set of defaults (admin password, time zone, button layout) applied to phones in bulk

Firmware management

Phones run firmware that occasionally needs updating (security fixes, bug fixes, new features).

The platform tracks the current firmware version on each phone. When new firmware is available:

  1. Your service provider uploads the new firmware to their library
  2. You see a "Firmware update available" indicator on the phone
  3. Click Update Firmware. Phone downloads and installs (5-10 minutes; phone is offline during).

Schedule firmware updates during off-hours.

Common provisioning issues

Symptom Likely cause Fix
Status stuck on Pending Phone hasn't checked in Verify Ethernet, DHCP. Check the phone's network screen for an IP.
Status stuck on Provisioning Can't reach provisioning server Check the phone's network logs. Likely outbound HTTPS blocked by firewall.
Registers, but calls fail SIP credentials don't match Reboot phone (clear cache). Verify MAC address in dashboard matches the phone exactly.
Two-way audio fails (one-way audio) NAT/firewall not allowing RTP Configure firewall to allow outbound UDP 10000-20000. SIP ALG should be OFF on your firewall.
BLF not updating Phone's BLF subscription failed Reboot phone. If still broken, check phone-side BLF setting.

Phone reset / factory wipe

If a phone is misbehaving, sometimes a factory reset is the fastest fix.

  • From the dashboard — click Reset to Defaults in phone actions. Phone reboots, re-downloads config from scratch.
  • From the phone — most phones have a "factory reset" option in the local menu (varies by model).

After reset, the phone re-provisions from our server within a few minutes.

Removing a phone

Click Delete on the phone. The MAC address is forgotten by the dashboard. The phone, once it can't reach the provisioning server with valid config, stops working.

If you want to redeploy the same phone for a different person: delete it from the dashboard, then re-add with the new extension assignment. Phone re-provisions automatically.