•   about 10 years ago

Small Asterisk-based device

This can be done quite easily with a little device, which I will describe later. It operates like this:


1. The deice has 2 RJ11 jacks - one for the phone and the other to plug the device to the wall. The device is placed between the phone and and wall jack. This work best with a cordless phone, so all calls go through this device.

2. When a call is made, the device automatically answers the phone. No ring is generated to the phone, so the user does not hear the ringing.

3. The device plays a short messages, saying this phone is equipped with call blocking device. The device then asks the caller to press a number on their phone, say between 0 and 9. If the caller enters the correct number, the phone rings, and the receiving party can answer the call. If this is a robo-call, the number is never dialed, and the the device hang up the line. The home-owner is not aware of the robo-call at all.

4. If this is a valid live caller, the device "white-lists" this called ID, and next time they will be connected directly without a challenge.

5. The device can keep a list of valid auto-dialed numbers as well, such as 911 callbacks, etc. These calls will not be challenged.

6. There are other functions which can be performed by the device. For example the receiving party can black-list a caller even if it is a real person. For example if a marketer makes repeated calls, the callee can enter a code on their phone, and this number will be blocked in the future.

Description of the device:

1 Software
The device consists of a small computer running Asterisk PBX software (http://www.asterisk.org/). Most of the above-described functionality is already available in the Asterisk. It requires a relatively small modification the Asterisk privacy manager function (http://www.voip-info.org/wiki/view/Asterisk+cmd+PrivacyManager).

2. Hardware:
The software can run on a low-cost computer boards, such as the $25 Raspberry PI (http://www.raspberrypi.org/). In addition, it needs 2 cards which provide connection to the phone system – one to the phone and one to the wall jack – these are called FXS and FXO. These boards can be manufactured for about $10 each. In mass production, the whole device could be produced for less then $50.


  •   •   about 10 years ago

    Asterisk could be a good solution to this problem but the hardware requirements are not as cheap as you describe. The FXS and FXO boards are far more expensive than $10 each and you also need a PCI card for those boards to plug into. The Raspberry PI doesn't have a normal PCI slot so that adds to the cost and difficulty of interfacing to the FXS and FXO.

    You could purchase an embedded Asterisk system right now from:


    Unfortunately, that price point isn't reasonable for most consumers and the technical expertise required is also prohibitive. I have used Asterisk on an old PC in my basement for years to block robocalls and it can work fine once it is configured but it is just not suitable for the non tech savy consumer market.

  •   •   about 10 years ago

    OK, of course I am not talking about off-the-shelf pars for the FXO/FXS. I am talking about designing a low-cost device from scratch. The dual port FXS/FXO Module in the link you gave is quoted for $65. This is an open source hardware, and I know the parts do not cost more than $20. The interface need not be PCI - could be USB (http://www.open-voip.com/blogs/blog1/2010/02/26/a-big-milestone-in-the-open-usb-fxs-worl), or preferably, integrated into a single board together with the Raspberry PI design (also open source hardware).

  •   •   about 10 years ago

    Also, I envision this device as a consumer product - no configuration required. Asterisk is pre-configured and running with the call-blocking functionality. You just place the device between the phone and the wall jack.

  •   •   about 10 years ago

    Wouldn't this also block legitimate robo-calls (charities, political campaigns)? While some users may want that, the rules require that legal robo-calls are allowed. You'd have to maintain a national registry of some sort that the device would regularly sync with. Also I would imagine that you could setup a robocalling system to listen for a spoken number and send the proper dial tone in response. Voice recognition for a single spoken number would be relatively consistent.

  •   •   about 10 years ago

    Yes, Tim, you are correct. Legitimate robo-calls should be allowed. This is why I mentioned keeping a whitelist of legit caller ID's. A better way would be if the device is connected to the internet and can lookup these whitelists from some central DB. I am not sure this DB exists, but would probably be not hard create, either as a free service by the gov. or as on subscription bases from a private company.

  •   •   about 10 years ago

    Right, the list of approved entities would be constantly changing as call centers acquire new phone numbers for this purpose, so internet connectivity would probably be a must.

Comments are closed.