Added Agents Status View sidebar to agent interface

Added vailable transfer agent frame to AGENTDIRECT transfers when clicking on the NUMBER TO CALL field in the transfer conference frame
Fixed Calls in Queue count for AGENTDIRECT calls

git-svn-id: svn://192.168.202.10@1179 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
mattf
2009-07-06 18:42:02 +00:00
parent 7ac5525d3d
commit 8299fc0b16
9 changed files with 433 additions and 73 deletions
+3
View File
@@ -124,6 +124,9 @@ NOTE: Upgrading from 1.1.12-3 to 2.0.1 is at the bottom
Detection) proxy as well as a new netborder sip patch:
netborder-cpd-1.4.patch
33. Added Agents Status View sidebar to agent interface, and available transfer
agent frame to AGENTDIRECT transfers when clicking on the NUMBER TO CALL
field in the transfer conference frame
+5 -3
View File
@@ -531,7 +531,9 @@ qc_allowed_campaigns TEXT,
qc_allowed_inbound_groups TEXT,
group_shifts TEXT,
forced_timeclock_login ENUM('Y','N','ADMIN_EXEMPT') default 'N',
shift_enforcement ENUM('OFF','START','ALL') default 'OFF'
shift_enforcement ENUM('OFF','START','ALL') default 'OFF',
agent_status_viewable_groups TEXT,
agent_status_view_time ENUM('Y','N') default 'N'
);
CREATE TABLE vicidial_campaigns (
@@ -1623,7 +1625,7 @@ INSERT INTO system_settings (version,install_date) values('2.2.0b0.5', CURDATE()
INSERT INTO vicidial_status_categories (vsc_id,vsc_name) values('UNDEFINED','Default Category');
INSERT INTO vicidial_user_groups SET user_group='ADMIN',group_name='VICIDIAL ADMINISTRATORS',allowed_campaigns=' -ALL-CAMPAIGNS- - -';
INSERT INTO vicidial_user_groups SET user_group='ADMIN',group_name='VICIDIAL ADMINISTRATORS',allowed_campaigns=' -ALL-CAMPAIGNS- - -',agent_status_viewable_groups=' --ALL-GROUPS-- ';
INSERT INTO vicidial_call_times SET call_time_id='24hours',call_time_name='default 24 hours calling',ct_default_start='0',ct_default_stop='2400';
INSERT INTO vicidial_call_times SET call_time_id='9am-9pm',call_time_name='default 9am to 9pm calling',ct_default_start='900',ct_default_stop='2100';
@@ -1719,7 +1721,7 @@ CREATE INDEX phone_number on vicidial_closer_log (phone_number);
CREATE INDEX date_user on vicidial_closer_log (call_date,user);
CREATE INDEX comment_a on live_inbound_log (comment_a);
UPDATE system_settings SET db_schema_version='1160';
UPDATE system_settings SET db_schema_version='1161';
GRANT RELOAD ON *.* TO cron@'%';
GRANT RELOAD ON *.* TO cron@localhost;
+5
View File
@@ -286,3 +286,8 @@ index (trigger_time)
INSERT INTO vicidial_process_triggers SET trigger_id='LOAD_LEADS',server_ip='10.10.10.15',trigger_name='Load Leads',trigger_time='2009-01-01 00:00:00',trigger_run='0',trigger_lines='/usr/share/astguiclient/VICIDIAL_IN_new_leads_file.pl';
UPDATE system_settings SET db_schema_version='1160';
ALTER TABLE vicidial_user_groups ADD agent_status_viewable_groups TEXT;
ALTER TABLE vicidial_user_groups ADD agent_status_view_time ENUM('Y','N') default 'N';
UPDATE system_settings SET db_schema_version='1161';
@@ -223,6 +223,11 @@ for a 1 second break. You can also use several variables such as first name, las
Multiple Campaign Drop Rate Group||
This feature allows you to set a campaign as a member of a Campaign Drop Rate Group, or a group of campaigns whose Human Answered calls and Drop calls for all campaigns in the group will be combined into a shared drop percentage, or abandon rate. This allows you to to run multiple campaigns at once and more easily control your drop rate. This is particularly useful in the UK where regulations permit this drop rate calculation method with campaign grouping for the same company even if there are several campaigns that company is running during the same day. To enable this for a campaign, just select a group from the list. There are 10 groups defined in the system by default, you can contact your system administrator to add more. Default is DISABLED||
IMPORTANT, this is the password only for the agent web interface phone login, to change the sip.conf or iax.conf password, or secret, for this phone device you need to modify the Conf File Secret field further down on this page||
Agent Status Viewable Groups||
This is a selectable list of User Groups and user functions to which members of this user group can view the status of as well as transfer calls to inside of the agent screen. The ALL-GROUPS option allows the users in this group to see and transfer calls to any user on the system. The CAMPAIGN-AGENTS option allows users in this group to see and transfer calls to any user in the campaign that they are logged into||
Agent Status View Time||
This option defines whether the agent will see the amount of time that users in their agent sidebar have been in their current status. Default is N for no or disabled||
This option allows an agent to disposition a call as CALLBK and choose the date and time at which the lead will be re-activated||
add-file: user_territories.php
@@ -234,6 +239,8 @@ add-file: AST_agent_timeclock_detail.php
You are not allowed to dial into other agent sessions||
QUICK TRANSFER||
Other Agents Status||
Available Agents Transfer||
############################################################ MANAGER Manual
+10 -3
View File
@@ -45,10 +45,11 @@
# 90307-1855 - Added shift enforcement to send logout flag if outside of shift hours
# 90408-0020 - Added API vtiger specific callback activity record ability
# 90508-0727 - Changed to PHP long tags
# 90706-1430 - Fixed AGENTDIRECT calls in queue display count
#
$version = '2.2.0-20';
$build = '90508-0727';
$version = '2.2.0-21';
$build = '90706-1430';
$mel=1; # Mysql Error Log enabled = 1
$mysql_log_count=17;
$one_mysql_log=0;
@@ -238,6 +239,7 @@ echo "<BODY BGCOLOR=white marginheight=0 marginwidth=0 leftmargin=0 topmargin=0>
if ($campagentstdisp == 'YES')
{
$ADsql='';
### grab the status of this agent to display
$stmt="SELECT status,campaign_id,closer_campaigns from vicidial_live_agents where user='$user' and server_ip='$server_ip';";
if ($DB) {echo "|$stmt|\n";}
@@ -249,9 +251,14 @@ echo "<BODY BGCOLOR=white marginheight=0 marginwidth=0 leftmargin=0 topmargin=0>
$AccampSQL=$row[2];
$AccampSQL = ereg_replace(' -','', $AccampSQL);
$AccampSQL = ereg_replace(' ',"','", $AccampSQL);
if (eregi('AGENTDIRECT', $AccampSQL))
{
$AccampSQL = ereg_replace('AGENTDIRECT','', $AccampSQL);
$ADsql = "or ( (campaign_id LIKE \"%AGENTDIRECT%\") and (agent_only='$user') )";
}
### grab the number of calls being placed from this server and campaign
$stmt="SELECT count(*) from vicidial_auto_calls where status IN('LIVE') and ( (campaign_id='$Acampaign') or (campaign_id IN('$AccampSQL')) );";
$stmt="SELECT count(*) from vicidial_auto_calls where status IN('LIVE') and ( (campaign_id='$Acampaign') or (campaign_id IN('$AccampSQL')) $ADsql);";
if ($DB) {echo "|$stmt|\n";}
$rslt=mysql_query($stmt, $link);
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'03007',$user,$server_ip,$session_name,$one_mysql_log);}
+125 -4
View File
@@ -13,7 +13,7 @@
# - $pass
# optional variables:
# - $format - ('text','debug')
# - $ACTION - ('regCLOSER','manDiaLnextCALL','manDiaLskip','manDiaLonly','manDiaLlookCALL','manDiaLlogCALL','userLOGout','updateDISPO','VDADpause','VDADready','VDADcheckINCOMING','UpdatEFavoritEs','CalLBacKLisT','CalLBacKCounT','PauseCodeSubmit','LogiNCamPaigns','alt_phone_change','AlertControl')
# - $ACTION - ('regCLOSER','manDiaLnextCALL','manDiaLskip','manDiaLonly','manDiaLlookCALL','manDiaLlogCALL','userLOGout','updateDISPO','VDADpause','VDADready','VDADcheckINCOMING','UpdatEFavoritEs','CalLBacKLisT','CalLBacKCounT','PauseCodeSubmit','LogiNCamPaigns','alt_phone_change','AlertControl','AGENTSview')
# - $stage - ('start','finish','lookup','new')
# - $closer_choice - ('CL_TESTCAMP_L CL_OUT123_L -')
# - $conf_exten - ('8600011',...)
@@ -201,12 +201,14 @@
# 90511-0923 - Added agentonly_callback_campaign_lock option
# 90519-0634 - Fixed manual dial status and logging bug
# 90611-1423 - Fixed agent log and vicidial log bugs
# 90705-2008 - Added AGENTSview function
# 90706-1431 - Added Agent view transfer selection
#
$version = '2.2.0-112';
$build = '90611-1423';
$version = '2.2.0-114';
$build = '90706-1431';
$mel=1; # Mysql Error Log enabled = 1
$mysql_log_count=224;
$mysql_log_count=227;
$one_mysql_log=0;
require("dbconnect.php");
@@ -4513,6 +4515,125 @@ echo " Pause Code has been updated to $status for $agent_log_id\n";
}
################################################################################
### AGENTSview - List statuses of other agents in sidebar or xfer frame
################################################################################
if ($ACTION == 'AGENTSview')
{
$stmt="SELECT user_group from vicidial_users where user='$user' and pass='$pass'";
if ($non_latin > 0) {$rslt=mysql_query("SET NAMES 'UTF8'");}
$rslt=mysql_query($stmt, $link);
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00225',$user,$server_ip,$session_name,$one_mysql_log);}
$row=mysql_fetch_row($rslt);
$VU_user_group = $row[0];
$agent_status_viewable_groupsSQL='';
### Gather timeclock and shift enforcement restriction settings
$stmt="SELECT agent_status_viewable_groups,agent_status_view_time from vicidial_user_groups where user_group='$VU_user_group';";
$rslt=mysql_query($stmt, $link);
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00226',$VD_login,$server_ip,$session_name,$one_mysql_log);}
$row=mysql_fetch_row($rslt);
$agent_status_viewable_groups = $row[0];
$agent_status_viewable_groupsSQL = eregi_replace(' ','',$agent_status_viewable_groups);
$agent_status_viewable_groupsSQL = eregi_replace(' ',"','",$agent_status_viewable_groupsSQL);
$agent_status_viewable_groupsSQL = "user_group IN('$agent_status_viewable_groupsSQL')";
$agent_status_view = 0;
if (strlen($agent_status_viewable_groups) > 2)
{$agent_status_view = 1;}
$agent_status_view_time=0;
if ($row[1] == 'Y')
{$agent_status_view_time=1;}
$andSQL='';
if (ereg("ALL-CAMPAIGNS",$agent_status_viewable_groups))
{$AGENTviewSQL = "";}
else
{
$AGENTviewSQL = "($agent_status_viewable_groupsSQL)";
if (ereg("CAMPAIGN-AGENTS",$agent_status_viewable_groups))
{$AGENTviewSQL = "($AGENTviewSQL or (campaign_id='$campaign'))";}
$andSQL=' and';
}
if ($comments=='AgentXferViewSelect')
{$AGENTviewSQL .= "$andSQL (vla.closer_campaigns LIKE \"%AGENTDIRECT%\")";}
echo "<TABLE CELLPADDING=0 CELLSPACING=1>";
### Gather agents data and statuses
$stmt="SELECT vla.user,vla.status,vu.full_name,UNIX_TIMESTAMP(last_call_time),UNIX_TIMESTAMP(last_call_finish) from vicidial_live_agents vla,vicidial_users vu where vla.user=vu.user and $AGENTviewSQL order by vu.full_name;";
$rslt=mysql_query($stmt, $link);
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00227',$VD_login,$server_ip,$session_name,$one_mysql_log);}
if ($rslt) {$agents_count = mysql_num_rows($rslt);}
$loop_count=0;
while ($agents_count > $loop_count)
{
$row=mysql_fetch_row($rslt);
$user = $row[0];
$status = $row[1];
$full_name = $row[2];
$call_start = $row[3];
$call_finish = $row[4];
if ( ($status=='READY') or ($status=='CLOSER') )
{
$statuscolor='#ADD8E6';
$call_time = ($StarTtime - $call_finish);
}
if ( ($status=='QUEUE') or ($status=='INCALL') )
{
$statuscolor='#D8BFD8';
$call_time = ($StarTtime - $call_start);
}
if ($status=='PAUSED')
{
$statuscolor='#F0E68C';
$call_time = ($StarTtime - $call_finish);
}
if ($call_time < 1)
{
$call_time = "0:00";
}
else
{
$Fminutes_M = ($call_time / 60);
$Fminutes_M_int = floor($Fminutes_M);
$Fminutes_M_int = intval("$Fminutes_M_int");
$Fminutes_S = ($Fminutes_M - $Fminutes_M_int);
$Fminutes_S = ($Fminutes_S * 60);
$Fminutes_S = round($Fminutes_S, 0);
if ($Fminutes_S < 10) {$Fminutes_S = "0$Fminutes_S";}
$call_time = "$Fminutes_M_int:$Fminutes_S";
}
if ($comments=='AgentXferViewSelect')
{
echo "<TR BGCOLOR=\"$statuscolor\"><TD><font style=\"font-size: 12px; font-family: sans-serif;\"> &nbsp; <a href=\"#\" onclick=\"AgentsXferSelect('$row[0]','$comments');return false;\">$row[0] - $row[2]</a>&nbsp;</font></TD>";
if ($agent_status_view_time > 0)
{echo "<TD><font style=\"font-size: 12px; font-family: sans-serif;\">&nbsp; $call_time &nbsp;</font></TD>";}
echo "</TR>";
}
else
{
echo "<TR BGCOLOR=\"$statuscolor\"><TD><font style=\"font-size: 12px; font-family: sans-serif;\"> &nbsp; ";
echo "$row[0] - $row[2]";
echo "&nbsp;</font></TD>";
if ($agent_status_view_time > 0)
{echo "<TD><font style=\"font-size: 12px; font-family: sans-serif;\">&nbsp; $call_time &nbsp;</font></TD>";}
echo "</TR>";
}
$loop_count++;
}
echo "</TABLE><BR>\n";
echo "<font style=\"font-size:10px;font-family:sans-serif;\"><font style=\"background-color:#ADD8E6;\"> &nbsp; &nbsp;</font>-READY &nbsp; <font style=\"background-color:#D8BFD8;\">&nbsp; &nbsp;</font>-INCALL &nbsp; <font style=\"background-color:#F0E68C;\"> &nbsp; &nbsp;</font>-PAUSED &nbsp;\n";
if ($comments=='AgentXferViewSelect')
{
echo "<BR><BR><a href=\"#\" onclick=\"AgentsXferSelect('0','$comments');return false;\">Close Window</a>&nbsp;";
}
echo "</font>\n";
}
################################################################################
### CalLBacKLisT - List the USERONLY callbacks for an agent
################################################################################
+200 -51
View File
@@ -234,10 +234,12 @@
# 90531-0635 - Added option to hide customer phone number
# 90611-1422 - Fixed multiple logging bugs
# 90628-0655 - Added Quick Transfer button and Preset Prepopulate option
# 90705-1400 - Added Agent view sidebar option
# 90706-1432 - Added Agent view transfer selection
#
$version = '2.2.0-212';
$build = '90628-0655';
$version = '2.2.0-214';
$build = '90706-1432';
$mel=1; # Mysql Error Log enabled = 1
$mysql_log_count=61;
$one_mysql_log=0;
@@ -376,6 +378,7 @@ $BROWSER_HEIGHT = 500; # set to the minimum browser height, default=500
$BROWSER_WIDTH = 770; # set to the minimum browser width, default=770
$MAIN_COLOR = '#CCCCCC'; # old default is E0C2D6
$SCRIPT_COLOR = '#E6E6E6'; # old default is FFE7D0
$SIDEBAR_COLOR = '#F6F6F6';
# options now set in DB:
#$alt_phone_dialing = '1'; # allow agents to call alt phone numbers
@@ -391,23 +394,25 @@ if ($MASTERwidth < 430) {$MASTERwidth = '430';}
if ($MASTERheight < 300) {$MASTERheight = '300';}
$CAwidth = ($MASTERwidth + 340); # 770 - cover all (none-in-session, customer hunngup, etc...)
$SBwidth = ($MASTERwidth + 331); # 761 - SideBar starting point
$MNwidth = ($MASTERwidth + 330); # 760 - main frame
$XFwidth = ($MASTERwidth + 320); # 750 - transfer/conference
$HCwidth = ($MASTERwidth + 310); # 740 - hotkeys and callbacks
$AMwidth = ($MASTERwidth + 270); # 700 - agent mute and preset-dial links
$SCwidth = ($MASTERwidth + 230); # 670 - live call seconds counter
$SCwidth = ($MASTERwidth + 230); # 670 - live call seconds counter, sidebar link
$SSwidth = ($MASTERwidth + 176); # 606 - scroll script
$SDwidth = ($MASTERwidth + 170); # 600 - scroll script, customer data and calls-in-session
$HKwidth = ($MASTERwidth + 70); # 500 - Hotkeys button
$HSwidth = ($MASTERwidth + 1); # 431 - Header spacer
$SLheight = ($MASTERheight + 125); # 425 - SideBar link
$HKheight = ($MASTERheight + 105); # 405 - HotKey active Button
$AMheight = ($MASTERheight + 100); # 400 - Agent mute and preset dial links
$MBheight = ($MASTERheight + 65); # 365 - Manual Dial Buttons
$CBheight = ($MASTERheight + 50); # 350 - Agent Callback, pause code, volume control Buttons and agent status
$SSheight = ($MASTERheight + 31); # 331 - script content
$HTheight = ($MASTERheight + 10); # 310 - transfer frame, callback comments and hotkey
$BPheight = ($MASTERheight - 250); # 50 - bottom buffer
$BPheight = ($MASTERheight - 250); # 50 - bottom buffer, Agent Xfer Span
$US='_';
@@ -791,7 +796,7 @@ $VDloginDISPLAY=0;
else {$VU_alert_enabled = 'OFF';}
### Gather timeclock and shift enforcement restriction settings
$stmt="SELECT forced_timeclock_login,shift_enforcement,group_shifts from vicidial_user_groups where user_group='$VU_user_group';";
$stmt="SELECT forced_timeclock_login,shift_enforcement,group_shifts,agent_status_viewable_groups,agent_status_view_time from vicidial_user_groups where user_group='$VU_user_group';";
$rslt=mysql_query($stmt, $link);
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'01052',$VD_login,$server_ip,$session_name,$one_mysql_log);}
$row=mysql_fetch_row($rslt);
@@ -800,6 +805,16 @@ $VDloginDISPLAY=0;
$LOGgroup_shiftsSQL = eregi_replace(' ','',$row[2]);
$LOGgroup_shiftsSQL = eregi_replace(' ',"','",$LOGgroup_shiftsSQL);
$LOGgroup_shiftsSQL = "shift_id IN('$LOGgroup_shiftsSQL')";
$agent_status_viewable_groups = $row[3];
$agent_status_viewable_groupsSQL = eregi_replace(' ','',$agent_status_viewable_groups);
$agent_status_viewable_groupsSQL = eregi_replace(' ',"','",$agent_status_viewable_groupsSQL);
$agent_status_viewable_groupsSQL = "user_group IN('$agent_status_viewable_groupsSQL')";
$agent_status_view = 0;
if (strlen($agent_status_viewable_groups) > 2)
{$agent_status_view = 1;}
$agent_status_view_time=0;
if ($row[4] == 'Y')
{$agent_status_view_time=1;}
### BEGIN - CHECK TO SEE IF AGENT IS LOGGED IN TO TIMECLOCK, IF NOT, OUTPUT ERROR
if ( (ereg('Y',$forced_timeclock_login)) or ( (ereg('ADMIN_EXEMPT',$forced_timeclock_login)) and ($VU_user_level < 8) ) )
@@ -2075,7 +2090,7 @@ for( $Ccount=0;$Ccount<(6*7);$Ccount++)
$CDCLR="#ffffff";
if ( ($Cdayarray['mday'] < $CTODAYmday) and ($CPRNTDAY == $CTODAY) )
{
$CDCLR="#CCCCCC";
$CDCLR="$MAIN_COLOR";
$CBL = '';
$CEL = '';
}
@@ -2427,6 +2442,12 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";}
var alert_enabled = '<?php echo $VU_alert_enabled ?>';
var shift_logout_flag = 0;
var vtiger_callback_id = 0;
var agent_status_view = '<?php echo $agent_status_view ?>';
var agent_status_view_time = '<?php echo $agent_status_view_time ?>';
var agent_status_view_active = 0;
var xfer_select_agents_active = 0;
var even=0;
var VU_user_group = '<?php echo $VU_user_group ?>';
var quick_transfer_button = '<?php echo $quick_transfer_button ?>';
var quick_transfer_button_enabled = '<?php echo $quick_transfer_button_enabled ?>';
var prepopulate_transfer_preset = '<?php echo $prepopulate_transfer_preset ?>';
@@ -3159,7 +3180,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";}
var LMAcontent_match=0;
agentphonelive=0;
var conv_start=-1;
var live_conf_HTML = "<font face=\"Arial,Helvetica\"><B>LIVE CALLS IN YOUR SESSION:</B></font><BR><TABLE WIDTH=<?php echo $SDwidth ?>><TR BGCOLOR=#E6E6E6><TD><font class=\"log_title\">#</TD><TD><font class=\"log_title\">REMOTE CHANNEL</TD><TD><font class=\"log_title\">HANGUP</TD><TD><font class=\"log_title\">VOLUME</TD></TR>";
var live_conf_HTML = "<font face=\"Arial,Helvetica\"><B>LIVE CALLS IN YOUR SESSION:</B></font><BR><TABLE WIDTH=<?php echo $SDwidth ?>><TR BGCOLOR=<?php echo $SCRIPT_COLOR ?>><TD><font class=\"log_title\">#</TD><TD><font class=\"log_title\">REMOTE CHANNEL</TD><TD><font class=\"log_title\">HANGUP</TD><TD><font class=\"log_title\">VOLUME</TD></TR>";
if ( (LMAcount > live_conf_calls) || (LMAcount < live_conf_calls) || (LMAforce > 0))
{
LMAe[0]=''; LMAe[1]=''; LMAe[2]=''; LMAe[3]=''; LMAe[4]=''; LMAe[5]='';
@@ -3888,7 +3909,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";}
var CB_calls = all_CBs_array[0];
var loop_ct=0;
var conv_start=0;
var CB_HTML = "<table width=610><tr bgcolor=#E6E6E6><td><font class=\"log_title\">#</td><td><font class=\"log_title\"> CALLBACK DATE/TIME</td><td><font class=\"log_title\">NUMBER</td><td><font class=\"log_title\">NAME</td><td><font class=\"log_title\"> STATUS</td><td align=right><font class=\"log_title\">CAMPAIGN</td><td><font class=\"log_title\">LAST CALL DATE/TIME</td><td align=left><font class=\"log_title\"> COMMENTS</td></tr>"
var CB_HTML = "<table width=610><tr bgcolor=<?php echo $SCRIPT_COLOR ?>><td><font class=\"log_title\">#</td><td><font class=\"log_title\"> CALLBACK DATE/TIME</td><td><font class=\"log_title\">NUMBER</td><td><font class=\"log_title\">NAME</td><td><font class=\"log_title\"> STATUS</td><td align=right><font class=\"log_title\">CAMPAIGN</td><td><font class=\"log_title\">LAST CALL DATE/TIME</td><td align=left><font class=\"log_title\"> COMMENTS</td></tr>"
while (loop_ct < CB_calls)
{
loop_ct++;
@@ -7224,13 +7245,114 @@ function phone_number_format(formatphone) {
};
// ################################################################################
// Refresh the agents view sidebar or xfer frame
function refresh_agents_view(RAlocation,RAcount)
{
if (RAcount > 0)
{
if (even > 0)
{
var xmlhttp=false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
// JScript gives us Conditional compilation, we can cope with old IE versions.
// and security blocked creation of the objects.
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
@end @*/
if (!xmlhttp && typeof XMLHttpRequest!='undefined')
{
xmlhttp = new XMLHttpRequest();
}
if (xmlhttp)
{
RAview_query = "server_ip=" + server_ip + "&session_name=" + session_name + "&ACTION=AGENTSview&format=text&user=" + user + "&pass=" + pass + "&user_group=" + VU_user_group + "&conf_exten=" + session_id + "&extension=" + extension + "&protocol=" + protocol + "&stage=" + agent_status_view_time + "&campaign=" + campaign + "&comments=" + RAlocation;
xmlhttp.open('POST', 'vdc_db_query.php');
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
xmlhttp.send(RAview_query);
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
// alert(xmlhttp.responseText);
document.getElementById(RAlocation).innerHTML = xmlhttp.responseText + "\n";
}
}
delete xmlhttp;
}
}
}
}
// ################################################################################
// Open or close the agents view sidebar or xfer frame
function AgentsViewOpen(AVlocation,AVoperation)
{
if (AVoperation=='open')
{
if (AVlocation=='AgentViewSpan')
{
document.getElementById("AgentViewLink").innerHTML = "<font class=\"body_text\"><a href=\"#\" onclick=\"AgentsViewOpen('AgentViewSpan','close');return false;\">Agents View -</a></font>";
agent_status_view_active=1;
}
showDiv(AVlocation);
}
else
{
if (AVlocation=='AgentViewSpan')
{
document.getElementById("AgentViewLink").innerHTML = "<font class=\"body_text\"><a href=\"#\" onclick=\"AgentsViewOpen('AgentViewSpan','open');return false;\">Agents View +</a></font>";
agent_status_view_active=0;
}
hideDiv(AVlocation);
}
}
// ################################################################################
// Populate the number to dial field with the selected user ID
function AgentsXferSelect(AXuser,AXlocation)
{
xfer_select_agents_active=0;
hideDiv('AgentXferViewSpan');
hideDiv(AXlocation);
document.vicidial_form.xfernumber.value = AXuser;
}
// ################################################################################
// OnFocus function for number to dial
function XferAgentSelectLaunch()
{
var XfeRSelecT = document.getElementById("XfeRGrouP");
var XScheck = XfeRSelecT.value
if (XScheck.match(/AGENTDIRECT/))
{
showDiv('AgentXferViewSpan');
AgentsViewOpen('AgentXferViewSelect','open');
refresh_agents_view('AgentXferViewSelect',agent_status_view)
xfer_select_agents_active=1;
}
}
// ################################################################################
// Move the Dispo frame out of the way and change the link to maximize
function DispoMinimize()
{
showDiv('DispoButtonHideA');
showDiv('DispoButtonHideB');
showDiv('DispoButtonHideC');
showDiv('DispoButtonHideA');
showDiv('DispoButtonHideB');
showDiv('DispoButtonHideC');
document.getElementById("DispoSelectBox").style.top = 340;
document.getElementById("DispoSelectMaxMin").innerHTML = "<a href=\"#\" onclick=\"DispoMaximize()\"> maximize </a>";
}
@@ -7242,9 +7364,9 @@ function phone_number_format(formatphone) {
{
document.getElementById("DispoSelectBox").style.top = 1;
document.getElementById("DispoSelectMaxMin").innerHTML = "<a href=\"#\" onclick=\"DispoMinimize()\"> minimize </a>";
hideDiv('DispoButtonHideA');
hideDiv('DispoButtonHideB');
hideDiv('DispoButtonHideC');
hideDiv('DispoButtonHideA');
hideDiv('DispoButtonHideB');
hideDiv('DispoButtonHideC');
}
@@ -7443,6 +7565,8 @@ else
hideDiv('NeWManuaLDiaLBox');
hideDiv('PauseCodeSelectBox');
hideDiv('GroupAliasSelectBox');
hideDiv('AgentViewSpan');
hideDiv('AgentXferViewSpan');
if (agentonly_callbacks != '1')
{hideDiv('CallbacksButtons');}
// if ( (agentcall_manual != '1') && (starting_dial_level > 0) )
@@ -7460,6 +7584,8 @@ else
{hideDiv('VolumeControlSpan');}
if (DefaulTAlTDiaL == '1')
{document.vicidial_form.DiaLAltPhonE.checked=true;}
if (agent_status_view != '1')
{document.getElementById("AgentViewLink").innerHTML = "";}
document.vicidial_form.LeadLookuP.checked=true;
@@ -7565,6 +7691,15 @@ else
{
// check for live channels in conference room and get current datetime
check_for_conf_calls(session_id, '0');
// refresh agent status view
if (agent_status_view_active > 0)
{
refresh_agents_view('AgentViewStatus',agent_status_view);
}
if (xfer_select_agents_active > 0)
{
refresh_agents_view('AgentXferViewSelect',agent_status_view);
}
if (agentonly_callbacks == '1')
{CB_count_check++;}
@@ -7683,6 +7818,9 @@ else
{
epoch_sec++;
check_n++;
even++;
if (even > 1)
{even=0;}
var year= t.getYear()
var month= t.getMonth()
month++;
@@ -8193,7 +8331,7 @@ echo "</head>\n";
<span id="AgentMuteSpan"></span> <BR>
</font></span>
<span style="position:absolute;left:0px;top:0px;z-index:39;" id="CallBacKsLisTBox">
<span style="position:absolute;left:0px;top:0px;z-index:49;" id="CallBacKsLisTBox">
<table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> CALLBACKS FOR AGENT <?php echo $VD_login ?>:<BR>Click on a callback below to call the customer back now. If you click on a record below to call it, it will be removed from the list.
<BR>
<div class="scroll_callback" id="CallBacKsLisT"></div>
@@ -8204,7 +8342,7 @@ echo "</head>\n";
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:40;" id="NeWManuaLDiaLBox">
<span style="position:absolute;left:0px;top:0px;z-index:50;" id="NeWManuaLDiaLBox">
<table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> NEW MANUAL DIAL LEAD FOR <?php echo "$VD_login in campaign $VD_campaign" ?>:<BR><BR>Enter information below for the new lead you wish to call.
<BR>
<?php
@@ -8267,17 +8405,17 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
<IMG SRC="./images/vdc_XB_header.gif" border=0 alt="Transfer - Conference"> &nbsp; &nbsp; &nbsp; &nbsp; <span id="XfeRDiaLGrouPSelecteD"></span> &nbsp; &nbsp; <span id="XfeRCID"></span><BR>
<span id="XfeRGrouPLisT"><select size=1 name=XfeRGrouP class="cust_form"><option>-- SELECT A GROUP TO SEND YOUR CALL TO --</option></select></span>
<span STYLE="background-color: #CCCCCC" id="LocalCloser"><IMG SRC="./images/vdc_XB_localcloser_OFF.gif" border=0 alt="LOCAL CLOSER"></span>
<span STYLE="background-color: #CCCCCC" id="HangupXferLine"><IMG SRC="./images/vdc_XB_hangupxferline_OFF.gif" border=0 alt="Hangup Xfer Line"></span>
<span STYLE="background-color: #CCCCCC" id="HangupBothLines"><a href="#" onclick="bothcall_send_hangup();return false;"><IMG SRC="./images/vdc_XB_hangupbothlines.gif" border=0 alt="Hangup Both Lines"></a></span>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="LocalCloser"><IMG SRC="./images/vdc_XB_localcloser_OFF.gif" border=0 alt="LOCAL CLOSER"></span>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="HangupXferLine"><IMG SRC="./images/vdc_XB_hangupxferline_OFF.gif" border=0 alt="Hangup Xfer Line"></span>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="HangupBothLines"><a href="#" onclick="bothcall_send_hangup();return false;"><IMG SRC="./images/vdc_XB_hangupbothlines.gif" border=0 alt="Hangup Both Lines"></a></span>
<BR>
<IMG SRC="./images/vdc_XB_number.gif" border=0 alt="Number to call"> <input type=text size=15 name=xfernumber maxlength=25 class="cust_form" value="<?php echo $preset_populate ?>"> &nbsp;
<IMG SRC="./images/vdc_XB_number.gif" border=0 alt="Number to call"> <input type=text size=15 name=xfernumber maxlength=25 class="cust_form" value="<?php echo $preset_populate ?>" onFocus="XferAgentSelectLaunch();return false;"> &nbsp;
<input type=hidden name=xferuniqueid>
<input type=checkbox name=xferoverride size=1 value="0"><font class="body_tiny"> DIAL OVERRIDE</font> &nbsp;
<span STYLE="background-color: #CCCCCC" id="Leave3WayCall"><a href="#" onclick="leave_3way_call('FIRST');return false;"><IMG SRC="./images/vdc_XB_leave3waycall.gif" border=0 alt="LEAVE 3-WAY CALL"></a></span>
<span STYLE="background-color: #CCCCCC" id="DialBlindTransfer"><IMG SRC="./images/vdc_XB_blindtransfer_OFF.gif" border=0 alt="Dial Blind Transfer"></span>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="Leave3WayCall"><a href="#" onclick="leave_3way_call('FIRST');return false;"><IMG SRC="./images/vdc_XB_leave3waycall.gif" border=0 alt="LEAVE 3-WAY CALL"></a></span>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="DialBlindTransfer"><IMG SRC="./images/vdc_XB_blindtransfer_OFF.gif" border=0 alt="Dial Blind Transfer"></span>
<a href="#" onclick="DtMf_PreSet_a();return false;"><font class="body_tiny">D1</font></a>
<a href="#" onclick="DtMf_PreSet_b();return false;"><font class="body_tiny">D2</font></a>
@@ -8285,9 +8423,9 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
<IMG SRC="./images/vdc_XB_seconds.gif" border=0 alt="seconds"> <input type=text size=2 name=xferlength maxlength=4 class="cust_form"> &nbsp;
<IMG SRC="./images/vdc_XB_channel.gif" border=0 alt="channel"> <input type=text size=12 name=xferchannel maxlength=100 class="cust_form">
<span STYLE="background-color: #CCCCCC" id="DialWithCustomer"><a href="#" onclick="SendManualDial('YES');return false;"><IMG SRC="./images/vdc_XB_dialwithcustomer.gif" border=0 alt="Dial With Customer"></a></span>
<span STYLE="background-color: #CCCCCC" id="ParkCustomerDial"><a href="#" onclick="xfer_park_dial();return false;"><IMG SRC="./images/vdc_XB_parkcustomerdial.gif" border=0 alt="Park Customer Dial"></a></span>
<span STYLE="background-color: #CCCCCC" id="DialBlindVMail"><IMG SRC="./images/vdc_XB_ammessage_OFF.gif" border=0 alt="Blind Transfer VMail Message"></span>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="DialWithCustomer"><a href="#" onclick="SendManualDial('YES');return false;"><IMG SRC="./images/vdc_XB_dialwithcustomer.gif" border=0 alt="Dial With Customer"></a></span>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="ParkCustomerDial"><a href="#" onclick="xfer_park_dial();return false;"><IMG SRC="./images/vdc_XB_parkcustomerdial.gif" border=0 alt="Park Customer Dial"></a></span>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="DialBlindVMail"><IMG SRC="./images/vdc_XB_ammessage_OFF.gif" border=0 alt="Blind Transfer VMail Message"></span>
</font>
</div>
</td>
@@ -8295,7 +8433,18 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</span>
<span style="position:absolute;left:5px;top:<?php echo $HTheight ?>px;z-index:23;" id="HotKeyActionBox">
<span style="position:absolute;left:<?php echo $SBwidth ?>px;top:0px;height:500;overflow:scroll;z-index:23;background-color:<?php echo $SIDEBAR_COLOR ?>;" id="AgentViewSpan"><TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0><TR><TD width=5 ROWSPAN=2>&nbsp;</TD><TD ALIGN=CENTER><font class="body_text">
Other Agents Status: &nbsp; </font></TD></TR><TR><TD ALIGN=CENTER><span id="AgentViewStatus">&nbsp;</span></TD></TR></TABLE></span>
<span style="position:absolute;left:60px;top:<?php echo $BPheight ?>px;width:400;height:500;overflow:scroll;z-index:24;background-color:<?php echo $SIDEBAR_COLOR ?>;" id="AgentXferViewSpan"><CENTER><font class="body_text">
Available Agents Transfer: <span id="AgentXferViewSelect"></span></CENTER></font></span>
<span style="position:absolute;left:<?php echo $SCwidth ?>px;top:<?php echo $SLheight ?>px;z-index:25;" id="AgentViewLinkSpan"><TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0 WIDTH=91><TR><TD ALIGN=RIGHT><span id="AgentViewLink"><font class="body_text"><a href="#" onclick="AgentsViewOpen('AgentViewSpan','open');return false;">Agents View +</a></font></span></TD></TR></TABLE></span>
<span style="position:absolute;left:5px;top:<?php echo $HTheight ?>px;z-index:33;" id="HotKeyActionBox">
<table border=0 bgcolor="#FFDD99" width=<?php echo $HCwidth ?> height=70>
<TR bgcolor="#FFEEBB"><TD height=70><font class="sh_text"> Lead Dispositioned As: </font><BR><BR><CENTER>
<font class="sd_text"><span id="HotKeyDispo"> - </span></font></CENTER>
@@ -8303,7 +8452,7 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TR></TABLE>
</span>
<span style="position:absolute;left:5px;top:<?php echo $HTheight ?>px;z-index:24;" id="HotKeyEntriesBox">
<span style="position:absolute;left:5px;top:<?php echo $HTheight ?>px;z-index:34;" id="HotKeyEntriesBox">
<table border=0 bgcolor="#FFDD99" width=<?php echo $HCwidth ?> height=70>
<TR bgcolor="#FFEEBB"><TD width=200><font class="sh_text"> Disposition Hot Keys: </font></td><td colspan=2>
<font class="body_small">When active, simply press the keyboard key for the desired disposition for this call. The call will then be hungup and dispositioned automatically:</font></td></tr><tr>
@@ -8319,7 +8468,7 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TR></TABLE>
</span>
<span style="position:absolute;left:5px;top:<?php echo $HTheight ?>px;z-index:25;" id="CBcommentsBox">
<span style="position:absolute;left:5px;top:<?php echo $HTheight ?>px;z-index:35;" id="CBcommentsBox">
<table border=0 bgcolor="#FFFFCC" width=<?php echo $HCwidth ?> height=70>
<TR bgcolor="#FFFF66">
<TD align=left><font class="sh_text"> Previous Callback Information: </font></td>
@@ -8336,7 +8485,7 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TR></TABLE>
</span>
<span style="position:absolute;left:5px;top:<?php echo $HTheight ?>px;z-index:26;" id="EAcommentsBox">
<span style="position:absolute;left:5px;top:<?php echo $HTheight ?>px;z-index:36;" id="EAcommentsBox">
<table border=0 bgcolor="#FFFFCC" width=<?php echo $HCwidth ?> height=70>
<TR bgcolor="#FFFF66">
<TD align=left><font class="sh_text"> Extended Alt Phone Information: </font></td>
@@ -8353,14 +8502,14 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TR></TABLE>
</span>
<span style="position:absolute;left:695px;top:<?php echo $HTheight ?>px;z-index:27;" id="EAcommentsMinBox">
<span style="position:absolute;left:695px;top:<?php echo $HTheight ?>px;z-index:37;" id="EAcommentsMinBox">
<table border=0 bgcolor="#FFFFCC" width=40 height=20>
<TR bgcolor="#FFFF66">
<TD align=left><font class="sk_text"><a href="#" onclick="EAcommentsBoxshow();return false;"> maximize </a> <BR>Alt Phone Info</font></td>
</tr></TABLE>
</span>
<span style="position:absolute;left:0px;top:12px;z-index:28;" id="NoneInSessionBox">
<span style="position:absolute;left:0px;top:12px;z-index:38;" id="NoneInSessionBox">
<table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Noone is in your session: <span id="NoneInSessionID"></span><BR>
<a href="#" onclick="NoneInSessionOK();return false;">Go Back</a>
<BR><BR>
@@ -8368,7 +8517,7 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:29;" id="CustomerGoneBox">
<span style="position:absolute;left:0px;top:0px;z-index:39;" id="CustomerGoneBox">
<table border=1 bgcolor="#CCFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center> Customer has hung up: <span id="CustomerGoneChanneL"></span><BR>
<a href="#" onclick="CustomerGoneOK();return false;">Go Back</a>
<BR><BR>
@@ -8377,7 +8526,7 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:30;" id="WrapupBox">
<span style="position:absolute;left:0px;top:0px;z-index:40;" id="WrapupBox">
<table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=550><TR><TD align=center> Call Wrapup: <span id="WrapupTimer"></span> seconds remaining in wrapup<BR><BR>
<span id="WrapupMessage"><?php echo $wrapup_message ?></span>
<BR><BR>
@@ -8386,33 +8535,33 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:31;" id="AgenTDisablEBoX">
<span style="position:absolute;left:0px;top:0px;z-index:41;" id="AgenTDisablEBoX">
<table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>Your session has been disabled<BR><a href="#" onclick="LogouT('DISABLED');return false;">LOGOUT</a><BR><BR><a href="#" onclick="hideDiv('AgenTDisablEBoX');return false;">Go Back</a>
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:32;" id="SysteMDisablEBoX">
<span style="position:absolute;left:0px;top:0px;z-index:42;" id="SysteMDisablEBoX">
<table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center>There is a time synchronization problem with your system, please tell your system administrator<BR><BR><BR><a href="#" onclick="hideDiv('SysteMDisablEBoX');return false;">Go Back</a>
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:33;" id="LogouTBox">
<span style="position:absolute;left:0px;top:0px;z-index:43;" id="LogouTBox">
<table border=1 bgcolor="#FFFFFF" width=<?php echo $CAwidth ?> height=500><TR><TD align=center><BR><span id="LogouTBoxLink">LOGOUT</span></TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:70px;z-index:34;" id="DispoButtonHideA">
<span style="position:absolute;left:0px;top:70px;z-index:44;" id="DispoButtonHideA">
<table border=0 bgcolor="#CCFFCC" width=165 height=22><TR><TD align=center VALIGN=top></TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:138px;z-index:35;" id="DispoButtonHideB">
<span style="position:absolute;left:0px;top:138px;z-index:45;" id="DispoButtonHideB">
<table border=0 bgcolor="#CCFFCC" width=165 height=250><TR><TD align=center VALIGN=top>&nbsp;</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:36;" id="DispoButtonHideC">
<span style="position:absolute;left:0px;top:0px;z-index:46;" id="DispoButtonHideC">
<table border=0 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=47><TR><TD align=center VALIGN=top>Any changes made to the customer information below at this time will not be comitted, You must change customer information before you Hangup the call. </TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:37;" id="DispoSelectBox">
<span style="position:absolute;left:0px;top:0px;z-index:47;" id="DispoSelectBox">
<table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> DISPOSITION CALL :<span id="DispoSelectPhonE"></span> &nbsp; &nbsp; &nbsp; <span id="DispoSelectHAspan"><a href="#" onclick="DispoHanguPAgaiN()">Hangup Again</a></span> &nbsp; &nbsp; &nbsp; <span id="DispoSelectMaxMin"><a href="#" onclick="DispoMinimize()"> minimize </a></span><BR>
<span id="DispoSelectContent"> End-of-call Disposition Selection </span>
<input type=hidden name=DispoSelection><BR>
@@ -8425,7 +8574,7 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:43;" id="PauseCodeSelectBox">
<span style="position:absolute;left:0px;top:0px;z-index:53;" id="PauseCodeSelectBox">
<table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELECT A PAUSE CODE :<BR>
<span id="PauseCodeSelectContent"> Pause Code Selection </span>
<input type=hidden name=PauseCodeSelection>
@@ -8433,7 +8582,7 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:44;" id="GroupAliasSelectBox">
<span style="position:absolute;left:0px;top:0px;z-index:54;" id="GroupAliasSelectBox">
<table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> SELECT A GROUP ALIAS :<BR>
<span id="GroupAliasSelectContent"> Group Alias Selection </span>
<input type=hidden name=GroupAliasSelection>
@@ -8441,10 +8590,10 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:1000px;z-index:45;" id="GENDERhideFORieALT"></span>
<span style="position:absolute;left:0px;top:1000px;z-index:55;" id="GENDERhideFORieALT"></span>
<span style="position:absolute;left:0px;top:0px;z-index:38;" id="CallBackSelectBox">
<span style="position:absolute;left:0px;top:0px;z-index:48;" id="CallBackSelectBox">
<table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> Select a CallBack Date :<span id="CallBackDatE"></span><BR>
<input type=hidden name=CallBackDatESelectioN ID="CallBackDatESelectioN">
<input type=hidden name=CallBackTimESelectioN ID="CallBackTimESelectioN">
@@ -8497,7 +8646,7 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:41;" id="CloserSelectBox">
<span style="position:absolute;left:0px;top:0px;z-index:51;" id="CloserSelectBox">
<table border=1 bgcolor="#CCFFCC" width=<?php echo $CAwidth ?> height=460><TR><TD align=center VALIGN=top> CLOSER INBOUND GROUP SELECTION <BR>
<span id="CloserSelectContent"> Closer Inbound Group Selection </span>
<input type=hidden name=CloserSelectList><BR>
@@ -8515,7 +8664,7 @@ Your Status: <span id="AgentStatusStatus"></span> <BR>Calls Dialing: <span id="A
</TD></TR></TABLE>
</span>
<span style="position:absolute;left:0px;top:0px;z-index:42;" id="NothingBox">
<span style="position:absolute;left:0px;top:0px;z-index:52;" id="NothingBox">
<BUTTON Type=button name="inert_button"><img src="./images/blank.gif"></BUTTON>
<span id="DiaLLeaDPrevieWHide">Channel</span>
<span id="DiaLDiaLAltPhonEHide">Channel</span>
@@ -8587,22 +8736,22 @@ RECORDING FILE:<BR>
RECORD ID: <font class="body_small"><span id="RecorDID"></span></font><BR>
<center>
<!-- <a href=\"#\" onclick=\"conf_send_recording('MonitorConf','" + head_conf + "','');return false;\">Record</a> -->
<span STYLE="background-color: #CCCCCC" id="RecorDControl"><a href="#" onclick="conf_send_recording('MonitorConf',session_id,'');return false;"><IMG SRC="./images/vdc_LB_startrecording.gif" border=0 alt="Start Recording"></a></span><BR>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="RecorDControl"><a href="#" onclick="conf_send_recording('MonitorConf',session_id,'');return false;"><IMG SRC="./images/vdc_LB_startrecording.gif" border=0 alt="Start Recording"></a></span><BR>
<span id="SpacerSpanA"><IMG SRC="./images/blank.gif" width=145 height=16 border=0></span><BR>
<span STYLE="background-color: #FFFFFF" id="WebFormSpan"><IMG SRC="./images/vdc_LB_webform_OFF.gif" border=0 alt="Web Form"></span><BR>
<span id="SpacerSpanB"><IMG SRC="./images/blank.gif" width=145 height=16 border=0></span><BR>
<span STYLE="background-color: #CCCCCC" id="ParkControl"><IMG SRC="./images/vdc_LB_parkcall_OFF.gif" border=0 alt="Park Call"></span><BR>
<span STYLE="background-color: #CCCCCC" id="XferControl"><IMG SRC="./images/vdc_LB_transferconf_OFF.gif" border=0 alt="Transfer - Conference"></span><BR>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="ParkControl"><IMG SRC="./images/vdc_LB_parkcall_OFF.gif" border=0 alt="Park Call"></span><BR>
<span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="XferControl"><IMG SRC="./images/vdc_LB_transferconf_OFF.gif" border=0 alt="Transfer - Conference"></span><BR>
<?php
if ($quick_transfer_button_enabled > 0)
{echo "<span STYLE=\"background-color: #CCCCCC\" id=\"QuickXfer\"><IMG SRC=\"./images/vdc_LB_quickxfer_OFF.gif\" border=0 alt=\"Quick Transfer\"></span><BR>\n";}
{echo "<span STYLE=\"background-color: $MAIN_COLOR\" id=\"QuickXfer\"><IMG SRC=\"./images/vdc_LB_quickxfer_OFF.gif\" border=0 alt=\"Quick Transfer\"></span><BR>\n";}
?>
<span id="SpacerSpanC"><IMG SRC="./images/blank.gif" width=145 height=16 border=0></span><BR>
<span STYLE="background-color: #FFCCFF" id="HangupControl"><IMG SRC="./images/vdc_LB_hangupcustomer_OFF.gif" border=0 alt="Hangup Customer"></span><BR>
<span id="SpacerSpanD"><IMG SRC="./images/blank.gif" width=145 height=16 border=0></span><BR>
<div class="text_input" id="SendDTMFdiv"><span STYLE="background-color: #CCCCCC" id="SendDTMF"><a href="#" onclick="SendConfDTMF(session_id);return false;"><IMG SRC="./images/vdc_LB_senddtmf.gif" border=0 alt="Send DTMF" align=bottom></a> <input type=text size=5 name=conf_dtmf class="cust_form" value="" maxlength=50></div></span><BR>
<div class="text_input" id="SendDTMFdiv"><span STYLE="background-color: <?php echo $MAIN_COLOR ?>" id="SendDTMF"><a href="#" onclick="SendConfDTMF(session_id);return false;"><IMG SRC="./images/vdc_LB_senddtmf.gif" border=0 alt="Send DTMF" align=bottom></a> <input type=text size=5 name=conf_dtmf class="cust_form" value="" maxlength=50></div></span><BR>
</center>
</font>
</td>
+7 -7
View File
@@ -194,14 +194,14 @@ echo "</TD><TD ROWSPAN=2 VALIGN=TOP>\n";
echo "Inbound Groups: \n";
echo "</TD><TD ROWSPAN=2 VALIGN=TOP>\n";
echo "<SELECT SIZE=5 NAME=group[] multiple>\n";
$o=0;
while ($groups_to_print > $o)
$o=0;
while ($groups_to_print > $o)
{
if (ereg("\|$LISTgroups[$o]\|",$group_string))
{echo "<option selected value=\"$LISTgroups[$o]\">$LISTgroups[$o]</option>\n";}
else
{echo "<option value=\"$LISTgroups[$o]\">$LISTgroups[$o]</option>\n";}
$o++;
if (ereg("\|$LISTgroups[$o]\|",$group_string))
{echo "<option selected value=\"$LISTgroups[$o]\">$LISTgroups[$o]</option>\n";}
else
{echo "<option value=\"$LISTgroups[$o]\">$LISTgroups[$o]</option>\n";}
$o++;
}
echo "</SELECT>\n";
echo "</TD><TD ROWSPAN=2 VALIGN=TOP>\n";
+71 -5
View File
@@ -1067,6 +1067,10 @@ if (isset($_GET["tts_text"])) {$tts_text=$_GET["tts_text"];}
elseif (isset($_POST["tts_text"])) {$tts_text=$_POST["tts_text"];}
if (isset($_GET["drop_rate_group"])) {$drop_rate_group=$_GET["drop_rate_group"];}
elseif (isset($_POST["drop_rate_group"])) {$drop_rate_group=$_POST["drop_rate_group"];}
if (isset($_GET["agent_status_viewable_groups"])) {$agent_status_viewable_groups=$_GET["agent_status_viewable_groups"];}
elseif (isset($_POST["agent_status_viewable_groups"])) {$agent_status_viewable_groups=$_POST["agent_status_viewable_groups"];}
if (isset($_GET["agent_status_view_time"])) {$agent_status_view_time=$_GET["agent_status_view_time"];}
elseif (isset($_POST["agent_status_view_time"])) {$agent_status_view_time=$_POST["agent_status_view_time"];}
if (isset($script_id)) {$script_id= strtoupper($script_id);}
if (isset($lead_filter_id)) {$lead_filter_id = strtoupper($lead_filter_id);}
@@ -1320,6 +1324,7 @@ if ($non_latin < 1)
$unworkable = ereg_replace("[^NY]","",$unworkable);
$sounds_update = ereg_replace("[^NY]","",$sounds_update);
$carrier_logging_active = ereg_replace("[^NY]","",$carrier_logging_active);
$agent_status_view_time = ereg_replace("[^NY]","",$agent_status_view_time);
$qc_enabled = ereg_replace("[^0-9NY]","",$qc_enabled);
$active = ereg_replace("[^0-9NY]","",$active);
@@ -1844,7 +1849,7 @@ else
# 90514-0607 - Added select prompts from list in call menu and in-group screens
# 90521-0029 - Added user territories enable option
# 90522-0506 - Security fix for logins when using non-latin setting
# 90524-2307 - Chaned Reports screen layout
# 90524-2307 - Changed Reports screen layout
# 90528-2055 - Added ViciDial recording limit field in servers and phone_context to phones
# 90530-1206 - Changed List Mix to allow for 40 mixes
# 90531-1802 - Added auto-generated options for users, campaigns, in-groups, etc..., added option to HIDE custphone
@@ -1861,11 +1866,12 @@ else
# 90627-2333 - Added default transfer button and prepopulate preset options
# 90628-0924 - Added Text To Speech(TTS) fields
# 90628-2213 - Added Multi-campaign drop rate groups
# 90705-0926 - Added User Group agent view options
#
# make sure you have added a user to the vicidial_users MySQL table with at least user_level 8 to access this page the first time
$admin_version = '2.2.0-203';
$build = '90628-2213';
$admin_version = '2.2.0-204';
$build = '90705-0926';
$STARTtime = date("U");
$SQLdate = date("Y-m-d H:i:s");
@@ -2862,7 +2868,7 @@ echo "<TABLE WIDTH=98% BGCOLOR=#E6E6E6 cellpadding=2 cellspacing=0><TR><TD ALIGN
<BR>
<A NAME="vicidial_users-scheduled_callbacks">
<BR>
<B>Scheduled Callbacks -</B> This option allows an agent to disposition a call as CALLBK and choose the data and time at which the lead will be re-activated.
<B>Scheduled Callbacks -</B> This option allows an agent to disposition a call as CALLBK and choose the date and time at which the lead will be re-activated.
<BR>
<A NAME="vicidial_users-agentonly_callbacks">
@@ -4402,6 +4408,16 @@ if ($SSoutbound_autodial_active > 0)
<BR>
<B>Allowed Campaigns -</B> This is a selectable list of Campaigns to which members of this user group can log in to. The ALL-CAMPAIGNS option allows the users in this group to see and log in to any campaign on the system.
<BR>
<A NAME="vicidial_user_groups-agent_status_viewable_groups">
<BR>
<B>Agent Status Viewable Groups -</B> This is a selectable list of User Groups and user functions to which members of this user group can view the status of as well as transfer calls to inside of the agent screen. The ALL-GROUPS option allows the users in this group to see and transfer calls to any user on the system. The CAMPAIGN-AGENTS option allows users in this group to see and transfer calls to any user in the campaign that they are logged into.
<BR>
<A NAME="vicidial_user_groups-agent_status_view_time">
<BR>
<B>Agent Status View Time -</B> This option defines whether the agent will see the amount of time that users in their agent sidebar have been in their current status. Default is N for no or disabled.
<?php
if ($SSqc_features_active > 0)
{
@@ -11632,10 +11648,21 @@ if ($ADD==411111)
$group_shifts_ct = count($group_shifts);
while ($p <= $group_shifts_ct)
{
$group_shifts[$p] = ereg_replace("[^ -_0-9a-zA-Z]","",$group_shifts[$p]);
$GROUP_shifts .= "$group_shifts[$p] ";
$p++;
}
$stmt="UPDATE vicidial_user_groups set user_group='$user_group', group_name='$group_name',allowed_campaigns='$campaigns_value',qc_allowed_campaigns='$qc_campaigns_value',qc_allowed_inbound_groups='$qc_groups_value',group_shifts='$GROUP_shifts',forced_timeclock_login='$forced_timeclock_login',shift_enforcement='$shift_enforcement' where user_group='$OLDuser_group';";
$p=0;
$VGROUP_vgroups=' ';
$vgroup_vgroups_ct = count($agent_status_viewable_groups);
while ($p <= $vgroup_vgroups_ct)
{
$agent_status_viewable_groups[$p] = ereg_replace("[^ -_0-9a-zA-Z]","",$agent_status_viewable_groups[$p]);
$VGROUP_vgroups .= "$agent_status_viewable_groups[$p] ";
$p++;
}
$stmt="UPDATE vicidial_user_groups set user_group='$user_group', group_name='$group_name',allowed_campaigns='$campaigns_value',qc_allowed_campaigns='$qc_campaigns_value',qc_allowed_inbound_groups='$qc_groups_value',group_shifts='$GROUP_shifts',forced_timeclock_login='$forced_timeclock_login',shift_enforcement='$shift_enforcement',agent_status_viewable_groups='$VGROUP_vgroups',agent_status_view_time='$agent_status_view_time' where user_group='$OLDuser_group';";
$rslt=mysql_query($stmt, $link);
echo "<br><B>USER GROUP MODIFIED</B>\n";
@@ -18688,6 +18715,8 @@ if ($ADD==311111)
$GROUP_shifts = $row[5];
$forced_timeclock_login = $row[6];
$shift_enforcement = $row[7];
$VGROUP_vgroups = $row[8];
$agent_status_view_time = $row[9];
echo "<FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2>";
@@ -18732,6 +18761,43 @@ if ($ADD==311111)
}
echo " <BR>&nbsp;</td></tr>\n";
echo "<tr bgcolor=#B6D3FC><td align=right>Agent Status Viewable Groups: <BR>$NWB#vicidial_user_groups-agent_status_viewable_groups$NWE</td><td align=left>\n";
echo "<input type=\"checkbox\" name=\"agent_status_viewable_groups[]\" value=\"--ALL-GROUPS--\"";
if (ereg(" --ALL-GROUPS-- ", $VGROUP_vgroups))
{echo " CHECKED";}
echo "><B>ALL-GROUPS</B> - All user groups in the system<BR>\n";
echo "<input type=\"checkbox\" name=\"agent_status_viewable_groups[]\" value=\"--CAMPAIGN-AGENTS--\"";
if (ereg(" --CAMPAIGN-AGENTS-- ", $VGROUP_vgroups))
{echo " CHECKED";}
echo "><B>CAMPAIGN-AGENTS</B> - All users logged into the same camapaign as the agent<BR>\n";
$stmt="SELECT user_group,group_name from vicidial_user_groups order by user_group";
$rslt=mysql_query($stmt, $link);
$view_groups_to_print = mysql_num_rows($rslt);
$o=0;
while ($view_groups_to_print > $o)
{
$rowx=mysql_fetch_row($rslt);
$vgroups_id_value = $rowx[0];
$vgroups_name_value = $rowx[1];
echo "<input type=\"checkbox\" name=\"agent_status_viewable_groups[]\" value=\"$vgroups_id_value\"";
$p=0;
while ($p<100)
{
if (ereg(" $vgroups_id_value ", $VGROUP_vgroups))
{
echo " CHECKED";
}
$p++;
}
echo "> <a href=\"$PHP_SELF?ADD=311111&user_group=$vgroups_id_value\">$vgroups_id_value</a> - $vgroups_name_value<BR>\n";
$o++;
}
echo " <BR>&nbsp;</td></tr>\n";
echo "<tr bgcolor=#B6D3FC><td align=right>Agent Status View Time: </td><td align=left><select size=1 name=agent_status_view_time><option SELECTED>Y</option><option>N</option><option SELECTED>$agent_status_view_time</option></select>$NWB#vicidial_user_groups-agent_status_view_time$NWE</td></tr>\n";
if ($SSqc_features_active > 0)
{
echo "<tr bgcolor=#B6D3FC><td align=right>QC Allowed Campaigns: <BR>$NWB#vicidial_user_groups-qc_allowed_campaigns$NWE</td><td align=left>\n";