[Asterisk-Users] Caller Name: Asterisk reading too fast
Jeremy Gault
jgault at winworld.cc
Fri Sep 16 08:29:16 MST 2005
As was already suggested, Wait() is your friend.
We had the same problem when our PRI was installed. It was supposed to
include Caller ID Name delivery, but it seemed to be hit-or-miss as to
if it would work.
This is what I found: When people call our auto-attendant and dial an
extension, the name would work fine. However, if they dialed one of our
DIDs (each extension has its own DID) then the name did not work.
Inserting a Wait() command on the DIDs for extensions seemed to do the
trick, like this:
exten => 423303xxxx,1,Wait(0.75)
exten => 423303xxxx,2,Dial(SIP/xxx)
Here's my take on what happened: A call comes in to the auto-attendant,
which immediately answers and begins the greeting. Shortly after, the
telco sends the name down the PRI, and Asterisk associates it to that
call. Then the caller punches in the extension and it goes through with
name. (Keep in mind it only takes a fraction of a second for the name
to show up on the PRI, so by the time a normal human realizes the
auto-attendant has answered and dials an extension, plenty of time has
passed for the name to come in.)
However, the DIDs were spwaning Dial() *immediately* when the call came
in. Of course, at that point the name was not present yet. (The telco
was still doing the lookup.) But, Dial() has to send CID immediately
when invoked, so it sent the number twice. Adding the 0.75 second delay
gave time for the name to arrive before spawning Dial().
I've found 0.75 to be a fairly reliable delay. It misses a name here or
there, but not often enough to be a problem. Most callers won't really
notice the delay. If I increased this to one full second, it would be
more noticeable but would probably fix the few ones we miss. You may
have to play with this value to find the optimum setting for your setup.
Another test you should be able to do: Have a call come in (when it
shows only the number twice) and answer it. Then login to the Asterisk
console, do "show channels" and find out which Zap channel it's on. Do
a "show channel Zap/whatever" (whichever channel it is) and see if the
name has shown up. IIRC, before I added the Wait, the "show channel"
would still see the name, even though the phone didn't.
Good luck!
Jeremy
J Thomas wrote:
>I asked my telco to release caller name on the PRI. Earlier they were
>releasing only the phone number.
>
>I still did not see the name, but only the number in caller id. Actually
>I now see number twice. When I inquired with them this is the response I
>got:
>
> "I ran a trace on your TG. I see that your switch is
> picking up the call so fast that it is not able to pick
> up the name. The name is being sent, but I suspect after
> it is too late. This is something that will need to be
> corrected in your switch.
>
> I have attached a sample call out of the trace I performed
> this morning."
>
>They have sent me the trace file.
>
>Is there a way as it is in Asterisk so that it reads the caller name
>properly?
>
>Thanks,
>-- jt
>
>_______________________________________________
>--Bandwidth and Colocation sponsored by Easynews.com --
>
>Asterisk-Users mailing list
>Asterisk-Users at lists.digium.com
>http://lists.digium.com/mailman/listinfo/asterisk-users
>To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-users
>
>
--
Jeremy Gault, KD4NED <jgault at winworld.cc>
Network Administrator, WinWorld Corporation
Member: Bradley County ACS/RACES/SkyWarn
voice: +1.423.473.8084 fax: +1.423.472.9465
fwd: 461771 msn msgr: jgault at winworld.cc
More information about the asterisk-users
mailing list