Post

Upgrading an Antique Telephone

I recently purchased a 1913 Western Electric 323W candlestick style telephone.

Upgrading an Antique Telephone

The Phone

I recently purchased a 1913 Western Electric 323W candlestick style telephone.

phone

It came with a ringer in a wooden box, which someone had adapted at some point with an RJ11 connector.

TODO - Add more history about the phone itself.

I currently do not subscribe to any landline phone service, and don’t plan to. I just wanted to be able to interact with the phone in a few fun/silly ways and

The Hardware

The first step was to very little research and purchase the first analog to VOIP adapter that I could find. I ended up getting two Grandstream HT801 devices. I got two because I needed to be able to test my setup with another analog phone, and at the time I didn’t realize that I could do so through a SIP/softphone application.

I also got a PoE splitter that pushes power out as a USB micro cable, the same that the HT801 uses. That way I don’t need to worry about electrical jack location wherever I end up putting this. The switch near where this will eventually live already injects PoE as well.

Next I started to look at how I could setup Asterisk. I didn’t (and really still don’t) know much about it, so much reading was done. Sadly, it appeared that getting it setup in docker was a nonstarter… also running it on the raspberry pi’s architecture was not going to be fun either. So I ended up getting a cheapish Intel-based nuc that I could stick in my server rack and install Asterisk/FreePBX directly on it. I’d had issues with attempting to deploy non-ARM supported software in docker before, and figured that I could at least reuse this server for that since it wouldn’t be using up much resources providing for 2 rarely used phones.

The Configuration

Anyway, on to the fun stuff.

Phone Setup

It was pretty easy to get both grandstream devices configured. Only a few fields in the FXS PORT screen needed to be modified, namely the Primary SIP Server, SIP User ID, Authenticate ID, and Athenticate Password.

One thing to note, the auth password here needs to be what is listed in FreePBX as the Extension Secret, not the User Password.

Since the candlestick phone doesn’t have a rotary (or touchtone) dialer, it needs to be setup to automatically dial upon reciver pickup. Thankfully this can be done within the Grandstream configuration.

call settings

On Hold Music

FreePBX makes it very easy to add custom on-hold music. I searched for a while on how to get random music samples to play before actually opening up this screen and seeing that the feature was built-in. I pre-converted the file to a mono wav before uploading, but this will automatically transcode to whatever appropriate format for you.

hold music setup

Custom Extensions

Custom extension configs needs to be added into the dialplan, which lives in /etc/asterisk/extensions_custom. This file is referenced in the main extensions file and re-ingested into asterisk upon running dialplan reload from the cli (either via rasterisk or the web console).

I don’t really know what I’m doing here, see the Asterisk Documention for best practices.

The first custom extension (at 150) immediately starts playing the On Hold music defined earlier. In case it ends up playing for 10 minutes (600 seconds) it’ll stop and hang up.

1
2
3
4
5
6
[from-internal]
exten => 150,1,Answer()
exten => 150,n,StartMusicOnHold(filetest)
exten => 150,n,Wait(600)
exten => 150,n,StopMusicOnHold()
exten => 150,n,Hangup()

And another extension at 155 that will automatically dial the on-hold ext at 150 once the candlestick phone at 112 is picked up. It’ll play the music on both ends of the line, but you can hang up the caller phone at any point without impacting the other call.

1
2
3
exten => 155,1,Answer()
exten => 155,n,Dial(PJSIP/112,,G(from-internal^150^1))
exten => 155,n,Hangup()

I also made sure to add these extensions to the custom extension screen in FreePBX so that it can do its conflict resolution processes.

custom

Heres a small example of the auto-dial setup working:

I have an idea of where in the house the telephone should live, but it involves drilling holes and making cables. I think that will need to wait for a rainy day.

This post is licensed under CC BY 4.0 by the author.

Trending Tags