[root@astRiga asterisk]# cat ./extensions.conf ; Asterisk Management Portal (AMP) ; Copyright (C) 2004 Coalescent Systems Inc ; dialparties.agi (http://www.sprackett.com/asterisk/) ; Asterisk::AGI (http://asterisk.gnuinter.net/) ; gsm (http://www.ibiblio.org/pub/Linux/utils/compress/!INDEX.short.html) ; loligo sounds (http://www.loligo.com/asterisk/sounds/) ; mpg123 (http://voip-info.org/wiki-Asterisk+config+musiconhold.conf) ; include extension contexts generated from AMP #include exten_my.conf ;#include extensions_additional.conf ; Customizations to this dialplan should be made in extensions_custom.conf ; See extensions_custom.conf.sample for an example #include extensions_custom.conf ;======================== #include extensions_db.conf #include extensions_utils.conf #include extensions_queue.conf #include extensions_ivr.conf #include extensions_unknown.conf [globals] DB_HOST => localhost DB_USER => asterisk DB_PASSWORD => frefubresus8p7a& DB_DATABASE => asterisk VOIP_OUTGOING_HOST => 69.80.215.6 RINGTIME_LOCAL => 25 RINGTIME_OUTGOING => 180 MONITOR_DIR => /var/spool/asterisk/monitor [ext-local-from-queue] exten => _XXXXX,1,NoOP(======= ext-local-from-queue =======) exten => _XXXXX,2,Macro(stdexten,${EXTEN},SIP/${EXTEN}) [Set_CLID_for_External_Calls] ;Dannyi kontekst prednaznachen dlya ustanovki ÑLIDa pri zvonkah v USA. ;CLID berjom iz MySQL. Esli CLIDa net - stavim 8006772943 ;************************************************************************* exten => s,1,MYSQL(Connect CLIDconnid ${DB_HOST} ${DB_USER} ${DB_PASSWORD} ${DB_DATABASE}) exten => s,2,MYSQL(Query CLIDresultID ${CLIDconnid} SELECT\ caller_id\ FROM\ extensions\ WHERE\ extension=${CALLERID(num)}\) exten => s,3,MYSQL(Fetch CLIDfetchID ${CLIDresultID} ExternalCLID) exten => s,4,Set(CALLERID(num)=${IF($["${ExternalCLID}"=""]?8006772943:"${ExternalCLID}")}) exten => s,5,Noop(=========== CALLERID(num) = ${CALLERID(num)} ===========) exten => s,6,MYSQL(Clear ${CLIDresultID}) exten => s,7,MYSQL(Disconnect ${CLIDconnid}) exten => s,8,Return ;************************************************************************* [ext-local] ;added by CTNCORP ;global calls ; vse 4to ugondno 1* -> cisko exten => _1XXXXXXXXXX,1,Answer exten => _1XXXXXXXXXX,2,Noop(-+=====+====+===-) ;TODO -- proverka na razreshenije zvonka exten => _1XXXXXXXXXX,3,GoSub(db_deny_out_extrn,${CALLERIDNUM},1) ;exten => _1XXXXXXXXXX,4,Macro(stdexten,SIP/${EXTEN}@${VOIP_OUTGOING_HOST},SIP/${EXTEN}@${VOIP_OUTGOING_HOST}) exten => _1XXXXXXXXXX,4,Gosub(Set_CLID_for_External_Calls|s|1) exten => _1XXXXXXXXXX,5,Dial(SIP/${EXTEN}@${VOIP_OUTGOING_HOST},${RINGTIME_OUTGOING},t) exten => _1XXXXXXXXXX,6,Hangup ;3BOHKu u3 * B USA C nPEqpukcoM 1650, T.E. JIOKAJIbHbIE 3BOHKu ; SF vse 4to ugondno 7 cifr avtomatom prefix SF(1650) -> cisko exten => _XXXXXXX,1,Noop() ;TODO -- proverka na razreshenije zvonka exten => _XXXXXXX,2,GoSub(db_deny_out_extrn,${CALLERIDNUM},1) exten => _XXXXXXX,3,Answer ;exten => _XXXXXXX,4,Macro(stdexten,SIP/1650${EXTEN}@${VOIP_OUTGOING_HOST},SIP/1650${EXTEN}@${VOIP_OUTGOING_HOST}) ;Dial(SIP/1650${EXTEN}@${VOIP_OUTGOING_HOST}) exten => _XXXXXXX,4,Gosub(Set_CLID_for_External_Calls|s|1) exten => _XXXXXXX,5,Dial(SIP/1650${EXTEN}@${VOIP_OUTGOING_HOST},${RINGTIME_OUTGOING},t) exten => _XXXXXXX,6,Hangup ;FOR DNIS ROUTING TEST (DEL IN PRODUCTION) exten => 12345678,1,Noop(=====@@@!!!!==${VOIP_OUTGOING_HOST}===) exten => 12345678,2,GoTo(db_dnis_routing,${EXTEN},1) ;FOR RT DNIS ROUTING - mapping cisko 74** phone to 1650267**** phone !!!NEW!!! ;exten => _74XX,1,GoTo(db_dnis_routing,1650267${EXTEN},1) ;exten => 2943,1,GoTo(db_dnis_routing,1650267${EXTEN},1) ;exten => 2238,1,GoTo(db_dnis_routing,1650267${EXTEN},1) exten => 2943,1,GoTo(db_dnis_routing,1800677${EXTEN},1) exten => 2238,1,GoTo(db_dnis_routing,1800750${EXTEN},1) ;ASAP business queues exten => 7759,1,GoTo(db_dnis_routing,18006057759,1) exten => 7769,1,GoTo(db_dnis_routing,18006057769,1) exten => 7798,1,GoTo(db_dnis_routing,18006057798,1) ;local calls ;=== calls to extensions exten => _XXXXX,1,NoOP(++++++++++9990000) ; TODO - proverit` razreshen li zvonok exten => _XXXXX,2,GoSub(db_deny_out_local,${CALLERIDNUM},1) exten => _XXXXX,3,GoSubIf($[ "${CALL_FROM_TYPE}" = "int" ]?db_deny_inc_local,${CALLERIDNUM},1) exten => _XXXXX,4,GoSubIf($[ "${CALL_FROM_TYPE}" = "ext" ]?db_deny_inc_extrn,${CALLERIDNUM},1) exten => _XXXXX,5,NoOp() ; TODO - vstativit` forward na RT <-? exten => _XXXXX,6,Macro(stdexten,${EXTEN},SIP/${EXTEN}) ;Dial(SIP/${EXTEN},200,t) ;=== login/logout queues exten => _XXXXX*,1,Wait(1) exten => _XXXXX*,2,Goto(static_ivr,054,1) exten => _XXXXX*,3,Hangup() exten => _XXXXX**,1,Wait(1) exten => _XXXXX**,2,Goto(static_ivr,055,1) exten => _XXXXX**,3,Hangup() exten => _XXXXX*,4,Goto(xxx,056,1) ;static IVR exten => _XXX,1,Goto(static_ivr,${EXTEN},1) ; ############################################################################ ; Macros [macro] ; ############################################################################ ; ;[macro-stdextenout] ; ${ARG1} - Extension to ring format SIP/{num} ; ;exten => s,1,SetCIDName(${CALLERIDNUM}) ;exten => s,n,MYSQL(Connect connid ${DB_HOST} ${DB_USER} ${DB_PASSWORD} ${DB_DATABASE}) ;exten => s,n,MYSQL(Query result1 ${connid} SELECT\ if\(COUNT\(\*\)\>0\,\'forbiden\'\,curdate\(\)\)\ as\ path\ FROM\ extensions\ WHERE\ deny_recording=1\ AND\ \(extension=${CALLERIDNUM}\ OR\ extension=${DNID}\)\) ;exten => s,n,MYSQL(Fetch foundRow ${result1} RestictedNum) ;exten => s,n,Noop(====var connid = ${connid}====== var result1 = ${result1} =======var RestictedNum=${RestictedNum}) ;exten => s,n,MYSQL(Clear ${result1}) ;exten => s,n,MYSQL(Disconnect ${connid}) ;exten => s,n,GotoIf($["${RestictedNum}"="0"]?BanedNum,1) ;exten => s,n,Set(MONITOR_FILENAME=${MONITOR_DIR}/${Path}/call-${UNIQUEID}) ;exten => s,n,Monitor(gsm|${MONITOR_FILENAME}|mb) ;exten => s,n,Dial(${ARG2},${RINGTIME_LOCAL},t) ;exten => s,n,hangup ; ;exten => BanedNum,1,playback(sorry-cant-let-you-do-that) ;exten => BanedNum,n,hangup [macro-stdexten] ; from old configuration ; ; Standard extension macro: ; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well ; ${ARG2} - Device(s) to ring ; ${ARG3} - How long time to ring (to local ext. - 15 sec, to external ext. - 200 sec) ; exten => s,1,GoSub(isext,1) ; Noop(=====ARG1=${ARG1}====ARG2=${ARG2}=========qvar=${qvar_queue}========USER_IP=${USER_IP}===============) exten => s,2,SetMusicOnHold(default) exten => s,3,SetCIDName(${CALLERIDNUM}) exten => s,4,Gotoif($["${qvar_queue}" = ""]?9) exten => s,5,DBget(USER_IP=SIP/Registry/${ARG2:4}) exten => s,6,Gotoif($["${USER_IP}" = ""]?7:9) exten => s,7,RemoveQueueMember(${qvar_queue}|Agent/${ARG2:4}) exten => s,8,Goto(db_ext_queues,${qvar_queue},1) exten => s,9,Noop() ; Gotoif($["${DNID}" = "0"]?noext,5) exten => s,10,Set(CDR(userfield)=${UNIQUEID}) exten => s,11,SetAccount(33333333) ;Noop(=) ;GoSub(answ,1) ;Noop() ;Answer ;!!! exten => s,12,GotoIf($["${CALL_TO_TYPE}" = "ext"]?outdial,1) ; Noop(#########!!!### CALL_TO_TYPE=${CALL_TO_TYPE}#####) ;GotoIf($["${ARG1}" > ""]?7) exten => s,13,MYSQL(Connect connid ${DB_HOST} ${DB_USER} ${DB_PASSWORD} ${DB_DATABASE}) exten => s,14,MYSQL(Query result1 ${connid} SELECT\ if\(COUNT\(\*\)\>0\,\'forbiden\'\,curdate\(\)\)\ as\ path\ FROM\ extensions\ WHERE\ deny_recording=1\ AND\ \(extension=${CALLERIDNUM}\ OR\ extension=${DNID}\)\) exten => s,15,MYSQL(Fetch foundRow ${result1} Path) exten => s,16,Noop(====var connid = ${connid}====== var result1 = ${result1} =======var Path=${Path}) exten => s,17,MYSQL(Clear ${result1}) exten => s,18,MYSQL(Disconnect ${connid}) exten => s,19,Set(MONITOR_FILENAME=${MONITOR_DIR}/${Path}/call-${UNIQUEID}) exten => s,20,Monitor(gsm|${MONITOR_FILENAME}|mb) ;GoSub(rec-call,1) exten => s,21,Dial(${ARG2},${RINGTIME_LOCAL},dt) ; s,4, ; Ring the interface, 20 seconds maximum exten => s,22,Noop(=!!!!=!!!!+!++!+!++!+!+!++!+!+!+!++!+!++!+!+!++) exten => s,23,Goto(s-${DIALSTATUS},1) ; s,5, ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTIO$ exten => s,24,Voicemail(u${ARG1}) ;To delete ; TODO - Zvonok mozet bit` iz queue mozet iz na ext -> ustanovit` $CALL_TYPE = queue/ext exten => s-NOANSWER,1,Noop();Gotoif($[${CALLERIDNAME:-6:6} = device]?2:3) exten => s-NOANSWER,2,Noop();Queue(${CALLERIDNAME:0:$[${LEN(${CALLERIDNAME})} - 6]}|t|||1080) exten => s-NOANSWER,3,Noop(=!!!========== ACCOUNTCODE=${ACCOUNTCODE}, (ANSWEREDTIME=${ANSWEREDTIME}), (BLINDTRANSFER=${BLINDTRANSFER}), (CALLERID=${CALLERID}), (CALLERIDNAME=${CALLERIDNAME}), (CALLERIDNUM=${CALLERIDNUM}), (CALLINGPRES=${CALLINGPRES}), (CHANNEL=${CHANNEL}), (CONTEXT=${CONTEXT}), (DATETIME=${DATETIME}), (DIALEDPEERNAME=${DIALEDPEERNAME}), (DIALEDPEERNUMBER=${DIALEDPEERNUMBER}), (DIALEDTIME=${DIALEDTIME}), (DIALSTATUS=${DIALSTATUS}), (DNID=${DNID}), (EPOCH=${EPOCH}), (EXTEN=${EXTEN}), (HANGUPCAUSE=${HANGUPCAUSE}), (INVALID_EXTEN=${INVALID_EXTEN}), (LANGUAGE=${LANGUAGE}), (MEETMESECS=${MEETMESECS}), (PRIORITY=${PRIORITY}), (RDNIS=${RDNIS}), (SIPDOMAIN=${SIPDOMAIN}), (SIP_CODEC=${SIP_CODEC}), (SIPCALLID=${SIPCALLID}), (SIPUSERAGENT=${SIPUSERAGENT}), (TIMESTAMP=${TIMESTAMP}), (TXTCIDNAME=${TXTCIDNAME}), (UNIQUEID=${UNIQUEID}), (TOUCH_MONITOR=${TOUCH_MONITOR}), (MACRO_CONTEXT=${MACRO_CONTEXT}), (MACRO_EXTEN=${MACRO_EXTEN}), (MACRO_PRIORITY=${MACRO_PRIORITY}) =========!!!);RemoveQueueMember(${CALLERIDNAME:0:$[${LEN(${CALLERIDNAME})} - 6]}|Agent/${CALLBACKNUM}) exten => s-NOANSWER,4,Gotoif($["${qvar_queue}" = ""]?7) exten => s-NOANSWER,5,RemoveQueueMember(${qvar_queue}|Agent/${ARG2:4}) ;Nado li vikidivat' agenta esli on ne otvetil exten => s-NOANSWER,6,Goto(db_ext_queues,${qvar_queue},1) ; TODO - skidivat` na RT & HANGUP exten => s-NOANSWER,7,Voicemail(u${ARG1}) ;4 ; If unavailable, send to voicemail w/ unavail announce ;exten => s-NOANSWER,8,Goto(from-internal,s,1) ;5 ; If they press #, return to start exten => s-BUSY,1,Noop();Gotoif($[${CALLERIDNAME:-6:6} = device]?2:4) exten => s-BUSY,2,Noop();Queue(${CALLERIDNAME:0:$[${LEN(${CALLERIDNAME})} - 6]}|t|||1080) exten => s-BUSY,3,Noop() exten => s-BUSY,4,Gotoif($["${qvar_queue}" = ""]?7) exten => s-BUSY,5,RemoveQueueMember(${qvar_queue}|Agent/${ARG2:4}) ;Nado li vikidivat' agenta esli on DND exten => s-BUSY,6,Goto(db_ext_queues,${qvar_queue},1) ; TODO - skidivat` na RT & HANGUP exten => s-BUSY,7,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce ;exten => s-BUSY,8,Goto(from-internal,s,1) ;default->office ; If they press #, return to start exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain ; exten => isext,1,GotoIf($["${ARG2:0:3}"="SIP"]?10) ;Noop(!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!) ;exten => isext,1,GotoIf($["${ARG2:0:3}" = "SIP"]?10) ;Noop(!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!) exten => isext,1,GotoIf($["${CALL_TO_TYPE}" != "int"]?10) exten => isext,2,MYSQL(Connect connid ${DB_HOST} ${DB_USER} ${DB_PASSWORD} ${DB_DATABASE}) exten => isext,3,MYSQL(Query result1 ${connid} SELECT\ IF\(ext_type=\'queue\'\,\'queue\'\,\'ext\'\)\ FROM\ extensions\ WHERE\ extension=\'${ARG1}\') ; exten => isext,3,MYSQL(Query result1 ${connid} SELECT\ COUNT\(\*\)\ FROM\ extensions\ WHERE\ extension=\'${ARG1}\') ; \ AND\ ext_type<>\'queue\' exten => isext,4,MYSQL(Fetch foundRow ${result1} isExtension) exten => isext,5,Noop(==###CALL_TO_TYPE=${CALL_TO_TYPE}###==var connid = ${connid}====== var result1 = ${result1} =======var foundRow = ${foundRow} ==== var isExtension = ${isExtension}) exten => isext,6,MYSQL(Clear ${result1}) exten => isext,7,MYSQL(Disconnect ${connid}) exten => isext,8,Noop(====var connid = ${connid}====ARG1=${ARG1:0:3}===== var result1 = ${result1} =======var foundRow = ${foundRow} ==== var isExtension = ${isExtension}) exten => isext,9,GotoIf($["${foundRow}"="0"]?noext,1) exten => isext,10,GotoIf($["${isExtension}"="queue"]?db_ext_queues,${ARG1},1) exten => isext,11,Return exten => noext,1,GoSub(db_ext_queues,${ARG1},1) ; Esli net eto ne EXT, to mozhet bit' eto Queue? exten => noext,2,Playback(beep) exten => noext,3,GotoIf($["${DNID:0:2}"="74"]?noext,6) ;## DNID=${DNID}############### CALLERIDNUM=${CALLERIDNUM}######################################) ;Gotoif($["${DNID}" = "0"]?noext,5) exten => noext,4,SayDigits(${ARG1}) exten => noext,5,Playback(invalid) exten => noext,6,Hangup exten => outdial,1,Dial(${ARG2},200,t) exten => outdial,2,Hangup exten => answ,1,GotoIf($["${isAnswered}" = "True"]?4) exten => answ,2,Set(__isAnswered="True") exten => answ,3,Answer exten => answ,4,Return ; ############################################################################ ; Inbound Contexts [from] ; ############################################################################ [from-sip-external] ;3BOHKu u3 O4EPEgEu' include => ext-queues ;Direct phones to Asterisk : -> DNIS exten => 7470,1,Macro(stdexten,21169,SIP/21169) exten => 7477,1,Macro(stdexten,21151,SIP/21151) exten => 7472,1,Macro(stdexten,22614,SIP/22614) ;3BOHKu u3 PSTN (cisco SF) -> DNIS exten => 7411,1,Wait,2 exten => 7411,2,Answer exten => 7411,3,PlayBack(pls-enter-en-extension-number) exten => 7411,4,Read(EXT1) exten => 7411,5,Macro(stdexten,${EXT1},SIP/${EXT1}) exten => 7411,6,PlayBack(beep) exten => 7411,7,Hangup [from-internal] exten => 056,4,noop(internal) include => static_ivr ;++++++++++++++++++ SPYGROUP = ${SPYGROUP}+++++++++++++++++ exten => _1234522XXX,1,PlayBack(beep) ; _TODO - proverku na razreshenija proslushivanija i sdelat` universal`no exten => _1234522XXX,2,Read(Password5) exten => _1234522XXX,3,Gotoif($[${Password5} = 987654321]?4:5) exten => _1234522XXX,4,ChanSpy(SIP/${EXTEN:5}) exten => _1234522XXX,5,Hangup exten => _1234525XXX,1,PlayBack(beep) exten => _1234525XXX,2,Read(Password5) exten => _1234525XXX,3,Gotoif($[${Password5} = 987654321]?4:5) exten => _1234525XXX,4,ChanSpy(SIP/${EXTEN:5}) exten => _1234525XXX,5,Hangup ;allow phones to use applications #include extensions_additional.conf include => ext-queues include => from-sip-external include => app-userlogonoff include => parkedcalls ;include => from-internal-custom ;allow phones to dial other extensions include => ext-fax include => ext-local include => ext-group include => ext-zapbarge include => ext-meetme include => ext-record ;allow phones to access trunks include => outbound-allroutes exten => s,1,Noop(====s1===) exten => s,2,NoCDR() exten => s,3,Macro(hangupcall) exten => h,1,Noop(====h1===) exten => h,2,ResetCDR(w) exten => h,3,NoCDR() exten => h,4,NoOp(); Macro(dumpvars) exten => h,5,Macro(hangupcall) exten => _2XXXX,1,NoOP(++++++++++9998++++++) exten => _2XXXX,2,NoOp() ;Answer exten => _2XXXX,3,Macro(stdexten,${EXTEN},SIP/${EXTEN}) ; ############################################################################ ; Extension Contexts [ext] ; ############################################################################ [set-var-TO] ;TODO - a ne dolzhna li CALL_TO_TYPE peremennaja bit' vnutrikanal'noj ? exten => _1XXXXXXXXXX,1,Set(CALL_TO_TYPE=ext) exten => _1XXXXXXXXXX,2,Return exten => _XXXXXXX,1,Set(CALL_TO_TYPE=ext) exten => _XXXXXXX,2,Return exten => _2XXXX,1,Set(CALL_TO_TYPE=int) exten => _2XXXX,2,Set(__B_NUM=${EXTEN}) exten => _2XXXX,3,Return ;for transfer #ext#. Esli eto ubrat', to dlja ternsfer nado nabirat' #ext (bez # v konce!) exten => _2XXXX#,1,Set(CALL_TO_TYPE=int) exten => _2XXXX#,2,Set(__B_NUM=${EXTEN:0:5}) exten => _2XXXX#,3,NoOP(++++++++++999) ; TODO - proverit` razreshen li zvonok exten => _2XXXX#,4,GoSub(db_deny_out_local,${CALLERIDNUM},1) exten => _2XXXX#,5,GoSubIf($[ "${CALL_FROM_TYPE}" = "int" ]?db_deny_inc_local,${CALLERIDNUM},1) exten => _2XXXX#,6,Macro(stdexten,${EXTEN:0:5},SIP/${EXTEN:0:5}) exten => _2XXXX#,7,Return ;syst - system calls (to chanspy, to VM, to echo123, etc...) exten => _0XX,1,Set(CALL_TO_TYPE=syst) exten => _0XX,2,Return exten => 123,1,Set(CALL_TO_TYPE=syst) ;echo123 exten => 123,2,Return exten => 2943,1,Set(CALL_TO_TYPE=int) exten => 2943,2,Return exten => 2238,1,Set(CALL_TO_TYPE=int) exten => 2238,2,Return exten => 7798,1,Set(CALL_TO_TYPE=int) exten => 7798,2,Return exten => 7769,1,Set(CALL_TO_TYPE=int) exten => 7769,2,Return exten => 7759,1,Set(CALL_TO_TYPE=int) exten => 7759,2,Return ;Zalipuha exten => _2290X,1,Set(CALL_TO_TYPE=int) exten => _2290X,2,Return exten => h,1,playback(beep) exten => h,2,noop(=====! RESTRICTED CALL !=====) exten => h,3,hangup() [set-var] exten => _.,1,Gotoif($["${CALL_FROM_TYPE}" != ""]?6) exten => _.,2,Set(CALL_FROM_TYPE=ext) exten => _.,3,DBget(USER_IP=SIP/Registry/${CALLERIDNUM}) exten => _.,4,Gotoif($["${USER_IP}" = ""]?6) exten => _.,5,Set(CALL_FROM_TYPE=int) exten => _.,6,GoSub(set-var-TO,${EXTEN},1) ;exten => _.,6,Gotoif($["${CALL_TO_TYPE}" != ""]?9) ;exten => _.,7,noop();Return ;exten => _.,8,noop(${EXTEN}) exten => _.,7,noop("CALL_TO_TYPE=${CALL_TO_TYPE} CALL_FROM_TYPE=${CALL_FROM_TYPE}") exten => _.,8,Return [check-restriction] ;block calls BLACK LIST - TODO move RT exten => _1900XXXXXXX,1,Hangup exten => _1976XXXXXXX,1,Hangup exten => _1809XXXXXXX,1,Hangup exten => _1876XXXXXXX,1,Hangup exten => _1284XXXXXXX,1,Hangup ; TODO - make check in RT exten => _.,1,Return [make-recording] ; TODO - set recordings exten => _.,1,Return [default-sip] exten => _.,1,Set(CALL_FROM_TYPE=int) exten => _.,2,goto(default,${EXTEN},1) ;include => default ;include => default-s ; [default] exten => _.,1,set(__valuee=1111222) exten => _.,2,SetAccount(${valuee}) exten => _.,3,GoSub(set-var,${EXTEN},1) exten => _.,4,GoSub(check-restriction,${EXTEN},1) exten => _.,5,GoSub(make-recording,${EXTEN},1) exten => _.,6,Goto(ext-local,${EXTEN},1) exten => _.,7,Playback(vm-goodbye) exten => _.,8,Macro(hangupcall) [root@astRiga asterisk]# [root@astRiga asterisk]# [root@astRiga asterisk]# [root@astRiga asterisk]# [root@astRiga asterisk]# [root@astRiga asterisk]# [root@astRiga asterisk]# asterisk -rx "show dialplan" [ Context 'default' created by 'pbx_config' ] '_.' => 1. set(__valuee=1111222) [pbx_config] 2. SetAccount(${valuee}) [pbx_config] 3. GoSub(set-var|${EXTEN}|1) [pbx_config] 4. GoSub(check-restriction|${EXTEN}|1) [pbx_config] 5. GoSub(make-recording|${EXTEN}|1) [pbx_config] 6. Goto(ext-local|${EXTEN}|1) [pbx_config] 7. Playback(vm-goodbye) [pbx_config] 8. Macro(hangupcall) [pbx_config] [ Context 'default-sip' created by 'pbx_config' ] '_.' => 1. Set(CALL_FROM_TYPE=int) [pbx_config] 2. goto(default|${EXTEN}|1) [pbx_config] [ Context 'make-recording' created by 'pbx_config' ] '_.' => 1. Return() [pbx_config] [root@astRiga asterisk]#