From c4acf3c51e5cb61fd7921d94ff6c8cf4e30c93e4 Mon Sep 17 00:00:00 2001 From: mattf Date: Mon, 1 Mar 2010 21:01:51 +0000 Subject: [PATCH] added phrase to translations added date chooser to timeclock detail and IVR reports added 3-WAY status to Real-time report changed AGENTDIRECT selection to a separate link instead of clicking on number-to-dial field git-svn-id: svn://192.168.202.10@1353 3d104415-ff17-0410-8863-d5cf3c621b8a --- .../extras/Changed_meetme_sounds.txt | 4 +- .../agc_2.2.0/translations/br_language.txt | 1 + .../agc_2.2.0/translations/de_language.txt | 1 + .../agc_2.2.0/translations/el_language.txt | 1 + .../agc_2.2.0/translations/es_language.txt | 1 + .../agc_2.2.0/translations/fr_language.txt | 1 + .../agc_2.2.0/translations/it_language.txt | 1 + .../agc_2.2.0/translations/nl_language.txt | 1 + .../agc_2.2.0/translations/pl_language.txt | 1 + .../agc_2.2.0/translations/pt_language.txt | 1 + .../agc_2.2.0/translations/ru_language.txt | 1 + .../agc_2.2.0/translations/sk_language.txt | 1 + .../agc_2.2.0/translations/tw_language.txt | 1 + .../agc_2.2.0/www/agc/vdc_db_query.php | 10 +- .../branches/agc_2.2.0/www/agc/vicidial.php | 62 +++++++++--- .../agc_2.2.0/www/vicidial/AST_IVRstats.php | 98 ++++++++++++++----- .../vicidial/AST_agent_timeclock_detail.php | 80 +++++++++++++-- .../www/vicidial/AST_timeonVDADall.php | 31 +++++- .../trunk/extras/Changed_meetme_sounds.txt | 4 +- agc_2-X/trunk/translations/br_language.txt | 1 + agc_2-X/trunk/translations/de_language.txt | 1 + agc_2-X/trunk/translations/el_language.txt | 1 + agc_2-X/trunk/translations/es_language.txt | 1 + agc_2-X/trunk/translations/fr_language.txt | 1 + agc_2-X/trunk/translations/it_language.txt | 1 + agc_2-X/trunk/translations/nl_language.txt | 1 + agc_2-X/trunk/translations/pl_language.txt | 1 + agc_2-X/trunk/translations/pt_language.txt | 1 + agc_2-X/trunk/translations/ru_language.txt | 1 + agc_2-X/trunk/translations/sk_language.txt | 1 + agc_2-X/trunk/translations/tw_language.txt | 1 + agc_2-X/trunk/www/agc/vdc_db_query.php | 9 +- agc_2-X/trunk/www/agc/vicidial.php | 64 +++++++++--- agc_2-X/trunk/www/vicidial/AST_IVRstats.php | 98 ++++++++++++++----- .../vicidial/AST_agent_timeclock_detail.php | 80 +++++++++++++-- .../trunk/www/vicidial/AST_timeonVDADall.php | 31 +++++- 36 files changed, 472 insertions(+), 123 deletions(-) diff --git a/agc_2-X/branches/agc_2.2.0/extras/Changed_meetme_sounds.txt b/agc_2-X/branches/agc_2.2.0/extras/Changed_meetme_sounds.txt index 579fd731..c5a9565e 100644 --- a/agc_2-X/branches/agc_2.2.0/extras/Changed_meetme_sounds.txt +++ b/agc_2-X/branches/agc_2.2.0/extras/Changed_meetme_sounds.txt @@ -1,7 +1,7 @@ * Changed Meetme Sounds in Asterisk 2007-07-27 -For some reason, possibly effeciency, the enter and leave sounds that you hear in standard Asterisk meetme rooms are actually hex dumps of RAW ULAW 8bit audio that have been compiled into the code of Asterisk in a header file. This makes them somewhat difficult to change, especially since there are no instructions. +For some reason, possibly efficiency, the enter and leave sounds that you hear in standard Asterisk meetme rooms are actually hex dumps of RAW ULAW 8bit audio that have been compiled into the code of Asterisk in a header file. This makes them somewhat difficult to change, especially since there are no instructions. This should slightly reduce time that it takes for calls to get to agents, as well as reduce the time of the locks that occur when these sounds are played in Asterisk. The new enter and leave sounds I include with VICIDIAL are 0.12 and 0.13 seconds respectively as compared to the default sounds which are more than double that. @@ -26,7 +26,7 @@ Here are the steps I went to to change the meetme enter and leave sounds: 00000020 5d 66 60 51 6c 5f 3e 4d 59 47 72 e4 52 53 58 48 |]f`Ql_>MYGräRSXH| -4. Used favorite text edotor to format the data properly: +4. Used favorite text editor to format the data properly: - 60 character length lines comma-space separated in the same format as enter.h and leave.h were in. Don't forget the header and footer to this raw hex audio, they are important 0xd6, 0xdc, 0x55, 0x5f, 0x63, 0x67, 0xf0, 0xf0, 0x74, 0x75, diff --git a/agc_2-X/branches/agc_2.2.0/translations/br_language.txt b/agc_2-X/branches/agc_2.2.0/translations/br_language.txt index 2c70f304..d47847a9 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/br_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/br_language.txt @@ -483,3 +483,4 @@ has selected your in-group choices|foi selecionado o grupo de escolhas| CONSULTATIVE|CONSULTIVO| Close Message|Fechar Mensagem| TIMER NOTIFICATION|NOTIFICAÇÃO TIMER| +>AGENTS<|>AGENTES<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/de_language.txt b/agc_2-X/branches/agc_2.2.0/translations/de_language.txt index af31d3b0..d04f44df 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/de_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/de_language.txt @@ -489,3 +489,4 @@ has selected your in-group choices|hat Ihren in-group Entscheidungen| CONSULTATIVE|BERATENDE| Close Message|Close Message| TIMER NOTIFICATION|Timer-Benachrichtigung| +>AGENTS<|>Agenten<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/el_language.txt b/agc_2-X/branches/agc_2.2.0/translations/el_language.txt index 5684923b..90c15bf4 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/el_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/el_language.txt @@ -479,3 +479,4 @@ has selected your in-group choices|έχει επιλέξει σε σας τις CONSULTATIVE|ΣΥΜΒΟΥΛΕΥΤΙΚΗ| Close Message|Κλείσιμο Μήνυμα| TIMER NOTIFICATION|TIMER ΚΟΙÎΟΠΟΙΗΣΗ| +>AGENTS<|>Ï€ÏάκτοÏες<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/es_language.txt b/agc_2-X/branches/agc_2.2.0/translations/es_language.txt index 20143065..d9fd36e7 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/es_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/es_language.txt @@ -486,3 +486,4 @@ CONSULTATIVE|CONSULTIVO| Close Message|Cerrar Mensaje| TIMER NOTIFICATION|NOTIFICACIÓN TIMER| login_language=en_us|login_language=es_es| +>AGENTS<|>AGENTES<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/fr_language.txt b/agc_2-X/branches/agc_2.2.0/translations/fr_language.txt index d4067293..6d2c9ef9 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/fr_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/fr_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|a sélectionné votre choix en groupe| CONSULTATIVE|CONSULTATIF| Close Message|Fermer Message| TIMER NOTIFICATION|TIMER NOTIFICATION| +>AGENTS<|>AGENTS<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/it_language.txt b/agc_2-X/branches/agc_2.2.0/translations/it_language.txt index 689e3b1e..00eba1b3 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/it_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/it_language.txt @@ -501,3 +501,4 @@ has selected your in-group choices|ha selezionato le tue scelte per i gruppi inb CONSULTATIVE|CONSULTIVO| Close Message|Chiudi Messaggio| TIMER NOTIFICATION|NOTIFICA TIMER| +>AGENTS<|>OPERATORI<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/nl_language.txt b/agc_2-X/branches/agc_2.2.0/translations/nl_language.txt index 23d68098..4b2a3527 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/nl_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/nl_language.txt @@ -517,3 +517,4 @@ has selected your in-group choices|heeft gekozen uw in-groep keuzes| CONSULTATIVE|ADVIESGROEP| Close Message|Close Message| TIMER NOTIFICATION|TIMER AANMELDING| +>AGENTS<|>agenten<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/pl_language.txt b/agc_2-X/branches/agc_2.2.0/translations/pl_language.txt index ec663410..c638a83b 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/pl_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/pl_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|wybraÅ‚ siÄ™ w grupie-wybory| CONSULTATIVE|KONSULTACYJNA| Close Message|Zamknij komunikat| TIMER NOTIFICATION|ZAWIADOMIENIE TIMER| +>AGENTS<|>agentów<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/pt_language.txt b/agc_2-X/branches/agc_2.2.0/translations/pt_language.txt index 131ce0bd..022aca01 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/pt_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/pt_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|foi selecionado o grupo de escolhas| CONSULTATIVE|CONSULTIVO| Close Message|Fechar Mensagem| TIMER NOTIFICATION|NOTIFICAÇÃO TIMER| +>AGENTS<|>AGENTES<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/ru_language.txt b/agc_2-X/branches/agc_2.2.0/translations/ru_language.txt index 74fd3a48..96d9fbbf 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/ru_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/ru_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|выбрал в вашей группе вы CONSULTATIVE|КОÐСУЛЬТÐТИВÐЫЙ| Close Message|Закрыть Ñообщение| TIMER NOTIFICATION|ТÐЙМЕР УВЕДОМЛЕÐИЯ| +>AGENTS<|>агенты<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/sk_language.txt b/agc_2-X/branches/agc_2.2.0/translations/sk_language.txt index a787b2b4..3ddf51a0 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/sk_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/sk_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|vybrala si v skupine-voľby| CONSULTATIVE|PORADNÃ| Close Message|ZavrieÅ¥ správu| TIMER NOTIFICATION|TIMER OZNAM| +>AGENTS<|>AGENTI<| diff --git a/agc_2-X/branches/agc_2.2.0/translations/tw_language.txt b/agc_2-X/branches/agc_2.2.0/translations/tw_language.txt index 6a24edf3..97b7f4e4 100644 --- a/agc_2-X/branches/agc_2.2.0/translations/tw_language.txt +++ b/agc_2-X/branches/agc_2.2.0/translations/tw_language.txt @@ -516,3 +516,4 @@ has selected your in-group choices|æ‚¨çš„é¸æ“‡çµ„çš„é¸æ“‡| CONSULTATIVE|å”商| Close Message|關閉消æ¯| TIMER NOTIFICATION|計時器通知| +>AGENTS<|>經營者<| diff --git a/agc_2-X/branches/agc_2.2.0/www/agc/vdc_db_query.php b/agc_2-X/branches/agc_2.2.0/www/agc/vdc_db_query.php index 19cc1c8c..0bec7174 100644 --- a/agc_2-X/branches/agc_2.2.0/www/agc/vdc_db_query.php +++ b/agc_2-X/branches/agc_2.2.0/www/agc/vdc_db_query.php @@ -233,10 +233,11 @@ # 100113-1949 - Fixed dispo_choice bug and added dispo_status to dispo URL call # 100202-2306 - Fixed logging issues related to INBOUND_MAN dial_method # 100207-1110 - Changed Pause Codes function to allow for multiple pause codes per pause period +# 100301-1342 - Changed Available agents output for AGENTDIRECT selection # -$version = '2.2.0-141'; -$build = '100207-1110'; +$version = '2.2.0-142'; +$build = '100301-1342'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=309; $one_mysql_log=0; @@ -6354,10 +6355,7 @@ if ($ACTION == 'AGENTSview') } echo "
\n"; echo "    -READY      -INCALL      -PAUSED  \n"; - if ($comments=='AgentXferViewSelect') - { - echo "

