[Asterisk-Users] cannot transfer to call waiting call on ip500

Andrew Kohlsmith akohlsmith-asterisk at benshaw.com
Wed Apr 26 11:07:07 MST 2006


On Wednesday 26 April 2006 13:27, PCSUPPORT PC SUPPORT wrote:
> So far no one I have talked to has either had this issue or does not know a
> answer. I currently run asterisk 1.0.9.

How is your POTS line hooked in?  Through which equipment?

> 1. The caller waiting caller ID does not show on the uniden hand held that
> is hooked to a sipura spa 1000 or my Polycom ip500.

Depending on how the call is getting into Asterisk, the hardware many not 
support call waiting caller ID, or perhaps your nation's version of it.

> 2. When a caller is calling in and I hear the caller waiting beep on the
> line when talking with somone, is there no way to put the first caller on
> hold while switching over to the second caller?. Currently this phone is
> using one phone line for the bulk of the local incomming/outgoing calls and
> occationally use voip to make outoging calls into the local area if the
> first line is used by the spouce.

Since you're trying to do something on a Zap channel through a SIP device 
(either the ATA or the IP501) you need some dialplan magic.  Essentially you 
need a way to execute ZapFlash() on the Zap channel.  You won't be able to 
put the caller on hold if they are from the POTS line, since the telephone 
company will be putting them on hold when you flash the analogue line.

The only way I can think of doing this right off the top of my head is to 
transfer the call to a magic extension.

This is just off the top of my head, and may not work as expected, but it 
should be a starting point.  If this doesn't work you can always patch up the 
Flash() application to accept a channel number and do it another way.

Remember that Asterisk is a PBX.  It expects to be in control of everything, 
not sharing control with Centrex-like functions at the Telco.  That is why 
this is so difficult.

Anyway:  blind-transfer the call to an extension that looks something like 
this (again, from the top of my head, not tested):

exten => *35,1,Flash
exten => *35,2,Transfer(SIP/polycom)

If you do this I am hoping that the polycom will drop the call (blind transfer 
after all), execute the flash and then you'll hear the polycom ring again, 
and it should be the other caller.

You may be able to use some channel variable magic to transfer back to the SIP 
device (ATA or ip501) that called, but that's an exercise for the reader.  

You may also be able to do this smarter by using an attended transfer if 
Asterisk will return correctly...  the polycom will "try" to transfer to the 
extension, fail, and get the call back, only that it didn't really fail, it 
flashed the line and gave you the call back.

Anyway hope it's a start for you.  Let us know how it works out.

-A.



More information about the asterisk-users mailing list