[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