Close Window "; - } + echo "
\n"; } diff --git a/agc_2-X/branches/agc_2.2.0/www/agc/vicidial.php b/agc_2-X/branches/agc_2.2.0/www/agc/vicidial.php index 0c9ac3fb..cba957f8 100644 --- a/agc_2-X/branches/agc_2.2.0/www/agc/vicidial.php +++ b/agc_2-X/branches/agc_2.2.0/www/agc/vicidial.php @@ -275,10 +275,11 @@ # 100203-0640 - Fixed logging issues related to INBOUND_MAN dial method # 100207-1109 - Changed Pause Codes function to allow for multiple pause codes per pause period # 100228-1257 - Fixed no-selected default transfer group issue on inbound calls +# 100301-1329 - Changed AGENTDIRECT user selection launching to AGENTS link next to number-to-dial field # -$version = '2.2.0-253'; -$build = '100228-1257'; +$version = '2.2.0-254'; +$build = '100301-1329'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -535,7 +536,7 @@ if ($campaign_login_list > 0) if ($VD_campaign) { if ( (eregi("$VD_campaign",$rowx[0])) and (strlen($VD_campaign) == strlen($rowx[0])) ) - {$camp_form_code .= "\n";} + {$camp_form_code .= "\n";} else { if (!ereg('login_allowable_campaigns',$camp_form_code)) @@ -4741,12 +4742,12 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} while (loop_ct < XFgroupCOUNT) { if (VARxfergroups[loop_ct] == LIVE_default_xfer_group) - {XfeR_SelecT = 'SELECTED ';} + {XfeR_SelecT = 'selected ';} else {XfeR_SelecT = '';} live_XfeR_HTML = live_XfeR_HTML + "\n"; loop_ct++; } - document.getElementById("XfeRGrouPLisT").innerHTML = ""; + document.getElementById("XfeRGrouPLisT").innerHTML = ""; // INSERT VICIDIAL_LOG ENTRY FOR THIS CALL PROCESS DialLog("start"); @@ -6630,12 +6631,12 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} while (loop_ct < XFgroupCOUNT) { if (VARxfergroups[loop_ct] == LIVE_default_xfer_group) - {XfeR_SelecT = 'SELECTED ';} + {XfeR_SelecT = 'selected ';} else {XfeR_SelecT = '';} live_XfeR_HTML = live_XfeR_HTML + "\n"; loop_ct++; } - document.getElementById("XfeRGrouPLisT").innerHTML = ""; + document.getElementById("XfeRGrouPLisT").innerHTML = ""; if (lastcustserverip == server_ip) { @@ -9253,13 +9254,21 @@ function phone_number_format(formatphone) { { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); - document.getElementById(RAlocation).innerHTML = xmlhttp.responseText + "\n"; + var newRAlocationHTML = xmlhttp.responseText; + // alert(newRAlocationHTML); + + if (RAlocation == 'AgentXferViewSelect') + { + document.getElementById(RAlocation).innerHTML = newRAlocationHTML + "\n

