reworking of logout process to include pause process if needed, Issue #775
git-svn-id: svn://192.168.202.10@2217 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
+300
-291
@@ -96,6 +96,7 @@
|
||||
# - $dial_ingroup
|
||||
# - $nocall_dial_flag
|
||||
# - $cid_lock = ('0','1')
|
||||
# - $pause_trigger = ('','PAUSE')
|
||||
#
|
||||
#
|
||||
# CHANGELOG:
|
||||
@@ -367,10 +368,11 @@
|
||||
# 141124-1136 - Added cbcomment_comments option input
|
||||
# 141125-0059 - Added parked_hangup code
|
||||
# 141128-0849 - Code cleanup for QXZ functions
|
||||
# 141207-1056 - Added pause_trigger to logout to force pause before running logout process
|
||||
#
|
||||
|
||||
$version = '2.10-263';
|
||||
$build = '141128-0849';
|
||||
$version = '2.10-264';
|
||||
$build = '141207-1056';
|
||||
$mel=1; # Mysql Error Log enabled = 1
|
||||
$mysql_log_count=597;
|
||||
$one_mysql_log=0;
|
||||
@@ -613,6 +615,8 @@ if (isset($_GET["cbcomment_comments"])) {$cbcomment_comments=$_GET["cbcomment
|
||||
elseif (isset($_POST["cbcomment_comments"])) {$cbcomment_comments=$_POST["cbcomment_comments"];}
|
||||
if (isset($_GET["parked_hangup"])) {$parked_hangup=$_GET["parked_hangup"];}
|
||||
elseif (isset($_POST["parked_hangup"])) {$parked_hangup=$_POST["parked_hangup"];}
|
||||
if (isset($_GET["pause_trigger"])) {$pause_trigger=$_GET["pause_trigger"];}
|
||||
elseif (isset($_POST["pause_trigger"])) {$pause_trigger=$_POST["pause_trigger"];}
|
||||
if (isset($_GET["DB"])) {$DB=$_GET["DB"];}
|
||||
elseif (isset($_POST["DB"])) {$DB=$_POST["DB"];}
|
||||
|
||||
@@ -8343,286 +8347,6 @@ if ($ACTION == 'LeaDSearcHSelecTUpdatE')
|
||||
}
|
||||
|
||||
|
||||
################################################################################
|
||||
### userLOGout - Logs the user out of VICIDiaL client, deleting db records and
|
||||
### inserting into vicidial_user_log
|
||||
################################################################################
|
||||
if ($ACTION == 'userLOGout')
|
||||
{
|
||||
$MT[0]='';
|
||||
$row=''; $rowx='';
|
||||
if ( (strlen($campaign)<1) || (strlen($conf_exten)<1) )
|
||||
{
|
||||
echo "NO\n";
|
||||
echo _QXZ("campaign %1s or conf_exten %2s is not valid",0,'',$campaign,$conf_exten)."\n";
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
$user_group='';
|
||||
$stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;";
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00127',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$ug_record_ct = mysqli_num_rows($rslt);
|
||||
if ($ug_record_ct > 0)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$user_group = trim("$row[0]");
|
||||
}
|
||||
##### Insert a LOGOUT record into the user log
|
||||
$user_log_event = "LOGOUT";
|
||||
if ($stage=='TIMEOUT') {$user_log_event = "TIMEOUTLOGOUT";}
|
||||
$stmt="INSERT INTO vicidial_user_log (user,event,campaign_id,event_date,event_epoch,user_group) values('$user','$user_log_event','$campaign','$NOW_TIME','$StarTtime','$user_group');";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00128',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$vul_insert = mysqli_affected_rows($link);
|
||||
|
||||
if ($no_delete_sessions < 1)
|
||||
{
|
||||
##### Remove the reservation on the vicidial_conferences meetme room
|
||||
$stmt="UPDATE vicidial_conferences set extension='' where server_ip='$server_ip' and conf_exten='$conf_exten';";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00129',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$vc_remove = mysqli_affected_rows($link);
|
||||
}
|
||||
|
||||
##### Delete the web_client_sessions
|
||||
$stmt="DELETE from web_client_sessions where server_ip='$server_ip' and session_name ='$session_name';";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00132',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$wcs_delete = mysqli_affected_rows($link);
|
||||
|
||||
##### Hangup the client phone
|
||||
$stmt="SELECT channel FROM live_sip_channels where server_ip = '$server_ip' and channel LIKE \"$protocol/$extension%\" order by channel desc;";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00133',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($rslt)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$agent_channel = "$row[0]";
|
||||
if ($format=='debug') {echo "\n<!-- $row[0] -->";}
|
||||
$stmt="INSERT INTO vicidial_manager values('','','$NOW_TIME','NEW','N','$server_ip','','Hangup','ULGH3459$StarTtime','Channel: $agent_channel','','','','','','','','','');";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00134',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
if ($LogouTKicKAlL > 0)
|
||||
{
|
||||
$local_DEF = 'Local/5555';
|
||||
$local_AMP = '@';
|
||||
$kick_local_channel = "$local_DEF$conf_exten$local_AMP$ext_context";
|
||||
$queryCID = "ULGH3458$StarTtime";
|
||||
|
||||
$stmt="INSERT INTO vicidial_manager values('','','$NOW_TIME','NEW','N','$server_ip','','Originate','$queryCID','Channel: $kick_local_channel','Context: $ext_context','Exten: 8300','Priority: 1','Callerid: $queryCID','','','','$channel','$exten');";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00135',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
sleep(1);
|
||||
|
||||
##### Delete the vicidial_live_agents record for this session
|
||||
$stmt="DELETE from vicidial_live_agents where server_ip='$server_ip' and user ='$user';";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {$errno = mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00130',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$retry_count=0;
|
||||
while ( ($errno > 0) and ($retry_count < 9) )
|
||||
{
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
$one_mysql_log=1;
|
||||
$errno = mysql_error_logging($NOW_TIME,$link,$mel,$stmt,"9130$retry_count",$user,$server_ip,$session_name,$one_mysql_log);
|
||||
$one_mysql_log=0;
|
||||
$retry_count++;
|
||||
}
|
||||
$vla_delete = mysqli_affected_rows($link);
|
||||
|
||||
##### Delete the vicidial_live_inbound_agents records for this session
|
||||
$stmt="DELETE from vicidial_live_inbound_agents where user='$user';";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00131',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$vlia_delete = mysqli_affected_rows($link);
|
||||
|
||||
$pause_sec=0;
|
||||
$stmt = "SELECT pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00136',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$VDpr_ct = mysqli_num_rows($rslt);
|
||||
if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) )
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$agent_log_id = $row[5];
|
||||
$pause_sec = (($StarTtime - $row[0]) + $row[1]);
|
||||
|
||||
$stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00137',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
if ($vla_delete > 0)
|
||||
{
|
||||
#############################################
|
||||
##### START QUEUEMETRICS LOGGING LOOKUP #####
|
||||
$stmt = "SELECT enable_queuemetrics_logging,queuemetrics_server_ip,queuemetrics_dbname,queuemetrics_login,queuemetrics_pass,queuemetrics_log_id,allow_sipsak_messages,queuemetrics_loginout,queuemetrics_addmember_enabled,queuemetrics_dispo_pause,queuemetrics_pe_phone_append,queuemetrics_pause_type FROM system_settings;";
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00138',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$qm_conf_ct = mysqli_num_rows($rslt);
|
||||
if ($qm_conf_ct > 0)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$enable_queuemetrics_logging = $row[0];
|
||||
$queuemetrics_server_ip = $row[1];
|
||||
$queuemetrics_dbname = $row[2];
|
||||
$queuemetrics_login = $row[3];
|
||||
$queuemetrics_pass = $row[4];
|
||||
$queuemetrics_log_id = $row[5];
|
||||
$allow_sipsak_messages = $row[6];
|
||||
$queuemetrics_loginout = $row[7];
|
||||
$queuemetrics_addmember_enabled = $row[8];
|
||||
$queuemetrics_dispo_pause = $row[9];
|
||||
$queuemetrics_pe_phone_append = $row[10];
|
||||
$queuemetrics_pause_type = $row[11];
|
||||
}
|
||||
##### END QUEUEMETRICS LOGGING LOOKUP #####
|
||||
###########################################
|
||||
if ( ($enable_sipsak_messages > 0) and ($allow_sipsak_messages > 0) and (preg_match("/SIP/i",$protocol)) )
|
||||
{
|
||||
$extension = preg_replace("/\'|\"|\\\\|;/","",$extension);
|
||||
$phone_ip = preg_replace("/\'|\"|\\\\|;/","",$phone_ip);
|
||||
$SIPSAK_message = 'LOGGED OUT';
|
||||
passthru("/usr/local/bin/sipsak -M -O desktop -B \"$SIPSAK_message\" -r 5060 -s sip:$extension@$phone_ip > /dev/null");
|
||||
}
|
||||
|
||||
if ($enable_queuemetrics_logging > 0)
|
||||
{
|
||||
$QM_LOGOFF = 'AGENTLOGOFF';
|
||||
if ($queuemetrics_loginout=='CALLBACK')
|
||||
{$QM_LOGOFF = 'AGENTCALLBACKLOGOFF';}
|
||||
|
||||
$linkB=mysqli_connect("$queuemetrics_server_ip", "$queuemetrics_login", "$queuemetrics_pass");
|
||||
mysqli_select_db($linkB, "$queuemetrics_dbname");
|
||||
|
||||
# $stmt = "INSERT INTO queue_log SET partition='P01',time_id='$StarTtime',call_id='NONE',queue='$campaign',agent='Agent/$user',verb='PAUSE',serverid='1';";
|
||||
# if ($DB) {echo "$stmt\n";}
|
||||
#
|
||||
# $rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
# $affected_rows = mysqli_affected_rows($linkB);
|
||||
|
||||
$logintime=0;
|
||||
$stmt = "SELECT time_id,data1 FROM queue_log where agent='Agent/$user' and verb IN('AGENTLOGIN','AGENTCALLBACKLOGIN') and time_id > $check_time order by time_id desc limit 1;";
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00139',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$li_conf_ct = mysqli_num_rows($rslt);
|
||||
$i=0;
|
||||
while ($i < $li_conf_ct)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$logintime = $row[0];
|
||||
$loginphone = $row[1];
|
||||
$i++;
|
||||
}
|
||||
|
||||
$data4SQL='';
|
||||
$stmt="SELECT queuemetrics_phone_environment FROM vicidial_campaigns where campaign_id='$campaign' and queuemetrics_phone_environment!='';";
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00394',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$cqpe_ct = mysqli_num_rows($rslt);
|
||||
if ($cqpe_ct > 0)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$pe_append='';
|
||||
if ( ($queuemetrics_pe_phone_append > 0) and (strlen($row[0])>0) )
|
||||
{$pe_append = "-$qm_extension";}
|
||||
$data4SQL = ",data4='$row[0]$pe_append'";
|
||||
}
|
||||
|
||||
$time_logged_in = ($StarTtime - $logintime);
|
||||
if ($time_logged_in > 1000000) {$time_logged_in=1;}
|
||||
|
||||
if ($queuemetrics_loginout != 'NONE')
|
||||
{
|
||||
$stmt = "INSERT INTO queue_log SET partition='P01',time_id='$StarTtime',call_id='NONE',queue='NONE',agent='Agent/$user',verb='$QM_LOGOFF',data1='$loginphone',data2='$time_logged_in',serverid='$queuemetrics_log_id' $data4SQL;";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00140',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$affected_rows = mysqli_affected_rows($linkB);
|
||||
}
|
||||
|
||||
if ($queuemetrics_addmember_enabled > 0)
|
||||
{
|
||||
if ($queuemetrics_loginout == 'NONE')
|
||||
{
|
||||
$pause_typeSQL='';
|
||||
if ($queuemetrics_pause_type > 0)
|
||||
{$pause_typeSQL=",data5='AGENT'";}
|
||||
$stmt = "INSERT INTO queue_log SET partition='P01',time_id='$StarTtime',call_id='NONE',queue='NONE',agent='Agent/$user',verb='PAUSEREASON',serverid='$queuemetrics_log_id',data1='LOGOFF'$pause_typeSQL;";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00396',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$affected_rows = mysqli_affected_rows($linkB);
|
||||
}
|
||||
if ( ($logintime < 1) or ($queuemetrics_loginout == 'NONE') )
|
||||
{
|
||||
$stmtB = "SELECT time_id,data3 FROM queue_log where agent='Agent/$user' and verb='PAUSEREASON' and data1='LOGIN' order by time_id desc limit 1;";
|
||||
$rsltB=mysql_to_mysqli($stmtB, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00365',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "<BR>$stmtB\n";}
|
||||
$qml_ct = mysqli_num_rows($rsltB);
|
||||
if ($qml_ct > 0)
|
||||
{
|
||||
$row=mysqli_fetch_row($rsltB);
|
||||
$logintime = $row[0];
|
||||
$loginphone = $row[1];
|
||||
}
|
||||
}
|
||||
$stmt = "SELECT distinct queue FROM queue_log where time_id >= $logintime and agent='Agent/$user' and verb IN('ADDMEMBER','ADDMEMBER2') and queue != '$campaign' order by time_id desc;";
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00351',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$amq_conf_ct = mysqli_num_rows($rslt);
|
||||
$i=0;
|
||||
while ($i < $amq_conf_ct)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$AMqueue[$i] = $row[0];
|
||||
$i++;
|
||||
}
|
||||
|
||||
### add the logged-in campaign as well
|
||||
$AMqueue[$i] = $campaign;
|
||||
$i++;
|
||||
$amq_conf_ct++;
|
||||
|
||||
$i=0;
|
||||
while ($i < $amq_conf_ct)
|
||||
{
|
||||
$stmt = "INSERT INTO queue_log SET partition='P01',time_id='$StarTtime',call_id='NONE',queue='$AMqueue[$i]',agent='Agent/$user',verb='REMOVEMEMBER',data1='$loginphone',serverid='$queuemetrics_log_id' $data4SQL;";
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00352',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$affected_rows = mysqli_affected_rows($linkB);
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
mysqli_close($linkB);
|
||||
}
|
||||
}
|
||||
|
||||
echo "$vul_insert|$vc_remove|$vla_delete|$wcs_delete|$agent_channel|$vlia_delete\n";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
################################################################################
|
||||
### updateDISPO - update the vicidial_list table to reflect the agent choice of
|
||||
@@ -10330,13 +10054,17 @@ if ($ACTION == 'updateLEAD')
|
||||
### VDADpause - update the vicidial_live_agents table to show that the agent is
|
||||
### or ready now active and ready to take calls
|
||||
################################################################################
|
||||
if ( ($ACTION == 'VDADpause') || ($ACTION == 'VDADready') )
|
||||
if ( ($ACTION == 'VDADpause') or ($ACTION == 'VDADready') or ($pause_trigger == 'PAUSE') )
|
||||
{
|
||||
$MT[0]='';
|
||||
$row=''; $rowx='';
|
||||
if ( (strlen($stage)<2) || (strlen($server_ip)<1) )
|
||||
$vla_status = $stage;
|
||||
if ($pause_trigger == 'PAUSE')
|
||||
{$vla_status = 'PAUSED';}
|
||||
|
||||
if ( (strlen($vla_status)<2) or (strlen($server_ip)<1) )
|
||||
{
|
||||
echo _QXZ("stage %1s is not valid",0,'',$stage)."\n";
|
||||
echo _QXZ("stage %1s is not valid",0,'',$vla_status)."\n";
|
||||
exit;
|
||||
}
|
||||
else
|
||||
@@ -10367,9 +10095,9 @@ if ( ($ACTION == 'VDADpause') || ($ACTION == 'VDADready') )
|
||||
$vla_lead_wipeSQL='';
|
||||
if ($ACTION == 'VDADready')
|
||||
{$vla_lead_wipeSQL = ",lead_id=0";}
|
||||
if ($ACTION == 'VDADpause')
|
||||
if ( ($ACTION == 'VDADpause') or ($pause_trigger == 'PAUSE') )
|
||||
{$vla_ring_resetSQL = ",ring_callerid=''";}
|
||||
$stmt="UPDATE vicidial_live_agents set status='$stage' $vla_lead_wipeSQL $vla_ring_resetSQL where user='$user' and server_ip='$server_ip';";
|
||||
$stmt="UPDATE vicidial_live_agents set status='$vla_status' $vla_lead_wipeSQL $vla_ring_resetSQL where user='$user' and server_ip='$server_ip';";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {$errno = mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00166',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
@@ -10412,7 +10140,7 @@ if ( ($ACTION == 'VDADpause') || ($ACTION == 'VDADready') )
|
||||
if ($enable_queuemetrics_logging > 0)
|
||||
{
|
||||
if ( (preg_match('/READY/',$stage)) or (preg_match('/CLOSER/',$stage)) ) {$QMstatus='UNPAUSEALL';}
|
||||
if (preg_match('/PAUSE/',$stage)) {$QMstatus='PAUSEALL';}
|
||||
if ( (preg_match('/PAUSE/',$stage)) or ($pause_trigger == 'PAUSE') ) {$QMstatus='PAUSEALL';}
|
||||
$linkB=mysqli_connect("$queuemetrics_server_ip", "$queuemetrics_login", "$queuemetrics_pass");
|
||||
mysqli_select_db($linkB, "$queuemetrics_dbname");
|
||||
|
||||
@@ -10487,7 +10215,7 @@ if ( ($ACTION == 'VDADpause') || ($ACTION == 'VDADready') )
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00170',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
}
|
||||
if ($ACTION == 'VDADpause')
|
||||
if ( ($ACTION == 'VDADpause') or ($pause_trigger == 'PAUSE') )
|
||||
{
|
||||
if ( (preg_match("/NULL/i",$dispo_epoch)) or ($dispo_epoch < 1000) )
|
||||
{
|
||||
@@ -10554,7 +10282,288 @@ if ( ($ACTION == 'VDADpause') || ($ACTION == 'VDADready') )
|
||||
}
|
||||
else
|
||||
{
|
||||
echo _QXZ("Agent %1s is now in status %2s",0,'',$user,$stage)."\nNext agent_log_id:\n$agent_log_id\n";
|
||||
echo _QXZ("Agent %1s is now in status %2s",0,'',$user,$vla_status)."\nNext agent_log_id:\n$agent_log_id\n";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
################################################################################
|
||||
### userLOGout - Logs the user out of VICIDiaL client, deleting db records and
|
||||
### inserting into vicidial_user_log
|
||||
################################################################################
|
||||
if ($ACTION == 'userLOGout')
|
||||
{
|
||||
$MT[0]='';
|
||||
$row=''; $rowx='';
|
||||
if ( (strlen($campaign)<1) || (strlen($conf_exten)<1) )
|
||||
{
|
||||
echo "NO\n";
|
||||
echo _QXZ("campaign %1s or conf_exten %2s is not valid",0,'',$campaign,$conf_exten)."\n";
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
$user_group='';
|
||||
$stmt="SELECT user_group FROM vicidial_users where user='$user' LIMIT 1;";
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00127',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$ug_record_ct = mysqli_num_rows($rslt);
|
||||
if ($ug_record_ct > 0)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$user_group = trim("$row[0]");
|
||||
}
|
||||
##### Insert a LOGOUT record into the user log
|
||||
$user_log_event = "LOGOUT";
|
||||
if ($stage=='TIMEOUT') {$user_log_event = "TIMEOUTLOGOUT";}
|
||||
$stmt="INSERT INTO vicidial_user_log (user,event,campaign_id,event_date,event_epoch,user_group) values('$user','$user_log_event','$campaign','$NOW_TIME','$StarTtime','$user_group');";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00128',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$vul_insert = mysqli_affected_rows($link);
|
||||
|
||||
if ($no_delete_sessions < 1)
|
||||
{
|
||||
##### Remove the reservation on the vicidial_conferences meetme room
|
||||
$stmt="UPDATE vicidial_conferences set extension='' where server_ip='$server_ip' and conf_exten='$conf_exten';";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00129',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$vc_remove = mysqli_affected_rows($link);
|
||||
}
|
||||
|
||||
##### Delete the web_client_sessions
|
||||
$stmt="DELETE from web_client_sessions where server_ip='$server_ip' and session_name ='$session_name';";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00132',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$wcs_delete = mysqli_affected_rows($link);
|
||||
|
||||
##### Hangup the client phone
|
||||
$stmt="SELECT channel FROM live_sip_channels where server_ip = '$server_ip' and channel LIKE \"$protocol/$extension%\" order by channel desc;";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00133',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($rslt)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$agent_channel = "$row[0]";
|
||||
if ($format=='debug') {echo "\n<!-- $row[0] -->";}
|
||||
$stmt="INSERT INTO vicidial_manager values('','','$NOW_TIME','NEW','N','$server_ip','','Hangup','ULGH3459$StarTtime','Channel: $agent_channel','','','','','','','','','');";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00134',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
if ($LogouTKicKAlL > 0)
|
||||
{
|
||||
$local_DEF = 'Local/5555';
|
||||
$local_AMP = '@';
|
||||
$kick_local_channel = "$local_DEF$conf_exten$local_AMP$ext_context";
|
||||
$queryCID = "ULGH3458$StarTtime";
|
||||
|
||||
$stmt="INSERT INTO vicidial_manager values('','','$NOW_TIME','NEW','N','$server_ip','','Originate','$queryCID','Channel: $kick_local_channel','Context: $ext_context','Exten: 8300','Priority: 1','Callerid: $queryCID','','','','$channel','$exten');";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00135',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
sleep(1);
|
||||
|
||||
##### Delete the vicidial_live_agents record for this session
|
||||
$stmt="DELETE from vicidial_live_agents where server_ip='$server_ip' and user ='$user';";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {$errno = mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00130',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$retry_count=0;
|
||||
while ( ($errno > 0) and ($retry_count < 9) )
|
||||
{
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
$one_mysql_log=1;
|
||||
$errno = mysql_error_logging($NOW_TIME,$link,$mel,$stmt,"9130$retry_count",$user,$server_ip,$session_name,$one_mysql_log);
|
||||
$one_mysql_log=0;
|
||||
$retry_count++;
|
||||
}
|
||||
$vla_delete = mysqli_affected_rows($link);
|
||||
|
||||
##### Delete the vicidial_live_inbound_agents records for this session
|
||||
$stmt="DELETE from vicidial_live_inbound_agents where user='$user';";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00131',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$vlia_delete = mysqli_affected_rows($link);
|
||||
|
||||
$pause_sec=0;
|
||||
$stmt = "SELECT pause_epoch,pause_sec,wait_epoch,talk_epoch,dispo_epoch,agent_log_id from vicidial_agent_log where agent_log_id >= '$agent_log_id' and user='$user' order by agent_log_id desc limit 1;";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00136',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$VDpr_ct = mysqli_num_rows($rslt);
|
||||
if ( ($VDpr_ct > 0) and (strlen($row[3]<5)) and (strlen($row[4]<5)) )
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$agent_log_id = $row[5];
|
||||
$pause_sec = (($StarTtime - $row[0]) + $row[1]);
|
||||
|
||||
$stmt="UPDATE vicidial_agent_log set pause_sec='$pause_sec',wait_epoch='$StarTtime' where agent_log_id='$agent_log_id';";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00137',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
if ($vla_delete > 0)
|
||||
{
|
||||
#############################################
|
||||
##### START QUEUEMETRICS LOGGING LOOKUP #####
|
||||
$stmt = "SELECT enable_queuemetrics_logging,queuemetrics_server_ip,queuemetrics_dbname,queuemetrics_login,queuemetrics_pass,queuemetrics_log_id,allow_sipsak_messages,queuemetrics_loginout,queuemetrics_addmember_enabled,queuemetrics_dispo_pause,queuemetrics_pe_phone_append,queuemetrics_pause_type FROM system_settings;";
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00138',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$qm_conf_ct = mysqli_num_rows($rslt);
|
||||
if ($qm_conf_ct > 0)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$enable_queuemetrics_logging = $row[0];
|
||||
$queuemetrics_server_ip = $row[1];
|
||||
$queuemetrics_dbname = $row[2];
|
||||
$queuemetrics_login = $row[3];
|
||||
$queuemetrics_pass = $row[4];
|
||||
$queuemetrics_log_id = $row[5];
|
||||
$allow_sipsak_messages = $row[6];
|
||||
$queuemetrics_loginout = $row[7];
|
||||
$queuemetrics_addmember_enabled = $row[8];
|
||||
$queuemetrics_dispo_pause = $row[9];
|
||||
$queuemetrics_pe_phone_append = $row[10];
|
||||
$queuemetrics_pause_type = $row[11];
|
||||
}
|
||||
##### END QUEUEMETRICS LOGGING LOOKUP #####
|
||||
###########################################
|
||||
if ( ($enable_sipsak_messages > 0) and ($allow_sipsak_messages > 0) and (preg_match("/SIP/i",$protocol)) )
|
||||
{
|
||||
$extension = preg_replace("/\'|\"|\\\\|;/","",$extension);
|
||||
$phone_ip = preg_replace("/\'|\"|\\\\|;/","",$phone_ip);
|
||||
$SIPSAK_message = 'LOGGED OUT';
|
||||
passthru("/usr/local/bin/sipsak -M -O desktop -B \"$SIPSAK_message\" -r 5060 -s sip:$extension@$phone_ip > /dev/null");
|
||||
}
|
||||
|
||||
if ($enable_queuemetrics_logging > 0)
|
||||
{
|
||||
$QM_LOGOFF = 'AGENTLOGOFF';
|
||||
if ($queuemetrics_loginout=='CALLBACK')
|
||||
{$QM_LOGOFF = 'AGENTCALLBACKLOGOFF';}
|
||||
|
||||
$linkB=mysqli_connect("$queuemetrics_server_ip", "$queuemetrics_login", "$queuemetrics_pass");
|
||||
mysqli_select_db($linkB, "$queuemetrics_dbname");
|
||||
|
||||
# $stmt = "INSERT INTO queue_log SET partition='P01',time_id='$StarTtime',call_id='NONE',queue='$campaign',agent='Agent/$user',verb='PAUSE',serverid='1';";
|
||||
# if ($DB) {echo "$stmt\n";}
|
||||
#
|
||||
# $rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
# $affected_rows = mysqli_affected_rows($linkB);
|
||||
|
||||
$logintime=0;
|
||||
$stmt = "SELECT time_id,data1 FROM queue_log where agent='Agent/$user' and verb IN('AGENTLOGIN','AGENTCALLBACKLOGIN') and time_id > $check_time order by time_id desc limit 1;";
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00139',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$li_conf_ct = mysqli_num_rows($rslt);
|
||||
$i=0;
|
||||
while ($i < $li_conf_ct)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$logintime = $row[0];
|
||||
$loginphone = $row[1];
|
||||
$i++;
|
||||
}
|
||||
|
||||
$data4SQL='';
|
||||
$stmt="SELECT queuemetrics_phone_environment FROM vicidial_campaigns where campaign_id='$campaign' and queuemetrics_phone_environment!='';";
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00394',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$cqpe_ct = mysqli_num_rows($rslt);
|
||||
if ($cqpe_ct > 0)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$pe_append='';
|
||||
if ( ($queuemetrics_pe_phone_append > 0) and (strlen($row[0])>0) )
|
||||
{$pe_append = "-$qm_extension";}
|
||||
$data4SQL = ",data4='$row[0]$pe_append'";
|
||||
}
|
||||
|
||||
$time_logged_in = ($StarTtime - $logintime);
|
||||
if ($time_logged_in > 1000000) {$time_logged_in=1;}
|
||||
|
||||
if ($queuemetrics_loginout != 'NONE')
|
||||
{
|
||||
$stmt = "INSERT INTO queue_log SET partition='P01',time_id='$StarTtime',call_id='NONE',queue='NONE',agent='Agent/$user',verb='$QM_LOGOFF',data1='$loginphone',data2='$time_logged_in',serverid='$queuemetrics_log_id' $data4SQL;";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00140',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$affected_rows = mysqli_affected_rows($linkB);
|
||||
}
|
||||
|
||||
if ($queuemetrics_addmember_enabled > 0)
|
||||
{
|
||||
if ($queuemetrics_loginout == 'NONE')
|
||||
{
|
||||
$pause_typeSQL='';
|
||||
if ($queuemetrics_pause_type > 0)
|
||||
{$pause_typeSQL=",data5='AGENT'";}
|
||||
$stmt = "INSERT INTO queue_log SET partition='P01',time_id='$StarTtime',call_id='NONE',queue='NONE',agent='Agent/$user',verb='PAUSEREASON',serverid='$queuemetrics_log_id',data1='LOGOFF'$pause_typeSQL;";
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00396',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$affected_rows = mysqli_affected_rows($linkB);
|
||||
}
|
||||
if ( ($logintime < 1) or ($queuemetrics_loginout == 'NONE') )
|
||||
{
|
||||
$stmtB = "SELECT time_id,data3 FROM queue_log where agent='Agent/$user' and verb='PAUSEREASON' and data1='LOGIN' order by time_id desc limit 1;";
|
||||
$rsltB=mysql_to_mysqli($stmtB, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00365',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "<BR>$stmtB\n";}
|
||||
$qml_ct = mysqli_num_rows($rsltB);
|
||||
if ($qml_ct > 0)
|
||||
{
|
||||
$row=mysqli_fetch_row($rsltB);
|
||||
$logintime = $row[0];
|
||||
$loginphone = $row[1];
|
||||
}
|
||||
}
|
||||
$stmt = "SELECT distinct queue FROM queue_log where time_id >= $logintime and agent='Agent/$user' and verb IN('ADDMEMBER','ADDMEMBER2') and queue != '$campaign' order by time_id desc;";
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00351',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$amq_conf_ct = mysqli_num_rows($rslt);
|
||||
$i=0;
|
||||
while ($i < $amq_conf_ct)
|
||||
{
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$AMqueue[$i] = $row[0];
|
||||
$i++;
|
||||
}
|
||||
|
||||
### add the logged-in campaign as well
|
||||
$AMqueue[$i] = $campaign;
|
||||
$i++;
|
||||
$amq_conf_ct++;
|
||||
|
||||
$i=0;
|
||||
while ($i < $amq_conf_ct)
|
||||
{
|
||||
$stmt = "INSERT INTO queue_log SET partition='P01',time_id='$StarTtime',call_id='NONE',queue='$AMqueue[$i]',agent='Agent/$user',verb='REMOVEMEMBER',data1='$loginphone',serverid='$queuemetrics_log_id' $data4SQL;";
|
||||
$rslt=mysql_to_mysqli($stmt, $linkB);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$linkB,$mel,$stmt,'00352',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$affected_rows = mysqli_affected_rows($linkB);
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
mysqli_close($linkB);
|
||||
}
|
||||
}
|
||||
|
||||
echo "$vul_insert|$vc_remove|$vla_delete|$wcs_delete|$agent_channel|$vlia_delete\n";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10604,7 +10613,7 @@ if ($ACTION == 'UpdatEFavoritEs')
|
||||
if ($ACTION == 'PauseCodeSubmit')
|
||||
{
|
||||
$row=''; $rowx='';
|
||||
if ( (strlen($status)<1) || (strlen($agent_log_id)<1) )
|
||||
if ( (strlen($status)<1) or (strlen($agent_log_id)<1) )
|
||||
{
|
||||
echo _QXZ("agent_log_id %1s or pause_code %2s is not valid",0,'',$agent_log_id,$status)."\n";
|
||||
exit;
|
||||
|
||||
+32
-27
@@ -458,10 +458,11 @@
|
||||
# 141125-1235 - Fixed issue with lead info not being updated when Max Dead time is triggered
|
||||
# 141128-0848 - Code cleanup for QXZ functions
|
||||
# 141204-1211 - Added more error checking on login
|
||||
# 141207-1155 - Added pause_trigger to logout to force pause before running logout process
|
||||
#
|
||||
|
||||
$version = '2.10-429c';
|
||||
$build = '141204-1211';
|
||||
$version = '2.10-430c';
|
||||
$build = '141207-1155';
|
||||
$mel=1; # Mysql Error Log enabled = 1
|
||||
$mysql_log_count=80;
|
||||
$one_mysql_log=0;
|
||||
@@ -4805,7 +4806,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
{
|
||||
api_logout_flag=1;
|
||||
if ( (MD_channel_look < 1) && (VD_live_customer_call < 1) && (alt_dial_status_display < 1) )
|
||||
{LogouT('API');}
|
||||
{LogouT('API','');}
|
||||
}
|
||||
}
|
||||
var VLAStatuS_array = check_time_array[4].split("Status: ");
|
||||
@@ -6055,7 +6056,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
"&list_id=" + document.vicidial_form.list_id.value +
|
||||
"&length_in_sec=0&phone_code=" + document.vicidial_form.phone_code.value +
|
||||
"&phone_number=" + lead_dial_number +
|
||||
"&exten=" + extension + "&channel=" + lastcustchannel + "&start_epoch=" + MDlogEPOCH + "&auto_dial_level=" + auto_dial_level + "&VDstop_rec_after_each_call=" + VDstop_rec_after_each_call + "&conf_silent_prefix=" + conf_silent_prefix + "&protocol=" + protocol + "&extension=" + extension + "&ext_context=" + ext_context + "&conf_exten=" + session_id + "&user_abb=" + user_abb + "&agent_log_id=" + agent_log_id + "&MDnextCID=" + LasTCID + "&inOUT=" + inOUT + "&alt_dial=" + dialed_label + "&DB=0" + "&agentchannel=" + agentchannel + "&conf_dialed=" + conf_dialed + "&leaving_threeway=" + leaving_threeway + "&hangup_all_non_reserved=" + hangup_all_non_reserved + "&blind_transfer=" + blind_transfer + "&dial_method" + dial_method + "&nodeletevdac=" + nodeletevdac + "&alt_num_status=" + alt_num_status + "&qm_extension=" + qm_extension + "&called_count=" + document.vicidial_form.called_count.value;
|
||||
"&exten=" + extension + "&channel=" + lastcustchannel + "&start_epoch=" + MDlogEPOCH + "&auto_dial_level=" + auto_dial_level + "&VDstop_rec_after_each_call=" + VDstop_rec_after_each_call + "&conf_silent_prefix=" + conf_silent_prefix + "&protocol=" + protocol + "&extension=" + extension + "&ext_context=" + ext_context + "&conf_exten=" + session_id + "&user_abb=" + user_abb + "&agent_log_id=" + agent_log_id + "&MDnextCID=" + LasTCID + "&inOUT=" + inOUT + "&alt_dial=" + dialed_label + "&DB=0" + "&agentchannel=" + agentchannel + "&conf_dialed=" + conf_dialed + "&leaving_threeway=" + leaving_threeway + "&hangup_all_non_reserved=" + hangup_all_non_reserved + "&blind_transfer=" + blind_transfer + "&dial_method=" + dial_method + "&nodeletevdac=" + nodeletevdac + "&alt_num_status=" + alt_num_status + "&qm_extension=" + qm_extension + "&called_count=" + document.vicidial_form.called_count.value;
|
||||
xmlhttp.open('POST', 'vdc_db_query.php');
|
||||
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
|
||||
// document.getElementById("busycallsdebug").innerHTML = "vdc_db_query.php?" + manDiaLlog_query;
|
||||
@@ -8456,11 +8457,11 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
}
|
||||
if (xmlhttp)
|
||||
{
|
||||
autoDiaLready_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&ACTION=" + taskaction + "&user=" + user + "&pass=" + pass + "&stage=" + VDRP_stage + "&agent_log_id=" + agent_log_id + "&agent_log=" + taskagentlog + "&wrapup=" + taskwrapup + "&campaign=" + campaign + "&dial_method" + dial_method + "&comments=" + taskstatuschange + add_pause_code + "&qm_extension=" + qm_extension;
|
||||
autoDiaLready_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&ACTION=" + taskaction + "&user=" + user + "&pass=" + pass + "&stage=" + VDRP_stage + "&agent_log_id=" + agent_log_id + "&agent_log=" + taskagentlog + "&wrapup=" + taskwrapup + "&campaign=" + campaign + "&dial_method=" + dial_method + "&comments=" + taskstatuschange + add_pause_code + "&qm_extension=" + qm_extension;
|
||||
xmlhttp.open('POST', 'vdc_db_query.php');
|
||||
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
|
||||
xmlhttp.send(autoDiaLready_query);
|
||||
xmlhttp.onreadystatechange = function()
|
||||
xmlhttp.onreadystatechange = function()
|
||||
{
|
||||
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
|
||||
{
|
||||
@@ -10870,7 +10871,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
}
|
||||
if (xmlhttp)
|
||||
{
|
||||
DSupdate_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&ACTION=updateDISPO&format=text&user=" + user + "&pass=" + pass + "&orig_pass=" + orig_pass + "&dispo_choice=" + DispoChoice + "&lead_id=" + document.vicidial_form.lead_id.value + "&campaign=" + campaign + "&auto_dial_level=" + auto_dial_level + "&agent_log_id=" + agent_log_id + "&CallBackDatETimE=" + CallBackDatETimE + "&list_id=" + document.vicidial_form.list_id.value + "&recipient=" + CallBackrecipient + "&use_internal_dnc=" + use_internal_dnc + "&use_campaign_dnc=" + use_campaign_dnc + "&MDnextCID=" + LasTCID + "&stage=" + group + "&vtiger_callback_id=" + vtiger_callback_id + "&phone_number=" + document.vicidial_form.phone_number.value + "&phone_code=" + document.vicidial_form.phone_code.value + "&dial_method" + dial_method + "&uniqueid=" + document.vicidial_form.uniqueid.value + "&CallBackLeadStatus=" + CallBackLeadStatus + "&comments=" + encodeURIComponent(CallBackCommenTs) + "&custom_field_names=" + custom_field_names + "&call_notes=" + encodeURIComponent(document.vicidial_form.call_notes_dispo.value) + "&dispo_comments=" + encodeURIComponent(document.vicidial_form.dispo_comments.value) + "&cbcomment_comments=" + encodeURIComponent(document.vicidial_form.cbcomment_comments.value) + "&qm_dispo_code=" + DispoQMcsCODE + "&email_enabled=" + email_enabled + "&recording_id=" + VDDCU_recording_id + "&recording_filename=" + VDDCU_recording_filename + "&called_count=" + document.vicidial_form.called_count.value + "&parked_hangup=" + parked_hangup;
|
||||
DSupdate_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&ACTION=updateDISPO&format=text&user=" + user + "&pass=" + pass + "&orig_pass=" + orig_pass + "&dispo_choice=" + DispoChoice + "&lead_id=" + document.vicidial_form.lead_id.value + "&campaign=" + campaign + "&auto_dial_level=" + auto_dial_level + "&agent_log_id=" + agent_log_id + "&CallBackDatETimE=" + CallBackDatETimE + "&list_id=" + document.vicidial_form.list_id.value + "&recipient=" + CallBackrecipient + "&use_internal_dnc=" + use_internal_dnc + "&use_campaign_dnc=" + use_campaign_dnc + "&MDnextCID=" + LasTCID + "&stage=" + group + "&vtiger_callback_id=" + vtiger_callback_id + "&phone_number=" + document.vicidial_form.phone_number.value + "&phone_code=" + document.vicidial_form.phone_code.value + "&dial_method=" + dial_method + "&uniqueid=" + document.vicidial_form.uniqueid.value + "&CallBackLeadStatus=" + CallBackLeadStatus + "&comments=" + encodeURIComponent(CallBackCommenTs) + "&custom_field_names=" + custom_field_names + "&call_notes=" + encodeURIComponent(document.vicidial_form.call_notes_dispo.value) + "&dispo_comments=" + encodeURIComponent(document.vicidial_form.dispo_comments.value) + "&cbcomment_comments=" + encodeURIComponent(document.vicidial_form.cbcomment_comments.value) + "&qm_dispo_code=" + DispoQMcsCODE + "&email_enabled=" + email_enabled + "&recording_id=" + VDDCU_recording_id + "&recording_filename=" + VDDCU_recording_filename + "&called_count=" + document.vicidial_form.called_count.value + "&parked_hangup=" + parked_hangup;
|
||||
xmlhttp.open('POST', 'vdc_db_query.php');
|
||||
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
|
||||
xmlhttp.send(DSupdate_query);
|
||||
@@ -11130,9 +11131,9 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
else
|
||||
{
|
||||
if (shift_logout_flag > 0)
|
||||
{LogouT('SHIFT');}
|
||||
{LogouT('SHIFT','');}
|
||||
else
|
||||
{LogouT('API');}
|
||||
{LogouT('API','');}
|
||||
}
|
||||
if (focus_blur_enabled==1)
|
||||
{
|
||||
@@ -11703,7 +11704,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
}
|
||||
if (xmlhttp)
|
||||
{
|
||||
CSCupdate_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&ACTION=regCLOSER&format=text&user=" + user + "&pass=" + pass + "&comments=" + VU_agent_choose_ingroups_DV + "&closer_blended=" + VICIDiaL_closer_blended + "&campaign=" + campaign + "&qm_phone=" + qm_phone + "&qm_extension=" + qm_extension + "&dial_method" + dial_method + "&closer_choice=" + CloserSelectChoices + "-";
|
||||
CSCupdate_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&ACTION=regCLOSER&format=text&user=" + user + "&pass=" + pass + "&comments=" + VU_agent_choose_ingroups_DV + "&closer_blended=" + VICIDiaL_closer_blended + "&campaign=" + campaign + "&qm_phone=" + qm_phone + "&qm_extension=" + qm_extension + "&dial_method=" + dial_method + "&closer_choice=" + CloserSelectChoices + "-";
|
||||
xmlhttp.open('POST', 'vdc_db_query.php');
|
||||
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
|
||||
xmlhttp.send(CSCupdate_query);
|
||||
@@ -11931,7 +11932,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
{
|
||||
AutoDial_ReSume_PauSe("VDADpause",'','','',"LOGOUT");
|
||||
}
|
||||
LogouT('CLOSE');
|
||||
LogouT('CLOSE','');
|
||||
alert("<?php echo _QXZ("PLEASE CLICK THE LOGOUT LINK TO LOG OUT NEXT TIME."); ?>\n");
|
||||
}
|
||||
}
|
||||
@@ -11943,18 +11944,20 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
{
|
||||
if (logout_stop_timeouts < 1)
|
||||
{
|
||||
var pausetrigger='';
|
||||
if (VDRP_stage != 'PAUSED')
|
||||
{
|
||||
AutoDial_ReSume_PauSe("VDADpause",'','','',"LOGOUT");
|
||||
pausetrigger='PAUSE';
|
||||
// AutoDial_ReSume_PauSe("VDADpause",'','','',"LOGOUT");
|
||||
}
|
||||
LogouT('NORMAL');
|
||||
LogouT('NORMAL',pausetrigger);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ################################################################################
|
||||
// Log the user out of the system, if active call or active dial is occuring, don't let them.
|
||||
function LogouT(tempreason)
|
||||
function LogouT(tempreason,temppause)
|
||||
{
|
||||
if (MD_channel_look==1)
|
||||
{alert("<?php echo _QXZ('You cannot log out during a Dial attempt. Wait 50 seconds for the dial to fail out if it is not answered'); ?>");}
|
||||
@@ -11972,6 +11975,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
}
|
||||
else
|
||||
{
|
||||
document.getElementById("LogouTProcess").innerHTML = '<?php echo _QXZ("LOGOUT PROCESSING..."); ?>';
|
||||
var xmlhttp=false;
|
||||
/*@cc_on @*/
|
||||
/*@if (@_jscript_version >= 5)
|
||||
@@ -11992,16 +11996,19 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
xmlhttp = new XMLHttpRequest();
|
||||
}
|
||||
if (xmlhttp)
|
||||
{
|
||||
VDlogout_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&ACTION=userLOGout&format=text&user=" + user + "&pass=" + pass + "&campaign=" + campaign + "&conf_exten=" + session_id + "&extension=" + extension + "&protocol=" + protocol + "&agent_log_id=" + agent_log_id + "&no_delete_sessions=" + no_delete_sessions + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&LogouTKicKAlL=" + LogouTKicKAlL + "&ext_context=" + ext_context + "&qm_extension=" + qm_extension + "&stage=" + tempreason;
|
||||
{
|
||||
VDlogout_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&ACTION=userLOGout&format=text&user=" + user + "&pass=" + pass + "&campaign=" + campaign + "&conf_exten=" + session_id + "&extension=" + extension + "&protocol=" + protocol + "&agent_log_id=" + agent_log_id + "&no_delete_sessions=" + no_delete_sessions + "&phone_ip=" + phone_ip + "&enable_sipsak_messages=" + enable_sipsak_messages + "&LogouTKicKAlL=" + LogouTKicKAlL + "&ext_context=" + ext_context + "&qm_extension=" + qm_extension + "&stage=" + tempreason + "&pause_trigger=" + temppause + "&dial_method=" + dial_method;
|
||||
xmlhttp.open('POST', 'vdc_db_query.php');
|
||||
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
|
||||
xmlhttp.send(VDlogout_query);
|
||||
xmlhttp.onreadystatechange = function()
|
||||
xmlhttp.onreadystatechange = function()
|
||||
{
|
||||
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
|
||||
{
|
||||
// alert(xmlhttp.responseText);
|
||||
// alert(VDlogout_query);
|
||||
// alert(xmlhttp.responseText);
|
||||
|
||||
document.getElementById("LogouTProcess").innerHTML = '<?php echo _QXZ("LOGOUT PROCESS COMPLETE, YOU MAY NOW CLOSE YOUR BROWSER OR LOG BACK IN"); ?>';
|
||||
}
|
||||
}
|
||||
delete xmlhttp;
|
||||
@@ -14783,7 +14790,7 @@ function phone_number_format(formatphone) {
|
||||
|
||||
if ( (pause_max > 0) && (VDRP_stage_seconds > pause_max) )
|
||||
{
|
||||
LogouT('TIMEOUT');
|
||||
LogouT('TIMEOUT','');
|
||||
}
|
||||
}
|
||||
start_all_refresh();
|
||||
@@ -15298,15 +15305,13 @@ $zi=2;
|
||||
<input type="hidden" name="custom_field_values" id="custom_field_values" value="" />
|
||||
<input type="hidden" name="FORM_LOADED" id="FORM_LOADED" value="0" />
|
||||
<font class="queue_text">
|
||||
<a href="#" onclick="start_all_refresh();"><font class="queue_text"><?php echo _QXZ("Logged in as User"); ?></font></a>
|
||||
<?php
|
||||
<a href="#" onclick="start_all_refresh();"><font class="queue_text"><?php echo _QXZ("Logged in as User"); ?></font></a><?php
|
||||
echo _QXZ(": %1s on Phone: %2s",0,'',$VD_login,$SIP_user);
|
||||
if ($on_hook_agent == 'Y')
|
||||
{echo "(<a href=\"#\" onclick=\"NoneInSessionCalL();return false;\">"._QXZ("ring")."</a>)";}
|
||||
echo " to campaign: $VD_campaign \n";
|
||||
?>
|
||||
<span id="agentchannelSPAN"></span></font>
|
||||
</td><td colspan="3" valign="top" align="right"><font class="body_text">
|
||||
echo " to campaign: $VD_campaign ";
|
||||
?> <span id="agentchannelSPAN"></span></font></td>
|
||||
<td colspan="3" valign="top" align="right"><font class="body_text">
|
||||
<?php if ($territoryCT > 0) {echo "<a href=\"#\" onclick=\"OpeNTerritorYSelectioN();return false;\">"._QXZ("TERRITORIES")."</a> \n";} ?>
|
||||
<?php if ($INgrpCT > 0) {echo "<a href=\"#\" onclick=\"OpeNGrouPSelectioN();return false;\">"._QXZ("GROUPS")."</a> \n";} ?>
|
||||
<?php echo "<a href=\"#\" onclick=\"NormalLogout();return false;\">"._QXZ("LOGOUT")."</a>\n"; ?>
|
||||
@@ -16022,7 +16027,7 @@ if ($agent_display_dialable_leads > 0)
|
||||
</span>
|
||||
|
||||
<span style="position:absolute;left:0px;top:0px;z-index:<?php $zi++; echo $zi ?>;" id="AgenTDisablEBoX">
|
||||
<table border="1" bgcolor="#FFFFFF" width="<?php echo $CAwidth ?>px" height="<?php echo $WRheight ?>px"><tr><td align="center"><?php echo _QXZ("Your session has been disabled"); ?><br /><a href="#" onclick="LogouT('DISABLED');return false;"><?php echo _QXZ("LOGOUT"); ?></a><br /><br /><!--<a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Go Back</a>-->
|
||||
<table border="1" bgcolor="#FFFFFF" width="<?php echo $CAwidth ?>px" height="<?php echo $WRheight ?>px"><tr><td align="center"><?php echo _QXZ("Your session has been disabled"); ?><br /><a href="#" onclick="LogouT('DISABLED','');return false;"><?php echo _QXZ("LOGOUT"); ?></a><br /><br /><!--<a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Go Back</a>-->
|
||||
</td></tr></table>
|
||||
</span>
|
||||
|
||||
@@ -16032,7 +16037,7 @@ if ($agent_display_dialable_leads > 0)
|
||||
</span>
|
||||
|
||||
<span style="position:absolute;left:0px;top:0px;z-index:<?php $zi++; echo $zi ?>;" id="LogouTBox">
|
||||
<table border="1" bgcolor="#FFFFFF" width="<?php echo $CAwidth ?>px" height="<?php echo $WRheight ?>px"><tr><td align="center"><br /><span id="LogouTBoxLink"><?php echo _QXZ("LOGOUT"); ?></span></td></tr></table>
|
||||
<table border="1" bgcolor="#FFFFFF" width="<?php echo $CAwidth ?>px" height="<?php echo $WRheight ?>px"><tr><td align="center"><br /><span id="LogouTProcess"><?php echo _QXZ("LOGOUT PROCESSING..."); ?></span><br /><br /><span id="LogouTBoxLink"><?php echo _QXZ("LOGOUT"); ?></span></td></tr></table>
|
||||
</span>
|
||||
|
||||
<span style="position:absolute;left:0px;top:70px;z-index:<?php $zi++; echo $zi ?>;" id="DispoButtonHideA">
|
||||
|
||||
Reference in New Issue
Block a user