Changeset 3407

Show
Ignore:
Timestamp:
12/21/06 20:45:00 (6 years ago)
Author:
p_lindheimer
Message:

new followme ringallv2 strategy. This strategy allows the primary extension in a followme to start ringing for the pre-ring time, and if present in its own ringgroup (the typical setting), it will continue ringing and not hangup and then re-ring. This avoids the double missed calls on many phones from the normal modes

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • modules/branches/2.3/findmefollow/functions.inc.php

    r3396 r3407  
    9595          } 
    9696          // If pre_ring is set, then ring this number of seconds prior to moving on 
    97           $ext->add($contextname, $grpnum, '', new ext_gotoif('$[$[ "${DB(AMPUSER/'.$grpnum.'/followme/prering)}" = "0" ] | $[ "${DB(AMPUSER/'.$grpnum.'/followme/prering)}" = "" ]] ', 'skipsimple')); 
    98           $ext->add($contextname, $grpnum, '', new ext_macro('simple-dial',$grpnum.',${DB(AMPUSER/'."$grpnum/followme/prering)}")); 
     97          if ((isset($strategy) ? substr($strategy,0,strlen('ringallv2')) : '') != 'ringallv2') { 
     98            $ext->add($contextname, $grpnum, '', new ext_gotoif('$[$[ "${DB(AMPUSER/'.$grpnum.'/followme/prering)}" = "0" ] | $[ "${DB(AMPUSER/'.$grpnum.'/followme/prering)}" = "" ]] ', 'skipsimple')); 
     99            $ext->add($contextname, $grpnum, '', new ext_macro('simple-dial',$grpnum.',${DB(AMPUSER/'."$grpnum/followme/prering)}")); 
     100          } 
    99101 
    100102          // recording stuff 
     
    104106          // group dial 
    105107          $ext->add($contextname, $grpnum, '', new ext_setvar('RingGroupMethod',$strategy)); 
     108          $ext->add($contextname, $grpnum, '', new ext_setvar('_FMGRP',$grpnum)); 
    106109          if ((isset($annmsg) ? $annmsg : '') != '') { 
    107110            // should always answer before playing anything, shouldn't we ? 
     
    122125 
    123126          // Normal call 
    124           $ext->add($contextname, $grpnum, '', new  
    125               ext_macro('dial','${DB(AMPUSER/'."$grpnum/followme/grptime)},$dialopts,".'${DB(AMPUSER/'."$grpnum/followme/grplist)}")); 
     127          if ((isset($strategy) ? substr($strategy,0,strlen('ringallv2')) : '') != 'ringallv2') { 
     128            $ext->add($contextname, $grpnum, '', new ext_macro('dial','${DB(AMPUSER/'."$grpnum/followme/grptime)},$dialopts,".'${DB(AMPUSER/'."$grpnum/followme/grplist)}")); 
     129          } else { 
     130            $ext->add($contextname, $grpnum, '', new ext_macro('dial','$[ ${DB(AMPUSER/'.$grpnum.'/followme/grptime)} + ${DB(AMPUSER/'.$grpnum.'/followme/prering)} ],'.$dialopts.',${DB(AMPUSER/'.$grpnum.'/followme/grplist)}')); 
     131          } 
    126132          $ext->add($contextname, $grpnum, '', new ext_goto('nextstep')); 
    127133 
    128134          // Call Confirm call 
    129           $ext->add($contextname, $grpnum, 'doconfirm', new  
    130               ext_macro('dial-confirm','${DB(AMPUSER/'."$grpnum/followme/grptime)},$dialopts,".'${DB(AMPUSER/'."$grpnum/followme/grplist)},".$grpnum)); 
     135          if ((isset($strategy) ? substr($strategy,0,strlen('ringallv2')) : '') != 'ringallv2') { 
     136            $ext->add($contextname, $grpnum, 'doconfirm', new ext_macro('dial-confirm','${DB(AMPUSER/'."$grpnum/followme/grptime)},$dialopts,".'${DB(AMPUSER/'."$grpnum/followme/grplist)},".$grpnum)); 
     137          } else { 
     138            $ext->add($contextname, $grpnum, 'doconfirm', new ext_macro('dial-confirm','$[ ${DB(AMPUSER/'.$grpnum.'/followme/grptime)} + ${DB(AMPUSER/'.$grpnum.'/followme/prering)} ],'.$dialopts.',${DB(AMPUSER/'.$grpnum.'/followme/grplist)},'.$grpnum)); 
     139          } 
    131140 
    132141          $ext->add($contextname, $grpnum, 'nextstep', new ext_setvar('RingGroupMethod','')); 
  • modules/branches/2.3/findmefollow/module.xml

    r3398 r3407  
    22  <rawname>findmefollow</rawname> 
    33  <name>Follow Me</name> 
    4   <version>2.4.7</version> 
     4  <version>2.4.8</version> 
    55  <changelog> 
     6    *2.2.8* introduction of ringallv2 strategy that eliminates the double ring of the primary ext, REQUIRE CORE r3406 
    67    *2.2.7* Changed to not set alertinfo value if already set from before hitting followme 
    78    *2.2.6* Added BLKVM DB tree to fix inability to transfer a received call to another user, and make NODEST stuff work overall 
  • modules/branches/2.3/findmefollow/page.findmefollow.php

    r3204 r3407  
    202202        <td> <a href="#" class="info"><?php echo _("ring strategy:")?> 
    203203        <span> 
     204          <b><?php echo _("ringallv2")?></b>:  <?php echo _("ring primary extension for initial ring time followed by all additional extensions until one answers")?><br> 
    204205          <b><?php echo _("ringall")?></b>:  <?php echo _("ring all available channels until one answers (default)")?><br> 
    205206          <b><?php echo _("hunt")?></b>: <?php echo _("take turns ringing each available extension")?><br> 
     
    212213          <?php 
    213214            $default = (isset($strategy) ? $strategy : 'ringall'); 
    214                                                 $items = array('ringall','ringall-prim','hunt','hunt-prim','memoryhunt','memoryhunt-prim'); 
     215                                                $items = array('ringallv2','ringallv2-prim','ringall','ringall-prim','hunt','hunt-prim','memoryhunt','memoryhunt-prim'); 
    215216            foreach ($items as $item) { 
    216217              echo '<option value="'.$item.'" '.($default == $item ? 'SELECTED' : '').'>'._($item); 
     
    366367  var msgInvalidTime = "<?php echo _('Invalid time specified'); ?>"; 
    367368  var msgInvalidGrpTimeRange = "<?php echo _('Time must be between 1 and 60 seconds'); ?>"; 
    368   var msgInvalidRingStrategy = "<?php echo _('You must choose ringall or ringall-prim ring strategy when using Confirm Calls'); ?>"; 
     369  var msgInvalidRingStrategy = "<?php echo _('You must choose ringall, ringall-prim, ringallv2 or ringallv2-prim ring strategy when using Confirm Calls'); ?>"; 
    369370 
    370371