[asterisk-dev] CALLERID(name) being overwritten beneath dialplan

Tilghman Lesher tlesher at digium.com
Tue Apr 6 13:12:08 CDT 2010


On Tuesday 06 April 2010 12:51:00 Joshua Elson wrote:
> >> Can anyone point me to how this may be happening?
> >
> >On a PRI circuit, the CallerID name is frequently passed in a packet
> > separate from the CALL SETUP packet.  You can wait until it appears
> > (usually no more than 2 seconds after the SETUP).
>
> In this case, how is that packet processed and what processes?  Does this
> confirm that there is an effectively out of band overwrite of the
> CALLERID(name) value from within DAHDI?

From within the chan_dahdi driver, yes.

> >> Is there a way to simply
> >> block passing any of the CNAM information from my carrier!
> >
> >usecallerid=no in chan_dahdi.conf (or zapata.conf) should make the circuit
> >ignore that information.  Of course, you'll also lose the CallerID number
> > by doing that.
>
> Would it be an option to simply force the callerid name to no?  Is there
> any way to do this now?
>
> I have tried a couple of options:
>
> ; Hide the name part and leave just the number part of the caller ID
> ; string. Only applies to PRI channels.
> hidecalleridname=yes
>
> Also, setting fullname = "" or fullname =   doesn't seem to have the
> desired effect.  In both cases, the CallerID name I set simply gets
> overwritten by the time the call reaches the queue.
>
> Any other way to resolve this without a low level code change?

It's not a low-level code change.  It's actually fairly high-level, in the
DAHDI channel driver.  We're talking userspace, not a kernel driver
here.  In 1.4 trunk, the line number is 9351 where the calleridname is
copied from the PRI structure to the DAHDI pvt, which is just prior to
the CallerIDname being copied to the channel structure.

-- 
Tilghman Lesher
Digium, Inc. | Senior Software Developer
twitter: Corydon76 | IRC: Corydon76-dig (Freenode)
Check us out at: www.digium.com & www.asterisk.org



More information about the asterisk-dev mailing list