The FCC and most consumers are getting annoyed of “illegitimate” automated calling systems from calling. Most automated calling systems are hiding behind a spoofed caller ID, and blocking the number is not possible. Consumers that are really annoyed are looking for practical solutions. Furthermore, the FCC is pushing for caller authentication in 2019 to remove the “illegitimate” uses of caller ID spoofing, meaning that any automated call using a legitimate number will always get through. Asterisk/FreePBX can help mitigate automated calls by using an IVR (interactive voice response).
What is FreePBX and Asterisk?
FreePBX and Asterisk are open-source projects that allow companies or individuals to put a Private Branch Exchange (PBX) on their network. FreePBX allows for a graphical configuration of Asterisk using a web interface. FreePBX is not actually needed if you are comfortable with command line configuration of Asterisk. Asterisk is the framework that allows anyone to transform a computer into a PBX.
What is an IVR?
An IVR (interactive voice response) is an automated system that interacts with humans by using a recorded message and forces the caller to enter digits. Once the caller makes the correct choice, they will then be transferred to a human or another machine.
How can IVR help?
Many automated calling systems require that the machine makes contact with a human and not another machine. An IVR can be similar to a password meaning that the receiver will not be contacted unless the correct digit combination is pressed. This would require the machine to interpret the IVR message and to enter the correct digit combination to reach receiver. If, for some reason, the machine transfers to the “agent,” an IVR can be configure to only play the message once. This type of configuration would make it difficult for the “agent” to hear the full message or if they hear it at all. If an IVR is configured, the system could place the caller on hold or even terminate if an invalid digit combination is selected or the timeout has expired.
How I have Asterisk Configured
My home asterisk configuration forces the calling party to listen to a message, and based of the recorded message, the calling party has to input the correct digit combination. Once the calling party inputs the correct digit combination, they will be transferred to myself or the other extension. However, if the calling party inputs any incorrect digit combinations, they will be put on hold because this seems to be the most punitive response. Also, if someone reaches the IVR timeout, they will be put on hold because the recorded message is pretty clear. If for any reason the calling party wants to hear the recorded message again, they will have to call the number again. This configuration would punish callers if they don’t listen to the recorded messaged or if the calling party is a machine. I have posted my Asterisk configuration below.