therealbeanjr

better freepbx blacklist

Apr 30th, 2017
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.39 KB | None | 0 0
  1. [app-blacklist-check]
  2. exten => s,1(check),Set(CDR(did)=${FROM_DID})
  3. ;Original first line of context with line number changed
  4. exten => s,n,GotoIf($["${BLACKLIST()}"="1"]?blacklisted)
  5. ;Blacklist Caller ID names found in custom Asterisk database BLISTNAME if used
  6. exten => s,n,GotoIf($["${DB_EXISTS(BLISTNAME/${TOUPPER(${CALLERID(name)})})}"="1"]?blacklisted)
  7. ;Blacklist Caller ID names of single letter followed by 9 or more digits
  8. exten => s,n,Set(regx=^[A-Z][0-9]{9}[0-9]* *$)
  9. exten => s,n,GotoIf($[${REGEX("${regx}" ${CALLERID(name)})} = 1]?blacklisted)
  10. ;Blacklist numbers where first digit of 7 digit local number is 0 or 1
  11. exten => s,n,Set(regx=^[+]?1?[0-9]{3}[01][0-9]{6}$)
  12. exten => s,n,GotoIf($[${REGEX("${regx}" ${CALLERID(num)})} = 1]?blacklisted)
  13. ;Blacklist numbers where first digit of area code is 0 or 1
  14. exten => s,n,Set(regx=^[+]?1?[01][0-9]{9}$)
  15. exten => s,n,GotoIf($[${REGEX("${regx}" ${CALLERID(num)})} = 1]?blacklisted)
  16. ;Blacklist numbers where first three digits of 7 digit local number are 555
  17. exten => s,n,Set(regx=^[+]?1?[0-9]{3}555[0-9]{4}$)
  18. exten => s,n,GotoIf($[${REGEX("${regx}" ${CALLERID(num)})} = 1]?blacklisted)
  19. ;Blacklist numbers that start with 1 but are longer than 11 digits total
  20. exten => s,n,Set(regx=^[+]?1[0-9]{11}[0-9]*$)
  21. exten => s,n,GotoIf($[${REGEX("${regx}" ${CALLERID(num)})} = 1]?blacklisted)
  22. ;Blacklist numbers of less than 7 digits in length
  23. exten => s,n,GotoIf($[${LEN(${CALLERID(num)})} < 7]?blacklisted)
  24. ;Blacklist numbers of 8 digits in length
  25. exten => s,n,GotoIf($[${LEN(${CALLERID(num)})} = 8]?blacklisted)
  26. ;Next line is from the original blacklist context
  27. exten => s,n,Set(CALLED_BLACKLIST=1)
  28. ;Special CallerID name lookup; should not really be here but works
  29. exten => s,n,ExecIf($["${DB_EXISTS(cidname/${CALLERID(num)})}"!="1″]?Return())
  30. exten => s,n,Set(CALLERID(name)=${DB(cidname/${CALLERID(num)})})
  31. exten => s,n,Set(__SKIPCIDLOOKUP=1)
  32. ;More original blacklist context
  33. exten => s,n,Return()
  34. exten => s,n(blacklisted),Answer
  35. ;Prepend *BL* to Caller ID name of blacklisted numbers so they can be distinguished in CDR
  36. exten => s,n,Set(CALLERID(name)=*BL*${CALLERID(name)})
  37. ;Set Call Detail Record Userfield to Blacklisted
  38. exten => s,n,Set(CDR(userfield)=Blacklisted)
  39. ;Still more original blacklist context
  40. exten => s,n,Wait(1)
  41. exten => s,n,Zapateller()
  42. exten => s,n,Playback(ss-noservice)
  43. exten => s,n,Hangup
  44. ;–== end of [app-blacklist-check] ==–;
Add Comment
Please, Sign In to add comment