Telecom (Telephony and Networking)
My phone system
My main phone system is Cisco Unified Communications Manager 14 cluster with Unity 12.5 using 2 Asterisk 22 servers to handle trunks to BulkVS (for PSTN). and a few collectors networks. I'm using a dedicated server that I'm renting located in a large city nearby and an HP mini elitedesk. The dedicated server runs the publisher node for CUCM as well as Unity and the primary Asterisk. While the elitedesk runs a Subcriber, the other Asterisk server, and Open Paging Server. VPN tunnels are used to connect my house to the datacenter as well as to some family members houses. My fleet of phones include Cisco 8845's, 7841's, ATA190/191's and SPA112/122's. Connected to the ATA's are fax machines and analog telephones. I use a cordless analog phone because Cisco Wi-Fi phones are too cost prohibitive for me, and the Poly VVX D230 I own, well sucks. I cycle out cordless phones, but as of 8/1/2026, I'm attached to this Uniden exp91. While it's 900mhz and has no security, it has great sound quality, has no answering machine (which is a must for me), and great range.
Haters will call this "just a dumb homelab". But it's reliable enough that I use this as my main home phone system. It's alot more reliable than my iPhone and I perfer using it than the iPhone. Call me werid or old school, I don't care. This overly-redundant network serves me very well.
My landline telephone collection
I have a large collection of landline telephones. So large that I don't know how many I have. Most of these phones have came from thrift stores, a lot from Rod Ardvn, and only a few from eBay (or e-ripoff) and Best Buy.
While I would love to have a showcase of my collection, I have too much and they are in too many places. This will be a project for after I'm out of school.
Why I don't like FreePBX
It seems a lot of younger and newer poeple in the telephony community swears by FreePBX. While it's great for a first time learning tool, in my opinion, it sucks and it's stupid. Here is my reasoning:
- FreePBX is very bloated and very inefficient. With perpetually running PHP scripts, NodeJS jobs, and all sorts random garbage, a FreePBX box can easily use more than double or even triple the resources as an Asterisk box to preform the same tasks.
- FreePBX is not actually FOSS. When it's owned by a for-profit company who puts advertisements in the software, and locks the majority of features (INCLUDING SSO!!!) behind commerical license paywalls, it's no longer FOSS. The vast majority of commerical features in FreePBX can be done for free in Asterisk and other open-source VoIP software
- FreePBX encourages kids who don't know what they are doing
Open Paging Server
For a long time, I had the idea to create an OSS VoIP-based paging and mass notification system. For awhile, I was frustrated because what I wanted was only on commercial solutions that I could not get easily or had strict trial periods. There was also alot of functionality I wanted that these solutions did not have. The closet existing OSS solutions are for FreePBX, which does not help.
So, then in January 2026, the project was founded. I started with the web interface from the LTS CPBX, converting it to PHP. I wrote a simple Python script that sent a hardcoded text and audio message to Cisco IP phones. And I used Asterisk to handle SIP and Multicast paging. At first I tried to get Asterisk to send pre-recorded audio, but it did not fair well. Later, I added a database which could store messages and the Python script would read from the database based on runtime arguments (You can actually still see the lineage of this first Python script today in OPS in sendmsgd.py, which while unused, is directly derived from the first Python script). However, this first script used hardcoded IP addresses. Over time, I made endpoints manageable and modular, moved from PHP to WSGI using waitress, added groups, added support for more phones (including Polycom & Yealink), generic multicast support, outbound SIP dial, and much much more. I also realized that long term, using Asterisk would not be very sustainable. So I built a custom SIP stack from the ground up. I did not use any existing Python libraries since they are all outdated in my experince.
And on May 15, 2026, I officaly unveiled the project publicly. While as of me writing on August 3, 2026, OPS is still in beta, but there's been an estimated 50+ installs, and 50 Discord users in the community server. With over 500+ GitHub commits in that short time. I've also been working to build partnerships now and in the future. I can't wait to see what the future holds.
To check out Open Paging Server, visit the official website.
WikiPhone
My collection of landline telephone documentation/manuals, boxes pictures, and more.