Changeset 11324

Show
Ignore:
Timestamp:
02/08/11 18:51:19 (2 years ago)
Author:
p_lindheimer
Message:

dialplan syntax fixes and function typo

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • modules/branches/2.9/campon/functions.inc.php

    r11320 r11324  
    88  case "asterisk": 
    99    $priority = 'report'; 
    10     $ext->splice('macro-user-callerid', 's', $priority,new ext_gosubif('$[${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)})} & "${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)}" != "never"]', 'sub-ccss,s,1(${MACRO_CONTEXT},${CALLERID(dnid)}))')); 
     10    $ext->splice('macro-user-callerid', 's', $priority,new ext_gosubif('$[${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)})} & "${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)}" != "never"]', 'sub-ccss,s,1(${MACRO_CONTEXT},${CALLERID(dnid)})')); 
    1111  break; 
    1212  } 
     
    4545      $ext->add($mcontext,$exten,'', new ext_set('CCSS_SETUP', 'TRUE')); 
    4646      $ext->add($mcontext,$exten,'', new ext_noop_trace('AMPUSER: ${AMPUSER} Calling ${ARG2}:${ARG1} checking if all happy')); 
    47       $ext->add($mcontext,$exten,'monitor', new ext_gosubif('$[${LEN(${DB(AMPUSER/${ARG2}/ccss/cc_monitor_policy)})}]','monitor_config,1(${ARG1},${ARG2}','monitor_default,1(${ARG1},${ARG2}')); 
    48       $ext->add($mcontext,$exten,'agent', new ext_gosubif('$[${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)})}]','agent_config,1(${ARG1},${ARG2}','agent_default,1(${ARG1},${ARG2}')); 
     47      $ext->add($mcontext,$exten,'monitor', new ext_gosubif('$[${LEN(${DB(AMPUSER/${ARG2}/ccss/cc_monitor_policy)})}]','monitor_config,1(${ARG1},${ARG2})','monitor_default,1(${ARG1},${ARG2})')); 
     48      $ext->add($mcontext,$exten,'agent', new ext_gosubif('$[${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)})}]','agent_config,1(${ARG1},${ARG2})','agent_default,1(${ARG1},${ARG2})')); 
    4949      $ext->add($mcontext,$exten,'', new ext_return('${GOSUB_RETVAL}')); 
    5050 
     
    5858      // subroutine(monitor_config) 
    5959      $exten = 'monitor_config'; 
    60       $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_monitor_policy)', '${DB(AMPUSER/${ARG2}/ccss/cc_monitor_policy)}')); 
     60      $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_monitor_policy)', '${DB(AMPUSER/${ARG2}/ccss/cc_monitor_policy)}')); 
    6161      $ext->add($mcontext,$exten,'', new ext_gotoif('$["CALLCOMPLETION(cc_monitor_policy)" != "never"]','set_monitor')); 
    6262      $ext->add($mcontext,$exten,'', new ext_noop_trace('Callee has no settings and default disabled, returning')); 
     
    6464      $ext->add($mcontext,$exten,'', new ext_return('FALSE')); 
    6565 
    66       $ext->add($mcontext,$exten,'set_monitor', new ext_set('CALLCOMPLETTION(cc_max_monitors)', '${DB(AMPUSER/${ARG2}/ccss/max_monitors)}')); 
     66      $ext->add($mcontext,$exten,'set_monitor', new ext_set('CALLCOMPLETION(cc_max_monitors)', '${DB(AMPUSER/${ARG2}/ccss/max_monitors)}')); 
    6767      $ext->add($mcontext,$exten,'', new ext_return('TRUE')); 
    6868 
     
    7676 
    7777      If ($amp_conf['CC_NON_EXTENSION_POLICY'] == 'never') { 
    78         $ext->add($mcontext,$exten,'', new ext_noop_trace('calling a non-extesnion, policy set to never, skipping',6)); 
     78        $ext->add($mcontext,$exten,'', new ext_noop_trace('calling a non-extesnion: [${ARG2} / ${DB(AMPUSER/${ARG2}/cidname)}], policy enabled , continuing',6)); 
    7979        $ext->add($mcontext,$exten,'', new ext_stackpop('')); 
    8080        $ext->add($mcontext,$exten,'', new ext_return('FALSE')); 
    8181      } else { 
    82         $ext->add($mcontext,$exten,'', new ext_noop_trace('calling a non-extesnion, policy enabled , continuing',6)); 
    83         $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_monitor_policy)', $amp_conf['CC_NON_EXTENSION_POLICY'])); 
    84         $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_max_monitors)', $amp_conf['CC_MAX_MONITORS_DEFAULT'])); 
     82        $ext->add($mcontext,$exten,'', new ext_noop_trace('calling a non-extesnion: [${ARG2} / ${DB(AMPUSER/${ARG2}/cidname)}], policy enabled , continuing',6)); 
     83        $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_monitor_policy)', $amp_conf['CC_NON_EXTENSION_POLICY'])); 
     84        $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_max_monitors)', $amp_conf['CC_MAX_MONITORS_DEFAULT'])); 
    8585        $ext->add($mcontext,$exten,'', new ext_return('TRUE')); 
    8686      } 
     
    9292      } else { 
    9393        $ext->add($mcontext,$exten,'is_exten', new ext_noop_trace('Callee has no settings and default enabled, continuing')); 
    94         $ext->add($mcontext,$exten,'is_exten', new ext_set('CALLCOMPLETTION(cc_monitor_policy)', $amp_conf['CC_MONITOR_POLICY_DEFAULT'])); 
    95         $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_max_monitors)', $amp_conf['CC_MAX_MONITORS_DEFAULT'])); 
     94        $ext->add($mcontext,$exten,'is_exten', new ext_set('CALLCOMPLETION(cc_monitor_policy)', $amp_conf['CC_MONITOR_POLICY_DEFAULT'])); 
     95        $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_max_monitors)', $amp_conf['CC_MAX_MONITORS_DEFAULT'])); 
    9696        $ext->add($mcontext,$exten,'', new ext_return('TRUE')); 
    9797      } 
     
    9999      // subroutine(agent_config) 
    100100      $exten = 'agent_config'; 
    101       $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_agent_policy)', '${DB(AMPUSER/${ARG2}/ccss/cc_agent_policy)}')); 
    102       $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_offer_timer)', '${DB(AMPUSER/${ARG2}/ccss/cc_offer_timer)}')); 
    103       $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(ccbs_available_timer)', '${DB(AMPUSER/${ARG2}/ccss/ccbs_available_timer)}')); 
    104       $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(ccnr_available_timer)', '${DB(AMPUSER/${ARG2}/ccss/ccnr_available_timer)}')); 
    105  
    106       $ext->add($mcontext, $exten, '', new ext_execif('$["${CALLCOMPLETTION(cc_agent_policy)}" = "generic"]', 'Set', 'CALLCOMPLETTION(cc_recall_timer)=${DB(AMPUSER/${AMPUSER}/ccss/cc_recall_timer)}')); 
    107       $ext->add($mcontext, $exten, '', new ext_execif('$["${CALLCOMPLETTION(cc_agent_policy)}" = "generic"]', 'Set', 'CALLCOMPLETTION(cc_max_agents)=${DB(AMPUSER/${AMPUSER}/ccss/cc_max_agents)}')); 
    108       $ext->add($mcontext, $exten, '', new ext_execif('$["${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_dialstring)}" = "internal"]', 'Set', 'CALLCOMPLETTION(cc_agent_dialstring)=Local/${AMPUSER}_${CALLERID(dnid)}@from-ccss-internal')); 
    109       $ext->add($mcontext, $exten, '', new ext_execif('$["${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_dialstring)}" = "extension"]', 'Set', 'CALLCOMPLETTION(cc_agent_dialstring)=Local/${AMPUSER}_${CALLERID(dnid)}@from-ccss-extension')); 
    110       $ext->add($mcontext, $exten, '', new ext_execif('$[${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_dialstring)})}]', 'Set', 'CALLCOMPLETTION(cc_callback_macro)=ccss-default')); 
     101      $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_agent_policy)', '${DB(AMPUSER/${ARG2}/ccss/cc_agent_policy)}')); 
     102      $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_offer_timer)', '${DB(AMPUSER/${ARG2}/ccss/cc_offer_timer)}')); 
     103      $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(ccbs_available_timer)', '${DB(AMPUSER/${ARG2}/ccss/ccbs_available_timer)}')); 
     104      $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(ccnr_available_timer)', '${DB(AMPUSER/${ARG2}/ccss/ccnr_available_timer)}')); 
     105 
     106      $ext->add($mcontext, $exten, '', new ext_execif('$["${CALLCOMPLETION(cc_agent_policy)}" = "generic"]', 'Set', 'CALLCOMPLETION(cc_recall_timer)=${DB(AMPUSER/${AMPUSER}/ccss/cc_recall_timer)}')); 
     107      $ext->add($mcontext, $exten, '', new ext_execif('$["${CALLCOMPLETION(cc_agent_policy)}" = "generic"]', 'Set', 'CALLCOMPLETION(cc_max_agents)=${DB(AMPUSER/${AMPUSER}/ccss/cc_max_agents)}')); 
     108      $ext->add($mcontext, $exten, '', new ext_execif('$["${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_dialstring)}" = "internal"]', 'Set', 'CALLCOMPLETION(cc_agent_dialstring)=Local/${AMPUSER}_${CALLERID(dnid)}@from-ccss-internal')); 
     109      $ext->add($mcontext, $exten, '', new ext_execif('$["${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_dialstring)}" = "extension"]', 'Set', 'CALLCOMPLETION(cc_agent_dialstring)=Local/${AMPUSER}_${CALLERID(dnid)}@from-ccss-extension')); 
     110      $ext->add($mcontext, $exten, '', new ext_execif('$[${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_dialstring)})}]', 'Set', 'CALLCOMPLETION(cc_callback_macro)=ccss-default')); 
    111111      $ext->add($mcontext,$exten,'', new ext_return('')); 
    112112 
     
    120120        // TODO: is it possible we are not an extension calling here and we need more logic to safeguard? 
    121121        $ext->add($mcontext,$exten,'', new ext_noop_trace('Caller has no settings using default values since policy is enabled')); 
    122         $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_agent_policy)', $amp_conf['CC_AGENT_POLICY_DEFAULT'])); 
    123         $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_offer_timer)', $amp_conf['CC_OFFER_TIMER_DEFAULT'])); 
    124         $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(ccbs_available_timer)', $amp_conf['CCBS_AVAILABLE_TIMER_DEFAULT'])); 
    125         $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(ccnr_available_timer)', $amp_conf['CCNR_AVAILABLE_TIMER_DEFAULT'])); 
     122        $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_agent_policy)', $amp_conf['CC_AGENT_POLICY_DEFAULT'])); 
     123        $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_offer_timer)', $amp_conf['CC_OFFER_TIMER_DEFAULT'])); 
     124        $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(ccbs_available_timer)', $amp_conf['CCBS_AVAILABLE_TIMER_DEFAULT'])); 
     125        $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(ccnr_available_timer)', $amp_conf['CCNR_AVAILABLE_TIMER_DEFAULT'])); 
    126126        If ($amp_conf['CC_AGENT_POLICY_DEFAULT'] == 'generic') { 
    127           $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_recall_timer)', $amp_conf['CC_RECALL_TIMER_DEFAULT'])); 
     127          $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_recall_timer)', $amp_conf['CC_RECALL_TIMER_DEFAULT'])); 
    128128        } else { 
    129           $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETTION(cc_max_agents)', $amp_conf['CC_MAX_AGENTS_DEFAULT'])); 
     129          $ext->add($mcontext,$exten,'', new ext_set('CALLCOMPLETION(cc_max_agents)', $amp_conf['CC_MAX_AGENTS_DEFAULT'])); 
    130130        } 
    131131 
    132132        If ($amp_conf['CC_AGENT_DIALSTRING_DEFAULT'] == 'extension') { 
    133           $ext->add($mcontext, $exten, '', new ext_set('CALLCOMPLETTION(cc_agent_dialstring)','Local/${AMPUSER}@from-ccss-extension')); 
    134           $ext->add($mcontext, $exten, '', new ext_set('CALLCOMPLETTION(cc_callback_macro)','ccss-default')); 
     133          $ext->add($mcontext, $exten, '', new ext_set('CALLCOMPLETION(cc_agent_dialstring)','Local/${AMPUSER}@from-ccss-extension')); 
     134          $ext->add($mcontext, $exten, '', new ext_set('CALLCOMPLETION(cc_callback_macro)','ccss-default')); 
    135135        } else If ($amp_conf['CC_AGENT_DIALSTRING_DEFAULT'] == 'internal') { 
    136           $ext->add($mcontext, $exten, '', new ext_set('CALLCOMPLETTION(cc_agent_dialstring)','Local/${AMPUSER}@from-ccss-internal')); 
    137           $ext->add($mcontext, $exten, '', new ext_set('CALLCOMPLETTION(cc_callback_macro)','ccss-default')); 
     136          $ext->add($mcontext, $exten, '', new ext_set('CALLCOMPLETION(cc_agent_dialstring)','Local/${AMPUSER}@from-ccss-internal')); 
     137          $ext->add($mcontext, $exten, '', new ext_set('CALLCOMPLETION(cc_callback_macro)','ccss-default')); 
    138138        } 
    139139        $ext->add($mcontext,$exten,'', new ext_return('TRUE')); 
     
    171171      $exten = '_X._X.'; 
    172172 
    173       $ext->add($context, $exten, '', new ext_gosub('sub-from-css,s,1(${CUT(EXTEN,_,2)})')); 
     173      $ext->add($context, $exten, '', new ext_gosub('sub-from-ccss,s,1(${CUT(EXTEN,_,2)})')); 
    174174      $ext->add($context, $exten, 'no_alert', new ext_goto('1','${CUT(EXTEN,_,1)}','from-internal')); 
    175175 
     
    177177      $exten = '_X._X.'; 
    178178 
    179       $ext->add($context, $exten, '', new ext_gosub('sub-from-css,s,1(${CUT(EXTEN,_,2)})')); 
     179      $ext->add($context, $exten, '', new ext_gosub('sub-from-ccss,s,1(${CUT(EXTEN,_,2)})')); 
    180180      $ext->add($context, $exten, '', new ext_goto('1','${CUT(EXTEN,_,1)}','ext-local')); 
    181181 
     
    185185      $mcontext = 'sub-from-ccss'; 
    186186      $exten = 's'; 
    187       //$ext->add($context, $exten, '', new ext_set('FROM_CALL_COMPLETION','1')); 
    188       $ext->add($context, $exten, '', new ext_macro('blkvm-set')); 
    189       $ext->add($context, $exten, '', new ext_set('__CALLBACK_NUM','${ARG1}')); 
    190       $ext->add($context, $exten, '', new ext_set('CALLERID(name)','${IF($[${LEN(${DB(AMPUSER/${CALLBACK_NUM}/cidname)})}]?'.$cpp.'${DB(AMPUSER/${CALLBACK_NUM}/cidname)}:CALLBACK)}')); //TODO: Make this configurable 
    191       $ext->add($context, $exten, '', new ext_set('CALLERID(number)','${CALLBACK_NUM}')); 
    192       $ext->add($context, $exten, '', new ext_noop_trace('CID INFO: ${CALLERID(name)} ${CALLERID(num)} EXTEN: ${ARG1}',5)); 
     187      $ext->add($mcontext, $exten, '', new ext_macro('blkvm-set')); 
     188      $ext->add($mcontext, $exten, '', new ext_set('__CALLBACK_NUM','${ARG1}')); 
     189      $ext->add($mcontext, $exten, '', new ext_set('CALLERID(name)','${IF($[${LEN(${DB(AMPUSER/${CALLBACK_NUM}/cidname)})}]?'.$cpp.'${DB(AMPUSER/${CALLBACK_NUM}/cidname)}:CALLBACK)}')); //TODO: Make this configurable 
     190      $ext->add($mcontext, $exten, '', new ext_set('CALLERID(number)','${CALLBACK_NUM}')); 
     191      $ext->add($mcontext, $exten, '', new ext_noop_trace('CID INFO: ${CALLERID(name)} ${CALLERID(num)} EXTEN: ${ARG1}',5)); 
    193192      if ($amp_conf['CC_FORCE_DEFAULTS'] && $amp_conf['CC_AGENT_ALERT_INFO_DEFAULT']) { 
    194         $ext->add($context, $exten, '', new ext_set('__CC_HEADER',$amp_conf['CC_AGENT_ALERT_INFO_DEFAULT'])); 
     193        $ext->add($mcontext, $exten, '', new ext_set('__CC_HEADER',$amp_conf['CC_AGENT_ALERT_INFO_DEFAULT'])); 
    195194      } elseif ($amp_conf['CC_FORCE_DEFAULTS']) { 
    196         $ext->add($context, $exten, '', new ext_return('')); 
     195        $ext->add($mcontext, $exten, '', new ext_return('')); 
    197196      } else { 
    198         $ext->add($context, $exten, '', new ext_execif('$[!${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_alert_info)})}]','Return')); 
    199         $ext->add($context, $exten, '', new ext_set('__CC_HEADER','${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_alert_info)}')); 
    200       } 
    201       $ext->add($context, $exten, '', new ext_alertinfo('${CC_HEADER}')); 
    202       $ext->add($context, $exten, '', new ext_return('')); 
     197        $ext->add($mcontext, $exten, '', new ext_execif('$[!${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_alert_info)})}]','Return')); 
     198        $ext->add($mcontext, $exten, '', new ext_set('__CC_HEADER','${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_alert_info)}')); 
     199      } 
     200      $ext->add($mcontext, $exten, '', new ext_alertinfo('${CC_HEADER}')); 
     201      $ext->add($mcontext, $exten, '', new ext_return('')); 
    203202    break; 
    204203  } 
     
    215214  $ext->add($id, $c, '', new ext_set('CCSS_SETUP', 'TRUE')); // keep from calling normal sub-ccss 
    216215  $ext->add($id, $c, '', new ext_macro('user-callerid')); 
    217   $ext->add($id, $c, '', new ext_gosub('sub-ccss,s,agent')); 
    218216  $ext->add($id, $c, '', new ext_noop_trace('GoSub(sub-ccss,s,agent) RETVAL: ${GOSUB_RETVAL}')); 
    219217  // TODO: If they are not enabled, handle it here letting them know ${GOSUB_RETVAL} 
     
    235233  $ext->add($id, $c, '', new ext_set('CCSS_SETUP', 'TRUE')); // keep from calling normal sub-ccss 
    236234  $ext->add($id, $c, '', new ext_macro('user-callerid')); 
    237   $ext->add($id, $c, '', new ext_gosub('sub-ccss,s,agent')); 
    238235  $ext->add($id, $c, '', new ext_noop_trace('GoSub(sub-ccss,s,agent) RETVAL: ${GOSUB_RETVAL}')); 
    239236  // TODO: If they are not enabled, handle it here letting them know ${GOSUB_RETVAL}