Some more fun with Asterisk

So I moved to the US a while back. When I did that, I retained a mobile number in the UK that many people already had in their address books, and for those occasions when I might visit. For the longest time, I had it setup on permanent divert to a SIP trunk in the UK, that connected to an Asterisk server in Texas and then a SIP trunk in the US, out to my US cellphone. Callers never even realized that they were actually speaking to me on my US cellphone when calling my “UK” one. A nice hack for cheap roaming (I wrote an article on this some years ago now), and a great way to say “screw you” (but slightly more strongly) to the phone carriers who still overcharge for roaming. But we can do better.

Recently, I learned that A&A have started a UK mobile service that uses SIP extensions exclusively, basically giving you a SIP trunk into a cellphone handset. No more call forwarding. The phone is the SIP extension and can be configured just like any other (when will US carriers wake up? ever?). I’m hoping to get one the moment they can port my existing number (they’re still working on number porting), so that I can just have a UK SIP extension for when I am in the country. In the interim, I got another SIP trunk for playing around and forwarded my old mobile number to that one, with a customized message that will still forward to me after a delay. The message informs the caller that I am in a different timezone and since it now knows that calls to that number can only have come from the mobile, it can do some other nice things too. Ultimately, the call still winds up hitting my US cellphone, unless it’s from sales or marketing folks.

Anyway. While I was at it, I used what is commonly known as “ex-girlfriend logic” (someone once had to solve the “problem” of handling calls from their ex, so it became known as this, but it’s used for many different purposes!) to add special rules for all kinds of numbers. For example, I recorded special messages for organizations that routinely call to harass me and added rules to catch their calls through their caller ID (fakeable, but most organizations don’t do this today). These messages say things such as: “Organization A, your number has been recognized as belonging to Organization A. I have previously requested that you stop calling me with sales or marketing calls. If your call is not for sales or marketing reasons, please leave a message. If you are calling to sell me something, please also leave a message, explaining that you have heard this, have added me to a do not call list, and won’t be calling me again”. The messages vary, but the gist is clear. Then the call goes to voicemail and my phone never even rings.

A similar process happens when callers to my UK trunk need to be informed that I am not “Iceland Express”, the airline which has a number very similar to my own. Calls still reach me, but after a message explaining that I am not the airline they might be trying to reach. In due course, I would like to have the system record numbers that have already heard this message and don’t need to hear it again (if they aren’t exchange numbers – need a way to detect that also, maybe in the signalling data somewhere?). Conversely, the phone system recognizes my family and girlfriend and saves them from listening to my greeting every time, making their calls reach me a few seconds faster than some others, though with a funny message for fun.

At this point, I have a growing number of Cisco 7940 series IP phones around my apartment, as well as soft phones, and a number of trunks and mobiles that are all hooked together. When you call me, your call has all of the rich features of Asterisk. For example, you will (and have for years now) hear music on hold while the system rings all of my phones in unison, have a menu with various options, etc. I can easily record calls, transfer them between phones or countries, and I have speed dials configured for popular numbers that I need to reach (some of which will also setup pre-agreed recording, if it’s a conference). Oh, and I’ve been hooked into Fedora VoIP for a while now too, so that just gets handled like any other incoming call. My phone has a special dialplan prefix for Fedora, the same as how it also recognizes UK numbers and automatically dials the international bit and routes cheaply through the UK trunk without any need to do anything special.

What I would like to do next is to have a DNS service (perhaps RFC2916 compliant) that I could use my Asterisk server against in order to do anti-spam filtering of the form that I do already with spam-assassin. I would love to know if such a service exists, and if not, why not? I would love to be able to add wildcard rules to my Asterisk server to match on specific names of organizations, whose exact number might vary (but can be looked up in the database to find their name), in order that they will always get the special handling that I have deemed appropriate for them. With such a service, you could also easily and automatically exclude all known telemarketing numbers with a single command. Anyone point me to such a setup?


2 Responses to “Some more fun with Asterisk”

  1. Rob says:


    You might like to look at 10 free incoming sip trunks. Other than being a user I have no connection with them.

  2. jcm says:

    Interesting, but sounds dubious. In the spirit of “no such thing as a free lunch”, I’d want to know much more before using such a service. I’m sure they just make money off handling incoming calls, etc. But I’m not about to use a service I don’t know. Still, thanks for the link :)

Leave a Reply