Added chat dead detection in agent screen, real-time report and API
Added chat/email live images for agent screen git-svn-id: svn://192.168.202.10@2455 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
@@ -3206,7 +3206,8 @@ poster VARCHAR(100) COLLATE utf8_unicode_ci DEFAULT NULL,
|
||||
chat_member_name VARCHAR(100) COLLATE utf8_unicode_ci DEFAULT NULL,
|
||||
chat_level ENUM('0','1') COLLATE utf8_unicode_ci DEFAULT '0',
|
||||
PRIMARY KEY (message_row_id),
|
||||
KEY vicidial_chat_log_user_key (poster)
|
||||
KEY vicidial_chat_log_user_key (poster),
|
||||
KEY vicidial_chat_log_chat_id (chat_id)
|
||||
) ENGINE=MyISAM CHARSET=utf8 COLLATE=utf8_unicode_ci;
|
||||
|
||||
CREATE TABLE vicidial_chat_log_archive (
|
||||
@@ -3688,4 +3689,4 @@ UPDATE vicidial_configuration set value='1766' where name='qc_database_version';
|
||||
|
||||
UPDATE system_settings set vdc_agent_api_active='1';
|
||||
|
||||
UPDATE system_settings SET db_schema_version='1446',db_schema_update_date=NOW(),reload_timestamp=NOW();
|
||||
UPDATE system_settings SET db_schema_version='1447',db_schema_update_date=NOW(),reload_timestamp=NOW();
|
||||
|
||||
@@ -465,3 +465,7 @@ index(processed)
|
||||
) ENGINE=MyISAM CHARSET=utf8 COLLATE=utf8_unicode_ci;
|
||||
|
||||
UPDATE system_settings SET db_schema_version='1446',db_schema_update_date=NOW() where db_schema_version < 1446;
|
||||
|
||||
CREATE INDEX live_chat_id on vicidial_chat_log (chat_id);
|
||||
|
||||
UPDATE system_settings SET db_schema_version='1447',db_schema_update_date=NOW() where db_schema_version < 1447;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?php
|
||||
# conf_exten_check.php version 2.12
|
||||
#
|
||||
# Copyright (C) 2015 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
||||
# Copyright (C) 2016 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
||||
#
|
||||
# This script is designed purely to send whether the meetme conference has live channels connected and which they are
|
||||
# This script depends on the server_ip being sent and also needs to have a valid user/pass from the vicidial_users table
|
||||
@@ -69,13 +69,14 @@
|
||||
# 141228-0053 - Found missing phrase for QXZ
|
||||
# 150723-1708 - Added ajax logging and agent screen click logging
|
||||
# 150904-2138 - Added SQL features for chats started via agent invite, modified output
|
||||
# 160104-1232 - Added proper detection of dead chats, disabled dead detection of emails
|
||||
#
|
||||
|
||||
$version = '2.12-44';
|
||||
$build = '150904-2138';
|
||||
$version = '2.12-45';
|
||||
$build = '160104-1232';
|
||||
$php_script = 'conf_exten_check.php';
|
||||
$mel=1; # Mysql Error Log enabled = 1
|
||||
$mysql_log_count=43;
|
||||
$mysql_log_count=44;
|
||||
$one_mysql_log=0;
|
||||
$DB=0;
|
||||
$SSagent_debug_logging=0;
|
||||
@@ -115,6 +116,10 @@ if (isset($_GET["bcrypt"])) {$bcrypt=$_GET["bcrypt"];}
|
||||
elseif (isset($_POST["bcrypt"])) {$bcrypt=$_POST["bcrypt"];}
|
||||
if (isset($_GET["clicks"])) {$clicks=$_GET["clicks"];}
|
||||
elseif (isset($_POST["clicks"])) {$clicks=$_POST["clicks"];}
|
||||
if (isset($_GET["customer_chat_id"])) {$customer_chat_id=$_GET["customer_chat_id"];}
|
||||
elseif (isset($_POST["customer_chat_id"])) {$customer_chat_id=$_POST["customer_chat_id"];}
|
||||
if (isset($_GET["live_call_seconds"])) {$live_call_seconds=$_GET["live_call_seconds"];}
|
||||
elseif (isset($_POST["live_call_seconds"])) {$live_call_seconds=$_POST["live_call_seconds"];}
|
||||
|
||||
if ($bcrypt == 'OFF')
|
||||
{$bcrypt=0;}
|
||||
@@ -279,7 +284,7 @@ if ($ACTION == 'refresh')
|
||||
|
||||
if ($Acount > 0)
|
||||
{
|
||||
$stmt="SELECT status,callerid,agent_log_id,campaign_id,lead_id from vicidial_live_agents where user='$user' and server_ip='$server_ip';";
|
||||
$stmt="SELECT status,callerid,agent_log_id,campaign_id,lead_id,comments from vicidial_live_agents where user='$user' and server_ip='$server_ip';";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03004',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
@@ -289,6 +294,7 @@ if ($ACTION == 'refresh')
|
||||
$Aagent_log_id = $row[2];
|
||||
$Acampaign_id = $row[3];
|
||||
$Alead_id = $row[4];
|
||||
$Acomments = $row[5];
|
||||
|
||||
$api_manual_dial='STANDARD';
|
||||
$stmt = "SELECT api_manual_dial FROM vicidial_campaigns where campaign_id='$Acampaign_id';";
|
||||
@@ -367,7 +373,7 @@ if ($ACTION == 'refresh')
|
||||
$stmt="SELECT status,campaign_id,closer_campaigns,comments from vicidial_live_agents where user='$user' and server_ip='$server_ip';";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03043',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03043',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$Alogin=$row[0];
|
||||
$Acampaign=$row[1];
|
||||
@@ -440,48 +446,71 @@ if ($ACTION == 'refresh')
|
||||
$retry_count++;
|
||||
}
|
||||
|
||||
##### BEGIN DEAD logging section #####
|
||||
### find whether the call the agent is on is hung up
|
||||
$stmt="SELECT count(*) from vicidial_auto_calls where callerid='$Acallerid';";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03018',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$AcalleridCOUNT=$row[0];
|
||||
|
||||
if ( ($AcalleridCOUNT > 0) and (preg_match("/INCALL/i",$Astatus)) and (preg_match("/^M/",$Acallerid)) )
|
||||
if ( ( ($Acomments != 'CHAT') and ($Acomments != 'EMAIL') ) or ($live_call_seconds > 4) )
|
||||
{
|
||||
$updateNOW_TIME = date("Y-m-d H:i:s");
|
||||
$stmt="UPDATE vicidial_auto_calls set last_update_time='$updateNOW_TIME' where callerid='$Acallerid';";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03038',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
if ( ($AcalleridCOUNT < 1) and (preg_match("/INCALL/i",$Astatus)) and (strlen($Aagent_log_id) > 0) )
|
||||
{
|
||||
$DEADcustomer++;
|
||||
### find whether the agent log record has already logged DEAD
|
||||
$stmt="SELECT count(*) from vicidial_agent_log where agent_log_id='$Aagent_log_id' and ( (dead_epoch IS NOT NULL) or (dead_epoch > 10000) );";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03019',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$Aagent_log_idCOUNT=$row[0];
|
||||
|
||||
if ($Aagent_log_idCOUNT < 1)
|
||||
##### BEGIN DEAD logging section #####
|
||||
if ( ( (strlen($customer_chat_id > 0) ) and ($customer_chat_id > 0) ) or ($Acomments == 'EMAIL') )
|
||||
{
|
||||
$NEWdead_epoch = date("U");
|
||||
$deadNOW_TIME = date("Y-m-d H:i:s");
|
||||
$stmt="UPDATE vicidial_agent_log set dead_epoch='$NEWdead_epoch' where agent_log_id='$Aagent_log_id';";
|
||||
if ($Acomments == 'EMAIL')
|
||||
{$AcalleridCOUNT=1;}
|
||||
else
|
||||
{
|
||||
### find whether the call the agent is on is hung up
|
||||
$stmt="SELECT count(*) from vicidial_chat_log where chat_id='$customer_chat_id' and message LIKE \"%has left chat\";";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03044',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$AchatendCOUNT=$row[0];
|
||||
$AcalleridCOUNT=1;
|
||||
if ($AchatendCOUNT > 0)
|
||||
{$AcalleridCOUNT=0;}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
### find whether the call the agent is on is hung up
|
||||
$stmt="SELECT count(*) from vicidial_auto_calls where callerid='$Acallerid';";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03018',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$AcalleridCOUNT=$row[0];
|
||||
}
|
||||
if ( ($AcalleridCOUNT > 0) and (preg_match("/INCALL/i",$Astatus)) and (preg_match("/^M/",$Acallerid)) )
|
||||
{
|
||||
$updateNOW_TIME = date("Y-m-d H:i:s");
|
||||
$stmt="UPDATE vicidial_auto_calls set last_update_time='$updateNOW_TIME' where callerid='$Acallerid';";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03020',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03038',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
$stmt="UPDATE vicidial_live_agents set last_state_change='$deadNOW_TIME' where agent_log_id='$Aagent_log_id';";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
if ( ($AcalleridCOUNT < 1) and (preg_match("/INCALL/i",$Astatus)) and (strlen($Aagent_log_id) > 0) )
|
||||
{
|
||||
$DEADcustomer++;
|
||||
### find whether the agent log record has already logged DEAD
|
||||
$stmt="SELECT count(*) from vicidial_agent_log where agent_log_id='$Aagent_log_id' and ( (dead_epoch IS NOT NULL) or (dead_epoch > 10000) );";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03021',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03019',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$Aagent_log_idCOUNT=$row[0];
|
||||
|
||||
if ($Aagent_log_idCOUNT < 1)
|
||||
{
|
||||
$NEWdead_epoch = date("U");
|
||||
$deadNOW_TIME = date("Y-m-d H:i:s");
|
||||
$stmt="UPDATE vicidial_agent_log set dead_epoch='$NEWdead_epoch' where agent_log_id='$Aagent_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,'03020',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
|
||||
$stmt="UPDATE vicidial_live_agents set last_state_change='$deadNOW_TIME' where agent_log_id='$Aagent_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,'03021',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
}
|
||||
}
|
||||
##### END DEAD logging section #####
|
||||
@@ -502,48 +531,52 @@ if ($ACTION == 'refresh')
|
||||
$one_mysql_log=0;
|
||||
$retry_count++;
|
||||
}
|
||||
|
||||
##### BEGIN DEAD logging section #####
|
||||
### find whether the call the agent is on is hung up
|
||||
$stmt="SELECT count(*) from vicidial_auto_calls where callerid='$Acallerid';";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03029',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$AcalleridCOUNT=$row[0];
|
||||
|
||||
if ( ($AcalleridCOUNT > 0) and (preg_match("/INCALL/i",$Astatus)) )
|
||||
if ($Acomments != 'EMAIL')
|
||||
{
|
||||
$updateNOW_TIME = date("Y-m-d H:i:s");
|
||||
$stmt="UPDATE vicidial_auto_calls set last_update_time='$updateNOW_TIME' where callerid='$Acallerid';";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03037',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
if ( ($AcalleridCOUNT < 1) and (preg_match("/INCALL/i",$Astatus)) and (strlen($Aagent_log_id) > 0) )
|
||||
{
|
||||
$DEADcustomer++;
|
||||
### find whether the agent log record has already logged DEAD
|
||||
$stmt="SELECT count(*) from vicidial_agent_log where agent_log_id='$Aagent_log_id' and ( (dead_epoch IS NOT NULL) or (dead_epoch > 10000) );";
|
||||
### find whether the call the agent is on is hung up
|
||||
$stmt="SELECT count(*) from vicidial_auto_calls where callerid='$Acallerid';";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03030',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03029',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$Aagent_log_idCOUNT=$row[0];
|
||||
|
||||
if ($Aagent_log_idCOUNT < 1)
|
||||
{
|
||||
$NEWdead_epoch = date("U");
|
||||
$deadNOW_TIME = date("Y-m-d H:i:s");
|
||||
$stmt="UPDATE vicidial_agent_log set dead_epoch='$NEWdead_epoch' where agent_log_id='$Aagent_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,'03031',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$AcalleridCOUNT=$row[0];
|
||||
|
||||
$stmt="UPDATE vicidial_live_agents set last_state_change='$deadNOW_TIME' where agent_log_id='$Aagent_log_id';";
|
||||
if ( ($AcalleridCOUNT > 0) and (preg_match("/INCALL/i",$Astatus)) )
|
||||
{
|
||||
$updateNOW_TIME = date("Y-m-d H:i:s");
|
||||
$stmt="UPDATE vicidial_auto_calls set last_update_time='$updateNOW_TIME' where callerid='$Acallerid';";
|
||||
if ($format=='debug') {echo "\n<!-- $stmt -->";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03032',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03037',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
|
||||
if ( ($AcalleridCOUNT < 1) and (preg_match("/INCALL/i",$Astatus)) and (strlen($Aagent_log_id) > 0) )
|
||||
{
|
||||
$DEADcustomer++;
|
||||
### find whether the agent log record has already logged DEAD
|
||||
$stmt="SELECT count(*) from vicidial_agent_log where agent_log_id='$Aagent_log_id' and ( (dead_epoch IS NOT NULL) or (dead_epoch > 10000) );";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03030',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$Aagent_log_idCOUNT=$row[0];
|
||||
|
||||
if ($Aagent_log_idCOUNT < 1)
|
||||
{
|
||||
$NEWdead_epoch = date("U");
|
||||
$deadNOW_TIME = date("Y-m-d H:i:s");
|
||||
$stmt="UPDATE vicidial_agent_log set dead_epoch='$NEWdead_epoch' where agent_log_id='$Aagent_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,'03031',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
|
||||
$stmt="UPDATE vicidial_live_agents set last_state_change='$deadNOW_TIME' where agent_log_id='$Aagent_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,'03032',$user,$server_ip,$session_name,$one_mysql_log);}
|
||||
}
|
||||
}
|
||||
}
|
||||
##### END DEAD logging section #####
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.5 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
@@ -514,10 +514,11 @@
|
||||
# 151229-2331 - Added campaign setting for manual_dial_timeout, Issue #903
|
||||
# 151230-0911 - Fixed transfer of parked call logging issue #901
|
||||
# 160101-1131 - Added code to handle routing initiated recordings
|
||||
# 160104-1237 - Added images for live chat and email, and dead chat
|
||||
#
|
||||
|
||||
$version = '2.12-483c';
|
||||
$build = '160101-1131';
|
||||
$version = '2.12-484c';
|
||||
$build = '160104-1237';
|
||||
$mel=1; # Mysql Error Log enabled = 1
|
||||
$mysql_log_count=85;
|
||||
$one_mysql_log=0;
|
||||
@@ -4360,6 +4361,12 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";}
|
||||
image_livecall_ON.src="./images/<?php echo _QXZ("agc_live_call_ON.gif") ?>";
|
||||
var image_livecall_DEAD = new Image();
|
||||
image_livecall_DEAD.src="./images/<?php echo _QXZ("agc_live_call_DEAD.gif") ?>";
|
||||
var image_livechat_ON = new Image();
|
||||
image_livechat_ON.src="./images/<?php echo _QXZ("agc_live_chat_ON.gif") ?>";
|
||||
var image_livechat_DEAD = new Image();
|
||||
image_livechat_DEAD.src="./images/<?php echo _QXZ("agc_live_chat_DEAD.gif") ?>";
|
||||
var image_liveemail_ON = new Image();
|
||||
image_liveemail_ON.src="./images/<?php echo _QXZ("agc_live_email_ON.gif") ?>";
|
||||
var image_LB_dialnextnumber = new Image();
|
||||
image_LB_dialnextnumber.src="./images/<?php echo _QXZ("vdc_LB_dialnextnumber.gif") ?>";
|
||||
var image_LB_hangupcustomer = new Image();
|
||||
@@ -5154,7 +5161,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
}
|
||||
if (xmlhttprequestcheckconf)
|
||||
{
|
||||
checkconf_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&client=vdc&conf_exten=" + taskconfnum + "&auto_dial_level=" + auto_dial_level + "&campagentstdisp=" + campagentstdisp + "&clicks=" + button_click_log;
|
||||
checkconf_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&user=" + user + "&pass=" + pass + "&client=vdc&conf_exten=" + taskconfnum + "&auto_dial_level=" + auto_dial_level + "&campagentstdisp=" + campagentstdisp + "&customer_chat_id=" + document.vicidial_form.customer_chat_id.value + "&live_call_seconds=" + VD_live_call_secondS +"&clicks=" + button_click_log;
|
||||
button_click_log='';
|
||||
xmlhttprequestcheckconf.open('POST', 'conf_exten_check.php');
|
||||
xmlhttprequestcheckconf.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
|
||||
@@ -5270,7 +5277,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
var APIManualDialQueue_array = check_time_array[24].split("APIManualDialQueue: ");
|
||||
APIManualDialQueue = APIManualDialQueue_array[1];
|
||||
var CheckDEADcall_array = check_time_array[10].split("DEADcall: ");
|
||||
var CheckDEADcall = CheckDEADcall_array[1];
|
||||
CheckDEADcall = CheckDEADcall_array[1];
|
||||
var InGroupChange_array = check_time_array[11].split("InGroupChange: ");
|
||||
var InGroupChange = InGroupChange_array[1];
|
||||
var InGroupChangeBlend = check_time_array[12];
|
||||
@@ -5591,7 +5598,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
}
|
||||
}
|
||||
|
||||
if ( (CheckDEADcall > 0) && (VD_live_customer_call==1) )
|
||||
if ( (CheckDEADcall > 0) && (VD_live_customer_call==1) && (currently_in_email_or_chat < 1) )
|
||||
{
|
||||
if (CheckDEADcallON < 1)
|
||||
{
|
||||
@@ -5612,6 +5619,17 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
}
|
||||
}
|
||||
}
|
||||
if ( (CheckDEADcall > 0) && (VD_live_customer_call==1) && (VD_live_call_secondS > 5) && ((CalL_AutO_LauncH == 'CHAT')) && (currently_in_email_or_chat > 0) )
|
||||
{
|
||||
if (CheckDEADcallON < 1)
|
||||
{
|
||||
if( document.images )
|
||||
{ document.images['livecall'].src = image_livechat_DEAD.src;}
|
||||
CheckDEADcallON=1;
|
||||
CheckDEADcallCOUNT++;
|
||||
customer_sec = VD_live_call_secondS;
|
||||
}
|
||||
}
|
||||
if (InGroupChange > 0)
|
||||
{
|
||||
var external_blended = InGroupChangeBlend;
|
||||
@@ -10403,10 +10421,12 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
VDIC_web_form_address_two = VICIDiaL_web_form_address_two;
|
||||
VDIC_web_form_address_three = VICIDiaL_web_form_address_three;
|
||||
CalL_AutO_LauncH = VDIC_data_VDAC[3];
|
||||
if( document.images ) { document.images['livecall'].src = image_livecall_ON.src;}
|
||||
if (CalL_AutO_LauncH=='EMAIL')
|
||||
{
|
||||
document.vicidial_form.email_row_id.value= VDIC_data_VDAC[4];
|
||||
document.getElementById("EmailAudioAlertFile").play();
|
||||
if( document.images ) { document.images['livecall'].src = image_liveemail_ON.src;}
|
||||
}
|
||||
else if (CalL_AutO_LauncH=='CHAT')
|
||||
{
|
||||
@@ -10415,6 +10435,8 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
document.images['CustomerChatImg'].src=image_customer_chat_ON.src;
|
||||
document.getElementById("ChatAudioAlertFile").play();
|
||||
document.vicidial_form.chat_id.value= VDIC_data_VDAC[4];
|
||||
document.vicidial_form.customer_chat_id.value= VDIC_data_VDAC[4];
|
||||
if( document.images ) { document.images['livecall'].src = image_livechat_ON.src;}
|
||||
}
|
||||
}
|
||||
var VDIC_fronter='';
|
||||
@@ -10514,7 +10536,6 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
lastcustchannel = VDIC_data_VDAC[3];
|
||||
document.vicidial_form.callserverip.value = VDIC_data_VDAC[4];
|
||||
lastcustserverip = VDIC_data_VDAC[4];
|
||||
if( document.images ) { document.images['livecall'].src = image_livecall_ON.src;}
|
||||
document.vicidial_form.SecondS.value = 0;
|
||||
document.getElementById("SecondSDISP").innerHTML = '0';
|
||||
|
||||
@@ -12399,6 +12420,7 @@ function set_length(SLnumber,SLlength_goal,SLdirection)
|
||||
document.vicidial_form.call_notes_dispo.value ='';
|
||||
document.vicidial_form.email_row_id.value ='';
|
||||
document.vicidial_form.chat_id.value ='';
|
||||
document.vicidial_form.customer_chat_id.value ='';
|
||||
document.vicidial_form.dispo_comments.value ='';
|
||||
document.vicidial_form.cbcomment_comments.value ='';
|
||||
VDCL_group_id = '';
|
||||
@@ -17250,6 +17272,7 @@ $zi=2;
|
||||
<input type="hidden" name="SecondS" id="SecondS" value="" />
|
||||
<input type="hidden" name="email_row_id" id="email_row_id" value="" />
|
||||
<input type="hidden" name="chat_id" id="chat_id" value="" />
|
||||
<input type="hidden" name="customer_chat_id" id="customer_chat_id" value="" />
|
||||
<span class="text_input" id="MainPanelCustInfo">
|
||||
<table><tr>
|
||||
<td align="right"></td>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?php
|
||||
# AST_timeonVDADall.php
|
||||
#
|
||||
# Copyright (C) 2015 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
||||
# Copyright (C) 2016 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
||||
#
|
||||
# live real-time stats for the VICIDIAL Auto-Dialer all servers
|
||||
#
|
||||
@@ -95,10 +95,11 @@
|
||||
# 150804-0956 - Added WHISPER option agent monitoring
|
||||
# 150919-0238 - Added display for chats in queue
|
||||
# 150925-2223 - Added User option to hide users from real-time report
|
||||
# 160104-1059 - Added detection of dead chat sessions
|
||||
#
|
||||
|
||||
$version = '2.12-83';
|
||||
$build = '150925-2223';
|
||||
$version = '2.12-84';
|
||||
$build = '160104-1059';
|
||||
|
||||
header ("Content-type: text/html; charset=utf-8");
|
||||
|
||||
@@ -2683,6 +2684,7 @@ $talking_to_print = mysqli_num_rows($rslt);
|
||||
if (preg_match("/INCALL/i",$Lstatus))
|
||||
{
|
||||
$stmtP="SELECT count(*) from parked_channels where channel_group='$Acallerid[$i]';";
|
||||
if ($DB) {echo "$stmtP\n";}
|
||||
$rsltP=mysql_to_mysqli($stmtP,$link);
|
||||
$rowP=mysqli_fetch_row($rsltP);
|
||||
$parked_channel = $rowP[0];
|
||||
@@ -2703,6 +2705,33 @@ $talking_to_print = mysqli_num_rows($rslt);
|
||||
$Lstatus = 'DEAD';
|
||||
$status = ' DEAD ';
|
||||
}
|
||||
if (preg_match("/CHAT/i",$comments))
|
||||
{
|
||||
$stmtCT="SELECT chat_id from vicidial_live_chats where chat_creator='$Auser[$i]' and lead_id='$Alead_id[$i]' order by chat_start_time desc limit 1;";
|
||||
if ($DB) {echo "$stmtCT\n";}
|
||||
$rsltCT=mysql_to_mysqli($stmtCT,$link);
|
||||
$chatting_to_print = mysqli_num_rows($rslt);
|
||||
if ($chatting_to_print > 0)
|
||||
{
|
||||
$rowCT=mysqli_fetch_row($rsltCT);
|
||||
$Achat_id = $rowCT[0];
|
||||
|
||||
$stmtCL="SELECT count(*) from vicidial_chat_log where chat_id='$Achat_id' and message LIKE \"%has left chat\";";
|
||||
if ($DB) {echo "$stmtCL\n";}
|
||||
$rsltCL=mysql_to_mysqli($stmtCL,$link);
|
||||
$rowCL=mysqli_fetch_row($rsltCL);
|
||||
$left_chat = $rowCL[0];
|
||||
|
||||
if ($left_chat > 0)
|
||||
{
|
||||
$Acall_time[$i]=$Astate_change[$i];
|
||||
|
||||
$Astatus[$i] = 'DEAD';
|
||||
$Lstatus = 'DEAD';
|
||||
$status = 'DEAD C';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( (preg_match("/AUTO/i",$comments)) or (strlen($comments)<1) )
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?php
|
||||
# non_agent_api.php
|
||||
#
|
||||
# Copyright (C) 2015 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
||||
# Copyright (C) 2016 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
||||
#
|
||||
# This script is designed as an API(Application Programming Interface) to allow
|
||||
# other programs to interact with all non-agent-screen VICIDIAL functions
|
||||
@@ -104,10 +104,11 @@
|
||||
# 150804-0948 - Added WHISPER option for blind_monitor function
|
||||
# 150808-1438 - Added compatibility for custom fields data option
|
||||
# 151226-0954 - Added session_id(conf_exten) field to output of agent_status, and added logged_in_agents function
|
||||
# 160104-1229 - Added detection of dead chats to a few functions
|
||||
#
|
||||
|
||||
$version = '2.12-80';
|
||||
$build = '151226-0954';
|
||||
$version = '2.12-81';
|
||||
$build = '160104-1229';
|
||||
$api_url_log = 0;
|
||||
|
||||
$startMS = microtime();
|
||||
@@ -4984,8 +4985,36 @@ if ($function == 'user_group_status')
|
||||
{$row[1] = 'PARK';}
|
||||
else
|
||||
{
|
||||
if (!preg_match("/$row[5]\|/",$callerids))
|
||||
{$row[1] = 'DEAD';}
|
||||
if (preg_match("/CHAT/i",$row[4]))
|
||||
{
|
||||
$stmtCT="SELECT chat_id from vicidial_live_chats where chat_creator='$row[0]' and lead_id='$row[6]' order by chat_start_time desc limit 1;";
|
||||
if ($DB) {echo "$stmtCT\n";}
|
||||
$rsltCT=mysql_to_mysqli($stmtCT,$link);
|
||||
$chatting_to_print = mysqli_num_rows($rslt);
|
||||
if ($chatting_to_print > 0)
|
||||
{
|
||||
$rowCT=mysqli_fetch_row($rsltCT);
|
||||
$Achat_id = $rowCT[0];
|
||||
|
||||
$stmtCL="SELECT count(*) from vicidial_chat_log where chat_id='$Achat_id' and message LIKE \"%has left chat\";";
|
||||
if ($DB) {echo "$stmtCL\n";}
|
||||
$rsltCL=mysql_to_mysqli($stmtCL,$link);
|
||||
$rowCL=mysqli_fetch_row($rsltCL);
|
||||
$left_chat = $rowCL[0];
|
||||
|
||||
if ($left_chat > 0)
|
||||
{
|
||||
$row[1] = 'DEAD';
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif (preg_match("/EMAIL/i",$row[4]))
|
||||
{$do_nothing=1;}
|
||||
else
|
||||
{
|
||||
if (!preg_match("/$row[5]\|/",$callerids))
|
||||
{$row[1] = 'DEAD';}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5347,7 +5376,7 @@ if ($function == 'agent_status')
|
||||
$user_group = $row[1];
|
||||
$user_level = $row[2];
|
||||
|
||||
$stmt="SELECT status,callerid,lead_id,campaign_id,calls_today,agent_log_id,on_hook_agent,ring_callerid,preview_lead_id,conf_exten from vicidial_live_agents $agent_search_SQL;";
|
||||
$stmt="SELECT status,callerid,lead_id,campaign_id,calls_today,agent_log_id,on_hook_agent,ring_callerid,preview_lead_id,conf_exten,comments from vicidial_live_agents $agent_search_SQL;";
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$agent_to_list = mysqli_num_rows($rslt);
|
||||
@@ -5364,6 +5393,7 @@ if ($function == 'agent_status')
|
||||
$ring_callerid = $row[7];
|
||||
$preview_lead_id = $row[8];
|
||||
$conf_exten = $row[9];
|
||||
$comments = $row[10];
|
||||
$pause_code = '';
|
||||
$rtr_status = '';
|
||||
|
||||
@@ -5407,12 +5437,40 @@ if ($function == 'agent_status')
|
||||
{$rtr_status = 'PARK';}
|
||||
else
|
||||
{
|
||||
$stmt="SELECT count(*) from vicidial_auto_calls where callerid='$callerid';";
|
||||
$rslt=mysql_to_mysqli($stmt,$link);
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$live_channel = $row[0];
|
||||
if ($live_channel < 1)
|
||||
{$rtr_status = 'DEAD';}
|
||||
if (preg_match("/CHAT/i",$comments))
|
||||
{
|
||||
$stmtCT="SELECT chat_id from vicidial_live_chats where chat_creator='$agent_user' and lead_id='$lead_id' order by chat_start_time desc limit 1;";
|
||||
if ($DB) {echo "$stmtCT\n";}
|
||||
$rsltCT=mysql_to_mysqli($stmtCT,$link);
|
||||
$chatting_to_print = mysqli_num_rows($rslt);
|
||||
if ($chatting_to_print > 0)
|
||||
{
|
||||
$rowCT=mysqli_fetch_row($rsltCT);
|
||||
$Achat_id = $rowCT[0];
|
||||
|
||||
$stmtCL="SELECT count(*) from vicidial_chat_log where chat_id='$Achat_id' and message LIKE \"%has left chat\";";
|
||||
if ($DB) {echo "$stmtCL\n";}
|
||||
$rsltCL=mysql_to_mysqli($stmtCL,$link);
|
||||
$rowCL=mysqli_fetch_row($rsltCL);
|
||||
$left_chat = $rowCL[0];
|
||||
|
||||
if ($left_chat > 0)
|
||||
{
|
||||
$rtr_status = 'DEAD';
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif (preg_match("/EMAIL/i",$comments))
|
||||
{$do_nothing=1;}
|
||||
else
|
||||
{
|
||||
$stmt="SELECT count(*) from vicidial_auto_calls where callerid='$callerid';";
|
||||
$rslt=mysql_to_mysqli($stmt,$link);
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$live_channel = $row[0];
|
||||
if ($live_channel < 1)
|
||||
{$rtr_status = 'DEAD';}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7854,7 +7912,7 @@ if ($function == 'logged_in_agents')
|
||||
$output .= 'user' . $DL . 'campaign_id' . $DL . 'session_id' . $DL . 'status' . $DL . 'lead_id' . $DL . 'callerid' . $DL . 'calls_today' . $DL . 'full_name' . $DL . 'user_group' . $DL . 'user_level' . $header_sub_status . "\n";
|
||||
}
|
||||
|
||||
$stmt="SELECT status,callerid,lead_id,campaign_id,calls_today,agent_log_id,on_hook_agent,ring_callerid,preview_lead_id,conf_exten,user from vicidial_live_agents $whereLOGallowed_campaignsSQL $search_CAMP_SQL;";
|
||||
$stmt="SELECT status,callerid,lead_id,campaign_id,calls_today,agent_log_id,on_hook_agent,ring_callerid,preview_lead_id,conf_exten,user,comments from vicidial_live_agents $whereLOGallowed_campaignsSQL $search_CAMP_SQL;";
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
if ($DB) {echo "$stmt\n";}
|
||||
$agents_to_list = mysqli_num_rows($rslt);
|
||||
@@ -7873,6 +7931,7 @@ if ($function == 'logged_in_agents')
|
||||
$Apreview_lead_id[$i] = $row[8];
|
||||
$Aconf_exten[$i] = $row[9];
|
||||
$Auser[$i] = $row[10];
|
||||
$Acomments[$i] = $row[11];
|
||||
$Apause_code[$i] = '';
|
||||
$Artr_status[$i] = '';
|
||||
$i++;
|
||||
@@ -7938,12 +7997,40 @@ if ($function == 'logged_in_agents')
|
||||
{$rtr_status = 'PARK';}
|
||||
else
|
||||
{
|
||||
$stmt="SELECT count(*) from vicidial_auto_calls where callerid='$Acallerid[$i]';";
|
||||
$rslt=mysql_to_mysqli($stmt,$link);
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$live_channel = $row[0];
|
||||
if ($live_channel < 1)
|
||||
{$rtr_status = 'DEAD';}
|
||||
if (preg_match("/CHAT/i",$Acomments[$i]))
|
||||
{
|
||||
$stmtCT="SELECT chat_id from vicidial_live_chats where chat_creator='$Auser[$i]' and lead_id='$Alead_id[$i]' order by chat_start_time desc limit 1;";
|
||||
if ($DB) {echo "$stmtCT\n";}
|
||||
$rsltCT=mysql_to_mysqli($stmtCT,$link);
|
||||
$chatting_to_print = mysqli_num_rows($rslt);
|
||||
if ($chatting_to_print > 0)
|
||||
{
|
||||
$rowCT=mysqli_fetch_row($rsltCT);
|
||||
$Achat_id = $rowCT[0];
|
||||
|
||||
$stmtCL="SELECT count(*) from vicidial_chat_log where chat_id='$Achat_id' and message LIKE \"%has left chat\";";
|
||||
if ($DB) {echo "$stmtCL\n";}
|
||||
$rsltCL=mysql_to_mysqli($stmtCL,$link);
|
||||
$rowCL=mysqli_fetch_row($rsltCL);
|
||||
$left_chat = $rowCL[0];
|
||||
|
||||
if ($left_chat > 0)
|
||||
{
|
||||
$rtr_status = 'DEAD';
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif (preg_match("/EMAIL/i",$Acomments[$i]))
|
||||
{$do_nothing=1;}
|
||||
else
|
||||
{
|
||||
$stmt="SELECT count(*) from vicidial_auto_calls where callerid='$Acallerid[$i]';";
|
||||
$rslt=mysql_to_mysqli($stmt,$link);
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$live_channel = $row[0];
|
||||
if ($live_channel < 1)
|
||||
{$rtr_status = 'DEAD';}
|
||||
}
|
||||
}
|
||||
}
|
||||
$agent_sub_status = "$DL$pause_code$DL$rtr_status";
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?php
|
||||
# user_stats.php
|
||||
#
|
||||
# Copyright (C) 2015 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
||||
# Copyright (C) 2016 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
||||
#
|
||||
# CHANGES
|
||||
#
|
||||
@@ -48,6 +48,7 @@
|
||||
# 141229-1836 - Added code for on-the-fly language translations display
|
||||
# 150804-0749 - Added call status as option, Issue #883
|
||||
# 151227-1839 - Added option to search archived data
|
||||
# 160104-1226 - Added call type field to the agent activity table
|
||||
#
|
||||
|
||||
$startMS = microtime();
|
||||
@@ -1142,11 +1143,11 @@ else
|
||||
$MAIN.="<B>"._QXZ("AGENT ACTIVITY FOR THIS TIME PERIOD: (10000 record limit)")." <a href='$download_link&file_download=7'>["._QXZ("DOWNLOAD")."]</a></B>\n";
|
||||
$MAIN.="<TABLE width=750 cellspacing=0 cellpadding=1>\n";
|
||||
$MAIN.="<tr><td colspan=2><font size=1> </td><td colspan=6 align=center bgcolor=white><font size=1>"._QXZ("these fields are in seconds")." </td><td colspan=4><font size=1> </td></tr>\n";
|
||||
$MAIN.="<tr><td><font size=1># </td><td><font size=2>"._QXZ("DATE/TIME")." </td><td align=left><font size=2>"._QXZ("PAUSE")."</td><td align=left><font size=2> "._QXZ("WAIT")."</td><td align=left><font size=2> "._QXZ("TALK")."</td><td align=right><font size=2> "._QXZ("DISPO")."</td><td align=right><font size=2> "._QXZ("DEAD")."</td><td align=right><font size=2> "._QXZ("CUSTOMER")."</td><td align=right><font size=2> "._QXZ("STATUS")."</td><td align=right><font size=2> "._QXZ("LEAD")."</td><td align=right><font size=2> "._QXZ("CAMPAIGN")."</td><td align=right><font size=2> "._QXZ("PAUSE CODE")."</td></tr>\n";
|
||||
$MAIN.="<tr><td><font size=1># </td><td><font size=2>"._QXZ("DATE/TIME")." </td><td align=left><font size=2>"._QXZ("PAUSE")."</td><td align=left><font size=2> "._QXZ("WAIT")."</td><td align=left><font size=2> "._QXZ("TALK")."</td><td align=right><font size=2> "._QXZ("DISPO")."</td><td align=right><font size=2> "._QXZ("DEAD")."</td><td align=right><font size=2> "._QXZ("CUSTOMER")."</td><td align=right><font size=2> "._QXZ("STATUS")."</td><td align=right><font size=2> "._QXZ("LEAD")."</td><td align=right><font size=2> "._QXZ("TYPE")."</td><td align=right><font size=2> "._QXZ("CAMPAIGN")."</td><td align=right><font size=2> "._QXZ("PAUSE CODE")."</td></tr>\n";
|
||||
$CSV_text7.="\""._QXZ("AGENT ACTIVITY FOR THIS TIME PERIOD: (10000 record limit)")."\"\n";
|
||||
$CSV_text7.="\"\",\"#\",\""._QXZ("DATE/TIME")."\",\""._QXZ("PAUSE")."\",\""._QXZ("WAIT")."\",\""._QXZ("TALK")."\",\""._QXZ("DISPO")."\",\""._QXZ("DEAD")."\",\""._QXZ("CUSTOMER")."\",\""._QXZ("STATUS")."\",\""._QXZ("LEAD")."\",\""._QXZ("CAMPAIGN")."\",\""._QXZ("PAUSE CODE")."\"\n";
|
||||
$CSV_text7.="\"\",\"#\",\""._QXZ("DATE/TIME")."\",\""._QXZ("PAUSE")."\",\""._QXZ("WAIT")."\",\""._QXZ("TALK")."\",\""._QXZ("DISPO")."\",\""._QXZ("DEAD")."\",\""._QXZ("CUSTOMER")."\",\""._QXZ("STATUS")."\",\""._QXZ("LEAD")."\",\""._QXZ("TYPE")."\",\""._QXZ("CAMPAIGN")."\",\""._QXZ("PAUSE CODE")."\"\n";
|
||||
|
||||
$stmt="SELECT event_time,lead_id,campaign_id,pause_sec,wait_sec,talk_sec,dispo_sec,dead_sec,status,sub_status,user_group from ".$vicidial_agent_log_table." where user='" . mysqli_real_escape_string($link, $user) . "' and event_time >= '" . mysqli_real_escape_string($link, $begin_date) . " 0:00:01' and event_time <= '" . mysqli_real_escape_string($link, $end_date) . " 23:59:59' and ( (pause_sec > 0) or (wait_sec > 0) or (talk_sec > 0) or (dispo_sec > 0) ) $query_call_status order by event_time desc limit 10000;";
|
||||
$stmt="SELECT event_time,lead_id,campaign_id,pause_sec,wait_sec,talk_sec,dispo_sec,dead_sec,status,sub_status,user_group,comments from ".$vicidial_agent_log_table." where user='" . mysqli_real_escape_string($link, $user) . "' and event_time >= '" . mysqli_real_escape_string($link, $begin_date) . " 0:00:01' and event_time <= '" . mysqli_real_escape_string($link, $end_date) . " 23:59:59' and ( (pause_sec > 0) or (wait_sec > 0) or (talk_sec > 0) or (dispo_sec > 0) ) $query_call_status order by event_time desc limit 10000;";
|
||||
if ($DB) {$MAIN.="agent activity|$stmt|";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
$logs_to_print = mysqli_num_rows($rslt);
|
||||
@@ -1172,6 +1173,7 @@ else
|
||||
$status = $row[8];
|
||||
$pause_code = $row[9];
|
||||
$user_group = $row[10];
|
||||
$comments = $row[11];
|
||||
$customer_sec = ($talk_sec - $dead_sec);
|
||||
if ($customer_sec < 0)
|
||||
{$customer_sec=0;}
|
||||
@@ -1209,6 +1211,7 @@ else
|
||||
$MAIN.="<td align=right><font size=2> </td>\n";
|
||||
$MAIN.="<td align=right><font size=2> </td>\n";
|
||||
$MAIN.="<td align=right><font size=2> </td>\n";
|
||||
$MAIN.="<td align=right><font size=2> </td>\n";
|
||||
$MAIN.="<td align=right><font size=2> </td></tr>\n";
|
||||
}
|
||||
|
||||
@@ -1224,9 +1227,21 @@ else
|
||||
$MAIN.="<td align=right><font size=2> $customer_sec </td>\n";
|
||||
$MAIN.="<td align=right><font size=2> $status </td>\n";
|
||||
$MAIN.="<td align=right><font size=2> <A HREF=\"admin_modify_lead.php?lead_id=$lead_id\" target=\"_blank\">$lead_id</A> </td>\n";
|
||||
$call_type='';
|
||||
if (strlen($lead_id) > 0)
|
||||
{
|
||||
$call_type='A';
|
||||
if ($comments == 'INBOUND') {$call_type='I';}
|
||||
if ($comments == 'EMAIL') {$call_type='E';}
|
||||
if ($comments == 'CHAT') {$call_type='C';}
|
||||
if ($comments == 'MANUAL') {$call_type='M';}
|
||||
$MAIN.="<td align=center><font size=2> $call_type </td>\n";
|
||||
}
|
||||
else
|
||||
{$MAIN.="<td align=right><font size=2> </td>\n";}
|
||||
$MAIN.="<td align=right><font size=2> $campaign_id </td>\n";
|
||||
$MAIN.="<td align=right><font size=2> $pause_code </td></tr>\n";
|
||||
$CSV_text7.="\"\",\"$u\",\"$event_time\",\"$pause_sec\",\"$wait_sec\",\"$talk_sec\",\"$dispo_sec\",\"$dead_sec\",\"$customer_sec\",\"$status\",\"$lead_id\",\"$campaign_id\",\"$pause_code \"\n";
|
||||
$CSV_text7.="\"\",\"$u\",\"$event_time\",\"$pause_sec\",\"$wait_sec\",\"$talk_sec\",\"$dispo_sec\",\"$dead_sec\",\"$customer_sec\",\"$status\",\"$lead_id\",\"$call_type\",\"$campaign_id\",\"$pause_code \"\n";
|
||||
}
|
||||
|
||||
$MAIN.="<tr bgcolor=white>";
|
||||
|
||||
Reference in New Issue
Block a user