[Help] CallerID question

My system is Asterisk V1 using an x100p. I’m in the UK and have a BT line.

My goal is to drop all callers with no CallerID to voice mail. I can’t seem to find a way to lookup the CallerID that’s being presenting on the PSTN line.

Any help would be great.



Does know one else have this sort of issue then?

yes, but some of us have a friend called google. and use the wiki at voip-info.org/


I’ve read what I can on the Wiki but there is nothing that helps withe x100p card. All I’ve found so far is for the TDM cards.

My System is :-

PSTN Interface : X100P
OS : Fedora Core 2
Asterisk : V1-0

Anyone converted the scripts @ voip-info.org/wiki-Asterisk+and+UK+Caller+ID to use the X100P card?

The X100P is a zaptel card. It’s configured in zapata.conf. There, you’ll point any incoming calls on that card at some context in extensions.conf.

In extensions.conf, you can check the callerid and branch from there.

You might use something like:

    .  [do whatever initial stuff here]
exten => s,n,GoToIf($["$CALLERIDNUM" = ""]?intovmail)
    .  [handle call if they have a callerid number here]
    exten => s,n(intovmail),VoiceMail(u100)

You’ll obviously have to flesh this out, and decide whether the test of [$CALLERIDNUM" = “”] is sufficient. There are lots and lots of examples of this kind of processing out there. If you’re going to set up asterisk, you’re going to have to dig up and wade through a lot of code examples, so you need to find the places that have them. voip-info.org and “nerd vittles” are a couple of good places to start. Also this forum, the mailing lists, and voxilla.com.

And of course “the book” (Asterisk - The Future of Telephony) is essential for beginners.

Good luck.

Hi Greyhound,

Thanks for the info, much appreciated. I’ve been having a good look around and couldn’t find what I was after, maybe just not using the right search.

I have the book, which is very good and has helped be a great deal.

Anyway, just wanted to say thank you for your help.


It sounds like you’ve been working hard at it! Certainly post any specific questions you run into after having a go at the dial plan.

By the way, the test of CALLERIDNUM="" is probably insufficient. The nerd vittles site has, somewhere, a little callerid screening script that includes a bunch of tests for conditions that probably indicate a non-existant, blocked, or otherwise undesireable callerid condition. I’ve adapted mine from there and a few others I’ve found hunting around.

Good luck.

Finally found what I needed. This works just as I wanted.

exten => s,2,NoOp(${CALLERID})
exten => s,3,GotoIf($["${CALLERIDNUM}" = “”]?s|20)

exten => s,20,VoiceMail(9000@default)
exten => s,21,Hangup()