[asterisk-users] A Leg Control on Asterisk Callback

Nasir Iqbal nasir at ictinnovations.com
Mon Oct 29 16:27:48 CDT 2007


Hi,

On Mon, 2007-10-29 at 10:29 -0700, Douglas Garstang wrote:
> I'm confused about something.
> It's the way Asterisk handles the A leg (ie the first party dialed) on
> an originate command via the Manager Interface.
> 
> Lets say our originate commands looks like this:
> 
> ACTION: Originate
> Async: yes
> Timeout: 60000
> Exten: callback
> Channel: SIP/5551212 at provider
> Variable: destination=SIP/8675309 at provider
> Callerid: 5551212
> Context: default
> ActionID: 849120
> Priority: 1
> 
> Asterisk first goes and dials the Channel parameter,
> SIP/5551212 at provider. This is where it gets confusing. You have no
> control over what happens here. The actions don't even appear on the
> Asterisk console debug. It isn't until this party has picked up, and
> control jumps to the 'callback' extension, that Asterisk shows you
> what it is doing.
> 
> So, I went and changed the Channel parmeter to Channel:
> Local/5551212 at LegA, and made a LegA context:
> 
> [LegA]
> exten => _X.,1,Dial(SIP/${EXTEN}@provider)
> exten => _X.,n,Playback(tt-monkeys)
> 
> I wanted to have control over the call both before and after it is
> placed. I wanted to be able to play a prompt to the caller before the
> call is placed to the destination number. However, since we've dialled
> the A party already, we have no control over the dial plan anymore
> after they have answered, and I can't play prompts.
> 
> What can I do here?

You can use "dial macro" here like

exten => _X.,1,Dial(SIP/${EXTEN}@provider,M(a_leg))

and

[macro_a_leg]
exten => s,1,Playback(tt-monkeys)

you can run most of asterisk dialplan commands in macro. as soon as your
macro finished your call will be connected to "Leg B"

you can read more at 

http://www.voip-info.org/wiki-Asterisk+cmd+Dial#Dialmacros
and
http://www.voip-info.org/wiki/index.php?page=Asterisk+cmd+Macro


Nasir Iqbal

ICT Innovations
http://www.ictinnovations.com





More information about the asterisk-users mailing list