Close Window "; + } + else + { + document.getElementById(RAlocation).innerHTML = newRAlocationHTML + "\n"; + } } } delete xmlhttp; } - } } } @@ -9425,6 +9434,7 @@ function phone_number_format(formatphone) { function AgentsXferSelect(AXuser,AXlocation) { xfer_select_agents_active=0; + document.getElementById('AgentXferViewSelect').innerHTML = ''; hideDiv('AgentXferViewSpan'); hideDiv(AXlocation); document.vicidial_form.xfernumber.value = AXuser; @@ -9432,7 +9442,24 @@ function phone_number_format(formatphone) { // ################################################################################ -// OnFocus function for number to dial +// OnChange function for transfer group select list + function XferAgentSelectLink() + { + var XfeRSelecT = document.getElementById("XfeRGrouP"); + var XScheck = XfeRSelecT.value + if (XScheck.match(/AGENTDIRECT/)) + { + showDiv('agentdirectlink'); + } + else + { + hideDiv('agentdirectlink'); + } + } + + +// ################################################################################ +// function for number to dial for AGENTDIRECT in-group transfers function XferAgentSelectLaunch() { var XfeRSelecT = document.getElementById("XfeRGrouP"); @@ -9460,12 +9487,12 @@ function phone_number_format(formatphone) { while (loop_ct < XFgroupCOUNT) { if (VARxfergroups[loop_ct] == 'AGENTDIRECT') - {XfeR_SelecT = 'SELECTED ';} + {XfeR_SelecT = 'selected ';} else {XfeR_SelecT = '';} live_XfeR_HTML = live_XfeR_HTML + "\n"; loop_ct++; } - document.getElementById("XfeRGrouPLisT").innerHTML = ""; + document.getElementById("XfeRGrouPLisT").innerHTML = ""; mainxfer_send_redirect('XfeRLOCAL',lastcustchannel,lastcustserverip,'','NO'); @@ -9778,6 +9805,7 @@ else hideDiv('AgentViewSpan'); hideDiv('AgentXferViewSpan'); hideDiv('TimerSpan'); + hideDiv('agentdirectlink'); if (view_calls_in_queue_launch != '1') {hideDiv('callsinqueuedisplay');} if (agentonly_callbacks != '1') @@ -10388,6 +10416,8 @@ else { if (VU_vicidial_transfers == '1') { + XferAgentSelectLink(); + if (showxfervar == 'ON') { var xfer_height = ; @@ -10543,6 +10573,7 @@ else .preview_text {font-size: 13px; font-family: sans-serif; background: #CCFFCC} .preview_text_red {font-size: 13px; font-family: sans-serif; background: #FFCCCC} .body_small {font-size: 11px; font-family: sans-serif;} + .body_small_bold {font-size: 11px; font-family: sans-serif; font-weight: bold;} .body_tiny {font-size: 10px; font-family: sans-serif;} .log_text {font-size: 11px; font-family: monospace;} .log_text_red {font-size: 11px; font-family: monospace; font-weight: bold; background: #FF3333} @@ -10702,7 +10733,7 @@ Your Status:
Calls Dialing: + LOCAL CLOSER     @@ -10729,7 +10760,8 @@ Your Status:
Calls Dialing:   -   +   + AGENTS diff --git a/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_IVRstats.php b/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_IVRstats.php index f8be12ac..f6e52870 100644 --- a/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_IVRstats.php +++ b/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_IVRstats.php @@ -12,6 +12,7 @@ # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list # 100214-1421 - Sort menu alphabetically +# 100301-1401 - Added popup date selector # require("dbconnect.php"); @@ -180,6 +181,21 @@ else $query_date_END = "$end_date $time_END"; } +$query_dateARRAY = explode(" ",$query_date_BEGIN); +$query_date_D = $query_dateARRAY[0]; +$query_date_T = $query_dateARRAY[1]; +$end_dateARRAY = explode(" ",$query_date_END); +$end_date_D = $end_dateARRAY[0]; +$end_date_T = $end_dateARRAY[1]; + + +?> + + + + +\n"; echo "IVR Stats Report\n"; @@ -198,12 +214,48 @@ if ($DB > 0) echo "
\n"; } -echo "
\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Date Range:
\n"; -echo "\n"; -echo " to \n"; + +echo "\n"; +echo "\n"; +echo ""; + +?> + +"; + +echo "
to
"; + +?> + +"; + + echo "
\n"; echo "Inbound Groups: \n"; echo "\n"; @@ -245,7 +297,23 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "   \n"; + +?> + + +   +
\n"; echo "
\n\n"; @@ -260,7 +328,8 @@ if ($groups_to_print < 1) else { - echo "IVR Stats Report: $group_string $NOW_TIME\n"; + echo "IVR Stats Report: $query_date_BEGIN to $query_date_END $NOW_TIME\n"; + echo " $group_string\n"; $TOTALcalls=0; $NOCALLERIDcalls=0; @@ -493,17 +562,6 @@ else echo "+--------+--------+--------+--------+------+------+\n"; - - - - - - - - - - - ############################## ######### TIME STATS @@ -660,14 +718,6 @@ else echo "+------+-------------------------------------------------------------------------------------------------------+-------+\n\n"; - - - - - - - - $ENDtime = date("U"); $RUNtime = ($ENDtime - $STARTtime); echo "\nRun Time: $RUNtime seconds\n"; diff --git a/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_agent_timeclock_detail.php b/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_agent_timeclock_detail.php index efcc2bad..e8d0b8b8 100644 --- a/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_agent_timeclock_detail.php +++ b/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_agent_timeclock_detail.php @@ -3,10 +3,11 @@ # # Pulls all timeclock records for an agent # -# Copyright (C) 2009 Matt Florell LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 90602-2244 - First build +# 100301-1401 - Added popup date selector # @@ -46,12 +47,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -66,7 +65,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -84,6 +83,13 @@ if (!isset($end_date)) {$end_date = "$NOW_DATE 23:59:59";} $query_dateURL = ereg_replace(' ','+',$query_date); $end_dateURL = ereg_replace(' ','+',$end_date); +$query_dateARRAY = explode(" ",$query_date); +$query_date_D = $query_dateARRAY[0]; +$query_date_T = $query_dateARRAY[1]; +$end_dateARRAY = explode(" ",$end_date); +$end_date_D = $end_dateARRAY[0]; +$end_date_T = $end_dateARRAY[1]; + $stmt="select campaign_id from vicidial_campaigns;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} @@ -177,6 +183,9 @@ if ($file_download < 1) --> + + + \n"; echo "User Time-Clock Detail\n"; @@ -470,7 +479,7 @@ else ### BEGIN sort through output to display properly ### - if (ereg("NAME|ID|TCLOCK|GROUP",$stage)) + if ( (ereg("NAME|ID|TCLOCK|GROUP",$stage)) and ($k > 0) ) { if (ereg("ID",$stage)) {sort($TOPsort, SORT_NUMERIC);} @@ -563,11 +572,44 @@ if ($file_download > 0) ############################################################################ ##### BEGIN HTML form section ############################################################################ -echo "
\n"; +echo "\n"; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo "\n"; +echo "\n"; +echo ""; + +?> + +"; + +echo "
to
"; + +?> + +"; # echo "
Campaigns:
"; # echo "

