Arduino Dial Up Modem shield

I found this thread while looking for a programmable device to make a custom call screener.
The commercial devices I have found are either out of sale or do not meet my needs.

The Conexant reference in this thread lead me to another promising item: USB Modems...

Take a look at the Sewell SW-29644, Hiro H50113, and similar.

They should work with the USB shield (or, heresy, another embedded board).

It will take me a while to try this. Hoping we can help each other make progress.

The Hiro page on Amazon mentions several (MSWin-based) software packages for phone screening and related tasks.

My desire is to have a device that auto-builds a whitelist of callers.
Numbers on the whitelist ring through as normal.
Numbers on the blacklist get disconnected, possibly with a rejection message.
An unknown number will hear a screening message; upon pressing the right number, they will be added to the whitelist and ring the phone.
This should filter out most robocallers and telemarketers.
A web interface (Ethernet?) will allow the user to edit the whitelist, add blacklist entries, etc.
Is something like this already available for Linux?
Should I expect to cobble something together with Asterisk?