From 623ec397d4b6aa01ba84ab90d13c94c869885c02 Mon Sep 17 00:00:00 2001 From: mattf Date: Thu, 8 Mar 2012 21:20:52 +0000 Subject: [PATCH] Added compatibility for DAHDI channelbank phones in vicidial.php using asterisk version for server > 1.4.21.2 git-svn-id: svn://192.168.202.10@1795 3d104415-ff17-0410-8863-d5cf3c621b8a --- agc_2-X/trunk/UPGRADE | 2 ++ agc_2-X/trunk/www/agc/vicidial.php | 30 +++++++++++++++++++++--------- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/agc_2-X/trunk/UPGRADE b/agc_2-X/trunk/UPGRADE index 0383e945..960b6448 100644 --- a/agc_2-X/trunk/UPGRADE +++ b/agc_2-X/trunk/UPGRADE @@ -825,6 +825,8 @@ OTHER CHANGES: 188. Added SCRIPT_multirecording.php script that allows triggering of starting and stopping of recordings on demand within a script in a IFRAME +189. Added compatibility for DAHDI channelbank phones for agents in vicidial.php + diff --git a/agc_2-X/trunk/www/agc/vicidial.php b/agc_2-X/trunk/www/agc/vicidial.php index 25e65ac1..63678312 100644 --- a/agc_2-X/trunk/www/agc/vicidial.php +++ b/agc_2-X/trunk/www/agc/vicidial.php @@ -375,10 +375,11 @@ # 111227-1940 - Added Timer Action for Dx_DIAL_QUIET options # 120213-2029 - Changed consultative transfer with custom fields behavior for better data updating # 120223-2119 - Removed logging of good login passwords if webroot writable is enabled +# 120308-1617 - Added compatibility for DAHDI phones using asterisk version for server > 1.4.21.2 # -$version = '2.4-342c'; -$build = '120223-2119'; +$version = '2.4-343c'; +$build = '120308-1617'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=75; $one_mysql_log=0; @@ -2227,11 +2228,29 @@ else { $local_gmt = ($local_gmt + $isdst); } + + $stmt="SELECT asterisk_version from servers where server_ip='$server_ip';"; + if ($DB) {echo "|$stmt|\n";} + $rslt=mysql_query($stmt, $link); + if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'01028',$VD_login,$server_ip,$session_name,$one_mysql_log);} + $row=mysql_fetch_row($rslt); + $asterisk_version=$row[0]; + if ($protocol == 'EXTERNAL') { $protocol = 'Local'; $extension = "$dialplan_number$AT$ext_context"; } + if (preg_match("/Zap/i",$protocol)) + { + if (preg_match("/^1\.0|^1\.2|^1\.4\.1|^1\.4\.20|^1\.4\.21/i",$asterisk_version)) + {$do_nothing=1;} + else + { + $protocol = 'DAHDI'; + } + } + $SIP_user = "$protocol/$extension"; $SIP_user_DiaL = "$protocol/$extension"; $qm_extension = "$extension"; @@ -2241,13 +2260,6 @@ else $qm_extension = "$extension$VD_login"; } - $stmt="SELECT asterisk_version from servers where server_ip='$server_ip';"; - if ($DB) {echo "|$stmt|\n";} - $rslt=mysql_query($stmt, $link); - if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'01028',$VD_login,$server_ip,$session_name,$one_mysql_log);} - $row=mysql_fetch_row($rslt); - $asterisk_version=$row[0]; - # If a park extension is not set, use the default one if ( (strlen($park_ext)>0) && (strlen($park_file_name)>0) ) {