Changeset 7752

Show
Ignore:
Timestamp:
05/26/09 18:01:37 (3 years ago)
Author:
p_lindheimer
Message:

removal of a bunch of busy comments and redundant calls to version_compare

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • modules/branches/2.6/core/functions.inc.php

    r7751 r7752  
    665665    case "asterisk": 
    666666 
     667      $ast_ge_14 = version_compare($version, '1.4', 'ge'); 
     668      $ast_lt_16 = version_compare($version, '1.6', 'lt'); 
     669 
    667670      // Now add to sip_general_addtional.conf 
    668671      // 
     
    674677        $core_conf->addSipGeneral('callerid','Unknown'); 
    675678        $core_conf->addSipGeneral('notifyringing','yes'); 
    676         if (version_compare($version, '1.4', 'ge')) {  
     679        if ($ast_ge_14) { 
    677680          $core_conf->addSipGeneral('notifyhold','yes'); 
    678681          $core_conf->addSipGeneral('limitonpeers','yes'); 
     
    688691        $core_conf->addIaxGeneral('allow','gsm'); 
    689692        $core_conf->addIaxGeneral('mailboxdetail','yes'); 
    690         if (version_compare($version, '1.4', 'ge')) { 
     693        if ($ast_ge_14) { 
    691694          $core_conf->addIaxGeneral('tos','ef'); // Recommended setting from doc/ip-tos.txt 
    692695        } 
     
    787790      //         creating all the extnesions below. So those are "$ext_pickup" on purpose! 
    788791      // 
    789       if ($fc_pickup != '' && version_compare($version, '1.4', 'ge')) { 
     792      if ($fc_pickup != '' && $ast_ge_14) { 
    790793        $ext->addInclude('from-internal-additional', 'app-pickup'); 
    791794        $fclen = strlen($fc_pickup); 
     
    10661069            // the raw format. 
    10671070            // 
    1068             if (version_compare($version, "1.6", "lt")) {  
     1071            if ($ast_lt_16) {  
    10691072              $ext->add($context, $exten, '', new ext_setvar('__CALLINGPRES_SV','${CALLINGPRES_${CALLINGPRES}}')); 
    10701073            } else { 
     
    13121315      // This should be fixed in 1.4.20 but for now we keep it in until 1.6 
    13131316      // 
    1314       if (version_compare($version, "1.6", "lt")) {  
     1317      if ($ast_lt_16) {  
    13151318        $ext->addGlobal('CALLINGPRES_0', 'allowed_not_screened'); 
    13161319        $ext->addGlobal('CALLINGPRES_1', 'allowed_passed_screen'); 
     
    13281331      // to the manager to get the information 
    13291332      // 
    1330       if (version_compare($version, '1.4', 'ge') && version_compare($version, '1.6', 'lt')) { 
     1333      if ($ast_ge_14 && $ast_lt_16) { 
    13311334        $response = $astman->send_request('Command', array('Command' => 'module show like func_extstate')); 
    13321335        if (preg_match('/1 modules loaded/', $response['data'])) { 
     
    15001503      $ext->add($context, $exten, '', new ext_setvar('__MACRO_RESULT','ABORT')); 
    15011504      $ext->add($context, $exten, '', new ext_setvar('MSG1','${IF($["foo${ARG1}" != "foo"]?${ARG1}:"incoming-call-1-accept-2-decline")}')); 
    1502       if (version_compare($version, "1.4", "ge")) {  
     1505      if ($ast_ge_14) { 
    15031506        $ext->add($context, $exten, 'start', new ext_background('${MSG1},m,${CHANNEL(language)},macro-confirm')); 
    15041507      } else { 
     
    15281531 
    15291532      $exten = '_X'; 
    1530       if (version_compare($version, "1.4", "ge")) {  
     1533      if ($ast_ge_14) { 
    15311534        $ext->add($context, $exten, '', new ext_background('invalid,m,${CHANNEL(language)},macro-confirm')); 
    15321535      } else { 
     
    18441847      // their status if forwarded back out. Not doing this can result in the trunk CID being displayed vs. 'blocked call' 
    18451848      // 
    1846       if (version_compare($version, "1.6", "lt")) {  
     1849      if ($ast_lt_16) {  
    18471850        $ext->add($context, $exten, '', new ext_execif('$["${CALLINGPRES_SV}" != ""]', 'SetCallerPres', '${CALLINGPRES_SV}')); 
    18481851      } else { 
     
    18801883 
    18811884      $ext->add($context, $exten, 'usercid', new ext_execif('$["${USEROUTCID:1:2}" != ""]', 'Set', 'CALLERID(all)=${USEROUTCID}'));  // check CID override for extension 
    1882       if (version_compare($version, "1.6", "lt")) {  
     1885      if ($ast_lt_16) {  
    18831886        $ext->add($context, $exten, 'hidecid', new ext_execif('$["${CALLERID(name)}"="hidden"]', 'SetCallerPres', 'prohib_passed_screen')); 
    18841887      } else { 
     
    19091912       
    19101913      $ext->add($context, $exten, '', new ext_playback('beep')); 
    1911       if (version_compare($version, "1.4", "ge")) {  
     1914      if ($ast_ge_14) { 
    19121915        $ext->add($context, $exten, 'dc_start', new ext_background('${RECFILE},m,${CHANNEL(language)},macro-systemrecording')); 
    19131916      } else { 
     
    19181921 
    19191922      $exten = 'confmenu'; 
    1920       if (version_compare($version, "1.4", "ge")) {  
     1923      if ($ast_ge_14) { 
    19211924        $ext->add($context, $exten, '', new ext_background('to-listen-to-it&press-1&to-rerecord-it&press-star&astcc-followed-by-pound,m,${CHANNEL(language)},macro-systemrecording')); 
    19221925      } else { 
     
    21332136      // ARG2 - DIRECTDIAL/BUSY 
    21342137      // ARG3 - RETURN makes macro return, otherwise hangup 
    2135       //exten => s,1,Macro(user-callerid,SKIPTTL) 
     2138      // 
    21362139      $ext->add('macro-vm', 's', '', new ext_macro('user-callerid', 'SKIPTTL')); 
    2137       //exten => s,n,Set(VMGAIN=${IF($["foo${VM_GAIN}"!="foo"]?"g(${VM_GAIN})":"")}) 
    21382140      $ext->add('macro-vm','s', '', new ext_setvar("VMGAIN", '${IF($["foo${VM_GAIN}"!="foo"]?"g(${VM_GAIN})":"")}')); 
     2141 
    21392142      // If BLKVM_OVERRIDE is set, then someone told us to block calls from going to 
    21402143      // voicemail. This variable is reset by the answering channel so subsequent 
    21412144      // transfers will properly function. 
    2142        
    2143       //exten => s,n,GotoIf($["foo${DB(${BLKVM_OVERRIDE})}" != "fooTRUE"]?vmx,1) 
     2145      // 
    21442146      $ext->add('macro-vm','s', '', new ext_gotoif('$["foo${DB(${BLKVM_OVERRIDE})}" != "fooTRUE"]','vmx,1')); 
    21452147 
    21462148      // we didn't branch so block this from voicemail 
    2147  
    2148       //exten => s,n,Noop(CAME FROM: ${NODEST} - Blocking VM cause of key: ${DB(BLKVM_OVERRIDE)}) 
     2149      // 
    21492150      $ext->add('macro-vm','s', '', new ext_NoOp('CAME FROM: ${NODEST} - Blocking VM cause of key: ${DB(BLKVM_OVERRIDE)}'));  
    2150       //exten => s,n,Hangup 
    21512151      $ext->add('macro-vm','s', '', new ext_hangup('')); 
     2152 
    21522153      // If vmx not enabled for the current mode,then jump to normal voicemail behavior 
    21532154      // also - if not message (no-msg) is requested, straight to voicemail 
    2154  
    2155       //exten => vmx,1,GotoIf($["${ARG2}"="NOMESSAGE"]?s-${ARG2},1) 
     2155      // 
    21562156      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${ARG2}"="NOMESSAGE"]','s-${ARG2},1')); 
    2157       //exten => vmx,n,Set(MODE=${IF($["${ARG2}"="BUSY"]?busy:unavail)}) 
    21582157      $ext->add('macro-vm','vmx', '', new ext_setvar("MODE", '${IF($["${ARG2}"="BUSY"]?busy:unavail)}')); 
    2159       //exten => vmx,n,GotoIf($["${ARG2}" != "DIRECTDIAL"]?notdirect) 
    21602158      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${ARG2}" != "DIRECTDIAL"]','notdirect')); 
    2161       //exten => vmx,n,Set(MODE=${IF($["${REGEX("[b]" ${VM_DDTYPE})}" = "1"]?busy:${MODE})}) 
    21622159      $ext->add('macro-vm','vmx', '', new ext_setvar("MODE", '${IF($["${REGEX("[b]" ${VM_DDTYPE})}" = "1"]?busy:${MODE})}')); 
    2163       //exten => vmx,n(notdirect),Noop(Checking if ext ${ARG1} is enabled: ${DB(AMPUSER/${ARG1}/vmx/${MODE}/state)}) 
    21642160      $ext->add('macro-vm','vmx', 'notdirect', new ext_NoOp('Checking if ext ${ARG1} is enabled: ${DB(AMPUSER/${ARG1}/vmx/${MODE}/state)}')); 
    2165       //exten => vmx,n,GotoIf($["${DB(AMPUSER/${ARG1}/vmx/${MODE}/state)}" != "enabled"]?s-${ARG2},1) 
    21662161      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${DB(AMPUSER/${ARG1}/vmx/${MODE}/state)}" != "enabled"]','s-${ARG2},1')); 
     2162 
    21672163      // If the required voicemail file does not exist, then abort and go to normal voicemail behavior 
    21682164      // 
     
    21712167      //       returns SUCCESS when the command returned succcessfully with a 0 app return code. 
    21722168      // 
    2173       //exten => vmx,n,Macro(get-vmcontext,${ARG1}) 
    21742169      $ext->add('macro-vm', 'vmx', '', new ext_macro('get-vmcontext', '${ARG1}'));       
    2175       //;exten => vmx,n,TrySystem(/bin/ls ${ASTSPOOLDIR}/voicemail/${VMCONTEXT}/${ARG1}/${MODE}.[wW][aA][vV]) 
    21762170      //$ext->add('macro-vm', 'vmx', '', new ext_trysystem('/bin/ls ${ASTSPOOLDIR}/voicemail/${VMCONTEXT}/${ARG1}/${MODE}.[wW][aA][vV]')); 
    2177       //exten => vmx,n,AGI(checksound.agi,${ASTSPOOLDIR}/voicemail/${VMCONTEXT}/${ARG1}/temp) 
    21782171      $ext->add('macro-vm', 'vmx', '',new ext_agi('checksound.agi,${ASTSPOOLDIR}/voicemail/${VMCONTEXT}/${ARG1}/temp')); 
    2179       //exten => vmx,n,GotoIf($["${SYSTEMSTATUS}" = "SUCCESS"]?tmpgreet) 
    21802172      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${SYSTEMSTATUS}" = "SUCCESS"]','tmpgreet')); 
    2181       //exten => vmx,n,AGI(checksound.agi,${ASTSPOOLDIR}/voicemail/${VMCONTEXT}/${ARG1}/${MODE}) 
    21822173      $ext->add('macro-vm', 'vmx', '',new ext_agi('checksound.agi,${ASTSPOOLDIR}/voicemail/${VMCONTEXT}/${ARG1}/${MODE}')); 
    2183       //exten => vmx,n,GotoIf($["${SYSTEMSTATUS}" != "SUCCESS"]?nofile) 
    21842174      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${SYSTEMSTATUS}" != "SUCCESS"]','nofile')); 
    2185       // Get the repeat, timeout and loop times to use if they are overriden form the global settings 
    2186  
    2187       //exten => vmx,n,Set(LOOPCOUNT=0) 
     2175 
    21882176      $ext->add('macro-vm','vmx', '', new ext_setvar("LOOPCOUNT", '0'));       
    2189       //exten => vmx,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/repeat)}" = "0"]?vmxtime) 
    21902177      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/repeat)}" = "0"]','vmxtime')); 
    2191       //exten => vmx,n,Set(VMX_REPEAT=${DB_RESULT}) 
    21922178      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_REPEAT", '${DB_RESULT}')); 
    2193       //exten => vmx,n(vmxtime),GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/timeout)}" = "0"]?vmxloops) 
    21942179      $ext->add('macro-vm','vmx', 'vmxtime', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/timeout)}" = "0"]','vmxloops')); 
    2195       //exten => vmx,n,Set(VMX_TIMEOUT=${DB_RESULT}) 
    21962180      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_TIMEOUT", '${DB_RESULT}')); 
    2197       //exten => vmx,n(vmxloops),GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/loops)}" = "0"]?vmxanswer) 
    21982181      $ext->add('macro-vm','vmx', 'vmxloops', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/loops)}" = "0"]','vmxanswer')); 
    2199       //exten => vmx,n,Set(VMX_LOOPS=${DB_RESULT}) 
    22002182      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_LOOPS", '${DB_RESULT}')); 
    2201       //exten => vmx,n(vmxanswer),Answer() 
    22022183      $ext->add('macro-vm','vmx','vmxanswer',new ext_answer('')); 
    22032184 
    22042185      // Now play the users voicemail recording as the basis for their ivr, the Read command will repeat as needed and if it timesout 
    22052186      // then we go to the timeout. Otherwise handle invalid options by looping until the limit until a valid option is played. 
    2206  
    2207       //exten => vmx,n(loopstart),Read(ACTION,${ASTSPOOLDIR}/voicemail/${VMCONTEXT}/${ARG1}/${MODE},1,skip,${VMX_REPEAT},${VMX_TIMEOUT}) 
     2187      // 
    22082188      $ext->add('macro-vm','vmx','loopstart',new ext_read('ACTION', '${ASTSPOOLDIR}/voicemail/${VMCONTEXT}/${ARG1}/${MODE}', 1, 'skip', '${VMX_REPEAT}', '${VMX_TIMEOUT}')); 
    2209       //exten => vmx,n,GotoIf($["${EXISTS(${ACTION})}" = "1"]?checkopt) 
    22102189      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${EXISTS(${ACTION})}" = "1"]','checkopt')); 
     2190 
    22112191      // If we are here we timed out, go to the required destination 
    2212  
    2213       //exten => vmx,n(noopt),Noop(Timeout: going to timeout dest) 
     2192      // 
    22142193      $ext->add('macro-vm','vmx', 'noopt', new ext_NoOp('Timeout: going to timeout dest'));      
    2215       //exten => vmx,n,Set(VMX_OPTS=${VMX_OPTS_TIMEOUT}) 
    22162194      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_OPTS", '${VMX_OPTS_TIMEOUT}')); 
    2217       //exten => vmx,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/vmxopts/timeout)}" = "0"]?chktime) 
    22182195      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/vmxopts/timeout)}" = "0"]','chktime')); 
    2219       //exten => vmx,n,Set(VMX_OPTS=${DB_RESULT}) 
    22202196      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_OPTS", '${DB_RESULT}')); 
    2221       //exten => vmx,n(chktime),GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/timedest/ext)}" = "0"]?dotime) 
    22222197      $ext->add('macro-vm','vmx', 'chktime', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/timedest/ext)}" = "0"]','dotime')); 
    2223       //exten => vmx,n,Set(VMX_TIMEDEST_EXT=${DB_RESULT}) 
    22242198      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_TIMEDEST_EXT",'${DB_RESULT}'));  
    2225       //exten => vmx,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/timedest/context)}" = "0"]?timepri) 
    22262199      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/timedest/context)}" = "0"]','timepri')); 
    2227       //exten => vmx,n,Set(VMX_TIMEDEST_CONTEXT=${DB_RESULT}) 
    22282200      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_TIMEDEST_CONTEXT",'${DB_RESULT}')); 
    2229       //exten => vmx,n(timepri),GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/timedest/pri)}" = "0"]?dotime) 
    22302201      $ext->add('macro-vm','vmx', 'timepri', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/timedest/pri)}" = "0"]','dotime')); 
    2231       //exten => vmx,n,Set(VMX_TIMEDEST_PRI=${DB_RESULT}) 
    22322202      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_TIMEDEST_PRI",'${DB_RESULT}')); 
    2233       //exten => vmx,n(dotime),Goto(${VMX_TIMEDEST_CONTEXT},${VMX_TIMEDEST_EXT},${VMX_TIMEDEST_PRI}) 
    22342203      $ext->add('macro-vm','vmx','dotime',new ext_goto('${VMX_TIMEDEST_PRI}', '${VMX_TIMEDEST_EXT}', '${VMX_TIMEDEST_CONTEXT}')); 
     2204 
    22352205      // We got an option, check if the option is defined, or one of the system defaults 
    2236  
    2237       //exten => vmx,n(checkopt),GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/${ACTION}/ext)}" = "1"]?doopt) 
     2206      // 
    22382207      $ext->add('macro-vm','vmx', 'checkopt', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/${ACTION}/ext)}" = "1"]','doopt')); 
    2239       //exten => vmx,n,GotoIf($["${ACTION}" = "0"]?o,1) 
    22402208      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${ACTION}" = "0"]','o,1')); 
    2241       //exten => vmx,n,GotoIf($["${ACTION}" = "*"]?adef,1) 
    22422209      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${ACTION}" = "*"]','adef,1')); 
     2210 
    22432211      // Got invalid option loop until the max 
    2244  
    2245       //exten => vmx,n,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1]) 
     2212      // 
    22462213      $ext->add('macro-vm','vmx', '', new ext_setvar("LOOPCOUNT",'$[${LOOPCOUNT} + 1]')); 
    2247       //exten => vmx,n,GotoIf($[${LOOPCOUNT} > ${VMX_LOOPS}]?toomany) 
    22482214      $ext->add('macro-vm','vmx', '', new ext_gotoif('$[${LOOPCOUNT} > ${VMX_LOOPS}]','toomany')); 
    2249       //exten => vmx,n,Playback(pm-invalid-option&please-try-again) 
    22502215      $ext->add('macro-vm','vmx','',new ext_playback('pm-invalid-option&please-try-again'));       
    2251       //exten => vmx,n,Goto(loopstart) 
    22522216      $ext->add('macro-vm','vmx','',new ext_goto('loopstart')); 
     2217 
    22532218      // tomany: to many invalid options, go to the specified destination 
    2254  
    2255       //exten => vmx,n(toomany),Noop(Too Many invalid entries, got to invalid dest) 
     2219      // 
    22562220      $ext->add('macro-vm','vmx', 'toomany', new ext_NoOp('Too Many invalid entries, got to invalid dest'));       
    2257       //exten => vmx,n,Set(VMX_OPTS=${VMX_OPTS_LOOPS}) 
    22582221      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_OPTS",'${VMX_OPTS_LOOPS}')); 
    2259       //exten => vmx,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/vmxopts/loops)}" = "0"]?chkloop) 
    22602222      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/vmxopts/loops)}" = "0"]','chkloop')); 
    2261       //exten => vmx,n,Set(VMX_OPTS=${DB_RESULT}) 
    22622223      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_OPTS",'${DB_RESULT}')); 
    2263       //exten => vmx,n(chkloop),GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/loopdest/ext)}" = "0"]?doloop) 
    22642224      $ext->add('macro-vm','vmx', 'chkloop', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/loopdest/ext)}" = "0"]','doloop')); 
    2265       //exten => vmx,n,Set(VMX_LOOPDEST_EXT=${DB_RESULT}) 
    22662225      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_LOOPDEST_EXT",'${DB_RESULT}')); 
    2267       //exten => vmx,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/loopdest/context)}" = "0"]?looppri) 
    22682226      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/loopdest/context)}" = "0"]','looppri')); 
    2269       //exten => vmx,n,Set(VMX_LOOPDEST_CONTEXT=${DB_RESULT}) ;TODO make configurable per above 
    22702227      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_LOOPDEST_CONTEXT",'${DB_RESULT}')); 
    2271       //exten => vmx,n(looppri),GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/loopdest/pri)}" = "0"]?doloop) 
    22722228      $ext->add('macro-vm','vmx', 'looppri', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/loopdest/pri)}" = "0"]','doloop')); 
    2273       //exten => vmx,n,Set(VMX_LOOPDEST_PRI=${DB_RESULT}) ;TODO make configurable per above 
    22742229      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_LOOPDEST_PRI",'${DB_RESULT}')); 
    2275       //exten => vmx,n(doloop),Goto(${VMX_LOOPDEST_CONTEXT},${VMX_LOOPDEST_EXT},${VMX_LOOPDEST_PRI}) 
    22762230      $ext->add('macro-vm','vmx','doloop',new ext_goto('${VMX_LOOPDEST_PRI}','${VMX_LOOPDEST_EXT}','${VMX_LOOPDEST_CONTEXT}')); 
     2231 
    22772232      // doopt: execute the valid option that was chosen 
    2278  
    2279       //exten => vmx,n(doopt),Noop(Got a valid option: ${DB_RESULT}) 
     2233      // 
    22802234      $ext->add('macro-vm','vmx', 'doopt', new ext_NoOp('Got a valid option: ${DB_RESULT}'));      
    2281       //exten => vmx,n,Set(VMX_EXT=${DB_RESULT}) 
    22822235      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_EXT",'${DB_RESULT}')); 
    22832236 
    22842237      // Special case, if this option was to go to voicemail, set options and go 
    2285  
    2286       //exten => vmx,n,GotoIf($["${VMX_EXT}" != "dovm"]?getdest) 
     2238      // 
    22872239      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${VMX_EXT}" != "dovm"]','getdest')); 
    2288       //exten => vmx,n(vmxopts),Set(VMX_OPTS=${VMX_OPTS_DOVM}) 
    22892240      $ext->add('macro-vm','vmx', 'vmxopts', new ext_setvar("VMX_OPTS",'${VMX_OPTS_DOVM}')); 
    2290       //exten => vmx,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/vmxopts/dovm)}" = "0"]?vmxdovm) 
    22912241      $ext->add('macro-vm','vmx', '', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/vmxopts/dovm)}" = "0"]','vmxdovm')); 
    2292       //exten => vmx,n(vmxopts),Set(VMX_OPTS=${DB_RESULT}) 
    22932242      $ext->add('macro-vm','vmx', 'vmxopts', new ext_setvar("VMX_OPTS",'${DB_RESULT}')); 
    2294       //exten => vmx,n(vmxdovm),goto(dovm,1) 
    22952243      $ext->add('macro-vm','vmx','vmxdovm',new ext_goto('1','dovm'));      
    22962244 
    22972245      // General case, setup the goto destination and go there (no error checking, its up to the GUI's to assure 
    22982246      // reasonable values 
    2299  
    2300       //exten => vmx,n(getdest),GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/${ACTION}/context)}" = "0"]?vmxpri) 
     2247      // 
    23012248      $ext->add('macro-vm','vmx', 'getdest', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/${ACTION}/context)}" = "0"]','vmxpri')); 
    2302       //exten => vmx,n,Set(VMX_CONTEXT=${DB_RESULT}) 
    23032249      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_CONTEXT",'${DB_RESULT}')); 
    2304       //exten => vmx,n(vmxpri),GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/${ACTION}/pri)}" = "0"]?vmxgoto) 
    23052250      $ext->add('macro-vm','vmx', 'vmxpri', new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/${ACTION}/pri)}" = "0"]','vmxgoto')); 
    2306       //exten => vmx,n,Set(VMX_PRI=${DB_RESULT}) 
    23072251      $ext->add('macro-vm','vmx', '', new ext_setvar("VMX_PRI",'${DB_RESULT}')); 
    2308       //exten => vmx,n(vmxgoto),Goto(${VMX_CONTEXT},${VMX_EXT},${VMX_PRI}) 
    23092252      $ext->add('macro-vm','vmx','vmxgoto',new ext_goto('${VMX_PRI}','${VMX_EXT}','${VMX_CONTEXT}')); 
     2253 
    23102254      // If the required voicemail file is not present, then revert to normal voicemail 
    23112255      // behavior treating as if it was not set 
    2312  
    2313       //exten => vmx,n(nofile),Noop(File for mode: ${MODE} does not exist, SYSTEMSTATUS: ${SYSTEMSTATUS}, going to normal voicemail) 
     2256      // 
    23142257      $ext->add('macro-vm','vmx', 'nofile', new ext_NoOp('File for mode: ${MODE} does not exist, SYSTEMSTATUS: ${SYSTEMSTATUS}, going to normal voicemail')); 
    2315       //exten => vmx,n,Goto(s-${ARG2},1) 
    23162258      $ext->add('macro-vm','vmx','',new ext_goto('1','s-${ARG2}')); 
    2317       //exten => vmx,n(tmpgreet),Noop(Temporary Greeting Detected, going to normal voicemail) 
    23182259      $ext->add('macro-vm','vmx', 'tmpgreet', new ext_NoOp('Temporary Greeting Detected, going to normal voicemail')); 
    2319       //exten => vmx,n,Goto(s-${ARG2},1) 
    23202260      $ext->add('macro-vm','vmx','',new ext_goto('1','s-${ARG2}')); 
    23212261 
     
    23232263      // if the user timed out or broke out of the loop then VMX_OPTS is always cleared such that an Allison 
    23242264      // message is played and the caller know's what is going on. 
    2325  
    2326       //exten => dovm,1,Noop(VMX Timeout - go to voicemail) 
     2265      // 
    23272266      $ext->add('macro-vm','dovm', '', new ext_NoOp('VMX Timeout - go to voicemail')); 
    2328       //exten => dovm,n,Voicemail(${ARG1}@${VMCONTEXT},${VMX_OPTS}${VMGAIN}) ; no flags, so allison plays please leave ... 
    23292267      $ext->add('macro-vm','dovm', '',new ext_vm('${ARG1}@${VMCONTEXT},${VMX_OPTS}${VMGAIN}'));  
    2330       //exten => dovm,n,Goto(exit-${VMSTATUS},1) 
    23312268      $ext->add('macro-vm','dovm', '',new ext_goto('1','exit-${VMSTATUS}')); 
    23322269 
    2333       //exten => s-BUSY,1,NoOp(BUSY voicemail) 
    23342270      $ext->add('macro-vm','s-BUSY','',new ext_NoOp('BUSY voicemail')); 
    2335       //exten => s-BUSY,n,Macro(get-vmcontext,${ARG1}) 
    23362271      $ext->add('macro-vm','s-BUSY','',new ext_macro('get-vmcontext','${ARG1}')); 
    2337       //exten => s-BUSY,n,Voicemail(${ARG1}@${VMCONTEXT},${VM_OPTS}b${VMGAIN})   ; Voicemail Busy message 
    23382272      $ext->add('macro-vm','s-BUSY', '',new ext_vm('${ARG1}@${VMCONTEXT},${VM_OPTS}b${VMGAIN}')); 
    2339       //exten => s-BUSY,n,Goto(exit-${VMSTATUS},1) 
    2340        $ext->add('macro-vm','s-BUSY', '',new ext_goto('1','exit-${VMSTATUS}')); 
    2341  
    2342       //exten => s-NOMESSAGE,1,NoOp(NOMESSAGE (beeb only) voicemail) 
     2273      $ext->add('macro-vm','s-BUSY', '',new ext_goto('1','exit-${VMSTATUS}')); 
     2274 
    23432275      $ext->add('macro-vm','s-NOMESSAGE','',new ext_NoOp('NOMESSAGE (beeb only) voicemail')); 
    2344       //exten => s-NOMESSAGE,n,Macro(get-vmcontext,${ARG1}) 
    23452276      $ext->add('macro-vm','s-NOMESSAGE','',new ext_macro('get-vmcontext','${ARG1}')); 
    2346       //exten => s-NOMESSAGE,n,Voicemail(${ARG1}@${VMCONTEXT},s${VM_OPTS}${VMGAIN}) 
    23472277      $ext->add('macro-vm','s-NOMESSAGE','',new ext_vm('${ARG1}@${VMCONTEXT},s${VM_OPTS}${VMGAIN}')); 
    2348       //exten => s-NOMESSAGE,n,Goto(exit-${VMSTATUS},1) 
    23492278      $ext->add('macro-vm','s-NOMESSAGE','',new ext_goto('1','exit-${VMSTATUS}')); 
    23502279 
    2351       //exten => s-DIRECTDIAL,1,NoOp(DIRECTDIAL voicemail) 
    23522280      $ext->add('macro-vm','s-DIRECTDIAL','',new ext_NoOp('DIRECTDIAL voicemail')); 
    2353       //exten => s-DIRECTDIAL,n,Macro(get-vmcontext,${ARG1}) 
    23542281      $ext->add('macro-vm','s-DIRECTDIAL','',new ext_macro('get-vmcontext','${ARG1}')); 
    2355       //exten => s-DIRECTDIAL,n,Voicemail(${ARG1}@${VMCONTEXT},${VM_OPTS}${VM_DDTYPE}${VMGAIN}) 
    23562282      $ext->add('macro-vm','s-DIRECTDIAL','',new ext_vm('${ARG1}@${VMCONTEXT},${VM_OPTS}${VM_DDTYPE}${VMGAIN}')); 
    2357       //exten => s-DIRECTDIAL,n,Goto(exit-${VMSTATUS},1) 
    23582283      $ext->add('macro-vm','s-DIRECTDIAL','',new ext_goto('1','exit-${VMSTATUS}')); 
    23592284 
    2360       //exten => _s-.,1,Macro(get-vmcontext,${ARG1}) 
    23612285      $ext->add('macro-vm','_s-.','',new ext_macro('get-vmcontext','${ARG1}')); 
    2362       //exten => _s-.,n,Voicemail(${ARG1}@${VMCONTEXT},${VM_OPTS}u${VMGAIN})     ; Voicemail Unavailable message 
    23632286      $ext->add('macro-vm','_s-.','',new ext_vm('${ARG1}@${VMCONTEXT},${VM_OPTS}u${VMGAIN}')); 
    2364       //exten => _s-.,n,Goto(exit-${VMSTATUS},1) 
    23652287      $ext->add('macro-vm','_s-.','',new ext_goto('1','exit-${VMSTATUS}')); 
     2288 
    23662289      // If the user has a 0 option defined, use that for operator zero-out from within voicemail 
    23672290      // as well to keep it consistant with the menu structure 
    2368  
    2369       //exten => o,1,Background(one-moment-please)      ; 0 during vm message will hangup 
     2291      // 
    23702292      $ext->add('macro-vm','o','',new ext_background('one-moment-please')); 
    2371       //exten => o,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/0/ext)}" = "0"]?doopdef) 
    23722293      $ext->add('macro-vm','o','',new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/0/ext)}" = "0"]','doopdef')); 
    2373       //exten => o,n,Set(VMX_OPDEST_EXT=${DB_RESULT}) 
    23742294      $ext->add('macro-vm','o','',new ext_setvar("VMX_OPDEST_EXT",'${DB_RESULT}')); 
    2375       //exten => o,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/0/context)}" = "1"]?opcontext) 
    23762295      $ext->add('macro-vm','o','',new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/0/context)}" = "1"]','opcontext')); 
    2377       //exten => o,n,Set(DB_RESULT=${VMX_CONTEXT}) 
    23782296      $ext->add('macro-vm','o','',new ext_setvar("DB_RESULT",'${VMX_CONTEXT}')); 
    2379       //exten => o,n(opcontext),Set(VMX_OPDEST_CONTEXT=${DB_RESULT}) 
    23802297      $ext->add('macro-vm','o','opcontext',new ext_setvar("VMX_OPDEST_CONTEXT",'${DB_RESULT}')); 
    2381       //exten => o,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/0/pri)}" = "1"]?oppri) 
    23822298      $ext->add('macro-vm','o','',new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/0/pri)}" = "1"]','oppri')); 
    2383       //exten => o,n,Set(DB_RESULT=${VMX_PRI}) 
    23842299      $ext->add('macro-vm','o','',new ext_setvar("DB_RESULT",'${VMX_PRI}')); 
    2385       //exten => o,n(oppri),Set(VMX_OPDEST_PRI=${DB_RESULT}) 
    23862300      $ext->add('macro-vm','o','oppri',new ext_setvar("VMX_OPDEST_PRI",'${DB_RESULT}')); 
    2387       //exten => o,n,Goto(${VMX_OPDEST_CONTEXT},${VMX_OPDEST_EXT},${VMX_OPDEST_PRI}) 
    23882301      $ext->add('macro-vm','o','',new ext_goto('${VMX_OPDEST_PRI}','${VMX_OPDEST_EXT}','${VMX_OPDEST_CONTEXT}')); 
    2389       //exten => o,n(doopdef),GotoIf($["x${OPERATOR_XTN}"="x"]?nooper:from-internal,${OPERATOR_XTN},1) 
    23902302      $ext->add('macro-vm','o','doopdef',new ext_gotoif('$["x${OPERATOR_XTN}"="x"]','nooper','from-internal,${OPERATOR_XTN},1')); 
    2391       //exten => o,n(nooper),GotoIf($["x${FROM_DID}"="x"]?nodid) 
    23922303      $ext->add('macro-vm','o','nooper',new ext_gotoif('$["x${FROM_DID}"="x"]','nodid')); 
    2393       //exten => o,n,Dial(Local/${FROM_DID}@from-pstn) 
    23942304      $ext->add('macro-vm','o','',new ext_dial('Local/${FROM_DID}@from-pstn','')); 
    2395       //exten => o,n,Macro(hangup) 
    23962305      $ext->add('macro-vm','o','',new ext_macro('hangup')); 
    2397       //exten => o,n(nodid),Dial(Local/s@from-pstn) 
    23982306      $ext->add('macro-vm','o','nodid',new ext_dial('Local/s@from-pstn','')); 
    2399       //exten => o,n,Macro(hangup) 
    24002307      $ext->add('macro-vm','o','',new ext_macro('hangup')); 
    24012308 
    24022309      // If the user has a * option defined, use that for the * out from within voicemail 
    24032310      // as well to keep it consistant with the menu structure 
    2404  
    2405       //exten => a,1,Macro(get-vmcontext,${ARG1}) 
     2311      // 
    24062312      $ext->add('macro-vm','a','',new ext_macro('get-vmcontext','${ARG1}')); 
    2407       //exten => a,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/*/ext)}" = "0"]?adef,1) 
    24082313      $ext->add('macro-vm','a','',new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/*/ext)}" = "0"]','adef,1')); 
    2409       /**/ 
    2410       //exten => a,n,Set(VMX_ADEST_EXT=${DB_RESULT}) 
    24112314      $ext->add('macro-vm','a','',new ext_setvar("VMX_ADEST_EXT",'${DB_RESULT}')); 
    2412       //exten => a,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/*/context)}" = "1"]?acontext) 
    24132315      $ext->add('macro-vm','a','',new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/*/context)}" = "1"]','acontext')); 
    2414       /**/ 
    2415       //exten => a,n,Set(DB_RESULT=${VMX_CONTEXT}) 
    24162316      $ext->add('macro-vm','a','',new ext_setvar("DB_RESULT",'${VMX_CONTEXT}')); 
    2417       //exten => a,n(acontext),Set(VMX_ADEST_CONTEXT=${DB_RESULT}) 
    24182317      $ext->add('macro-vm','a','acontext',new ext_setvar("VMX_ADEST_CONTEXT",'${DB_RESULT}')); 
    24192318 
    2420       //exten => a,n,GotoIf($["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/*/pri)}" = "1"]?apri) 
    24212319      $ext->add('macro-vm','a','',new ext_gotoif('$["${DB_EXISTS(AMPUSER/${ARG1}/vmx/${MODE}/*/pri)}" = "1"]','apri')); 
    2422       /**/ 
    2423       //exten => a,n,Set(DB_RESULT=${VMX_PRI}) 
    24242320      $ext->add('macro-vm','a','',new ext_setvar("DB_RESULT",'${VMX_PRI}')); 
    2425       //exten => a,n(apri),Set(VMX_ADEST_PRI=${DB_RESULT}) 
    24262321      $ext->add('macro-vm','a','apri',new ext_setvar("VMX_ADEST_PRI",'${DB_RESULT}')); 
    2427       //exten => a,n,Goto(${VMX_ADEST_CONTEXT},${VMX_ADEST_EXT},${VMX_ADEST_PRI}) 
    24282322      $ext->add('macro-vm','a','',new ext_goto('${VMX_ADEST_PRI}','${VMX_ADEST_EXT}','${VMX_ADEST_CONTEXT}')); 
    2429       //exten => adef,1,VoiceMailMain(${ARG1}@${VMCONTEXT}) 
    24302323      $ext->add('macro-vm','adef','',new ext_vmmain('${ARG1}@${VMCONTEXT}')); 
    2431       //exten => adef,n,GotoIf($["${ARG3}" = "RETURN"]?exit-RETURN,1) 
    24322324      $ext->add('macro-vm','adef','',new ext_gotoif('$["${ARG3}" = "RETURN"]','exit-RETURN,1')); 
    2433       //exten => adef,n,Hangup 
    24342325      $ext->add('macro-vm','adef','',new ext_hangup('')); 
    24352326 
    2436       //exten => exit-FAILED,1,Playback(im-sorry&an-error-has-occured) 
    24372327      $ext->add('macro-vm','exit-FAILED','',new ext_playback('im-sorry&an-error-has-occured')); 
    2438       //exten => exit-FAILED,n,GotoIf($["${ARG3}" = "RETURN"]?exit-RETURN,1) 
    24392328      $ext->add('macro-vm','exit-FAILED','',new ext_gotoif('$["${ARG3}" = "RETURN"]','exit-RETURN,1')); 
    2440       //exten => exit-FAILED,n,Hangup() 
    24412329      $ext->add('macro-vm','exit-FAILED','',new ext_hangup('')); 
    24422330 
    2443       //exten => exit-SUCCESS,1,GotoIf($["${ARG3}" = "RETURN"]?exit-RETURN,1) 
    24442331      $ext->add('macro-vm','exit-SUCCESS','',new ext_gotoif('$["${ARG3}" = "RETURN"]','exit-RETURN,1')); 
    2445       //exten => exit-SUCCESS,n,Playback(goodbye) 
    24462332      $ext->add('macro-vm','exit-SUCCESS','',new ext_playback('goodbye')); 
    2447       //exten => exit-SUCCESS,n,Hangup() 
    24482333      $ext->add('macro-vm','exit-SUCCESS','',new ext_hangup('')); 
    24492334 
    2450       //exten => exit-USEREXIT,1,GotoIf($["${ARG3}" = "RETURN"]?exit-RETURN,1) 
    24512335      $ext->add('macro-vm','exit-USEREXIT','',new ext_gotoif('$["${ARG3}" = "RETURN"]','exit-RETURN,1')); 
    2452       //exten => exit-USEREXIT,n,Playback(goodbye) 
    24532336      $ext->add('macro-vm','exit-USEREXIT','',new ext_playback('goodbye')); 
    2454       //exten => exit-USEREXIT,n,Hangup() 
    24552337      $ext->add('macro-vm','exit-USEREXIT','',new ext_hangup('')); 
    24562338 
    2457       //exten => exit-RETURN,1,Noop(Returning From Voicemail because macro) 
    24582339      $ext->add('macro-vm','exit-RETURN','',new ext_noop('Returning From Voicemail because macro')); 
    2459       //exten => t,1,Hangup() 
    24602340      $ext->add('macro-vm','t','',new ext_hangup('')); 
    24612341