Voice · Open Source WAN PBX

The phone that only rings
when it matters.

A FOSS PBX system that runs in Docker on your VPS. SIP hardware support, web interface, zero monthly fees, and a phone network that the robo-callers simply cannot find.

The honest pitch: You're already paying for internet. SIP phones cost $30–80. One person in your family knows how to spin up a VPS. That's all you need. Everything else is Voice.
📡
📞
Kitchen
☎️
Office
📱
Mobile
📟
Bedroom
🖥️
Desktop
📲
Softphone
Robo-callers
Extended Warranty
Political PACs
Spam risk: unknown
15-sec voicemail
Go · Runs anywhere Docker runs
SIP/VoIP hardware support
Web UI · Voicemail · Extensions
No vendor lock-in · No monthly fees
WAN PBX · Works over the internet
Optional SIP trunk support
Why Voice Exists
The phone used to mean
something.
We broke that.
Voice fixes it.

There was a time when the phone ringing was an event. You answered it. It was someone you knew, or at least someone with a real reason to call. That social contract held for decades and then it didn't.

Now the phone rings and the first instinct is suspicion. Let it go to voicemail. Check the number. The legitimate calls — family, friends, people you actually want to hear from — have been buried under an avalanche of robocalls, spam risk warnings, 15-second political messages, and people who are genuinely very concerned about your vehicle's extended warranty.

The solution isn't a better spam filter. Spam filters are a forever war where the spammers have unlimited resources and you're always one step behind. The solution is a phone network the spammers don't know exists. A private telephone network, on infrastructure you already own, for the people who already have your number — because you gave it to them personally.

That's Voice. It's not a replacement for your phone plan. It's a private hotline for the people who matter, built on the internet connection you're already paying for, running on a $5/month VPS, with hardware that costs less than a dinner out. When that phone rings, you answer it. Because you know who it is.

