[Asterisk-Dev] Flash-hook functionality
martin.granell at monash.net
Mon Jan 19 17:59:51 MST 2004
I've been looking at the chan_vpb channel driver for the voicetronix
boards. I need to add in support for being able to do assisted transfers
(where the transferer can talk to the person before doing the actual
transfer), and if possible 3 way calling. Call waiting would be a bonus.
In the chan_zap driver, there is a lot of code to handle shuffling
mapping of asterisk channels to the real device to support call waiting
and 3 way calling (the whole subs thing). A lot of this seems to be non
zaptel specific. E.g. I could see it being useful for voip channels as
well as other interface devices.
There seem to be three main options for me at this point:
a) Modify chan_vpb to support the same flash-hook semantics that
are in chan_zap, so the channel driver does the shuffling of asterisk
channels to device channels.
b) Modify the ast_bridge_call function (in res_parking.c) to extend
the transfer functionality to be assisted transfer (by temporarily
parking the current call, and then moving it to either the new extension
or the original if cancelled). This still wouldn't get 3 way calling to
c) Extend the channel driver API to support native conferencing,
so that if asterisk wants to conference multiple channels together it
can firstly try (semi)-native conferencing using a channel driver of any
of the channels that need to be in the conference, and then do software
conferencing if no hardware can support it. This is effectively the same
as the bridging mechanism done at the moment, but extended to allow more
than one channel to be aggregated together. (Maybe it would be possible
to simply extend the channel bridging code...) Then ast_bridge_call
could be extended to use the extended channel API.
If there are any simpler options, please speak up :P. btw, if I do make
these changes, what is the process for submitting them back into CVS?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the asterisk-dev