Sign in to Switchboard

That email and password don't match. Try again, or ask your admin to reset it.
or
Trouble signing in? Contact your admin.
Switchboard
—
Telephony
Records
System
Asterisk22.4.1 LTS
SIP stackPJSIP
Uptime41d 6h

Dashboard

⌘K
All systems normal
Every config reload since the last change succeeded.
AD

System overview

Live state of the switch — active calls and trunk channels in use refresh every 10 seconds; the rest reload with the page.

Active calls
—
—
Extensions registered
—
—
Trunk channels in use
—
Live count — trunks have no configured capacity to measure against
Answer seizure ratio
—
Rolling 12h, all calls

Live calls

0 active
FromToDuration
Loading…

Call volume

last 12 hours
Answered Unanswered

Trunk health

Loading…

Host resources

CPU—
Memory—
Disk — /—
Load avg—
Host—
Kernel—
Asterisk—

Security events

Loading…

Extensions

Loading…

Bulk import extensions

CSV with an extNumber,displayName header row (column order doesn't matter) — department and email are optional extra columns. Each row is created the same way as a single "New extension" would be; a bad row is reported back, not left unclear which one, and doesn't stop the rest of the file from importing.

Context Codecs
Loading…

Trunks

SIP carriers and their registration state. Select one to inspect its configuration.

Loading…

—

—
Registration
Just a label for your own reference — doesn't change how the trunk connects.
The hostname your provider gave you for SIP trunking — check their trunk setup docs.
Your provider's own SIP port — not the port we listen on for their traffic (see Local transport below).
Leave blank when saving to keep the current password.
The number passed to the carrier as the caller ID for calls on this trunk, unless an extension has its own override.
Behavior
EnabledOff completely pauses this trunk — no registration, no outbound or inbound calls — without deleting its configuration. Routes that reference it will fail cleanly rather than reach a disabled carrier.
Register with this carrierOff for static-IP-authenticated trunks that don't need a REGISTER
Send account number as caller ID to this carrierLeave off unless this specific carrier requires it (a small number do, and reject calls without it) — it overrides your real outbound caller ID with this trunk's own account number on every call. Most carriers don't need this; on by default it would silently hide your real caller ID.
Local transport
Which port WE listen on for this carrier's traffic — blank uses the system default. Override if the carrier requires a non-standard port.
Outbound routes using this line
—
Inbound numbers on this line
—
Technology (PJSIP), codec order (ulaw/alaw), qualify/OPTIONS pings, and per-trunk failover aren't individually configurable in this build yet — every trunk uses the same secure defaults. Local transport/port are configurable — see the Registration tab.

Inbound routes

Loading…

DIDDescriptionTrunkDestination
Loading…

Call menus

Set up what callers hear and where their key presses send them.

New call menu

Key press options

Outbound routes

Decide which outside line carries a call, and who's allowed to dial what. Routes are tried in order — the first match wins.

PriorityRouteWhen someone dials…Line(s)
Loading…

Call logs

Loading…

Calls (most recent 100)
—
Answered
—
Not answered / failed
—
Average talk time
—
to
TimeFromToDurationOutcomeRecording
Loading…

Phones

Loading…

New phone

Only enabled models show up — manage the list in Phone models.
MAC addressVendorModelExtensionSidecarConfig
Loading…

API keys

Programmatic access for scripts and integrations that can't sign in interactively.

This is the only time the full key is shown — copy it now. Only a prefix is stored, so it can't be shown again.

New API key

NameKeyAccessCreated byLast usedStatus
Loading…

Fraud detection

Watches live call activity for toll-fraud call-rate spikes, domestic traffic pumping, and destinations you've flagged.

Thresholds

Auto-suspend the source extensionWhen a call-rate alert can be attributed to a specific extension
Traffic-pumping detectionAlert-only — never auto-suspends, since the destination can be legitimate at low volume

Flagged destination prefixes

Recent alerts

TimeTypeTrunkExtensionDestinationCountAuto-suspended
Loading…

Network / NAT

Whether this box sits on a public IP directly, or behind NAT — gets the SIP/RTP addressing right either way.

Used for SIP/SDP so phones and trunks outside the LAN get a reachable address for audio. "Detect" asks an outside service what IP your traffic looks like it's coming from — review before saving, since it can't tell a NAT/firewall port-forward is actually set up correctly.
System default — an individual extension or trunk can still override it.
Used by extensions/trunks set to plain TCP signaling.
Used by extensions/trunks set to secure (TLS) signaling. Must differ from the TCP port.
Saving restarts Asterisk gracefully (waits for active calls to finish) — transport changes aren't picked up by a plain reload.

Keepalive & timeouts

How Asterisk checks a device/trunk is still alive, and when it gives up on a call whose audio just stopped — separate from the phone's own NAT keepalive (Settings → Provisioning). Saving these just reloads config, no restart needed.
How often to ping each extension/trunk to check it's alive. 0 disables qualifying entirely.
How long to wait for a response before marking it unreachable.
Hang up a call if no audio arrives for this long (a dead NAT binding mid-call). 0 disables.
Same, but while the call is on hold — usually longer than the timeout above. 0 disables.

Queues

Group calls that ring several agents at once, and hold callers fairly in line when everyone's busy.

Loading…

—

Agents
—
—
—
—
—

New queue

Agents

Ring groups

Ring several phones for one call — no waiting line, no agents logging in or out, just "everyone's phone rings."

Loading…

—

Members
—
—
—

New ring group

Members

Recordings

Loading…

Recording policy

On top of each extension's own recording toggle (Extensions → Device) and each conference room's own toggle — these force recording for everyone, regardless of any per-resource setting. Check your local consent/recording laws before turning these on.
Record all internal callsExtension-to-extension, ring groups, queues, and conference rooms
Record all external callsAnything that crosses a trunk — outbound dialing and inbound calls from a DID
TimeExtensionSize
Loading…

Voicemail

Every mailbox that has voicemail turned on, in one place. Reset a PIN, change where messages get emailed, or just find one below.

Loading…

—

—
Email new voicemailsNotify this mailbox's email address whenever a new message arrives
Invalidates every link already emailed for this mailbox.
Delete after emailingDon't keep a copy in the mailbox once it's been emailed — not available in link mode
FromReceivedDuration
Loading…
No mailboxes with voicemail enabled yet — turn it on from an extension's Voicemail tab.

Utilities

Backups, packet capture, and other day-to-day admin tools that don't fit anywhere else.

Named, independently-scheduled backup jobs — each picks what to back up (database, generated config, voicemail, recordings, hold music, uploaded audio, branding — or all of it) and which destinations to sync to. Every archive lands on local disk first (a configurable path below); download, restore, or delete any copy in the history below. Restoring overwrites live data immediately, so it's a real, deliberate, type-to-confirm action, not a casual one.

Last backup
—
—
Backup jobs
—
—
Stored copies
—
On local disk

Backup jobs

NameScheduleScopeDestinationsLast run
Loading…

Add backup job

No destinations configured — this job stays local-only. Add one under Backup destinations.
Enabled"Run now" always works regardless of this setting

Backup history

Have a backup from another Switchboard box, or one pulled from cold storage? Upload it here — it's validated and added below, then restores/downloads/deletes like any other.

DateJobSize
Loading…

Settings

A local path shared by every job — can point at a mounted network share. Leave blank for the default. Checked for write access when saved.

SIP signaling only — never captures RTP/call audio. Filter by extension, by IP, or just a port; watch it live, download the PCAP for Wireshark, or view a SIP call-flow ladder right here.

Continuous capture

Always-on SIP signaling captureArchives every call's signaling automatically, rotated hourly, so you can look back at a call after the fact from its Call Logs entry — even one nobody flagged as a problem until it was already over.
Days. Older hourly files are purged automatically.
—

New capture

Resolved to that extension's current registered IP the moment the capture starts.
StartedFilterDurationStatusSizePackets
Loading…

Capture

— Download PCAP
TimeSourceDestinationMessage
No packets yet.

Where each backup gets copied for redundancy, beyond the local disk copies on the Backups tab — S3-compatible cloud storage or another server over SFTP. Every enabled destination is independent; one failing never affects the others or the local backup itself.

Backup destinations

Every enabled destination gets a real copy of each backup, independently — for redundancy, not a fallback chain. Browse a destination to pull a copy back down (e.g. if the local copies on the Backups tab are gone) — once pulled, it restores/downloads/deletes like any local backup.

NameTypeProviderLast syncStatus
Loading…

Add backup destination

EnabledOff pauses syncing to this destination without deleting it

Email the call-volume/answer-rate summary and/or queue performance report on a recurring schedule — daily, weekly, or monthly — to whoever needs it, without them having to open Switchboard. Uses the SMTP relay configured under Settings → Email delivery.

Report schedules

NameReportCadenceRecipientsLast sent
Loading…

Add schedule

Enabled"Send now" always works regardless of this setting

How long call detail records and call recordings are kept before they're automatically deleted. Off by default — nothing is purged until a retention period is set below.

Retention

—

Migrate extensions, trunks, inbound/outbound routes, ring groups, and queues from a real FreePBX "Backup and Restore" archive (.tar.gz). Nothing is written until you review the preview and confirm — every record is created through this app's own real API, with the same validation a manual entry gets. Imported trunks are created disabled and imported outbound routes have no trunk attached, so nothing can route real calls until you review and enable them.

1. Choose a backup file

Up to 250MB. SIP passwords/trunk secrets are never shown on screen.

2. Choose what to import

Everything is checked by default. Uncheck anything you don't want created — e.g. a trunk you don't recognize, or a route that conflicts with something already configured.

3. Results

High availability

Active/standby clustering across two Switchboard nodes sharing a floating IP — automatic failover if the active node goes down. A call in progress at the moment of failover drops (mid-call state isn't preserved); everything else — config, registrations, the database — recovers on the standby.

This node
—
Loading…
Peer
—
Floating IP: —
Last file sync
—
Last promoted: —

Enable HA on this node

Turns this node into the FIRST node of a pair — it claims the floating IP alone (no peer yet). Do this on one node, then either generate a join token below for a second node, or — if you're setting up the second node — paste a token generated on the first one.

Pair a second node

Generate a one-time token here, then paste it into the second node's own HA page (under "Join an existing pair"). Expires in 15 minutes, one use only.

Join an existing pair

Paste a join token generated on the FIRST node's HA page. This will overwrite this node's local database and secrets to match the pair — only do this on a fresh node, not one already holding real data.

Manage this pair

Failover is automatic (keepalived watches this node's own Asterisk reachability). Manual override below is for planned maintenance — e.g. taking the active node down for an OS update without waiting on a health-check timeout.

Security

Who's trying to get in, and who's been blocked. Backed by real fail2ban jails watching SIP registration and admin panel logins — bans are real UFW firewall rules, not just a database flag.

Currently blocked
—
IP addresses banned right now
Total failed attempts
—
Across SIP and the admin panel, since fail2ban last restarted
Jails watching
—
—

Currently blocked

—
Per-IP ban timestamps/expiry aren't available from fail2ban's simple status query — only the current jail-wide setting below.
IP addressReason
Loading…

Ban settings

Applies to both jails (SIP and admin panel) — fail2ban doesn't need different thresholds for each here.

Call security

Reject anonymous inbound callsDeclines any inbound call with no real caller ID before it ever rings a phone, ring group, or IVR — the scanner/robocall traffic that presents blank caller ID is the usual source of phantom ringing.

Firewall

Real UFW status — the actual rules currently enforcing on this box, plus trusted sources: known carrier trunks and paired systems get scoped firewall access and are excluded from fail2ban's auto-ban, so they're never caught by the same dynamic banning that protects everything else.

Firewall
—
—
Rules configured
—
Allow rules currently active
Blocked today
—
Connections dropped by the default-deny policy

Rules

ActionProtocolPortSourceComment
Loading…

New trusted source

Trusted sources

SourceTypeHostResolved IPPortStatus
Loading…

Settings

Company details, who can sign in, and the system underneath it all.

—
Managed by
Checking status…
This is the only time the full key is shown — copy it now and give it to your MSP/Central. Only a prefix is stored, so it can't be shown again.

General

None Company logo
PNG, JPEG, WebP, or SVG — up to 5 MB. Shown on the login screen and admin sidebar.

New user

Starts from the access role's own defaults — check to grant, uncheck to deny, for this person specifically. Security, Firewall, Backups, Settings, and the rest of System stay Admin-only no matter what's checked here.

Users

NameRoleLast sign-in
Loading…

Single sign-on (SSO)

Uses YOUR OWN Google Workspace or Microsoft 365 app registration — Switchboard doesn't ship with either provider pre-configured. SSO only signs in an email that already has a Switchboard user account; it never creates one.

GoogleSign in with a Google Workspace or personal Google account
Microsoft 365Sign in with a work or school Microsoft account
Require SSO for adminsTurns off the email/password form for admin sign-in — Google or Microsoft only

Notifications

A trunk goes downEmail admins the moment a line stops registering — checked every 5 minutes
A backup failsSo a failed backup never goes unnoticed
A security incident happensNew bans, repeated failed sign-ins — checked every 5 minutes
Daily voicemail digestOne email each morning summarizing new messages
A relevant security update is foundAsterisk, PJSIP, or core OS package with a new update from the security repository — checked every 5 minutes

Email delivery

Not configured
Real SMTP relay — used for voicemail-to-email and any other notification this app sends. Custom SMTP only: there's no hosted relay behind this app to fall back on.
Name and email together, e.g. "Acme Inc <notifications@acme.com>" — this is what recipients see as the sender.

System

Asterisk—
SIP stackPJSIP
Host—
Kernel—
Uptime—

SSL/TLS

—
A new certificate is ready —
Last request failed
Auto-renewChecks daily; renewed certificates still need Apply, same as any other change
Issued—
Expires—
Domain—
One certificate covers the admin console (HTTPS), phone provisioning (HTTPS), and the SIP TLS transport.
Bring your own certificate from an internal CA or an existing wildcard — Switchboard won't try to renew this one for you. RSA keys only for now.
Browsers will warn visitors A self-signed certificate isn't trusted by any browser or phone by default. Fine for local testing, not for production use.
RSA 2048 · valid 825 days

About

Switchboard—

Time conditions

Route calls differently depending on the day and time — one time window per condition, with a destination for inside it and a destination for outside it.

Loading…

—

—
—
—
—

New time condition

Call flows

A manual override switch between two destinations — dial the control number from any phone to flip it (day/night, open/closed), or flip it here. Point an inbound route, IVR option, time condition, or feature code at a call flow the same way you'd point it at an extension.

Loading…

—

—
—
—
—
—
Dial — from any phone to flip between normal and override.

New call flow

Conference rooms

Shared dial-in bridges anyone can join with a PIN — no per-call scheduling needed.

Loading…

—

Live participant list/mute/listen-in aren't available yet.
—
—
—
—
—
—

New conference room

Announce when someone joins or leavesA short tone as participants come and go
Music while waiting for othersPlays while you're the only one in the room
Record this roomSaved alongside your other call recordings

Call parking

Put a call on hold in a shared slot so anyone can pick it up from a different phone. Asterisk's own built-in default lot (dial 700, slots 701-720) always exists — the lots below are additional ones you manage.

Loading…

—

—
—
—
Live occupancy
SpaceStatusCallerParked forRings back in
Loading…

New parking lot

Patches

Pending updates for Asterisk, PJSIP, and the rest of this system's real stack — read directly from apt's local package cache, refreshed by the OS's normal automatic update timer.

Pending updates
—
Asterisk, PJSIP, MySQL, nginx, OpenSSL/OpenSSH, kernel, fail2ban, ufw, Node.js
Cache last refreshed
—
Refreshed by the OS's own unattended-upgrades timer

Available updates

PackageInstalledAvailableSource
Loading…
Applying a package is a real risk to calls in progress on a live phone system (a kernel bump needs a reboot, a database engine jump can change on-disk format, a PJSIP update can change config semantics) — each package applies on its own, one at a time, only when you click Apply and confirm, never automatically. Asterisk restarts gracefully afterward (waits for active calls to drain, up to 30s) and nginx/MySQL/fail2ban/tftpd-hpa/ssh reload or restart as appropriate; a kernel update still needs a manual reboot on your own schedule.

Audio library

Upload once, use anywhere — an IVR greeting, a queue's hold music, or a mailbox's voicemail greeting. Anything you upload is converted to the format Asterisk actually plays.

Audio files
—
Greetings, hold music, voicemail
Storage used
—MB
Converted to 8kHz mono WAV on upload
Not used anywhere
—
Safe to clean up

System default hold music

Used everywhere nothing more specific overrides it — extension holds/parks, inbound calls. An inbound route can set its own hold music instead, from that route's own edit drawer.

Upload audio

Any common format, up to 20 MB — converted to WAV automatically (this Asterisk install has no MP3 playback support at all, so nothing is ever stored as-is).
NameTypeDurationUsed by
Loading…

Reports

How your phone system is performing over time — call volume, queue performance, and where calls actually go.

Export CSV
Total calls
—
last 30 days
Answer rate
—%
—
Avg. talk time
—
Answered calls only

Call volume

last 30 days
Answered Unanswered

Queue performance

last 30 days
QueueNameOfferedAnsweredAbandonedAvg waitSLA %
Loading…

Busiest times

Fewer More

Extension activity

ExtNameCallsAvg talkMissed
Loading…

Ring group performance

GroupNameCallsAnsweredAbandonedAvg talkAvg ring
Loading…

Softphones

Email anyone a QR code to install and sign into the mobile or desktop app — nothing for them to type, no password to hand over.

Active softphones
34/ 91
Signed in on a phone, tablet, or computer
Awaiting scan
6
Emailed, haven't scanned yet
Not set up
51
Still just a desk phone, or nothing yet
ExtNameStatusDevice
101 Amara Reyes Active Amara's iPhone · connected 2 days ago
102 Jae-won Kim Not set up —
103 Priya Nandakumar Active Zoiper · Android · connected 5 days ago
104 Tomás Ferreira Not set up —
105 Nadia Osman Awaiting scan Emailed today 09:14 · expires in 6 days
108 Marcus Idowu Not set up —
112 Elena Vasquez Active Browser · Chrome — no app installed
121 Overnight desk Not set up —
122 Devon Cole Awaiting scan Emailed 2 days ago · expires in 5 days
Showing 9 of 91

Messages

Real text messages over SIP (RFC 3428 MESSAGE) through your trunks — no separate carrier API or webhook, the same connection that carries your calls. Your trunk provider needs to actually support SMS-over-SIP for delivery to work; this sends/receives whatever the trunk is willing to carry.

Conversations

Loading…
?
Pick a conversation, or start a new one
No conversation selected.

Paired systems

Real inter-PBX SIP trunking — dial a prefix + their extension to reach another Switchboard install directly. Same PJSIP building blocks as Trunks, verified end-to-end (a real call round-trip through the peer and back) before this page was built. Manual mutual setup for now: enter the same shared secret on both systems — no invite-code exchange yet.

Paired systems
—
Each one a real SIP trunk to a peer PBX
Loading…

—

Editing an existing pairing isn't available yet — unpair and recreate it instead. No live reachability status, extension directory sync, or cross-system call history yet either.
—
—
Click "Reveal secret" above

Phone models

Turn on the vendors and models you actually use — enabled models show up in Phones → Add a phone. Auto-provisioning config is only generated for Yealink and Grandstream right now; Cisco and Poly can be tracked here but won't get a config file yet.

Models enabled
—/ —
Only these show up when adding a phone
Vendors in use
—
—
Catalog size
—
Models you've added here

New phone model

Programmable keys

Every phone using this model gets the same key layout — line keys and, if the phone has one attached, sidecar/expansion-module keys just continue numbering past the base phone's own keys (e.g. a 21-key phone's first sidecar key is position 22).
VendorModelTypeStatus
Loading…
Disabling or deleting a model doesn't affect phones already using it — it only stops it from being offered for new ones. Cloning copies its key layout too, so you can tweak one phone's keys without rebuilding the whole layout.

New sidecar model

Sidecar / expansion modules

Attach a sidecar to an individual phone from the Phones page — a phone model's own programmable keys can be placed in the sidecar's key range regardless of whether a given phone has one connected; provisioning only sends that config to phones that actually have a sidecar assigned.
VendorModelKeysStatus
Loading…

Provisioning

Global settings for auto-provisioning phones — TFTP and HTTPS both serve from the same generated files. Per-model key templates live in Phone models → Keys; this page is everything that applies fleet-wide instead.

Server info for DHCP / manual setup

SIP server phones register to—
TFTP boot server (option 66)—
HTTPS provisioning URL—
HTTPS by IP (no DNS needed)—
HTTP by IP (no cert needed)—
TFTP wants a plain IP (option 66). Domain URL needs DNS + a trusted cert; HTTP-by-IP needs neither but is unencrypted — pick what the phone supports.

Global provisioning settings

Blank uses this box's auto-detected LAN IP. Enter a specific IP or hostname to override it — useful if auto-detection ever picks the wrong network interface, or you'd rather phones use a stable hostname than an IP.
One IP or CIDR range per office site — no rows means TFTP stays closed at the firewall. "Use my current IP" adds a row; still needs Save to actually open it.
Not set
Phone NAT keepalive (UDP timeout)Phones send their own periodic packet to hold their NAT port mapping open — separate from Asterisk pinging the phone (Settings → Network / NAT)

Feature codes

Star codes any phone can dial — no extra setup on the phone itself needed. Turn any of these off if you'd rather that code stay free for something else, and change the code itself if it collides with a carrier feature code you already use.

CodeFeatureOn
Loading…
Call forward and do-not-disturb set from a phone here take effect on the next call, not mid-call — dialing *72/*78 etc. plays no fancy confirmation tone yet, just accepts the input and hangs up. Both are also directly settable per-extension from the Extensions drawer if you'd rather not rely on the phone-side code at all.

Custom feature codes

CodeNameDestinationStatus
Loading…
AR

101 · Amara Reyes

from-internal
Available
Identity
Access
Call recordingInbound and outbound calls to this extension
SuspendedBlocks registration — the phone can't sign in while this is on
Endpoint
Context, max contacts, and codecs are fixed to secure defaults for every extension — not per-extension configurable in this build.
Resetting deregisters the device until it's reconfigured with the new password.
Blank uses the system default. Override if this phone's network blocks the standard port.
NAT handlingTrust the phone's actual observed IP/port for registration and RTP, instead of what it claims in its own SIP headers — fixes one-way/no audio for a phone behind its own router (a remote worker, a different subnet than this server)
ulaw alaw g722
Yealink T54WSee it in Phones
Not set upMobile or desktop app
Voicemail
Voicemail enabledBox 101
Email new voicemailsNotify the email address above whenever a new message arrives
Invalidates every link already emailed for this mailbox.
Delete after emailingDon't keep a copy in the mailbox once it's been emailed — not available in link mode, the message has to still exist for the link to work
Follow me
Not available yet — every call routes to this extension only.
Ring other numbers tooAlso ring a cell phone or another extension
Advanced
Routes every outbound call from this extension through this trunk instead of the normal outbound-route matching — for a department that needs a specific carrier, or a test extension pinned to a sandbox trunk.
Beats whichever trunk actually carries this extension's calls — the trunk's own default (above) only applies when this is blank.
The rest of this tab isn't available yet.
Call waitingAllow a second call while on a call
Show as "Do not disturb" when in a callHides this extension from ring groups while busy

+1 415 555 0100

Main line
Enabled
Identification
Overrides the system default for calls arriving on this route specifically.
Destination
2

Local & long distance

Priority 2 of 5
Enabled
About this route
Stack more than one dial form under this same route — e.g. bare 10-digit AND 1+10-digit — instead of duplicating the whole route (lines, caller ID) just to cover a second way of dialing the same kind of call. Asterisk pattern syntax — N=2-9, X=0-9, .=one or more of anything. Picking a quick pattern above adds a row here — still fully editable after.
Lower tries first.
The first line is tried first. If — and only if — it's unreachable (unregistered, disabled, network down), the next one is tried automatically. A busy signal or no answer doesn't fail over; a different line can't fix either of those.
Beats the trunk's own default for calls matching this route; an extension's own caller-ID override still beats this.

+1 415 555 0155

Today 11:14:02 · 4:12
Answered
Rang for 4 seconds, then talked for 4:08.
Call path
Recording
4:12 Download

This call wasn't recorded.

Technical details
Channel—
Context—
From—
To—
SIP trace Download PCAP

Pair a system

Link another Switchboard install to this one
No invite-code exchange yet — manual mutual setup instead. Enter the same shared secret here and on the other Switchboard's own pairing pointed back at this box. Real SIP trunking underneath (same PJSIP building blocks as Trunks), verified end-to-end before this page was built.
Dialing 3101 reaches their extension 101. Must not be the leading digit(s) of any local extension/ring group/queue/IVR/etc.
At least 20 characters — this authenticates real inter-PBX trunking. "Generate" makes a strong random one for you to copy onto the other system; otherwise enter the value already set there.

How a call finds its way to your team

  1. 1
    Someone dials one of your numbers

    Every number you own — your main line, a sales number, a fax line — is listed on the page.

  2. 2
    Switchboard checks that number against your routes

    It looks down your list from top to bottom for a route that matches the number that was dialed.

  3. 3
    A match sends the call exactly where you said

    That's whatever you picked for that number — a person's desk, a team of phones, a menu of options, or voicemail.

    No match? Nothing is lost.

    If a number isn't set up yet, the call falls back to your catch-all route — a safety net every system has, usually pointed at the front desk or an after-hours voicemail.

  4. 4
    If it lands on a menu, the caller picks a path

    They hear a short recording — "For Sales, press 1…" — and whatever key they press sends them further down the tree: to a team, a person, or even another menu. This is what you build on the page.

  5. 5
    The call connects, and there's always a backup

    The phone rings. If nobody answers in time, the call automatically falls through to whatever you set as the backup — usually voicemail — so a caller is never left hanging.

Tip — pressing Save applies a route or menu change immediately — there's no separate "reload" step, and none needed.

Asterisk CLI

Real, live Asterisk CLI access — same power as SSH'ing in and running asterisk -r. Nothing is off-limits or sandboxed, so treat it with the same care.

    

Provisioning config

Vendor—
File—

    

Set up two-factor sign-in

For Morgan Reyes. Scan this with an authenticator app like Google Authenticator or 1Password, then enter the 6-digit code it shows.

QR code
JBSW Y3DP EHPK 3PXP

Restore this backup?

This overwrites live data right now Whatever's checked below, changed since this backup was taken, will be lost — the database reload also restarts Asterisk from the restored config. This can't be undone.
Loading what's in this archive…

Files at this destination

Real, live list — fetched from the destination right now. Pulling a file downloads it into the local backup directory, where it can be restored, downloaded, or deleted like any other local backup.

FilenameSizeDate
Loading…

Email a softphone setup code

For Jae-won Kim, extension 102. They'll get an email with this code — scanning it with their phone's camera installs the app and signs them in automatically.

QR code preview
The code expires in 7 days. If it isn't scanned by then, just send it again.
Switchboard
Personal portal
AR

Hi, Amara

Extension 101 · Yealink T54W

New voicemail
3
Last one 09:14 today
Missed calls today
0
Nice — none so far

Your status

Do not disturb sends every call straight to your voicemail, even from a ring group.

Call forwarding

Also ring another numberForward or simultaneously ring your cell when this extension gets a call

My devices

Everywhere your extension can ring — your desk phone, and whatever else you turn on below.

What rings when someone calls 101

Desk phoneYealink T54W at your desk — always on
Mobile appConnected — Amara's iPhone
Desktop appNot installed yet

Desk phone

Online
Yealink T54WSet up by your admin
This is provisioned for you automatically. If it stops working, contact your admin — you can't reconfigure it here.

Mobile app

1 device connected
📱
Amara's iPhone
iOS · connected 2 days ago
Scan to pair
Add another phone: scan the code with your camera, or search "Switchboard" in your app store.

Desktop app

Not installed
Make and take calls from your computer — handy at a hot desk or when you're not near your phone.

Messages

Texts sent to your direct line.

?
Unknown caller
+1 415 555 0201
via Main line · ext. 101

Your voicemail

Box 101

FromReceivedDurationTranscriptStatus
+1 415 555 0201Today 09:141:12 "Hi Amara, following up on the shipment schedule for next week…" New
+1 415 555 0233Today 07:400:45 "This is regarding invoice #4482, calling to confirm receipt…" New
Marcus Idowu 108Yesterday 16:022:03 "Hey it's Marcus, when you get a sec give me a call about the Denver route…" New

Call history

Just your calls — nobody else's.

TimeDirectionWithDurationOutcome
Today 11:14 Inbound +1 415 555 0155 4:12 Answered
Today 10:59 Outbound +1 214 555 0166 2:24 Answered
Yesterday 16:41 Internal Jae-won Kim 102 1:08 Answered

Your recordings

Calls that were recorded while you were on them.

TimeWithDuration
Today 11:14 +1 415 555 0155 4:12
Today 10:59 +1 214 555 0166 2:24

Account

Your profile and how we notify you.

Profile

Set by your admin — ask them if this needs to change.

Password

Notifications

Email me new voicemailSends the audio and a transcript to your inbox
Text me missed callsA short SMS to the number on file
Amara Reyes · ext. 101