\n"; -echo "\n"; + + +?> + + + +
        "; echo "          \n"; diff --git a/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_timeonVDADall.php b/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_timeonVDADall.php index 6b40a9da..eb873f4f 100644 --- a/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_timeonVDADall.php +++ b/agc_2-X/branches/agc_2.2.0/www/vicidial/AST_timeonVDADall.php @@ -59,10 +59,11 @@ # 91102-2013 - Changed in-group color styles for incoming calls waiting # 91204-1548 - Added ability to change agent in-groups and blended # 100214-1127 - Added no-dialable-leads alert and in-groups stats option +# 100301-1229 - Added 3-WAY status for consultative transfer agents # -$version = '2.2.0-50'; -$build = '100214-1127'; +$version = '2.2.0-51'; +$build = '100301-1229'; header ("Content-type: text/html; charset=utf-8"); @@ -664,6 +665,7 @@ function hide_ingroup_info() .violet {color: black; background-color: #EE82EE} .thistle {color: black; background-color: #D8BFD8} .olive {color: white; background-color: #808000} + .lime {color: white; background-color: #006600} .yellow {color: black; background-color: yellow} .khaki {color: black; background-color: #F0E68C} .orange {color: black; background-color: orange} @@ -1729,6 +1731,20 @@ $talking_to_print = mysql_num_rows($rslt); $Alead_id[$i] = $row[14]; $Astate_change[$i] = $row[15]; + ### 3-WAY Check ### + if ($Alead_id[$i]!=0) + { + $threewaystmt="select UNIX_TIMESTAMP(last_call_time) from vicidial_live_agents where lead_id='$Alead_id[$i]' and status='INCALL' order by UNIX_TIMESTAMP(last_call_time) desc"; + $threewayrslt=mysql_query($threewaystmt, $link); + if (mysql_num_rows($threewayrslt)>1) + { + $Astatus[$i]="3-WAY"; + $srow=mysql_fetch_row($threewayrslt); + $Acall_mostrecent[$i]=$srow[0]; + } + } + ### END 3-WAY Check ### + $i++; } @@ -1946,8 +1962,10 @@ $calls_to_list = mysql_num_rows($rslt); while(mb_strlen($user, 'utf-8')>20) {$user = mb_substr("$user", 0, -1,'utf8');} } } - if (!eregi("INCALL|QUEUE|PARK",$Astatus[$i])) + if (!eregi("INCALL|QUEUE|PARK|3-WAY",$Astatus[$i])) {$call_time_S = ($STARTtime - $Astate_change[$i]);} + else if (eregi("3-WAY",$Astatus[$i])) + {$call_time_S = ($STARTtime - $Acall_mostrecent[$i]);} else {$call_time_S = ($STARTtime - $Acall_time[$i]);} @@ -1961,6 +1979,10 @@ $calls_to_list = mysql_num_rows($rslt); if ($call_time_S >= 300) {$G=''; $EG='';} # if ($call_time_S >= 600) {$G=''; $EG='';} } + if ($Lstatus=='3-WAY') + { + if ($call_time_S >= 10) {$G=''; $EG='';} + } if ($Lstatus=='DEAD') { if ($call_time_S >= 21600) @@ -2012,7 +2034,7 @@ $calls_to_list = mysql_num_rows($rslt); # if ( (strlen($Acall_server_ip[$i])> 4) and ($Acall_server_ip[$i] != "$Aserver_ip[$i]") ) # {$G=''; $EG='';} - if ( (eregi("INCALL",$status)) or (eregi("QUEUE",$status)) or (eregi("PARK",$status)) ) {$agent_incall++; $agent_total++;} + if ( (eregi("INCALL",$status)) or (eregi("QUEUE",$status)) or (eregi("3-WAY",$status)) or (eregi("PARK",$status))) {$agent_incall++; $agent_total++;} if ( (eregi("READY",$status)) or (eregi("CLOSER",$status)) ) {$agent_ready++; $agent_total++;} if ( (eregi("READY",$status)) or (eregi("CLOSER",$status)) ) { @@ -2085,6 +2107,7 @@ $calls_to_list = mysql_num_rows($rslt); $Aecho .= " - Agent Paused > 10 seconds\n"; $Aecho .= " - Agent Paused > 1 minute\n"; $Aecho .= " - Agent Paused > 5 minutes\n"; + $Aecho .= " - Agent in 3-WAY > 10 seconds\n"; $Aecho .= " - Agent on a dead call\n"; if ($agent_ready > 0) {$B=''; $BG='';} diff --git a/agc_2-X/trunk/extras/Changed_meetme_sounds.txt b/agc_2-X/trunk/extras/Changed_meetme_sounds.txt index 579fd731..c5a9565e 100644 --- a/agc_2-X/trunk/extras/Changed_meetme_sounds.txt +++ b/agc_2-X/trunk/extras/Changed_meetme_sounds.txt @@ -1,7 +1,7 @@ * Changed Meetme Sounds in Asterisk 2007-07-27 -For some reason, possibly effeciency, the enter and leave sounds that you hear in standard Asterisk meetme rooms are actually hex dumps of RAW ULAW 8bit audio that have been compiled into the code of Asterisk in a header file. This makes them somewhat difficult to change, especially since there are no instructions. +For some reason, possibly efficiency, the enter and leave sounds that you hear in standard Asterisk meetme rooms are actually hex dumps of RAW ULAW 8bit audio that have been compiled into the code of Asterisk in a header file. This makes them somewhat difficult to change, especially since there are no instructions. This should slightly reduce time that it takes for calls to get to agents, as well as reduce the time of the locks that occur when these sounds are played in Asterisk. The new enter and leave sounds I include with VICIDIAL are 0.12 and 0.13 seconds respectively as compared to the default sounds which are more than double that. @@ -26,7 +26,7 @@ Here are the steps I went to to change the meetme enter and leave sounds: 00000020 5d 66 60 51 6c 5f 3e 4d 59 47 72 e4 52 53 58 48 |]f`Ql_>MYGräRSXH| -4. Used favorite text edotor to format the data properly: +4. Used favorite text editor to format the data properly: - 60 character length lines comma-space separated in the same format as enter.h and leave.h were in. Don't forget the header and footer to this raw hex audio, they are important 0xd6, 0xdc, 0x55, 0x5f, 0x63, 0x67, 0xf0, 0xf0, 0x74, 0x75, diff --git a/agc_2-X/trunk/translations/br_language.txt b/agc_2-X/trunk/translations/br_language.txt index 2c70f304..d47847a9 100644 --- a/agc_2-X/trunk/translations/br_language.txt +++ b/agc_2-X/trunk/translations/br_language.txt @@ -483,3 +483,4 @@ has selected your in-group choices|foi selecionado o grupo de escolhas| CONSULTATIVE|CONSULTIVO| Close Message|Fechar Mensagem| TIMER NOTIFICATION|NOTIFICAÇÃO TIMER| +>AGENTS<|>AGENTES<| diff --git a/agc_2-X/trunk/translations/de_language.txt b/agc_2-X/trunk/translations/de_language.txt index af31d3b0..d04f44df 100644 --- a/agc_2-X/trunk/translations/de_language.txt +++ b/agc_2-X/trunk/translations/de_language.txt @@ -489,3 +489,4 @@ has selected your in-group choices|hat Ihren in-group Entscheidungen| CONSULTATIVE|BERATENDE| Close Message|Close Message| TIMER NOTIFICATION|Timer-Benachrichtigung| +>AGENTS<|>Agenten<| diff --git a/agc_2-X/trunk/translations/el_language.txt b/agc_2-X/trunk/translations/el_language.txt index 5684923b..90c15bf4 100644 --- a/agc_2-X/trunk/translations/el_language.txt +++ b/agc_2-X/trunk/translations/el_language.txt @@ -479,3 +479,4 @@ has selected your in-group choices|έχει επιλέξει σε σας τις CONSULTATIVE|ΣΥΜΒΟΥΛΕΥΤΙΚΗ| Close Message|Κλείσιμο Μήνυμα| TIMER NOTIFICATION|TIMER ΚΟΙÎΟΠΟΙΗΣΗ| +>AGENTS<|>Ï€ÏάκτοÏες<| diff --git a/agc_2-X/trunk/translations/es_language.txt b/agc_2-X/trunk/translations/es_language.txt index 20143065..d9fd36e7 100644 --- a/agc_2-X/trunk/translations/es_language.txt +++ b/agc_2-X/trunk/translations/es_language.txt @@ -486,3 +486,4 @@ CONSULTATIVE|CONSULTIVO| Close Message|Cerrar Mensaje| TIMER NOTIFICATION|NOTIFICACIÓN TIMER| login_language=en_us|login_language=es_es| +>AGENTS<|>AGENTES<| diff --git a/agc_2-X/trunk/translations/fr_language.txt b/agc_2-X/trunk/translations/fr_language.txt index d4067293..6d2c9ef9 100644 --- a/agc_2-X/trunk/translations/fr_language.txt +++ b/agc_2-X/trunk/translations/fr_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|a sélectionné votre choix en groupe| CONSULTATIVE|CONSULTATIF| Close Message|Fermer Message| TIMER NOTIFICATION|TIMER NOTIFICATION| +>AGENTS<|>AGENTS<| diff --git a/agc_2-X/trunk/translations/it_language.txt b/agc_2-X/trunk/translations/it_language.txt index 689e3b1e..00eba1b3 100644 --- a/agc_2-X/trunk/translations/it_language.txt +++ b/agc_2-X/trunk/translations/it_language.txt @@ -501,3 +501,4 @@ has selected your in-group choices|ha selezionato le tue scelte per i gruppi inb CONSULTATIVE|CONSULTIVO| Close Message|Chiudi Messaggio| TIMER NOTIFICATION|NOTIFICA TIMER| +>AGENTS<|>OPERATORI<| diff --git a/agc_2-X/trunk/translations/nl_language.txt b/agc_2-X/trunk/translations/nl_language.txt index 23d68098..4b2a3527 100644 --- a/agc_2-X/trunk/translations/nl_language.txt +++ b/agc_2-X/trunk/translations/nl_language.txt @@ -517,3 +517,4 @@ has selected your in-group choices|heeft gekozen uw in-groep keuzes| CONSULTATIVE|ADVIESGROEP| Close Message|Close Message| TIMER NOTIFICATION|TIMER AANMELDING| +>AGENTS<|>agenten<| diff --git a/agc_2-X/trunk/translations/pl_language.txt b/agc_2-X/trunk/translations/pl_language.txt index ec663410..c638a83b 100644 --- a/agc_2-X/trunk/translations/pl_language.txt +++ b/agc_2-X/trunk/translations/pl_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|wybraÅ‚ siÄ™ w grupie-wybory| CONSULTATIVE|KONSULTACYJNA| Close Message|Zamknij komunikat| TIMER NOTIFICATION|ZAWIADOMIENIE TIMER| +>AGENTS<|>agentów<| diff --git a/agc_2-X/trunk/translations/pt_language.txt b/agc_2-X/trunk/translations/pt_language.txt index 131ce0bd..022aca01 100644 --- a/agc_2-X/trunk/translations/pt_language.txt +++ b/agc_2-X/trunk/translations/pt_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|foi selecionado o grupo de escolhas| CONSULTATIVE|CONSULTIVO| Close Message|Fechar Mensagem| TIMER NOTIFICATION|NOTIFICAÇÃO TIMER| +>AGENTS<|>AGENTES<| diff --git a/agc_2-X/trunk/translations/ru_language.txt b/agc_2-X/trunk/translations/ru_language.txt index 74fd3a48..96d9fbbf 100644 --- a/agc_2-X/trunk/translations/ru_language.txt +++ b/agc_2-X/trunk/translations/ru_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|выбрал в вашей группе вы CONSULTATIVE|КОÐСУЛЬТÐТИВÐЫЙ| Close Message|Закрыть Ñообщение| TIMER NOTIFICATION|ТÐЙМЕР УВЕДОМЛЕÐИЯ| +>AGENTS<|>агенты<| diff --git a/agc_2-X/trunk/translations/sk_language.txt b/agc_2-X/trunk/translations/sk_language.txt index a787b2b4..3ddf51a0 100644 --- a/agc_2-X/trunk/translations/sk_language.txt +++ b/agc_2-X/trunk/translations/sk_language.txt @@ -485,3 +485,4 @@ has selected your in-group choices|vybrala si v skupine-voľby| CONSULTATIVE|PORADNÃ| Close Message|ZavrieÅ¥ správu| TIMER NOTIFICATION|TIMER OZNAM| +>AGENTS<|>AGENTI<| diff --git a/agc_2-X/trunk/translations/tw_language.txt b/agc_2-X/trunk/translations/tw_language.txt index 6a24edf3..97b7f4e4 100644 --- a/agc_2-X/trunk/translations/tw_language.txt +++ b/agc_2-X/trunk/translations/tw_language.txt @@ -516,3 +516,4 @@ has selected your in-group choices|æ‚¨çš„é¸æ“‡çµ„çš„é¸æ“‡| CONSULTATIVE|å”商| Close Message|關閉消æ¯| TIMER NOTIFICATION|計時器通知| +>AGENTS<|>經營者<| diff --git a/agc_2-X/trunk/www/agc/vdc_db_query.php b/agc_2-X/trunk/www/agc/vdc_db_query.php index 982bb878..6b222866 100644 --- a/agc_2-X/trunk/www/agc/vdc_db_query.php +++ b/agc_2-X/trunk/www/agc/vdc_db_query.php @@ -238,10 +238,11 @@ # 100219-1437 - Added agent_dispo_log file option # 100220-1041 - Added CALLLOGview and LEADINFOview functions # 100221-1105 - Added custom CID use compatibility +# 100301-1342 - Changed Available agents output for AGENTDIRECT selection # -$version = '2.4-145'; -$build = '100221-1105'; +$version = '2.4-146'; +$build = '100301-1342'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=314; $one_mysql_log=0; @@ -6524,10 +6525,6 @@ if ($ACTION == 'AGENTSview') if (ereg("NOT-LOGGED-IN-AGENTS",$agent_status_viewable_groups)) {echo "    -LOGGED-OUT  \n";} - if ($comments=='AgentXferViewSelect') - { - echo "

