[asterisk-users] Incoming INVITE with Portability Info and LRN

Steve Edwards asterisk.org at sedwards.com
Sun Mar 20 12:42:57 CDT 2016


On Sun, 20 Mar 2016, Trey Hilyard wrote:

> On Mar 18, 2016 8:27 PM, "Steve Edwards" <asterisk.org at sedwards.com> wrote:
> >>
> >> On Fri, 18 Mar 2016, Trey Hilyard wrote:
> >>
> >>> I thought this would be as easy as
> >>> exten => _XXXXXXXXXX\;rn=+19136630000,1,Goto(from_pstn,${EXTEN:0:10})
> >
> >
> > How about something like:
> >
> > [parse-lrn]
> >         exten = _x.,1,                  verbose(1,[${EXTEN}@${CONTEXT}])
> >         same = n,                       set(DID=${CUT(EXTEN,\;,1)})
> >         same = n,                       set(LRN=${CUT(EXTEN,\;,2):3:12})
> >         same = n,                       execif($["${LRN:0:1}" = "+"]?set(LRN=${LRN:1}))
> >         same = n,                       execif($["${LRN:0:1}" = "1"]?set(LRN=${LRN:1}))
> >         same = n,                       goto(${LRN},${DID},1)
> >         same = n,                       hangup()
> 
> That's a good one. One thing it doesn't do is actually validate that the 
> LRN is mine, but that shouldn't be tough to add now the the LRN is in 
> its own variable. Thanks for the help!

If the LRN is not yours, you will not have a matching context so the 
goto() will run the invalid handler (the 'i' extension). You could play an 
appropriate message there.

-- 
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards       sedwards at sedwards.com      Voice: +1-760-468-3867 PST
             https://www.linkedin.com/in/steve-edwards-4244281


More information about the asterisk-users mailing list