features.conf [general] parkext => 700 parkpos => 701-720 context => parkedcalls parkingtime => 120 courtesytone = beep parkedplay = caller adsipark = yes findslot => next parkedmusicclass=default transferdigittimeout => 5 xfersound = beep xferfailsound = beeperr pickupexten = *8 featuredigittimeout = 1000 atxfernoanswertimeout = 45 language = pt_BR [featuremap] ;blindxfer => # blindxfer => *2 disconnect => *4 automon => *1 ;atxfer => *2 atxfer => # parkcall => *3 [applicationmap] ;conf-start => *0,caller,Macro,conf-start conf-start => *0,caller,AGI,redir.agi ;nway-inv => **,caller,Macro,nway-ok ;nway-noinv => *#,caller,Macro,nway-notok extensions.conf [macro-featured-dial] exten => s,1,Set(CHANNEL(language)=pt_BR) exten => s,n,Set(notperturb=${DB(features/not-perturb/${MACRO_EXTEN})}) exten => s,n,GotoIf($["x${notperturb}" = "x1"]?voicemail|1:followme|1) exten => followme,1,Set(followme=${DB(features/followme/${MACRO_EXTEN})}) exten => followme,2,Set(contexto=${CUT(followme|:|1)}) exten => followme,3,Set(extensao=${CUT(followme|:|2)}) exten => followme,4,GotoIf($["x${followme}" != "x"]?${contexto}|${extensao}|1:dial|1) exten => voicemail,1,VoiceMail(su${ARG2}) ;;exten => dial,1,Set(MIXMONITOR_FILENAME=${STRFTIME(${EPOCH},GMT+8,%C%y%m%d%H%M)}) ;exten => dial,n,UserEvent(CallerID[,${ARG2}:${CALLERID(num)}]) ;exten => dial,n,Set(DYNAMIC_FEATURES=automon) ;exten => dial,n,MixMonitor(${MIXMONITOR_FILENAME}.gsm,b) exten => dial,1,Dial(${ARG1}/${ARG2}|50|tT) exten => dial,n,Goto(ds-${DIALSTATUS}|1) exten => ds-CHANUNAVAIL,1,VoiceMail(${ARG2}@default,u) exten => ds-NOANSWER,1,Voicemail(${ARG2}@default,u) exten => ds-BUSY,1,Voicemail(${ARG2}@default,b) exten => ds-ANSWER,1,Goto(tradein,500,1) ;exten => ds-BUSY,1,Busy() exten => _62XX,1,Macro(featured-dial,SIP,${EXTEN})