Close Window "; - } echo "
\n"; } diff --git a/agc_2-X/trunk/www/agc/vicidial.php b/agc_2-X/trunk/www/agc/vicidial.php index 9c14fbb0..5cae619e 100644 --- a/agc_2-X/trunk/www/agc/vicidial.php +++ b/agc_2-X/trunk/www/agc/vicidial.php @@ -278,10 +278,11 @@ # 100207-1103 - Changed Pause Codes function to allow for multiple pause codes per pause period # 100220-1040 - Added Call Log View and Customer Info View and fixed HotKeys position # 100221-1107 - Added Custom CID compatibility +# 100301-1330 - Changed AGENTDIRECT user selection launching to AGENTS link next to number-to-dial field # -$version = '2.4-256'; -$build = '100221-1107'; +$version = '2.4-257'; +$build = '100301-1330'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=64; $one_mysql_log=0; @@ -541,7 +542,7 @@ if ($campaign_login_list > 0) if ($VD_campaign) { if ( (eregi("$VD_campaign",$rowx[0])) and (strlen($VD_campaign) == strlen($rowx[0])) ) - {$camp_form_code .= "\n";} + {$camp_form_code .= "\n";} else { if (!ereg('login_allowable_campaigns',$camp_form_code)) @@ -4816,12 +4817,12 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} while (loop_ct < XFgroupCOUNT) { if (VARxfergroups[loop_ct] == LIVE_default_xfer_group) - {XfeR_SelecT = 'SELECTED ';} + {XfeR_SelecT = 'selected ';} else {XfeR_SelecT = '';} live_XfeR_HTML = live_XfeR_HTML + "\n"; loop_ct++; } - document.getElementById("XfeRGrouPLisT").innerHTML = ""; + document.getElementById("XfeRGrouPLisT").innerHTML = ""; // INSERT VICIDIAL_LOG ENTRY FOR THIS CALL PROCESS DialLog("start"); @@ -6448,7 +6449,7 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} CalL_XC_a_NuMber = VDIC_data_VDIG[8]; CalL_XC_b_Dtmf = VDIC_data_VDIG[9]; CalL_XC_b_NuMber = VDIC_data_VDIG[10]; - if (VDIC_data_VDIG[11].length > 0) + if ( (VDIC_data_VDIG[11].length > 1) && (VDIC_data_VDIG[11] != '---NONE---') ) {LIVE_default_xfer_group = VDIC_data_VDIG[11];} else {LIVE_default_xfer_group = default_xfer_group;} @@ -6705,12 +6706,12 @@ if ($enable_fast_refresh < 1) {echo "\tvar refresh_interval = 1000;\n";} while (loop_ct < XFgroupCOUNT) { if (VARxfergroups[loop_ct] == LIVE_default_xfer_group) - {XfeR_SelecT = 'SELECTED ';} + {XfeR_SelecT = 'selected ';} else {XfeR_SelecT = '';} live_XfeR_HTML = live_XfeR_HTML + "\n"; loop_ct++; } - document.getElementById("XfeRGrouPLisT").innerHTML = ""; + document.getElementById("XfeRGrouPLisT").innerHTML = ""; if (lastcustserverip == server_ip) { @@ -9328,13 +9329,21 @@ function phone_number_format(formatphone) { { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { - // alert(xmlhttp.responseText); - document.getElementById(RAlocation).innerHTML = xmlhttp.responseText + "\n"; + var newRAlocationHTML = xmlhttp.responseText; + // alert(newRAlocationHTML); + + if (RAlocation == 'AgentXferViewSelect') + { + document.getElementById(RAlocation).innerHTML = newRAlocationHTML + "\n