What Voice Does
A full PBX. In a container.
Everything a business phone system does, running on your VPS, for your family. No per-seat licensing. No vendor calling you about renewals. No data leaving your infrastructure.
📞
SIP/VoIP Hardware Registration
Real desk phones. Cordless sets. Any SIP-compliant hardware registers directly with Voice. The phone on your kitchen counter is a real extension on a real PBX.
Core
🌐
WAN — Works Over Internet
Not limited to your LAN. Extensions register over the internet. Family member across the country gets an extension. Softphones on mobile work from anywhere.
Core
🖥️
Web Interface
Browser-based management for everything: voicemail playback, extension configuration, call routing rules, ring groups, IVR menus. No SSH required for day-to-day use.
Web UI
📬
Voicemail System
Per-extension voicemail with web playback. Optional email notification with audio attachment. Voicemail-to-text transcription support. Your messages, in your browser, on your server.
Web UI
💬
Messaging Layer
Internal messaging between extensions. Presence indicators — see who's available before you call. No third-party messaging app required for household coordination.
Web UI
🔀
Call Routing & Ring Groups
Ring all phones when the main number is called. Route by time of day. Sequential or simultaneous ring. Hunt groups. Call queues. Full PBX routing logic.
Core
🐳
Docker Native
Single container. Compose-ready. Runs alongside your other services. Built in Go — lean, fast, no JVM, no runtime bloat. If Docker runs on it, Voice runs on it.
FOSS
🔌
Optional SIP Trunk Support
Need to call outside the network? Add any SIP carrier trunk. FOSS means you're not locked to our approved providers — or any providers. Plug in what you need, if you need it.
Optional
🔐
Your Data. Your Server.
Call records, voicemails, messages — all on your VPS. No call metadata going to a third party. No ad targeting from your conversations. The infrastructure is yours.
FOSS
The Stack
Simple layers. No magic required.
Voice is deliberately un-complicated. The architecture has four layers and each one does one thing.
Your Hardware
SIP Phones · Softphones · Mobile Apps
Any SIP-compliant device. Grandstream, Yealink, Cisco, Polycom desk phones. Linphone or Zoiper softphones on desktop. SIP apps on mobile. Hardware is interchangeable — no proprietary endpoints.
sip:ext100@voice.yourdomain.com
Your VPS
Docker · Voice Container · nginx SSL
Voice runs as a Go application in Docker. nginx handles SSL termination and web UI proxying. Same VPS pattern as the rest of your infrastructure — shared volumes, same Compose file, same deployment workflow.
docker compose up -d voice
Voice Core
SIP Registrar · Call Routing · Media Relay · Web API
Voice handles SIP registration, INVITE processing, call routing logic, voicemail storage, message delivery, and exposes a REST API for the web interface. All state in a local SQLite or Postgres database — your choice.
SIP/2.0 · RTP · WebSocket · REST
Web Interface
Extension Management · Voicemail · Messages · Call History
Browser-based admin and user interface served by Voice directly. Manage extensions, listen to voicemails, read messages, configure routing rules, view call history. Works on any device with a browser.
https://voice.yourdomain.com
Call Routing
Your network. Your rules.
Voice handles internal calls natively. Outside calling is optional and entirely your choice of carrier.
🏠
Internal — Extension to Extension
Any extension calls any other extension directly. Kitchen phone to office phone. Your phone to a family member on the other side of the country. Pure VoIP over the internet. Zero per-minute cost. Zero carrier involvement.
ext100 → ext102 · Zero cost · Direct
📣
Ring Groups — Call Everyone
Configure a ring group and all phones ring simultaneously or in sequence. Call the family number and every phone in the house rings. Whoever picks up first gets the call. Classic home phone behavior, restored.
→ 6001 rings: Kitchen, Living Room, Upstairs
📱
Mobile Extensions — Anywhere
Softphone apps on mobile register as extensions over the internet. Family member at college, partner traveling for work — they're still on the family PBX. Call them on their extension like they're in the next room.
ext105 · Mobile · Connected from anywhere
🔌
SIP Trunk — Optional Outside Calling
Need to call outside the network? Add a SIP trunk from any carrier. VoIP.ms, Twilio, Vonage — your choice, your contract, your rates. Voice doesn't mark up trunking or require specific providers.
Trunk: optional · Carrier: your choice
Compared to the Alternatives
Why not just use what everyone else uses?
Feature Voice (FOSS) Google Voice RingCentral / Vonage Cell Carrier Plan
Monthly cost $0 + VPS (~$5/mo) Free / $10/mo $20–40/user/mo $30–50/line/mo
Your data on your servers Fully Google's servers Vendor's servers Carrier's servers
Spam / robocall exposure Zero — private network ~ Number in databases Business number, gets hit Gets hit constantly
Real desk phone support Any SIP hardware App only ~ Proprietary hardware App only
WAN extensions (family anywhere) Built in ~ App-based only ~ Separate plan per person
Vendor lock-in None. It's yours. Google can kill it Contract + migration pain Number portability costs
Self-hostable That's the whole point
Source code available Fully open
Getting Started
Five steps. One afternoon.
If you've set up a VPS and run Docker before, Voice is familiar. If this is your first time, the documentation walks every step.
01
Spin Up a VPS
Any provider. Any Linux distro that runs Docker. $5–10/month. If you already have one, start here.
02
Add Voice to Compose
Two lines in your docker-compose.yml. Shared volume for your existing nginx setup. SSL handled by your existing cert pipeline.
03
Point Your Domain
voice.yourdomain.com → your VPS. DNS A record. Five minutes. SSL auto-provisions if you're using Certbot.
04
Create Extensions
Open the web interface. Create an extension for each person and device. Generate SIP credentials. Takes two minutes per extension.
05
Register Your Phones
Enter SIP server, username, and password on any SIP phone or softphone. Registration takes a few seconds. You're live.
Free and Open Source
No license. No vendor. No ceiling.
Voice is FOSS. That means something specific and it means it permanently.
🔓 Free to Use, Forever
No trial period. No freemium cap on extensions. No "starter plan." The full system, for as many users as your VPS can handle, at no cost. The only thing you pay for is the VPS you're already running.
👁️ Fully Auditable
Every line of code is public. If you want to know exactly what Voice does with your call data, you can read it. No black box. No "trust us." Trust the code — and verify it yourself if you want to.
🔀 Forkable and Extensible
Need a feature that doesn't exist? Build it. Want to integrate with your home automation system? Go ahead. The codebase is yours to extend. SIP trunk integration, custom IVR flows, API hooks — all buildable.
🛡️ No Vendor Dependency
Google Voice has been discontinued and revived twice. RingCentral has changed pricing models four times in five years. Voice has no vendor to go under, no business model to pivot, no acquisition to change the terms. It runs on your server until you decide it doesn't.
You're already paying
for the infrastructure.
Your internet connection carries voice traffic just fine. It always has. The reason you're paying a carrier for a phone line is inertia and convenience, not necessity. Voice removes the necessity.

SIP phones are commodity hardware. VPS instances cost less than a streaming subscription. The Go runtime is efficient enough to run Voice alongside everything else on the same box you're already paying for. The total marginal cost of adding a private family telephone network to your existing infrastructure is approximately zero.

And when that phone rings — the real phone, the one on your kitchen counter — you'll know it's your mother, or your brother, or your kid calling from their dorm room extension. Not a warranty scam. Not a PAC. Not a number you don't recognize with a spoofed local prefix.

Just someone who matters, calling because they want to talk to you.

That used to be what the phone was for.