You may want to consider this approach.
It may or may not be a practical solution for your installation.
Have all calls answered by an IVR (Auto Attendant).
Have the IVR Greeting say something like “Please press any digit to continue you call”
or what ever may work best for your installation.
In the IVR:
In the “Basic Settings” set the “Response Timeout” to comfortable period for valid callers to respond.
Set the “Response Timeout Prompt Repeat” to 1.
Set “Key Pressing Events” 0 through 9 to the normal destination for incoming calls.
Set the “Timeout” event to “Goodbye”
SPAM calls should drop out before they reach the normal destination for incoming calls.
I hope that this may help you and it may be worth a try.