Hello
I have been reading the sample extension.conf
;#######################
[outbound-freenum2]
; This is the handler which performs the dialing logic. It is called
; from the [outbound-freenum] context
;
exten => _X!,1,Verbose(2,Performing ISN lookup for ${EXTEN})
same => n,Set(SUFFIX=${CUT(EXTEN,*,2-)}) ;
make sure the suffix is all digits as well
same => n,GotoIf($["${FILTER(0-9,${SUFFIX})}" !=
"${SUFFIX}"]?fn-CONGESTION,1)
; filter
out bad characters per the README-SERIOUSLY.best-practices.txt document
same => n,Set(TIMEOUT(absolute)=10800)
same => n,Set(isnresult=${ENUMLOOKUP(${EXTEN},sip,,1,freenum.org)}) ;
perform our lookup with freenum.org
same => n,GotoIf($["${isnresult}" != ""]?from)
same => n,Set(DIALSTATUS=CONGESTION)
same => n,Goto(fn-CONGESTION,1)
same => n(from),Set(__SIPFROMUSER=${CALLERID(num)})
same => n,GotoIf($["${GLOBAL(FREENUMDOMAIN)}" = ""]?dial)
; check if we set the FREENUMDOMAIN global variable in [global]
same => n,Set(__SIPFROMDOMAIN=${GLOBAL(FREENUMDOMAIN)}) ;
if we did set it, then we'll use it for our outbound dialing domain
same => n(dial),Dial(SIP/${isnresult},40)
same => n,Goto(fn-${DIALSTATUS},1)
exten => fn-BUSY,1,Busy()
exten => _f[n]-.,1,NoOp(ISN: ${DIALSTATUS})
same => n,Congestion()
;##########################
According to
"http://www.voip-info.org/wiki/view/Asterisk+config+extensions.conf"
"Syntax for defining a context: keywords exten, include, ignorepat and
switch." "same is not mentioned in this wiki."
There is a part of dial plan from sample extension.conf above. My Question is
how "same =>" key word works .
Thanks
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.digium.com/pipermail/asterisk-users/attachments/20121129/060408a6/attachment.htm>
It is self explanatory, for example:
exten => _X.,1, Noop("Let say we have allowed all numbers i.e. _X means
and . specifies any range")
same => n,NoOp("Here we have skipped mentioning dial-pattern again and
thats it")
Hope I have answered your question.
On Thu, Nov 29, 2012 at 8:40 AM, Shitian Long <longst.cn at gmail.com>
wrote:
> Hello
>
> I have been reading the sample extension.conf
>
> ;#######################
>
>
> [outbound-freenum2]
> ; This is the handler which performs the dialing logic. It is called
> ; from the [outbound-freenum] context
> ;
> exten => _X!,1,Verbose(2,Performing ISN lookup for ${EXTEN})
> same => n,Set(SUFFIX=${CUT(EXTEN,*,2-)})
;
> make sure the suffix is all digits as well
> same => n,GotoIf($["${FILTER(0-9,${SUFFIX})}" !>
"${SUFFIX}"]?fn-CONGESTION,1)
> ;
> filter out bad characters per the README-SERIOUSLY.best-practices.txt
> document
> same => n,Set(TIMEOUT(absolute)=10800)
> same => n,Set(isnresult=${ENUMLOOKUP(${EXTEN},sip,,1,freenum.org)})
;
> perform our lookup with freenum.org
> same => n,GotoIf($["${isnresult}" != ""]?from)
> same => n,Set(DIALSTATUS=CONGESTION)
> same => n,Goto(fn-CONGESTION,1)
> same => n(from),Set(__SIPFROMUSER=${CALLERID(num)})
> same => n,GotoIf($["${GLOBAL(FREENUMDOMAIN)}" =
""]?dial) ;
> check if we set the FREENUMDOMAIN global variable in [global]
> same => n,Set(__SIPFROMDOMAIN=${GLOBAL(FREENUMDOMAIN)})
;
> if we did set it, then we'll use it for our outbound dialing domain
> same => n(dial),Dial(SIP/${isnresult},40)
> same => n,Goto(fn-${DIALSTATUS},1)
>
> exten => fn-BUSY,1,Busy()
>
> exten => _f[n]-.,1,NoOp(ISN: ${DIALSTATUS})
> same => n,Congestion()
>
> ;##########################
>
>
> According to "
> http://www.voip-info.org/wiki/view/Asterisk+config+extensions.conf"
>
> "Syntax for defining a context: keywords *exten*, *include*,
*ignorepat*
> and *switch*." "same is not mentioned in this wiki."
>
> There is a part of dial plan from sample extension.conf above. My Question
> is how "same =>" key word works .
>
> Thanks
>
>
>
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
> New to Asterisk? Join us for a live introductory webinar every Thurs:
> http://www.asterisk.org/hello
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-users
>
--
Regards
**************************
Muhammad Salman
***************************
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.digium.com/pipermail/asterisk-users/attachments/20121129/9d3398eb/attachment.htm>
As I understand it, same => is a way to shorthand your list of the other
keywords. In the example you posted, you save 4 keystrokes for each line you
enter; not a lot of savings for this short example, but put it in a 1000+
line dialplan and it's quite a time-saver.
From: asterisk-users-bounces at lists.digium.com
[mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Shitian Long
Sent: Thursday, November 29, 2012 10:40 AM
To: Asterisk Users Mailing List - Non-Commercial Discussion
Subject: [asterisk-users] Questions about extension.conf
Hello
I have been reading the sample extension.conf
;#######################
[outbound-freenum2]
; This is the handler which performs the dialing logic. It is called
; from the [outbound-freenum] context
;
exten => _X!,1,Verbose(2,Performing ISN lookup for ${EXTEN})
same => n,Set(SUFFIX=${CUT(EXTEN,*,2-)}) ;
make sure the suffix is all digits as well
same => n,GotoIf($["${FILTER(0-9,${SUFFIX})}"
!"${SUFFIX}"]?fn-CONGESTION,1)
;
filter out bad characters per the README-SERIOUSLY.best-practices.txt
document
same => n,Set(TIMEOUT(absolute)=10800)
same => n,Set(isnresult=${ENUMLOOKUP(${EXTEN},sip,,1,freenum.org)}) ;
perform our lookup with freenum.org
same => n,GotoIf($["${isnresult}" != ""]?from)
same => n,Set(DIALSTATUS=CONGESTION)
same => n,Goto(fn-CONGESTION,1)
same => n(from),Set(__SIPFROMUSER=${CALLERID(num)})
same => n,GotoIf($["${GLOBAL(FREENUMDOMAIN)}" = ""]?dial)
;
check if we set the FREENUMDOMAIN global variable in [global]
same => n,Set(__SIPFROMDOMAIN=${GLOBAL(FREENUMDOMAIN)}) ;
if we did set it, then we'll use it for our outbound dialing domain
same => n(dial),Dial(SIP/${isnresult},40)
same => n,Goto(fn-${DIALSTATUS},1)
exten => fn-BUSY,1,Busy()
exten => _f[n]-.,1,NoOp(ISN: ${DIALSTATUS})
same => n,Congestion()
;##########################
According to
"http://www.voip-info.org/wiki/view/Asterisk+config+extensions.conf"
"Syntax for defining a context: keywords exten, include, ignorepat and
switch." "same is not mentioned in this wiki."
There is a part of dial plan from sample extension.conf above. My Question
is how "same =>" key word works .
Thanks
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.digium.com/pipermail/asterisk-users/attachments/20121129/f3ff740a/attachment.htm>
Shitian Long wrote 29.11.2012 18:40:> There is a part of dialplan from sample extension.conf above. My Question is how "same =>" key word works .> > Thanks"same" is used for complex templates, if you don't want to copy previous line or afraid you can make a typo. exten => _1XXNXXX,1,Answer same => n,HangUp is the substitution for: exten => _1XXNXXX,1,Answer exten => _1XXNXXX,n,HangUp Also, it makes grepping the particular exten in a file a lot easier, and if you want to change some template for exten which has 50 lines, you don't have to edit all 50 of them. -- With Best Regards Mikhail Lischuk -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20121129/4fa0c37d/attachment.htm>