Close Window "; + } + else + { + document.getElementById(RAlocation).innerHTML = newRAlocationHTML + "\n"; + } } } delete xmlhttp; } - } } } @@ -9517,6 +9526,7 @@ function phone_number_format(formatphone) { function AgentsXferSelect(AXuser,AXlocation) { xfer_select_agents_active=0; + document.getElementById('AgentXferViewSelect').innerHTML = ''; hideDiv('AgentXferViewSpan'); hideDiv(AXlocation); document.vicidial_form.xfernumber.value = AXuser; @@ -9524,7 +9534,24 @@ function phone_number_format(formatphone) { // ################################################################################ -// OnFocus function for number to dial +// OnChange function for transfer group select list + function XferAgentSelectLink() + { + var XfeRSelecT = document.getElementById("XfeRGrouP"); + var XScheck = XfeRSelecT.value + if (XScheck.match(/AGENTDIRECT/)) + { + showDiv('agentdirectlink'); + } + else + { + hideDiv('agentdirectlink'); + } + } + + +// ################################################################################ +// function for number to dial for AGENTDIRECT in-group transfers function XferAgentSelectLaunch() { var XfeRSelecT = document.getElementById("XfeRGrouP"); @@ -9552,12 +9579,12 @@ function phone_number_format(formatphone) { while (loop_ct < XFgroupCOUNT) { if (VARxfergroups[loop_ct] == 'AGENTDIRECT') - {XfeR_SelecT = 'SELECTED ';} + {XfeR_SelecT = 'selected ';} else {XfeR_SelecT = '';} live_XfeR_HTML = live_XfeR_HTML + "\n"; loop_ct++; } - document.getElementById("XfeRGrouPLisT").innerHTML = ""; + document.getElementById("XfeRGrouPLisT").innerHTML = ""; mainxfer_send_redirect('XfeRLOCAL',lastcustchannel,lastcustserverip,'','NO'); @@ -9970,6 +9997,7 @@ else hideDiv('TimerSpan'); hideDiv('CalLLoGDisplaYBox'); hideDiv('LeaDInfOBox'); + hideDiv('agentdirectlink'); if (is_webphone!='Y') {hideDiv('webphoneSpan');} if (view_calls_in_queue_launch != '1') @@ -10595,6 +10623,8 @@ else { if (VU_vicidial_transfers == '1') { + XferAgentSelectLink(); + if (showxfervar == 'ON') { var xfer_height = ; @@ -10751,6 +10781,7 @@ else .preview_text {font-size: 13px; font-family: sans-serif; background: #CCFFCC} .preview_text_red {font-size: 13px; font-family: sans-serif; background: #FFCCCC} .body_small {font-size: 11px; font-family: sans-serif;} + .body_small_bold {font-size: 11px; font-family: sans-serif; font-weight: bold;} .body_tiny {font-size: 10px; font-family: sans-serif;} .log_text {font-size: 11px; font-family: monospace;} .log_text_red {font-size: 11px; font-family: monospace; font-weight: bold; background: #FF3333} @@ -11093,7 +11124,7 @@ if ($agent_display_dialable_leads > 0) @@ -11120,7 +11151,8 @@ if ($agent_display_dialable_leads > 0)
- + LOCAL CLOSER     Number to call   -   +   + AGENTS diff --git a/agc_2-X/trunk/www/vicidial/AST_IVRstats.php b/agc_2-X/trunk/www/vicidial/AST_IVRstats.php index f8be12ac..f6e52870 100644 --- a/agc_2-X/trunk/www/vicidial/AST_IVRstats.php +++ b/agc_2-X/trunk/www/vicidial/AST_IVRstats.php @@ -12,6 +12,7 @@ # 90508-0644 - Changed to PHP long tags # 91112-0719 - Added in-group names to select list # 100214-1421 - Sort menu alphabetically +# 100301-1401 - Added popup date selector # require("dbconnect.php"); @@ -180,6 +181,21 @@ else $query_date_END = "$end_date $time_END"; } +$query_dateARRAY = explode(" ",$query_date_BEGIN); +$query_date_D = $query_dateARRAY[0]; +$query_date_T = $query_dateARRAY[1]; +$end_dateARRAY = explode(" ",$query_date_END); +$end_date_D = $end_dateARRAY[0]; +$end_date_T = $end_dateARRAY[1]; + + +?> + + + + +\n"; echo "IVR Stats Report\n"; @@ -198,12 +214,48 @@ if ($DB > 0) echo "
\n"; } -echo "\n"; +echo "\n"; echo "
\n"; echo "\n"; echo "Date Range:
\n"; -echo "\n"; -echo " to \n"; + +echo "\n"; +echo "\n"; +echo ""; + +?> + +"; + +echo "
to
"; + +?> + +"; + + echo "
\n"; echo "Inbound Groups: \n"; echo "\n"; @@ -245,7 +297,23 @@ echo "\n"; echo "\n"; echo "\n"; echo "\n"; -echo "   \n"; + +?> + + +   +
\n"; echo "\n\n"; @@ -260,7 +328,8 @@ if ($groups_to_print < 1) else { - echo "IVR Stats Report: $group_string $NOW_TIME\n"; + echo "IVR Stats Report: $query_date_BEGIN to $query_date_END $NOW_TIME\n"; + echo " $group_string\n"; $TOTALcalls=0; $NOCALLERIDcalls=0; @@ -493,17 +562,6 @@ else echo "+--------+--------+--------+--------+------+------+\n"; - - - - - - - - - - - ############################## ######### TIME STATS @@ -660,14 +718,6 @@ else echo "+------+-------------------------------------------------------------------------------------------------------+-------+\n\n"; - - - - - - - - $ENDtime = date("U"); $RUNtime = ($ENDtime - $STARTtime); echo "\nRun Time: $RUNtime seconds\n"; diff --git a/agc_2-X/trunk/www/vicidial/AST_agent_timeclock_detail.php b/agc_2-X/trunk/www/vicidial/AST_agent_timeclock_detail.php index efcc2bad..e8d0b8b8 100644 --- a/agc_2-X/trunk/www/vicidial/AST_agent_timeclock_detail.php +++ b/agc_2-X/trunk/www/vicidial/AST_agent_timeclock_detail.php @@ -3,10 +3,11 @@ # # Pulls all timeclock records for an agent # -# Copyright (C) 2009 Matt Florell LICENSE: AGPLv2 +# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 # # CHANGES # 90602-2244 - First build +# 100301-1401 - Added popup date selector # @@ -46,12 +47,10 @@ $stmt = "SELECT use_non_latin FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); -$i=0; -while ($i < $qm_conf_ct) +if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; - $i++; } ##### END SETTINGS LOOKUP ##### ########################################### @@ -66,7 +65,7 @@ $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; - if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) +if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); @@ -84,6 +83,13 @@ if (!isset($end_date)) {$end_date = "$NOW_DATE 23:59:59";} $query_dateURL = ereg_replace(' ','+',$query_date); $end_dateURL = ereg_replace(' ','+',$end_date); +$query_dateARRAY = explode(" ",$query_date); +$query_date_D = $query_dateARRAY[0]; +$query_date_T = $query_dateARRAY[1]; +$end_dateARRAY = explode(" ",$end_date); +$end_date_D = $end_dateARRAY[0]; +$end_date_T = $end_dateARRAY[1]; + $stmt="select campaign_id from vicidial_campaigns;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} @@ -177,6 +183,9 @@ if ($file_download < 1) --> + + + \n"; echo "User Time-Clock Detail\n"; @@ -470,7 +479,7 @@ else ### BEGIN sort through output to display properly ### - if (ereg("NAME|ID|TCLOCK|GROUP",$stage)) + if ( (ereg("NAME|ID|TCLOCK|GROUP",$stage)) and ($k > 0) ) { if (ereg("ID",$stage)) {sort($TOPsort, SORT_NUMERIC);} @@ -563,11 +572,44 @@ if ($file_download > 0) ############################################################################ ##### BEGIN HTML form section ############################################################################ -echo "
\n"; +echo "\n"; echo "
Dates:
"; echo "\n"; -echo "\n"; -echo "
to
\n"; +echo "\n"; +echo "\n"; +echo ""; + +?> + +"; + +echo "
to
"; + +?> + +"; # echo "
Campaigns:
"; # echo "

