[asterisk-dev] Best practice requested

Mitch Sharp MSharp at BIGNetworks.com
Mon Oct 2 16:45:42 MST 2006


Good evening!

I'm writing an application I am calling so far ConferenceOnDemand.  It's
arguments are:
	1.  Tech/resource
	2.  Conference extension

The scenario for usage is this:  A customer calls (Zap/1) and speaks
with a sales rep (SIP/101).  For whatever reason, the manager (SIP/102)
needs/wants to be involved in the call.  The manager dials a modifier
plus the sales rep's extension.  This causes the ConferenceOnDemand app
to run with the following arguments: ConferenceOnDemand(SIP/101,2101).
What occurs is this:
	1.  A dynamic conference is created (2101)
	2.  ConferenceOnDemand transfers the call that is bridged with
SIP/101 to conference room 2101
	3.  ConferenceOnDemand transfers SIP/101 to conference room 2101
as a marked user
	4.  ConferenceOnDemand transfers SIP/102 to conference room 2101
as a marked user

My question is, once the conference room has been created, what is the
best practice method to unbridge SIP/101 and Zap/1 in order to then move
them into the conference room.

I have looked at the app_page.c code and the app_pickup2.c code (located
at http://linux.thorsten-knabe.de/asterisk/pickup.jsp).  App_page.c
initiates new calls, and app_pickup2.c hangs up the unused legs of the
calls rather then unbridging them.

I have the code that finds the channels I want to transfer and I can
create the conference room.  I used ast_transfer to move the calls in,
and it works, but the Zap/1 channel is still in it's bridged state to
SIP/101.

Any help would be greatly appreciated!

Mitch Sharp


More information about the asterisk-dev mailing list