Whitelist-AGI: Whitelisting strategy

Whitelist-AGI is implemented in FreeBPX as follows.

  • A new context named whitelist is added to the Dialplan. It runs an AGI script that checks the CallerID number against the Whitelist group in the Contact Manager.
    • If the CallerID number is in the group, the result is success
    • If the CallerID number is not in the group but the CID name looks legitimate, the result is softfail
    • If the CallerID number is not in the group and the CID name is suspicious, the result is hardfail
  • A note on hardfail: a “suspicious” CallerID name is one of the following:
    • Blank
    • Consists of only digits
    • Starts with “Anonymous”, “Blocked”, “Spam”, “Unknown”, or “Withheld”
    • Has the same value as the one set in the “Artificial CNAM” field of the CID Superfecta “Abandon Lookup” data source
    • “Private” is not on the list. Many people have a legitimate desire or need to have an unlisted number and should not be treated as a telemarketer or scammer.
  • The system administrator sets up a Custom Destination named Call Whitelisting that uses the whitelist context
  • The sysadmin sets two options in Connectivity > Inbound Routes > (route):
    • Set Destination is set to Custom Destinations > Call Whitelisting
    • Other > CID Lookup Source is set to a value, typically ContactManagerWhitelist
  • The sysadmin sets up a Custom Destination for each of the three possible results from the whitelist.agi script (success, softfail, hardfail) to tell FreePBX how to handle the call