\n"; -echo "\n"; + + +?> + + + +
        "; echo "          \n"; diff --git a/agc_2-X/trunk/www/vicidial/AST_timeonVDADall.php b/agc_2-X/trunk/www/vicidial/AST_timeonVDADall.php index 6b40a9da..eb873f4f 100644 --- a/agc_2-X/trunk/www/vicidial/AST_timeonVDADall.php +++ b/agc_2-X/trunk/www/vicidial/AST_timeonVDADall.php @@ -59,10 +59,11 @@ # 91102-2013 - Changed in-group color styles for incoming calls waiting # 91204-1548 - Added ability to change agent in-groups and blended # 100214-1127 - Added no-dialable-leads alert and in-groups stats option +# 100301-1229 - Added 3-WAY status for consultative transfer agents # -$version = '2.2.0-50'; -$build = '100214-1127'; +$version = '2.2.0-51'; +$build = '100301-1229'; header ("Content-type: text/html; charset=utf-8"); @@ -664,6 +665,7 @@ function hide_ingroup_info() .violet {color: black; background-color: #EE82EE} .thistle {color: black; background-color: #D8BFD8} .olive {color: white; background-color: #808000} + .lime {color: white; background-color: #006600} .yellow {color: black; background-color: yellow} .khaki {color: black; background-color: #F0E68C} .orange {color: black; background-color: orange} @@ -1729,6 +1731,20 @@ $talking_to_print = mysql_num_rows($rslt); $Alead_id[$i] = $row[14]; $Astate_change[$i] = $row[15]; + ### 3-WAY Check ### + if ($Alead_id[$i]!=0) + { + $threewaystmt="select UNIX_TIMESTAMP(last_call_time) from vicidial_live_agents where lead_id='$Alead_id[$i]' and status='INCALL' order by UNIX_TIMESTAMP(last_call_time) desc"; + $threewayrslt=mysql_query($threewaystmt, $link); + if (mysql_num_rows($threewayrslt)>1) + { + $Astatus[$i]="3-WAY"; + $srow=mysql_fetch_row($threewayrslt); + $Acall_mostrecent[$i]=$srow[0]; + } + } + ### END 3-WAY Check ### + $i++; } @@ -1946,8 +1962,10 @@ $calls_to_list = mysql_num_rows($rslt); while(mb_strlen($user, 'utf-8')>20) {$user = mb_substr("$user", 0, -1,'utf8');} } } - if (!eregi("INCALL|QUEUE|PARK",$Astatus[$i])) + if (!eregi("INCALL|QUEUE|PARK|3-WAY",$Astatus[$i])) {$call_time_S = ($STARTtime - $Astate_change[$i]);} + else if (eregi("3-WAY",$Astatus[$i])) + {$call_time_S = ($STARTtime - $Acall_mostrecent[$i]);} else {$call_time_S = ($STARTtime - $Acall_time[$i]);} @@ -1961,6 +1979,10 @@ $calls_to_list = mysql_num_rows($rslt); if ($call_time_S >= 300) {$G=''; $EG='';} # if ($call_time_S >= 600) {$G=''; $EG='';} } + if ($Lstatus=='3-WAY') + { + if ($call_time_S >= 10) {$G=''; $EG='';} + } if ($Lstatus=='DEAD') { if ($call_time_S >= 21600) @@ -2012,7 +2034,7 @@ $calls_to_list = mysql_num_rows($rslt); # if ( (strlen($Acall_server_ip[$i])> 4) and ($Acall_server_ip[$i] != "$Aserver_ip[$i]") ) # {$G=''; $EG='';} - if ( (eregi("INCALL",$status)) or (eregi("QUEUE",$status)) or (eregi("PARK",$status)) ) {$agent_incall++; $agent_total++;} + if ( (eregi("INCALL",$status)) or (eregi("QUEUE",$status)) or (eregi("3-WAY",$status)) or (eregi("PARK",$status))) {$agent_incall++; $agent_total++;} if ( (eregi("READY",$status)) or (eregi("CLOSER",$status)) ) {$agent_ready++; $agent_total++;} if ( (eregi("READY",$status)) or (eregi("CLOSER",$status)) ) { @@ -2085,6 +2107,7 @@ $calls_to_list = mysql_num_rows($rslt); $Aecho .= " - Agent Paused > 10 seconds\n"; $Aecho .= " - Agent Paused > 1 minute\n"; $Aecho .= " - Agent Paused > 5 minutes\n"; + $Aecho .= " - Agent in 3-WAY > 10 seconds\n"; $Aecho .= " - Agent on a dead call\n"; if ($agent_ready > 0) {$B=''; $BG='';}