[asterisk-dev] 'IAX2 call variable passing between servers '
Douglas Garstang
dgarstang at oneeighty.com
Fri Aug 11 13:43:33 MST 2006
> -----Original Message-----
> From: Andrew Kohlsmith [mailto:akohlsmith-asterisk at benshaw.com]
> Sent: Friday, August 11, 2006 2:10 PM
> To: asterisk-dev at lists.digium.com
> Subject: Re: [asterisk-dev] 'IAX2 call variable passing
> between servers
> '
>
>
> On Friday 11 August 2006 15:00, Douglas Garstang wrote:
> > It's my understanding that rdnis comes from the phone. When someone
> > forwards their calls, the phone sends back the 'Moved
> Temporarily' message
> > to Asterisk. Asterisk interprets the SIP message and passes
> rdnis, dnid and
> > extension back to the dial plan when it re-enters it. It
> tries to dial the
> > new extension. My original DIAL() command has 'g' in it...
> which I guess is
> > what causes Asterisk to re-enter the dial plan as it does,
> and try to find
> > a match for the new extension.
>
> Asterisk doesn't "re-enter" the dialplan, it CONTINUES along the SAME
> extension, at the next priority when option 'g' is used for Dial().
>
> e.g.
>
> [ooga]
> exten => 500,1,Dial(SIP/500,,)
> exten => 500,n,NoOp(After trying 500...)
> exten => 501,1,Dial(SIP/501,,g)
> exten => 501,n,NoOp(After trying 501...)
> exten => 501,n,Goto(${RDNIS},1)
>
> (this is all untested, I don't have a SIP phone handy.)
>
> In this example, if 500 has a redirect, Asterisk will
> (should) send back a
> CHANUNAVAIL to whoever tried to call 500. However, whomever
> called 501
> (which has the same redirect) should get "another kick at the
> cat" with
> whatever the RDNIS was set to.
I don't know if I'd call it a continuation of the dial plan. The relevant context here has _X. in it, so there's nowhere else to go after it executes that. Therefore, it must be matching _X. again.
ooga looks good... of course the problem here is that if you trunked the call from pbxA to pbxB via IAX, you don't get rdnis. :(
More information about the asterisk-dev
mailing list