Changeset 3703

Show
Ignore:
Timestamp:
02/05/07 13:02:03 (6 years ago)
Author:
p_lindheimer
Message:

Merged revisions 3702 via svnmerge from
https://amportal.svn.sourceforge.net/svnroot/amportal/modules/branches/2.2

........

r3702 | p_lindheimer | 2007-02-05 10:00:24 -0800 (Mon, 05 Feb 2007) | 1 line


add option to annoucement to not answer channel and eliminate the 1 second delay also

........

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • modules/branches/2.3

    • Property svnmerge-integrated changed from /modules/branches/2.2:1-3588,3615-3635,3637-3638,3640,3674,3680,3686,3692 to /modules/branches/2.2:1-3588,3615-3635,3637-3638,3640,3674,3680,3686,3692,3702
  • modules/branches/2.3/announcement/functions.inc.php

    r3681 r3703  
    1414    case 'asterisk': 
    1515      foreach (announcement_list() as $row) { 
    16         $ext->add('app-announcement-'.$row[0], 's', '', new ext_answer('')); 
    17                 $ext->add('app-announcement-'.$row[0], 's', '', new ext_wait('1')); 
    1816        $ext->add('app-announcement-'.$row[0], 's', '', new ext_noop('Playing announcement '.$row[1])); 
     17        if (! $row[6]) { 
     18          $ext->add('app-announcement-'.$row[0], 's', '', new ext_answer('')); 
     19          $ext->add('app-announcement-'.$row[0], 's', '', new ext_wait('1')); 
     20        } 
    1921        if ($row[3]) { 
    2022          // allow skip 
    21           $ext->add('app-announcement-'.$row[0], 's', '', new ext_background($row[2])); 
     23          $ext->add('app-announcement-'.$row[0], 's', '', new ext_background($row[2].'|n')); 
    2224           
    2325          $ext->add('app-announcement-'.$row[0], '_X', '', new ext_noop('User skipped announcement')); 
     
    2830          } 
    2931        } else { 
    30           $ext->add('app-announcement-'.$row[0], 's', '', new ext_playback($row[2])); 
     32          $ext->add('app-announcement-'.$row[0], 's', '', new ext_playback($row[2].'|noanswer')); 
    3133        } 
    3234 
     
    4446function announcement_list() { 
    4547  global $db; 
    46   $sql = "SELECT announcement_id, description, recording, allow_skip, post_dest, return_ivr FROM announcement ORDER BY description "; 
     48  $sql = "SELECT announcement_id, description, recording, allow_skip, post_dest, return_ivr, noanswer FROM announcement ORDER BY description "; 
    4749  $results = $db->getAll($sql); 
    4850  if(DB::IsError($results)) { 
     
    5456function announcement_get($announcement_id) { 
    5557  global $db; 
    56   $sql = "SELECT announcement_id, description, recording, allow_skip, post_dest, return_ivr FROM announcement WHERE announcement_id = ".addslashes($announcement_id); 
     58  $sql = "SELECT announcement_id, description, recording, allow_skip, post_dest, return_ivr, noanswer FROM announcement WHERE announcement_id = ".addslashes($announcement_id); 
    5759  $row = $db->getRow($sql); 
    5860  if(DB::IsError($row)) { 
     
    6264} 
    6365 
    64 function announcement_add($description, $recording, $allow_skip, $post_dest, $return_ivr) { 
     66function announcement_add($description, $recording, $allow_skip, $post_dest, $return_ivr, $noanswer) { 
    6567  global $db; 
    66   $sql = "INSERT INTO announcement (description, recording, allow_skip, post_dest, return_ivr) VALUES (". 
     68  $sql = "INSERT INTO announcement (description, recording, allow_skip, post_dest, return_ivr, noanswer) VALUES (". 
    6769    "'".addslashes($description)."', ". 
    6870    "'".addslashes($recording)."', ". 
    6971    "'".($allow_skip ? 1 : 0)."', ". 
    7072    "'".addslashes($post_dest)."', ". 
    71     "'".($return_ivr ? 1 : 0)."')"; 
     73    "'".($return_ivr ? 1 : 0)."', ". 
     74    "'".($noanswer ? 1 : 0)."')"; 
    7275  $result = $db->query($sql); 
    7376  if(DB::IsError($result)) { 
     
    8689} 
    8790 
    88 function announcement_edit($announcement_id, $description, $recording, $allow_skip, $post_dest, $return_ivr) {  
     91function announcement_edit($announcement_id, $description, $recording, $allow_skip, $post_dest, $return_ivr, $noanswer) {  
    8992  global $db; 
    9093  $sql = "UPDATE announcement SET ". 
     
    9396    "allow_skip = '".($allow_skip ? 1 : 0)."', ". 
    9497    "post_dest = '".addslashes($post_dest)."', ". 
    95     "return_ivr = '".($return_ivr ? 1 : 0)."' ". 
     98    "return_ivr = '".($return_ivr ? 1 : 0)."', ". 
     99    "noanswer = '".($noanswer ? 1 : 0)."' ". 
    96100    "WHERE announcement_id = ".addslashes($announcement_id); 
    97101  $result = $db->query($sql); 
  • modules/branches/2.3/announcement/install.php

    r3681 r3703  
    33global $db; 
    44 
    5 // Version 2.1 upgrade. Add support for ${DIALOPTS} override, playing MOH 
     5// Version 0.3 adds auto-return to IVR 
    66$sql = "SELECT return_ivr FROM announcement"; 
    77$check = $db->getRow($sql, DB_FETCHMODE_ASSOC); 
     
    1313} 
    1414 
     15// Version 0.4 adds auto-return to IVR 
     16$sql = "SELECT noanswer FROM announcement"; 
     17$check = $db->getRow($sql, DB_FETCHMODE_ASSOC); 
     18if(DB::IsError($check)) { 
     19  // add new field 
     20    $sql = "ALTER TABLE announcement ADD noanswer TINYINT(1) NOT NULL DEFAULT 0;"; 
     21    $result = $db->query($sql); 
     22    if(DB::IsError($result)) { die($result->getDebugInfo()); } 
     23} 
     24 
    1525?> 
  • modules/branches/2.3/announcement/install.sql

    r3681 r3703  
    55  allow_skip INT, 
    66  post_dest VARCHAR( 255 ) , 
    7   return_ivr TINYINT(1) NOT NULL DEFAULT 0 
     7  return_ivr TINYINT(1) NOT NULL DEFAULT 0, 
     8  noanswer TINYINT(1) NOT NULL DEFAULT 0 
    89); 
  • modules/branches/2.3/announcement/module.xml

    r3685 r3703  
    22  <rawname>announcement</rawname> 
    33  <name>Announcements</name> 
    4   <version>0.3</version> 
     4  <version>0.4</version> 
    55  <changelog> 
     6    *0.4* Added Don't Answer option to not answer the channel (and playback early media if supported) 
    67    *0.3* Added support to return to calling IVR 
    78    *0.2* First Module Intro 
  • modules/branches/2.3/announcement/page.announcement.php

    r3687 r3703  
    2222$allow_skip = isset($_POST['allow_skip']) ? $_POST['allow_skip'] :  0; 
    2323$return_ivr = isset($_POST['return_ivr']) ? $_POST['return_ivr'] :  0; 
     24$noanswer = isset($_POST['noanswer']) ? $_POST['noanswer'] :  0; 
    2425$post_dest = isset($_POST['post_dest']) ? $_POST['post_dest'] :  ''; 
    2526 
     
    3233switch ($action) { 
    3334  case 'add': 
    34     announcement_add($description, $recording, $allow_skip, $post_dest, $return_ivr); 
     35    announcement_add($description, $recording, $allow_skip, $post_dest, $return_ivr, $noanswer); 
    3536    needreload(); 
    3637    redirect_standard(); 
    3738  break; 
    3839  case 'edit': 
    39     announcement_edit($announcement_id, $description, $recording, $allow_skip, $post_dest, $return_ivr); 
     40    announcement_edit($announcement_id, $description, $recording, $allow_skip, $post_dest, $return_ivr, $noanswer); 
    4041    needreload(); 
    4142    redirect_standard('extdisplay'); 
     
    7879  $post_dest = $row[4]; 
    7980  $return_ivr = $row[5]; 
     81  $noanswer = $row[6]; 
    8082 
    8183} 
     
    119121    <td><input type="checkbox" name="return_ivr" value="1" <?php echo ($return_ivr ? 'CHECKED' : ''); ?> /></td> 
    120122  </tr> 
     123  <tr> 
     124    <td><a href="#" class="info"><?php echo _("Don't Answer Channel")?><span><?php echo _("Check this to keep the channel from explicitly being answered. When checked, the message will be played and if the channel is not already answered it will be delivered as early media if the channel supports that. When not checked, the channel is answered followed by a 1 second delay. When using an annoucement from an IVR or other sources that have already answered the channel, that 1 second delay may not be desired.")?></span></a></td> 
     125    <td><input type="checkbox" name="noanswer" value="1" <?php echo ($noanswer ? 'CHECKED' : ''); ?> /></td> 
     126  </tr> 
    121127   
    122128  <tr><td colspan="2"><br><h5><?php echo _("Destination after playback")?>:<hr></h5></td></tr>