[Asterisk-Users] Q: how to receice the number of the called party back?

Peter Svensson psvasterisk at psv.nu
Fri Feb 4 02:46:21 MST 2005


On Fri, 4 Feb 2005, Frank Sautter wrote:

> a feature of euroisdn is, that you dail a number e.g. 0732194490 (where 
> 0 is the extension of the call dispatcher) and the phone is forwarded to 
> someone with an extension of 26.
> our ericsson showed after the call was picked up 07321944926 and no 
> longer the dialled 0732194490.
> 
> another example is, that you are dialling a number within the same area 
> code e.g. 9876543 and after the phone is picked up the number in the 
> display of the caller change to 07119876543.

Your pstn provider (and in at least the first case) the remote end 
supports passing of "Connected Line Identification Presentation" (COLP). 
I.e. the destination pbx returns the actual isdn address to which the 
calling user was connected. It is sent in the CONNECT message. See the 
ITU q.951 standard.

It is not implemented in libpri at the moment, but it should not be that 
hard to implement. The IT code is 0x4c and quick glance at the IE 
description implies that it is coded the same as calling and called 
numbers.

My suggestion would be to pass incoming COLP:s (that is, for outgoing
calls) up to the chan_zap driver which then sets a variable. The variable
can be read through a M() macro in Dial().

For outgoing COLP (when answering incoming calls) chan_zap can check a 
channel varaible when it answers the channel (instructs libpri to send a 
CONNECT) and pass COLP if available. Also COLR (Connected Line 
Identification Restriction) may be implemented.

Other more integrated way of handling COLP are certainly possible.

Peter





More information about the asterisk-users mailing list