fixed minor bug in outbound agi-transfer scripts

added concurrent_transfer option to outbound AGI transfer scripts and admin.php

git-svn-id: svn://192.168.202.10@459 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
mattf
2007-01-09 23:09:29 +00:00
parent 1e5f79c824
commit de38042ff3
11 changed files with 204 additions and 21 deletions
+26 -2
View File
@@ -137,6 +137,7 @@ $tsSQLdate = "$year$mon$mday$hour$min$sec";
$SQLdate = "$year-$mon-$mday $hour:$min:$sec";
$SQLdateBEGIN = $SQLdate;
$secX = time();
$BDtarget = ($secX - 5);
($Bsec,$Bmin,$Bhour,$Bmday,$Bmon,$Byear,$Bwday,$Byday,$Bisdst) = localtime($BDtarget);
$Byear = ($Byear + 1900);
@@ -288,7 +289,7 @@ if ($affected_rows > 0)
$sthA->finish();
### Grab campaign values from the database
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten,concurrent_transfers FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
@@ -299,6 +300,7 @@ if ($affected_rows > 0)
$DBdrop_call_seconds = "$aryA[0]";
$DBsafe_harbor_message = "$aryA[1]";
$DBsafe_harbor_exten = "$aryA[2]";
$DBconcurrent_transfers = "$aryA[3]";
if ($DBdrop_call_seconds) {$DROP_TIME = $DBdrop_call_seconds;}
if ($DBsafe_harbor_message) {$safe_harbor_message = $DBsafe_harbor_message;}
if ($DBsafe_harbor_exten) {$safe_harbor_exten = $DBsafe_harbor_exten;}
@@ -369,7 +371,29 @@ while ($sthArows > $rec_count)
$rec_count++;
}
$sthA->finish();
if ($rec_countWAIT < 1)
if ($DBconcurrent_transfers =~ /AUTO/)
{
$active_agents=1;
$stmtA = "SELECT count(*) FROM vicidial_live_agents where campaign_id = '$VDADcampaign' and last_update_time > '$BDtsSQLdate';";
if ($AGILOG) {$agi_string = "|$stmtA|"; &agi_output;}
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
$rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$active_agents = "$aryA[0]";
$rec_count++;
}
$DBconcurrent_transfers = ($active_agents / 10);
$DBconcurrent_transfers = sprintf("%.0f", $DBconcurrent_transfers);
$DBconcurrent_transfers++;
if ($AGILOG) {$agi_string = "|CONCURRENT TRANSFERS AUTO SETTING: $DBconcurrent_transfers ($active_agents)|"; &agi_output;}
}
$sthA->finish();
if ($rec_countWAIT < $DBconcurrent_transfers)
{
$stmtA = "UPDATE vicidial_live_agents set status='QUEUE',lead_id='$CIDlead_id',uniqueid='$unique_id', channel='$channel', call_server_ip='$VARserver_ip', callerid='$callerid' where status = 'READY' and campaign_id='$VDADcampaign' and last_update_time > '$BDtsSQLdate' $agent_call_order limit 1;";
$affected_rows = $dbhA->do($stmtA);
+51 -3
View File
@@ -137,6 +137,7 @@ $tsSQLdate = "$year$mon$mday$hour$min$sec";
$SQLdate = "$year-$mon-$mday $hour:$min:$sec";
$SQLdateBEGIN = $SQLdate;
$secX = time();
$BDtarget = ($secX - 5);
($Bsec,$Bmin,$Bhour,$Bmday,$Bmon,$Byear,$Bwday,$Byday,$Bisdst) = localtime($BDtarget);
$Byear = ($Byear + 1900);
@@ -288,7 +289,7 @@ if ($affected_rows > 0)
$sthA->finish();
### Grab campaign values from the database
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten,concurrent_transfers FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
@@ -299,6 +300,7 @@ if ($affected_rows > 0)
$DBdrop_call_seconds = "$aryA[0]";
$DBsafe_harbor_message = "$aryA[1]";
$DBsafe_harbor_exten = "$aryA[2]";
$DBconcurrent_transfers = "$aryA[3]";
if ($DBdrop_call_seconds) {$DROP_TIME = $DBdrop_call_seconds;}
if ($DBsafe_harbor_message) {$safe_harbor_message = $DBsafe_harbor_message;}
if ($DBsafe_harbor_exten) {$safe_harbor_exten = $DBsafe_harbor_exten;}
@@ -369,7 +371,30 @@ while ($sthArows > $rec_count)
$rec_count++;
}
$sthA->finish();
if ($rec_countWAIT < 1)
if ($DBconcurrent_transfers =~ /AUTO/)
{
$active_agents=1;
$stmtA = "SELECT count(*) FROM vicidial_live_agents where server_ip='$VARserver_ip' and campaign_id = '$VDADcampaign' and last_update_time > '$BDtsSQLdate';";
if ($AGILOG) {$agi_string = "|$stmtA|"; &agi_output;}
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
$rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$active_agents = "$aryA[0]";
$rec_count++;
}
$concurrent_transfers = ($active_agents / 10);
$concurrent_transfers = sprintf("%.0f", $concurrent_transfers);
$concurrent_transfers++;
if ($AGILOG) {$agi_string = "|CONCURRENT TRANSFERS AUTO SETTING: $concurrent_transfers ($active_agents)|"; &agi_output;}
}
else {$concurrent_transfers = $DBconcurrent_transfers;}
$sthA->finish();
if ($rec_countWAIT < $concurrent_transfers)
{
$stmtA = "UPDATE vicidial_live_agents set status='QUEUE',lead_id='$CIDlead_id',uniqueid='$unique_id', channel='$channel', call_server_ip='$VARserver_ip', callerid='$callerid' where status = 'READY' and server_ip='$VARserver_ip' and campaign_id='$VDADcampaign' and last_update_time > '$BDtsSQLdate' $agent_call_order limit 1;";
$affected_rows = $dbhA->do($stmtA);
@@ -448,7 +473,30 @@ while ($sthArows > $rec_count)
$rec_count++;
}
$sthA->finish();
if ($rec_countWAITrem < 1)
if ($DBconcurrent_transfers =~ /AUTO/)
{
$active_agents=1;
$stmtA = "SELECT count(*) FROM vicidial_live_agents where server_ip!='$VARserver_ip' and campaign_id = '$VDADcampaign' and last_update_time > '$BDtsSQLdate';";
if ($AGILOG) {$agi_string = "|$stmtA|"; &agi_output;}
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
$rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$active_agents = "$aryA[0]";
$rec_count++;
}
$concurrent_transfers = ($active_agents / 10);
$concurrent_transfers = sprintf("%.0f", $concurrent_transfers);
$concurrent_transfers++;
if ($AGILOG) {$agi_string = "|CONCURRENT TRANSFERS AUTO SETTING: $concurrent_transfers ($active_agents)|"; &agi_output;}
}
else {$concurrent_transfers = $DBconcurrent_transfers;}
$sthA->finish();
if ($rec_countWAITrem < $concurrent_transfers)
{
$stmtA = "UPDATE vicidial_live_agents set status='QUEUE',lead_id='$CIDlead_id',uniqueid='$unique_id', channel='$channel', call_server_ip='$VARserver_ip', callerid='$callerid' where status = 'READY' and server_ip!='$VARserver_ip' and campaign_id='$VDADcampaign' and last_update_time > '$BDtsSQLdate' $agent_call_order limit 1;";
$affected_rows = $dbhA->do($stmtA);
+29 -4
View File
@@ -1,6 +1,6 @@
#!/usr/bin/perl
#
# agi-VDADtransfer.agi version 0.6 *DBI-version*
# agi-VDADtransfer.agi version 0.7 *DBI-version*
#
# runs when a call comes in from the VICIDIAL_auto_dialer. This script will
# send the calls out to the reps that are logged in.
@@ -25,7 +25,8 @@
# 60816-1036 - added output options check from database
# - changed look for agent every 0.5 second for first 4 sec on hold
# 60905-1047 - changed look for agent every 0.25 second for first 4 sec on hold
#
# 70109-1715 - added option for concurrent_transfers
#
$script = 'agi-VDADtransfer.agi';
@@ -127,6 +128,7 @@ $tsSQLdate = "$year$mon$mday$hour$min$sec";
$SQLdate = "$year-$mon-$mday $hour:$min:$sec";
$SQLdateBEGIN = $SQLdate;
$secX = time();
$BDtarget = ($secX - 5);
($Bsec,$Bmin,$Bhour,$Bmday,$Bmon,$Byear,$Bwday,$Byday,$Bisdst) = localtime($BDtarget);
$Byear = ($Byear + 1900);
@@ -278,7 +280,7 @@ if ($affected_rows > 0)
$sthA->finish();
### Grab campaign values from the database
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten,concurrent_transfers FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
@@ -289,6 +291,7 @@ if ($affected_rows > 0)
$DBdrop_call_seconds = "$aryA[0]";
$DBsafe_harbor_message = "$aryA[1]";
$DBsafe_harbor_exten = "$aryA[2]";
$DBconcurrent_transfers = "$aryA[3]";
if ($DBdrop_call_seconds) {$DROP_TIME = $DBdrop_call_seconds;}
if ($DBsafe_harbor_message) {$safe_harbor_message = $DBsafe_harbor_message;}
if ($DBsafe_harbor_exten) {$safe_harbor_exten = $DBsafe_harbor_exten;}
@@ -359,7 +362,29 @@ while ($sthArows > $rec_count)
$rec_count++;
}
$sthA->finish();
if ($rec_countWAIT < 1)
if ($DBconcurrent_transfers =~ /AUTO/)
{
$active_agents=1;
$stmtA = "SELECT count(*) FROM vicidial_live_agents where server_ip='$VARserver_ip' and campaign_id = '$VDADcampaign' and last_update_time > '$BDtsSQLdate';";
if ($AGILOG) {$agi_string = "|$stmtA|"; &agi_output;}
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
$rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$active_agents = "$aryA[0]";
$rec_count++;
}
$DBconcurrent_transfers = ($active_agents / 10);
$DBconcurrent_transfers = sprintf("%.0f", $DBconcurrent_transfers);
$DBconcurrent_transfers++;
if ($AGILOG) {$agi_string = "|CONCURRENT TRANSFERS AUTO SETTING: $DBconcurrent_transfers ($active_agents)|"; &agi_output;}
}
$sthA->finish();
if ($rec_countWAIT < $DBconcurrent_transfers)
{
$stmtA = "UPDATE vicidial_live_agents set status='QUEUE',lead_id='$CIDlead_id',uniqueid='$unique_id', channel='$channel', callerid='$callerid' where status = 'READY' and server_ip='$VARserver_ip' and campaign_id='$VDADcampaign' and last_update_time > '$BDtsSQLdate' $agent_call_order limit 1;";
$affected_rows = $dbhA->do($stmtA);
@@ -128,6 +128,7 @@ $tsSQLdate = "$year$mon$mday$hour$min$sec";
$SQLdate = "$year-$mon-$mday $hour:$min:$sec";
$SQLdateBEGIN = $SQLdate;
$secX = time();
$BDtarget = ($secX - 5);
($Bsec,$Bmin,$Bhour,$Bmday,$Bmon,$Byear,$Bwday,$Byday,$Bisdst) = localtime($BDtarget);
$Byear = ($Byear + 1900);
@@ -284,7 +285,7 @@ if ($affected_rows > 0)
$sthA->finish();
### Grab campaign values from the database
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten,concurrent_transfers FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
@@ -295,6 +296,7 @@ if ($affected_rows > 0)
$DBdrop_call_seconds = "$aryA[0]";
$DBsafe_harbor_message = "$aryA[1]";
$DBsafe_harbor_exten = "$aryA[2]";
$DBconcurrent_transfers = "$aryA[3]";
if ($DBdrop_call_seconds) {$DROP_TIME = $DBdrop_call_seconds;}
if ($DBsafe_harbor_message) {$safe_harbor_message = $DBsafe_harbor_message;}
if ($DBsafe_harbor_exten) {$safe_harbor_exten = $DBsafe_harbor_exten;}
@@ -365,7 +367,29 @@ while ($sthArows > $rec_count)
$rec_count++;
}
$sthA->finish();
if ($rec_countWAIT < 1)
if ($DBconcurrent_transfers =~ /AUTO/)
{
$active_agents=1;
$stmtA = "SELECT count(*) FROM vicidial_live_agents where server_ip='$VARserver_ip' and campaign_id = '$VDADcampaign' and last_update_time > '$BDtsSQLdate';";
if ($AGILOG) {$agi_string = "|$stmtA|"; &agi_output;}
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
$rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$active_agents = "$aryA[0]";
$rec_count++;
}
$DBconcurrent_transfers = ($active_agents / 10);
$DBconcurrent_transfers = sprintf("%.0f", $DBconcurrent_transfers);
$DBconcurrent_transfers++;
if ($AGILOG) {$agi_string = "|CONCURRENT TRANSFERS AUTO SETTING: $DBconcurrent_transfers ($active_agents)|"; &agi_output;}
}
$sthA->finish();
if ($rec_countWAIT < $DBconcurrent_transfers)
{
$stmtA = "UPDATE vicidial_live_agents set status='QUEUE',lead_id='$CIDlead_id',uniqueid='$unique_id', channel='$channel', callerid='$callerid' where status = 'READY' and server_ip='$VARserver_ip' and campaign_id='$VDADcampaign' and last_update_time > '$BDtsSQLdate' $agent_call_order limit 1;";
$affected_rows = $dbhA->do($stmtA);
+26 -2
View File
@@ -127,6 +127,7 @@ $tsSQLdate = "$year$mon$mday$hour$min$sec";
$SQLdate = "$year-$mon-$mday $hour:$min:$sec";
$SQLdateBEGIN = $SQLdate;
$secX = time();
$BDtarget = ($secX - 5);
($Bsec,$Bmin,$Bhour,$Bmday,$Bmon,$Byear,$Bwday,$Byday,$Bisdst) = localtime($BDtarget);
$Byear = ($Byear + 1900);
@@ -315,7 +316,7 @@ if ($affected_rows > 0)
$sthA->finish();
### Grab campaign values from the database
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten,concurrent_transfers FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
@@ -326,6 +327,7 @@ if ($affected_rows > 0)
$DBdrop_call_seconds = "$aryA[0]";
$DBsafe_harbor_message = "$aryA[1]";
$DBsafe_harbor_exten = "$aryA[2]";
$DBconcurrent_transfers = "$aryA[3]";
if ($DBdrop_call_seconds) {$DROP_TIME = $DBdrop_call_seconds;}
if ($DBsafe_harbor_message) {$safe_harbor_message = $DBsafe_harbor_message;}
if ($DBsafe_harbor_exten) {$safe_harbor_exten = $DBsafe_harbor_exten;}
@@ -396,7 +398,29 @@ while ($sthArows > $rec_count)
$rec_count++;
}
$sthA->finish();
if ($rec_countWAIT < 1)
if ($DBconcurrent_transfers =~ /AUTO/)
{
$active_agents=1;
$stmtA = "SELECT count(*) FROM vicidial_live_agents where server_ip='$VARserver_ip' and campaign_id = '$VDADcampaign' and last_update_time > '$BDtsSQLdate';";
if ($AGILOG) {$agi_string = "|$stmtA|"; &agi_output;}
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
$rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$active_agents = "$aryA[0]";
$rec_count++;
}
$DBconcurrent_transfers = ($active_agents / 10);
$DBconcurrent_transfers = sprintf("%.0f", $DBconcurrent_transfers);
$DBconcurrent_transfers++;
if ($AGILOG) {$agi_string = "|CONCURRENT TRANSFERS AUTO SETTING: $DBconcurrent_transfers ($active_agents)|"; &agi_output;}
}
$sthA->finish();
if ($rec_countWAIT < $DBconcurrent_transfers)
{
$stmtA = "UPDATE vicidial_live_agents set status='QUEUE',lead_id='$CIDlead_id',uniqueid='$unique_id', channel='$channel', callerid='$callerid' where status = 'READY' and server_ip='$VARserver_ip' and campaign_id='$VDADcampaign' and last_update_time > '$BDtsSQLdate' $agent_call_order limit 1;";
$affected_rows = $dbhA->do($stmtA);
+26 -2
View File
@@ -129,6 +129,7 @@ $tsSQLdate = "$year$mon$mday$hour$min$sec";
$SQLdate = "$year-$mon-$mday $hour:$min:$sec";
$SQLdateBEGIN = $SQLdate;
$secX = time();
$BDtarget = ($secX - 5);
($Bsec,$Bmin,$Bhour,$Bmday,$Bmon,$Byear,$Bwday,$Byday,$Bisdst) = localtime($BDtarget);
$Byear = ($Byear + 1900);
@@ -280,7 +281,7 @@ if ($affected_rows > 0)
$sthA->finish();
### Grab campaign values from the database
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$stmtA = "SELECT drop_call_seconds,safe_harbor_message,safe_harbor_exten,concurrent_transfers FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
@@ -291,6 +292,7 @@ if ($affected_rows > 0)
$DBdrop_call_seconds = "$aryA[0]";
$DBsafe_harbor_message = "$aryA[1]";
$DBsafe_harbor_exten = "$aryA[2]";
$DBconcurrent_transfers = "$aryA[3]";
if ($DBdrop_call_seconds) {$DROP_TIME = $DBdrop_call_seconds;}
if ($DBsafe_harbor_message) {$safe_harbor_message = $DBsafe_harbor_message;}
if ($DBsafe_harbor_exten) {$safe_harbor_exten = $DBsafe_harbor_exten;}
@@ -361,7 +363,29 @@ while ($sthArows > $rec_count)
$rec_count++;
}
$sthA->finish();
if ($rec_countWAIT < 1)
if ($DBconcurrent_transfers =~ /AUTO/)
{
$active_agents=1;
$stmtA = "SELECT count(*) FROM vicidial_live_agents where server_ip='$VARserver_ip' and campaign_id = '$VDADcampaign' and last_update_time > '$BDtsSQLdate';";
if ($AGILOG) {$agi_string = "|$stmtA|"; &agi_output;}
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
$rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$active_agents = "$aryA[0]";
$rec_count++;
}
$DBconcurrent_transfers = ($active_agents / 10);
$DBconcurrent_transfers = sprintf("%.0f", $DBconcurrent_transfers);
$DBconcurrent_transfers++;
if ($AGILOG) {$agi_string = "|CONCURRENT TRANSFERS AUTO SETTING: $DBconcurrent_transfers ($active_agents)|"; &agi_output;}
}
$sthA->finish();
if ($rec_countWAIT < $DBconcurrent_transfers)
{
$stmtA = "UPDATE vicidial_live_agents set status='QUEUE',lead_id='$CIDlead_id',uniqueid='$unique_id', channel='$channel', callerid='$callerid' where status = 'READY' and server_ip='$VARserver_ip' and campaign_id='$VDADcampaign' and last_update_time > '$BDtsSQLdate' $agent_call_order limit 1;";
$affected_rows = $dbhA->do($stmtA);
@@ -493,7 +493,8 @@ adaptive_dropped_percentage SMALLINT(3) default '3',
adaptive_maximum_level VARCHAR(6) default '3.0',
adaptive_latest_server_time VARCHAR(4) default '2100',
adaptive_intensity VARCHAR(6) default '0',
adaptive_dl_diff_target SMALLINT(3) default '0'
adaptive_dl_diff_target SMALLINT(3) default '0',
concurrent_transfers ENUM('AUTO','1','2','3','4','5','6','7','8','9','10') default 'AUTO'
);
CREATE TABLE vicidial_lists (
+1
View File
@@ -0,0 +1 @@
ALTER TABLE vicidial_campaigns ADD concurrent_transfers ENUM('AUTO','1','2','3','4','5','6','7','8','9','10') default 'AUTO';
@@ -3,6 +3,8 @@
ADAPT OVERRIDE||
The ADAPT OVERRIDE checkbox allows you to force a new dial level even though the dial method is in an ADAPT mode. This is useful if there is a dramatic shift in the quality of leads and you want to drastically change the dial_level manually.||
There are two special HotKey options that you can use in conjunction with Alternate Phone number dialing, ALTPH2 - Alternate Phone Hot Dial and ADDR3-----Address3 Hot Dial allow an agent to use a hotkey to hangup their call, stay on the same lead, and dial another contact number from that lead.||
Concurrent Transfers||
Concurrent Transfers -<\/B> This setting is used to define the number of calls that can be sent to agents at the same time. It is recommended that this setting is left at AUTO. This field is not used by the MANUAL dial method||
############################################################ CLIENT
+15 -5
View File
@@ -462,7 +462,8 @@ if (isset($_GET["campaigns"])) {$campaigns=$_GET["campaigns"];}
elseif (isset($_POST["campaigns"])) {$campaigns=$_POST["campaigns"];}
if (isset($_GET["dial_level_override"])) {$dial_level_override=$_GET["dial_level_override"];}
elseif (isset($_POST["dial_level_override"])) {$dial_level_override=$_POST["dial_level_override"];}
if (isset($_GET["concurrent_transfers"])) {$concurrent_transfers=$_GET["concurrent_transfers"];}
elseif (isset($_POST["concurrent_transfers"])) {$concurrent_transfers=$_POST["concurrent_transfers"];}
@@ -602,6 +603,7 @@ $ADD = ereg_replace("[^0-9a-zA-Z]","",$ADD);
$dial_prefix = ereg_replace("[^0-9a-zA-Z]","",$dial_prefix);
$state_call_time_state = ereg_replace("[^0-9a-zA-Z]","",$state_call_time_state);
$scheduled_callbacks = ereg_replace("[^0-9a-zA-Z]","",$scheduled_callbacks);
$concurrent_transfers = ereg_replace("[^0-9a-zA-Z]","",$concurrent_transfers);
### DIGITS and Dots
$server_ip = ereg_replace("[^\.0-9]","",$server_ip);
@@ -803,12 +805,12 @@ $lead_filter_sql = ereg_replace(";","",$lead_filter_sql);
# 70108-1405 - Added ADAPT OVERRIDE to allow for forced dial_level changes in ADAPT dial methods
# - Screen width definable at top of script, merged server_stats into this script
# 70109-1638 - Added ALTPH2 and ADDR3 hotkey options for alt number dialing with HotKeys
#
# 70109-1716 - Added concurrent_transfers option to vicidial_campaigns
# 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
$version = '2.0.75';
$build = '70109-1638';
$version = '2.0.76';
$build = '70109-1716';
$STARTtime = date("U");
@@ -1546,6 +1548,11 @@ echo "<TABLE WIDTH=98% BGCOLOR=#E6E6E6 cellpadding=2 cellspacing=0><TR><TD ALIGN
<BR>
<B>Dial Level Difference Target -</B> This field is used to define whether you want to target having a specific number of agents waiting for calls or calls waiting for agents. For example if you would always like to have on average one agent free to take calls immediately you would set this to -1, if you would like to target always having one call on hold waiting for an agent you would set this to 1. Default is 0. This field is not used by the MANUAL or RATIO dial methods.
<BR>
<A NAME="vicidial_campaigns-concurrent_transfers">
<BR>
<B>Concurrent Transfers -</B> This setting is used to define the number of calls that can be sent to agents at the same time. It is recommended that this setting is left at AUTO. This field is not used by the MANUAL dial method.
<BR>
<A NAME="vicidial_campaigns-next_agent_call">
<BR>
@@ -4172,7 +4179,7 @@ if ($ADD==41)
}
}
}
$stmtA="UPDATE vicidial_campaigns set campaign_name='$campaign_name',active='$active',dial_status_a='$dial_status_a',dial_status_b='$dial_status_b',dial_status_c='$dial_status_c',dial_status_d='$dial_status_d',dial_status_e='$dial_status_e',lead_order='$lead_order',allow_closers='$allow_closers',hopper_level='$hopper_level', $adlSQL next_agent_call='$next_agent_call', local_call_time='$local_call_time', voicemail_ext='$voicemail_ext', dial_timeout='$dial_timeout', dial_prefix='$dial_prefix', campaign_cid='$campaign_cid', campaign_vdad_exten='$campaign_vdad_exten', web_form_address='" . mysql_real_escape_string($web_form_address) . "', park_ext='$park_ext', park_file_name='$park_file_name', campaign_rec_exten='$campaign_rec_exten', campaign_recording='$campaign_recording', campaign_rec_filename='$campaign_rec_filename', campaign_script='$script_id', get_call_launch='$get_call_launch', am_message_exten='$am_message_exten', amd_send_to_vmx='$amd_send_to_vmx', xferconf_a_dtmf='$xferconf_a_dtmf',xferconf_a_number='$xferconf_a_number', xferconf_b_dtmf='$xferconf_b_dtmf',xferconf_b_number='$xferconf_b_number',lead_filter_id='$lead_filter_id',alt_number_dialing='$alt_number_dialing',scheduled_callbacks='$scheduled_callbacks',safe_harbor_message='$safe_harbor_message',drop_call_seconds='$drop_call_seconds',safe_harbor_exten='$safe_harbor_exten',wrapup_seconds='$wrapup_seconds',wrapup_message='$wrapup_message',closer_campaigns='$groups_value',use_internal_dnc='$use_internal_dnc',allcalls_delay='$allcalls_delay',omit_phone_code='$omit_phone_code',dial_method='$dial_method',available_only_ratio_tally='$available_only_ratio_tally',adaptive_dropped_percentage='$adaptive_dropped_percentage',adaptive_maximum_level='$adaptive_maximum_level',adaptive_latest_server_time='$adaptive_latest_server_time',adaptive_intensity='$adaptive_intensity',adaptive_dl_diff_target='$adaptive_dl_diff_target' where campaign_id='$campaign_id';";
$stmtA="UPDATE vicidial_campaigns set campaign_name='$campaign_name',active='$active',dial_status_a='$dial_status_a',dial_status_b='$dial_status_b',dial_status_c='$dial_status_c',dial_status_d='$dial_status_d',dial_status_e='$dial_status_e',lead_order='$lead_order',allow_closers='$allow_closers',hopper_level='$hopper_level', $adlSQL next_agent_call='$next_agent_call', local_call_time='$local_call_time', voicemail_ext='$voicemail_ext', dial_timeout='$dial_timeout', dial_prefix='$dial_prefix', campaign_cid='$campaign_cid', campaign_vdad_exten='$campaign_vdad_exten', web_form_address='" . mysql_real_escape_string($web_form_address) . "', park_ext='$park_ext', park_file_name='$park_file_name', campaign_rec_exten='$campaign_rec_exten', campaign_recording='$campaign_recording', campaign_rec_filename='$campaign_rec_filename', campaign_script='$script_id', get_call_launch='$get_call_launch', am_message_exten='$am_message_exten', amd_send_to_vmx='$amd_send_to_vmx', xferconf_a_dtmf='$xferconf_a_dtmf',xferconf_a_number='$xferconf_a_number', xferconf_b_dtmf='$xferconf_b_dtmf',xferconf_b_number='$xferconf_b_number',lead_filter_id='$lead_filter_id',alt_number_dialing='$alt_number_dialing',scheduled_callbacks='$scheduled_callbacks',safe_harbor_message='$safe_harbor_message',drop_call_seconds='$drop_call_seconds',safe_harbor_exten='$safe_harbor_exten',wrapup_seconds='$wrapup_seconds',wrapup_message='$wrapup_message',closer_campaigns='$groups_value',use_internal_dnc='$use_internal_dnc',allcalls_delay='$allcalls_delay',omit_phone_code='$omit_phone_code',dial_method='$dial_method',available_only_ratio_tally='$available_only_ratio_tally',adaptive_dropped_percentage='$adaptive_dropped_percentage',adaptive_maximum_level='$adaptive_maximum_level',adaptive_latest_server_time='$adaptive_latest_server_time',adaptive_intensity='$adaptive_intensity',adaptive_dl_diff_target='$adaptive_dl_diff_target',concurrent_transfers='$concurrent_transfers' where campaign_id='$campaign_id';";
$rslt=mysql_query($stmtA, $link);
if ($reset_hopper == 'Y')
@@ -6107,6 +6114,7 @@ echo "<TABLE><TR><TD>\n";
$adaptive_latest_server_time = $row[50];
$adaptive_intensity = $row[51];
$adaptive_dl_diff_target = $row[52];
$concurrent_transfers = $row[53];
echo "<br>MODIFY A CAMPAIGNS RECORD: $row[0] - <a href=\"$PHP_SELF?ADD=34&campaign_id=$campaign_id\">Basic View</a>";
echo " | Detail View</a> | ";
@@ -6243,6 +6251,8 @@ while ($n>=-40)
}
echo "</select> $NWB#vicidial_campaigns-adaptive_dl_diff_target$NWE</td></tr>\n";
echo "<tr bgcolor=#BDFFBD><td align=right>Concurrent Transfers: </td><td align=left><select size=1 name=concurrent_transfers><option >AUTO</option><option>1</option><option>2</option><option>3</option><option>4</option><option>5</option><option>6</option><option>7</option><option>8</option><option>9</option><option>10<option SELECTED>$concurrent_transfers</option></select>$NWB#vicidial_campaigns-concurrent_transfers$NWE</td></tr>\n";
echo "<tr bgcolor=#B6D3FC><td align=right>Next Agent Call: </td><td align=left><select size=1 name=next_agent_call><option >random</option><option>oldest_call_start</option><option>oldest_call_finish</option><option>overall_user_level</option><option SELECTED>$next_agent_call</option></select>$NWB#vicidial_campaigns-next_agent_call$NWE</td></tr>\n";