Added list name and list description as script variables in the agent interface

Added CallerIDname extension append option to trunk

git-svn-id: svn://192.168.202.10@1407 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
mattf
2010-04-15 03:01:41 +00:00
parent 794a9388cd
commit b4252edc72
14 changed files with 320 additions and 149 deletions
@@ -229,8 +229,8 @@ while ($sthArows > $rec_count)
{
$AGILOG = '0';
@aryA = $sthA->fetchrow_array;
$DBagi_output = "$aryA[0]";
$local_gmt = "$aryA[0]";
$DBagi_output = $aryA[0];
$local_gmt = $aryA[1];
if ($DBagi_output =~ /STDERR/) {$AGILOG = '1';}
if ($DBagi_output =~ /FILE/) {$AGILOG = '2';}
if ($DBagi_output =~ /BOTH/) {$AGILOG = '3';}
@@ -262,6 +262,12 @@ if ($ignore_list_script < 1)
{$call_script = $agent_script_override;}
}
$stmt="SELECT list_name,list_description from vicidial_lists where list_id='$list_id';";
$rslt=mysql_query($stmt, $link);
$row=mysql_fetch_row($rslt);
$list_name = $row[0];
$list_description = $row[1];
$stmt="SELECT script_name,script_text from vicidial_scripts where script_id='$call_script';";
$rslt=mysql_query($stmt, $link);
$row=mysql_fetch_row($rslt);
@@ -275,6 +281,8 @@ if (eregi("iframe src",$script_text))
$vendor_id = eregi_replace(' ','+',$vendor_id);
$vendor_lead_code = eregi_replace(' ','+',$vendor_lead_code);
$list_id = eregi_replace(' ','+',$list_id);
$list_name = eregi_replace(' ','+',$list_name);
$list_description = eregi_replace(' ','+',$list_description);
$gmt_offset_now = eregi_replace(' ','+',$gmt_offset_now);
$phone_code = eregi_replace(' ','+',$phone_code);
$phone_number = eregi_replace(' ','+',$phone_number);
@@ -348,6 +356,8 @@ $script_text = eregi_replace('--A--lead_id--B--',"$lead_id",$script_text);
$script_text = eregi_replace('--A--vendor_id--B--',"$vendor_id",$script_text);
$script_text = eregi_replace('--A--vendor_lead_code--B--',"$vendor_lead_code",$script_text);
$script_text = eregi_replace('--A--list_id--B--',"$list_id",$script_text);
$script_text = eregi_replace('--A--list_name--B--',"$list_name",$script_text);
$script_text = eregi_replace('--A--list_description--B--',"$list_description",$script_text);
$script_text = eregi_replace('--A--gmt_offset_now--B--',"$gmt_offset_now",$script_text);
$script_text = eregi_replace('--A--phone_code--B--',"$phone_code",$script_text);
$script_text = eregi_replace('--A--phone_number--B--',"$phone_number",$script_text);
@@ -6149,6 +6149,8 @@ if ($ADD==7111111)
##### TEST VARIABLES #####
$vendor_lead_code = 'VENDOR:LEAD;CODE';
$list_id = 'LISTID';
$list_name = 'LISTNAME';
$list_description = 'LISTDESCRIPTION';
$gmt_offset_now = 'GMTOFFSET';
$phone_code = '1';
$phone_number = '7275551212';
@@ -6223,6 +6225,8 @@ if ($ADD==7111111)
{
$vendor_lead_code = eregi_replace(' ','+',$vendor_lead_code);
$list_id = eregi_replace(' ','+',$list_id);
$list_name = eregi_replace(' ','+',$list_name);
$list_description = eregi_replace(' ','+',$list_description);
$gmt_offset_now = eregi_replace(' ','+',$gmt_offset_now);
$phone_code = eregi_replace(' ','+',$phone_code);
$phone_number = eregi_replace(' ','+',$phone_number);
@@ -6285,6 +6289,8 @@ if ($ADD==7111111)
$script_text = eregi_replace('--A--vendor_lead_code--B--',"$vendor_lead_code",$script_text);
$script_text = eregi_replace('--A--list_id--B--',"$list_id",$script_text);
$script_text = eregi_replace('--A--list_name--B--',"$list_name",$script_text);
$script_text = eregi_replace('--A--list_description--B--',"$list_description",$script_text);
$script_text = eregi_replace('--A--gmt_offset_now--B--',"$gmt_offset_now",$script_text);
$script_text = eregi_replace('--A--phone_code--B--',"$phone_code",$script_text);
$script_text = eregi_replace('--A--phone_number--B--',"$phone_number",$script_text);
@@ -7354,6 +7360,8 @@ if ($ADD==1111111)
echo "<option>vendor_lead_code</option>";
echo "<option>source_id</option>";
echo "<option>list_id</option>";
echo "<option>list_name</option>";
echo "<option>list_description</option>";
echo "<option>gmt_offset_now</option>";
echo "<option>called_since_last_reset</option>";
echo "<option>phone_code</option>";
+1
View File
@@ -211,6 +211,7 @@ $VDADphone='';
$VDADphone_code='';
$callerid =~ s/\"//gi;
$callerid =~ s/ .*//gi;
$CIDlead_id = $callerid;
$CIDlead_id = substr($CIDlead_id, 11, 9);
$CIDlead_id = ($CIDlead_id + 0);
@@ -217,6 +217,7 @@ $VDADphone='';
$VDADphone_code='';
$callerid =~ s/ .*//gi;
$callerid =~ s/\"//gi;
$CIDlead_id = $callerid;
$CIDlead_id = substr($CIDlead_id, 11, 9);
+116 -67
View File
@@ -123,6 +123,7 @@
# 100212-0653 - Added AGENTVMAIL AGENTDIRECT option for no-queue, hold time and after hours features
# 100226-0927 - Fixed reinsert issue in vicidial_auto_calls table with auto_call_id
# 100319-0614 - Added extension group remote agent feature
# 100414-2046 - Added extension_appended_cidname option
#
$script = 'agi-VDAD_ALL_inbound.agi';
@@ -233,8 +234,8 @@ while ($sthArows > $rec_count)
{
$AGILOG = '0';
@aryA = $sthA->fetchrow_array;
$DBagi_output = "$aryA[0]";
$local_gmt = "$aryA[0]";
$DBagi_output = $aryA[0];
$local_gmt = $aryA[1];
if ($DBagi_output =~ /STDERR/) {$AGILOG = '1';}
if ($DBagi_output =~ /FILE/) {$AGILOG = '2';}
if ($DBagi_output =~ /BOTH/) {$AGILOG = '3';}
@@ -479,7 +480,7 @@ if ($channel =~ /Local/i)
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$Pseudo_duplicate_count = "$aryA[0]";
$Pseudo_duplicate_count = $aryA[0];
$rec_count++;
}
$sthA->finish();
@@ -507,14 +508,13 @@ $sthArows=$sthA->rows;
$dbhP=$dbhA; $mysql_count='02004'; $MEL_aff_rows=$sthArows; &mysql_error_logging;
while ($sthArows > $cbc)
{
@aryA = $sthA->fetchrow_array;
$DBvoicemail_dump_exten = "$aryA[0]";
$DBext_context = "$aryA[1]";
$DBanswer_transfer_agent = "$aryA[2]";
$DBSERVER_GMT = "$aryA[3]";
$DBasterisk_version = "$aryA[4]";
$DBmax_vicidial_trunks = "$aryA[5]";
@aryA = $sthA->fetchrow_array;
$DBvoicemail_dump_exten = $aryA[0];
$DBext_context = $aryA[1];
$DBanswer_transfer_agent = $aryA[2];
$DBSERVER_GMT = $aryA[3];
$DBasterisk_version = $aryA[4];
$DBmax_vicidial_trunks = $aryA[5];
if ($DBvoicemail_dump_exten) {$voicemail_dump_exten = $DBvoicemail_dump_exten;}
if ($DBext_context) {$ext_context = $DBext_context;}
if ($DBanswer_transfer_agent) {$answer_transfer_agent = $DBanswer_transfer_agent;}
@@ -529,7 +529,7 @@ $sthA->finish();
### Grab inbound groups values from the database
$cbc=0;
$stmtA = "SELECT call_time_id,after_hours_action,after_hours_message_filename,after_hours_exten,after_hours_voicemail,welcome_message_filename,moh_context,onhold_prompt_filename,prompt_interval,agent_alert_exten,agent_alert_delay,drop_call_seconds,drop_action,drop_exten,next_agent_call,voicemail_ext,queue_priority,drop_inbound_group,afterhours_xfer_group,play_place_in_line,play_estimate_hold_time,hold_time_option,hold_time_option_seconds,hold_time_option_exten,hold_time_option_voicemail,hold_time_option_xfer_group,hold_time_option_callback_filename,hold_time_option_callback_list_id,hold_recall_xfer_group,no_delay_call_route,play_welcome_message,no_agent_no_queue,no_agent_action,no_agent_action_value FROM vicidial_inbound_groups where group_id = '$channel_group';";
$stmtA = "SELECT call_time_id,after_hours_action,after_hours_message_filename,after_hours_exten,after_hours_voicemail,welcome_message_filename,moh_context,onhold_prompt_filename,prompt_interval,agent_alert_exten,agent_alert_delay,drop_call_seconds,drop_action,drop_exten,next_agent_call,voicemail_ext,queue_priority,drop_inbound_group,afterhours_xfer_group,play_place_in_line,play_estimate_hold_time,hold_time_option,hold_time_option_seconds,hold_time_option_exten,hold_time_option_voicemail,hold_time_option_xfer_group,hold_time_option_callback_filename,hold_time_option_callback_list_id,hold_recall_xfer_group,no_delay_call_route,play_welcome_message,no_agent_no_queue,no_agent_action,no_agent_action_value,extension_appended_cidname FROM vicidial_inbound_groups where group_id = '$channel_group';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
@@ -538,44 +538,45 @@ while ($sthArows > $cbc)
{
@aryA = $sthA->fetchrow_array;
$call_time_id = "$aryA[0]";
$after_hours_action = "$aryA[1]";
$after_hours_message_filename = "$aryA[2]";
$after_hours_exten = "$aryA[3]";
$after_hours_voicemail = "$aryA[4]";
$welcome_message_filename = "$aryA[5]";
$moh_context = "$aryA[6]";
$onhold_prompt_filename = "$aryA[7]";
$prompt_interval = "$aryA[8]";
$agent_alert_exten = "$aryA[9]";
$agent_alert_delay = "$aryA[10]";
$drop_call_seconds = "$aryA[11]";
$call_time_id = $aryA[0];
$after_hours_action = $aryA[1];
$after_hours_message_filename = $aryA[2];
$after_hours_exten = $aryA[3];
$after_hours_voicemail = $aryA[4];
$welcome_message_filename = $aryA[5];
$moh_context = $aryA[6];
$onhold_prompt_filename = $aryA[7];
$prompt_interval = $aryA[8];
$agent_alert_exten = $aryA[9];
$agent_alert_delay = $aryA[10];
$drop_call_seconds = $aryA[11];
$DROP_TIME = $drop_call_seconds;
$drop_action = "$aryA[12]";
$drop_exten = "$aryA[13]";
$CAMP_callorder = "$aryA[14]";
$VDADvoicemail_ext = "$aryA[15]";
$drop_action = $aryA[12];
$drop_exten = $aryA[13];
$CAMP_callorder = $aryA[14];
$VDADvoicemail_ext = $aryA[15];
# $VDADvoicemail_ext =~ s/\D//gi;
$queue_priority = "$aryA[16]";
$drop_inbound_group = "$aryA[17]";
$afterhours_xfer_group = "$aryA[18]";
$play_place_in_line = "$aryA[19]";
$play_estimate_hold_time = "$aryA[20]";
$hold_time_option = "$aryA[21]";
$hold_time_option_seconds = "$aryA[22]";
$hold_time_option_exten = "$aryA[23]";
$hold_time_option_voicemail = "$aryA[24]";
$hold_time_option_xfer_group = "$aryA[25]";
$hold_time_option_callback_filename = "$aryA[26]";
$hold_time_option_callback_list_id = "$aryA[27]";
$hold_recall_xfer_group = "$aryA[28]";
$no_delay_call_route = "$aryA[29]";
$queue_priority = $aryA[16];
$drop_inbound_group = $aryA[17];
$afterhours_xfer_group = $aryA[18];
$play_place_in_line = $aryA[19];
$play_estimate_hold_time = $aryA[20];
$hold_time_option = $aryA[21];
$hold_time_option_seconds = $aryA[22];
$hold_time_option_exten = $aryA[23];
$hold_time_option_voicemail = $aryA[24];
$hold_time_option_xfer_group = $aryA[25];
$hold_time_option_callback_filename = $aryA[26];
$hold_time_option_callback_list_id = $aryA[27];
$hold_recall_xfer_group = $aryA[28];
$no_delay_call_route = $aryA[29];
if ($hold_time_option =~ /DROP_ACTION/)
{$hold_time_option = $drop_action;}
$play_welcome_message = "$aryA[30]";
$no_agent_no_queue = "$aryA[31]";
$no_agent_action = "$aryA[32]";
$no_agent_action_value = "$aryA[33]";
$play_welcome_message = $aryA[30];
$no_agent_no_queue = $aryA[31];
$no_agent_action = $aryA[32];
$no_agent_action_value = $aryA[33];
$extension_appended_cidname = $aryA[34];
$cbc++;
}
@@ -596,10 +597,10 @@ $sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
$dbhP=$dbhA; $mysql_count='02006'; $MEL_aff_rows=$sthArows; &mysql_error_logging;
@aryA = $sthA->fetchrow_array;
$ct_default_start = "$aryA[0]";
$ct_default_stop = "$aryA[1]";
$ct_day_start = "$aryA[2]";
$ct_day_stop = "$aryA[3]";
$ct_default_start = $aryA[0];
$ct_default_stop = $aryA[1];
$ct_day_start = $aryA[2];
$ct_day_stop = $aryA[3];
$sthA->finish();
if ( ($ct_day_start > 0) || ($ct_day_stop > 0) )
@@ -640,7 +641,7 @@ if ($call_handle_method =~ /LOOKUP/)
while ($sthArows > $cbc)
{
@aryA = $sthA->fetchrow_array;
$insert_lead_id = "$aryA[0]";
$insert_lead_id = $aryA[0];
$cbc++;
}
$sthA->finish();
@@ -698,7 +699,7 @@ if ($call_handle_method =~ /LOOKUP/)
while ($sthArows > $cbc)
{
@aryA = $sthA->fetchrow_array;
$insert_lead_id = "$aryA[0]";
$insert_lead_id = $aryA[0];
$cbc++;
}
$sthA->finish();
@@ -720,7 +721,7 @@ if ($call_handle_method =~ /LOOKUP/)
while ($sthArows > $cbc)
{
@aryA = $sthA->fetchrow_array;
$insert_lead_id = "$aryA[0]";
$insert_lead_id = $aryA[0];
$cbc++;
}
$sthA->finish();
@@ -746,11 +747,11 @@ else
@aryA = $sthA->fetchrow_array;
$campaign = "$channel_group";
if (length($phone_number) < 10)
{$phone_number = "$aryA[0]";}
$phone_code = "$aryA[1]";
$insert_lead_id = "$CIDlead_id";
$fronter = "$aryA[2]";
$vendor_id = "$aryA[3]";
{$phone_number = $aryA[0];}
$phone_code = $aryA[1];
$insert_lead_id = $CIDlead_id;
$fronter = $aryA[2];
$vendor_id = $aryA[3];
$cbc++;
}
$sthA->finish();
@@ -771,7 +772,7 @@ else
while ($sthArows > $cbc)
{
@aryA = $sthA->fetchrow_array;
$insert_lead_id = "$aryA[0]";
$insert_lead_id = $aryA[0];
$cbc++;
}
$sthA->finish();
@@ -796,7 +797,7 @@ if ( ($hm < $ct_default_start) || ($hm > $ct_default_stop) )
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$insert_close_id = "$aryA[0]";
$insert_close_id = $aryA[0];
$cbc++;
}
$sthA->finish();
@@ -952,7 +953,7 @@ if ($no_agent_no_queue =~ /Y|NO_PAUSED/)
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$group_agents_count = "$aryA[0]";
$group_agents_count = $aryA[0];
}
$sthA->finish();
@@ -971,7 +972,7 @@ if ($no_agent_no_queue =~ /Y|NO_PAUSED/)
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$insert_close_id = "$aryA[0]";
$insert_close_id = $aryA[0];
$cbc++;
}
$sthA->finish();
@@ -1215,7 +1216,7 @@ if ($call_handle_method =~ /CLOSER|DIGITID$/)
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$insert_xfer_id = "$aryA[0]";
$insert_xfer_id = $aryA[0];
$cbc++;
}
$sthA->finish();
@@ -1260,7 +1261,7 @@ if ($enable_queuemetrics_logging > 0)
{
$DASH='-';
@aryA = $sthA->fetchrow_array;
$QMprepend = "$aryA[0]";
$QMprepend = $aryA[0];
$rec_count++;
$data2 = "$QMprepend$DASH$phone_number";
}
@@ -1367,7 +1368,7 @@ $sthArows=$sthA->rows;
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$insert_close_id = "$aryA[0]";
$insert_close_id = $aryA[0];
$cbc++;
}
$sthA->finish();
@@ -1795,7 +1796,7 @@ while ( ($drop_timer <= $DROP_TIME) && ($wait_in_queue > 0) )
if ($sthBrowsQLA > 0)
{
@aryB = $sthB->fetchrow_array;
$QLabandon = "$aryB[0]";
$QLabandon = $aryB[0];
}
$sthB->finish();
if ( ($QLabandon > 0) && (length($callerid) > 15) )
@@ -1963,6 +1964,30 @@ while ( ($drop_timer <= $DROP_TIME) && ($wait_in_queue > 0) )
if ($AGILOG) {$agi_string = "-- REMOTE EXTEN LOG : |$RALaffected_rows|CID changed: \"$callerid\" \<$phone_number\>\n|$stmtA|"; &agi_output;}
}
### END REMOTE AGENT SECTION
else
{
if ($extension_appended_cidname =~ /Y/)
{
$eac_cbc=0;
$stmtA = "SELECT extension FROM vicidial_live_agents where user='$VDADuser' order by last_call_time limit 1;";
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;
$dbhP=$dbhA; $mysql_count='02XXX'; $MEL_aff_rows=$sthArows; &mysql_error_logging;
while ($sthArows > $eac_cbc)
{
@aryA = $sthA->fetchrow_array;
$eac_extension = $aryA[0];
$eac_extension =~ s/SIP\/|IAX2\/|Zap\/|DAHDI\/|Local\///gi;
$eac_cbc++;
}
$sthA->finish();
$newcallerid = "\"$callerid $eac_extension <$phone_number>\"";
$AGI->set_callerid($newcallerid);
}
}
$stmtA = "UPDATE vicidial_closer_log set queue_seconds='$drop_timer' where lead_id = '$insert_lead_id' and call_date='$SQLdate';";
$affected_rows = $dbhA->do($stmtA);
@@ -2439,6 +2464,30 @@ while ( ($drop_timer <= $DROP_TIME) && ($wait_in_queue > 0) )
if ($AGILOG) {$agi_string = "-- REMOTE EXTEN LOG : |$RALaffected_rows|CID changed: \"$callerid\" \<$phone_number\>\n|$stmtA|"; &agi_output;}
}
### END REMOTE AGENT SECTION
else
{
if ($extension_appended_cidname =~ /Y/)
{
$eac_cbc=0;
$stmtA = "SELECT extension FROM vicidial_live_agents where user='$VDADuser' order by last_call_time limit 1;";
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;
$dbhP=$dbhA; $mysql_count='02XXX'; $MEL_aff_rows=$sthArows; &mysql_error_logging;
while ($sthArows > $eac_cbc)
{
@aryA = $sthA->fetchrow_array;
$eac_extension = $aryA[0];
$eac_extension =~ s/SIP\/|IAX2\/|Zap\/|DAHDI\/|Local\///gi;
$eac_cbc++;
}
$sthA->finish();
$newcallerid = "\"$callerid $eac_extension <$phone_number>\"";
$AGI->set_callerid($newcallerid);
}
}
$stmtA = "UPDATE vicidial_closer_log set queue_seconds='$drop_timer' where lead_id = '$insert_lead_id' and call_date='$SQLdate';";
$affected_rows = $dbhA->do($stmtA);
@@ -2517,7 +2566,7 @@ while ( ($drop_timer <= $DROP_TIME) && ($wait_in_queue > 0) )
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$hrxg_count = "$aryA[0]";
$hrxg_count = $aryA[0];
}
$sthA->finish();
+117 -65
View File
@@ -73,6 +73,7 @@
# 91230-1159 - Change to callee callerID when sending the call to VMAIL
# 100205-1024 - Fixed CPD send to message
# 100319-0610 - Added extension group remote agent feature
# 100414-2156 - Added extension_appended_cidname option
#
$script = 'agi-VDAD_ALL_outbound.agi';
@@ -193,13 +194,13 @@ $sthArows=$sthA->rows;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$DBvoicemail_dump_exten = "$aryA[0]";
$DBext_context = "$aryA[1]";
$DBanswer_transfer_agent = "$aryA[2]";
$DBSERVER_GMT = "$aryA[3]";
$DBasterisk_version = "$aryA[4]";
$DBmax_vicidial_trunks = "$aryA[5]";
$DBagi_output = "$aryA[6]";
$DBvoicemail_dump_exten = $aryA[0];
$DBext_context = $aryA[1];
$DBanswer_transfer_agent = $aryA[2];
$DBSERVER_GMT = $aryA[3];
$DBasterisk_version = $aryA[4];
$DBmax_vicidial_trunks = $aryA[5];
$DBagi_output = $aryA[6];
if ($DBvoicemail_dump_exten) {$voicemail_dump_exten = $DBvoicemail_dump_exten;}
if ($DBext_context) {$ext_context = $DBext_context;}
if ($DBanswer_transfer_agent) {$answer_transfer_agent = $DBanswer_transfer_agent;}
@@ -274,6 +275,7 @@ if ( (length($callerid)>20) && ($callerid =~ /\"\S\S\S\S\S\S\S\S\S\S\S\S\S\S\S\S
{
$callerid =~ s/^\"//gi;
$callerid =~ s/\".*$//gi;
$callerid =~ s/ .*//gi;
### set the callerid to the ACQS value(calleridname)
print "SET CALLERID $callerid\n";
checkresult($result);
@@ -283,6 +285,7 @@ if ( (
(length($calleridname)>5) && ( (!$callerid) or ($callerid =~ /unknown|private|00000000/i) or ($callerid =~ /5551212/) )
) or ( (length($calleridname)>17) && ($calleridname =~ /\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d/) ) )
{
$calleridname =~ s/ .*//gi;
$callerid = $calleridname;
### set the callerid to the ACQS value(calleridname)
print "SET CALLERID $callerid\n";
@@ -304,6 +307,7 @@ $VDADphone='';
$VDADphone_code='';
$callerid =~ s/\"//gi;
$callerid =~ s/ .*//gi;
$CIDlead_id = $callerid;
$CIDlead_id = substr($CIDlead_id, 11, 9);
$CIDlead_id = ($CIDlead_id + 0);
@@ -322,11 +326,11 @@ $sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
$dbhP=$dbhA; $mysql_count='01002'; $MEL_aff_rows=$sthArows; &mysql_error_logging;
$rec_count=0;
$rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$Pseudo_duplicate_count = "$aryA[0]";
$Pseudo_duplicate_count = $aryA[0];
$rec_count++;
}
$sthA->finish();
@@ -347,7 +351,7 @@ $rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$dialplan_duplicate_count = "$aryA[0]";
$dialplan_duplicate_count = $aryA[0];
$rec_count++;
}
$sthA->finish();
@@ -393,7 +397,7 @@ if ($affected_rows > 0)
$sthA->finish();
### Grab campaign values from the database
$stmtA = "SELECT drop_call_seconds,drop_action,safe_harbor_exten,concurrent_transfers,next_agent_call,voicemail_ext,drop_inbound_group,use_internal_dnc,use_campaign_dnc,cpd_amd_action,am_message_exten,three_way_call_cid,campaign_cid,survey_first_audio_file,survey_opt_in_audio_file,survey_ni_audio_file,survey_third_audio_file,survey_fourth_audio_file FROM vicidial_campaigns where campaign_id = '$VDADcampaign';";
$stmtA = "SELECT drop_call_seconds,drop_action,safe_harbor_exten,concurrent_transfers,next_agent_call,voicemail_ext,drop_inbound_group,use_internal_dnc,use_campaign_dnc,cpd_amd_action,am_message_exten,three_way_call_cid,campaign_cid,survey_first_audio_file,survey_opt_in_audio_file,survey_ni_audio_file,survey_third_audio_file,survey_fourth_audio_file,extension_appended_cidname 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;
@@ -401,27 +405,28 @@ if ($affected_rows > 0)
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$DBdrop_call_seconds = "$aryA[0]";
$DBdrop_action = "$aryA[1]";
$DBsafe_harbor_exten = "$aryA[2]";
$DBconcurrent_transfers = "$aryA[3]";
$DBdrop_call_seconds = $aryA[0];
$DBdrop_action = $aryA[1];
$DBsafe_harbor_exten = $aryA[2];
$DBconcurrent_transfers = $aryA[3];
if ($DBdrop_call_seconds) {$DROP_TIME = $DBdrop_call_seconds;}
if ($DBdrop_action) {$drop_action = $DBdrop_action;}
if ($DBsafe_harbor_exten) {$safe_harbor_exten = $DBsafe_harbor_exten;}
$CAMP_callorder = "$aryA[4]";
$VDADvoicemail_ext = "$aryA[5]";
$drop_inbound_group = "$aryA[6]";
$use_internal_dnc = "$aryA[7]";
$use_campaign_dnc = "$aryA[8]";
$cpd_amd_action = "$aryA[9]";
$am_message_exten = "$aryA[10]";
$three_way_call_cid = "$aryA[11]";
$campaign_cid = "$aryA[12]";
$survey_first_audio_file = "$aryA[13]";
$survey_opt_in_audio_file = "$aryA[14]";
$survey_ni_audio_file = "$aryA[15]";
$survey_third_audio_file = "$aryA[16]";
$survey_fourth_audio_file = "$aryA[17]";
$CAMP_callorder = $aryA[4];
$VDADvoicemail_ext = $aryA[5];
$drop_inbound_group = $aryA[6];
$use_internal_dnc = $aryA[7];
$use_campaign_dnc = $aryA[8];
$cpd_amd_action = $aryA[9];
$am_message_exten = $aryA[10];
$three_way_call_cid = $aryA[11];
$campaign_cid = $aryA[12];
$survey_first_audio_file = $aryA[13];
$survey_opt_in_audio_file = $aryA[14];
$survey_ni_audio_file = $aryA[15];
$survey_third_audio_file = $aryA[16];
$survey_fourth_audio_file = $aryA[17];
$extension_appended_cidname = $aryA[18];
}
$sthA->finish();
@@ -609,7 +614,7 @@ if ($affected_rows > 0)
if ($sthArowsLI > 0)
{
@aryA = $sthA->fetchrow_array;
$xCLlist_id = "$aryA[0]";
$xCLlist_id = $aryA[0];
}
$sthA->finish();
@@ -630,15 +635,15 @@ if ($affected_rows > 0)
$rec_count=0;
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$enable_queuemetrics_logging = "$aryA[0]";
$queuemetrics_server_ip = "$aryA[1]";
$queuemetrics_dbname = "$aryA[2]";
$queuemetrics_login= "$aryA[3]";
$queuemetrics_pass = "$aryA[4]";
$queuemetrics_log_id = "$aryA[5]";
$queuemetrics_eq_prepend = "$aryA[6]";
$rec_count++;
@aryA = $sthA->fetchrow_array;
$enable_queuemetrics_logging = $aryA[0];
$queuemetrics_server_ip = $aryA[1];
$queuemetrics_dbname = $aryA[2];
$queuemetrics_login= $aryA[3];
$queuemetrics_pass = $aryA[4];
$queuemetrics_log_id = $aryA[5];
$queuemetrics_eq_prepend = $aryA[6];
$rec_count++;
}
$sthA->finish();
##### END QUEUEMETRICS LOGGING LOOKUP #####
@@ -654,8 +659,8 @@ if ($affected_rows > 0)
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$phone_number = "$aryA[0]";
$data2 = "$phone_number";
$phone_number = $aryA[0];
$data2 = $phone_number;
$rec_count++;
}
$sthA->finish();
@@ -672,7 +677,7 @@ if ($affected_rows > 0)
{
$DASH='-';
@aryA = $sthA->fetchrow_array;
$QMprepend = "$aryA[0]";
$QMprepend = $aryA[0];
$rec_count++;
$data2 = "$QMprepend$DASH$phone_number";
}
@@ -710,7 +715,7 @@ if ($call_handle_method =~ /REMIND/)
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$cpd_amd = "$aryA[0]";
$cpd_amd = $aryA[0];
}
$sthA->finish();
@@ -751,7 +756,7 @@ if ($call_handle_method =~ /SURVEY/)
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$cpd_amd = "$aryA[0]";
$cpd_amd = $aryA[0];
}
$sthA->finish();
@@ -778,21 +783,20 @@ if ($call_handle_method =~ /SURVEY/)
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$survey_dtmf_digits = "$aryA[0]";
$survey_ni_digit = "$aryA[1]";
$survey_method = "$aryA[2]";
$survey_no_response_action = "$aryA[3]";
$survey_ni_status = "$aryA[4]";
$survey_response_digit_map = "$aryA[5]";
$survey_xfer_exten = "$aryA[6]";
$survey_camp_record_dir = "$aryA[7]";
$survey_third_digit = "$aryA[8]";
$survey_third_status = "$aryA[9]";
$survey_third_exten = "$aryA[10]";
$survey_fourth_digit = "$aryA[11]";
$survey_fourth_status = "$aryA[12]";
$survey_fourth_exten = "$aryA[13]";
$survey_dtmf_digits = $aryA[0];
$survey_ni_digit = $aryA[1];
$survey_method = $aryA[2];
$survey_no_response_action = $aryA[3];
$survey_ni_status = $aryA[4];
$survey_response_digit_map = $aryA[5];
$survey_xfer_exten = $aryA[6];
$survey_camp_record_dir = $aryA[7];
$survey_third_digit = $aryA[8];
$survey_third_status = $aryA[9];
$survey_third_exten = $aryA[10];
$survey_fourth_digit = $aryA[11];
$survey_fourth_status = $aryA[12];
$survey_fourth_exten = $aryA[13];
@digit_map = split(/\|/,$survey_response_digit_map);
@@ -1330,7 +1334,7 @@ while ($drop_timer <= $DROP_TIME)
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$cpd_amd = "$aryA[0]";
$cpd_amd = $aryA[0];
}
$sthA->finish();
@@ -1372,7 +1376,7 @@ while ($drop_timer <= $DROP_TIME)
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$rec_countWAIT = "$aryA[0]";
$rec_countWAIT = $aryA[0];
$rec_count++;
}
$sthA->finish();
@@ -1389,7 +1393,7 @@ while ($drop_timer <= $DROP_TIME)
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$active_agents = "$aryA[0]";
$active_agents = $aryA[0];
$rec_count++;
}
@@ -1546,6 +1550,30 @@ while ($drop_timer <= $DROP_TIME)
if ($AGILOG) {$agi_string = "-- REMOTE EXTEN LOG : |$RALaffected_rows|CID changed: \"$callerid\" \<$VDADphone\>\n|$stmtA|"; &agi_output;}
}
### END REMOTE AGENT SECTION
else
{
if ($extension_appended_cidname =~ /Y/)
{
$eac_cbc=0;
$stmtA = "SELECT extension FROM vicidial_live_agents where user='$VDADuser' order by last_call_time limit 1;";
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;
$dbhP=$dbhA; $mysql_count='01XXX'; $MEL_aff_rows=$sthArows; &mysql_error_logging;
while ($sthArows > $eac_cbc)
{
@aryA = $sthA->fetchrow_array;
$eac_extension = $aryA[0];
$eac_extension =~ s/SIP\/|IAX2\/|Zap\/|DAHDI\/|Local\///gi;
$eac_cbc++;
}
$sthA->finish();
$newcallerid = "\"$callerid $eac_extension <$phone_number>\"";
$AGI->set_callerid($newcallerid);
}
}
$stmtA = "UPDATE vicidial_auto_calls set status='XFER', stage='XFER-$drop_timer', extension='$VDADconf_exten' where callerid='$callerid';";
$affected_rows = $dbhA->do($stmtA);
@@ -1618,7 +1646,7 @@ while ($drop_timer <= $DROP_TIME)
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$rec_countWAITrem = "$aryA[0]";
$rec_countWAITrem = $aryA[0];
$rec_count++;
}
$sthA->finish();
@@ -1635,7 +1663,7 @@ while ($drop_timer <= $DROP_TIME)
while ($sthArows > $rec_count)
{
@aryA = $sthA->fetchrow_array;
$active_agents = "$aryA[0]";
$active_agents = $aryA[0];
$rec_count++;
}
@@ -1806,6 +1834,30 @@ while ($drop_timer <= $DROP_TIME)
if ($AGILOG) {$agi_string = "-- REMOTE EXTEN LOG : |$RALaffected_rows|CID changed: \"$callerid\" \<$VDADphone\>\n|$stmtA|"; &agi_output;}
}
### END REMOTE AGENT SECTION
else
{
if ($extension_appended_cidname =~ /Y/)
{
$eac_cbc=0;
$stmtA = "SELECT extension FROM vicidial_live_agents where user='$VDADuser' order by last_call_time limit 1;";
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;
$dbhP=$dbhA; $mysql_count='01XXX'; $MEL_aff_rows=$sthArows; &mysql_error_logging;
while ($sthArows > $eac_cbc)
{
@aryA = $sthA->fetchrow_array;
$eac_extension = $aryA[0];
$eac_extension =~ s/SIP\/|IAX2\/|Zap\/|DAHDI\/|Local\///gi;
$eac_cbc++;
}
$sthA->finish();
$newcallerid = "\"$callerid $eac_extension <$phone_number>\"";
$AGI->set_callerid($newcallerid);
}
}
$VDADremDIALstr .= "$VDADconf_exten";
@@ -2186,7 +2238,7 @@ sub cpd_end_call
if ($sthArows > 0)
{
@aryA = $sthA->fetchrow_array;
$cpd_result = "$aryA[0]";
$cpd_result = $aryA[0];
}
$sthA->finish();
$CPDfound=0;
+2
View File
@@ -383,6 +383,7 @@ sub process_request
### call start stage
if ($stage =~ /START/)
{
$callerid =~ s/ .*//gi;
$channel_group='';
if ($AGILOG) {$agi_string = "+++++ CALL LOG START : $now_date"; &agi_output;}
@@ -497,6 +498,7 @@ sub process_request
{
if ($AGILOG) {$agi_string = "|CALL HUNG UP|"; &agi_output;}
$callerid =~ s/ .*//gi;
$callerid =~ s/\"//gi;
$CIDlead_id = $callerid;
$CIDlead_id = substr($CIDlead_id, 11, 9);
+4 -4
View File
@@ -347,12 +347,12 @@ How to install Queue Metrics on OpenSuSE v.11.1 (32 or 64 bit) with a system tha
- Say yes to install, and say yes to license
3) cd /usr/src
4) wget http://queuemetrics.com/download/QueueMetrics-1.5.5-trial.tar.gz
4) wget http://queuemetrics.com/download/QueueMetrics-1.6.0.1-trial.tar.gz
5) mkdir tars (incase it doesn't exist)
6) tar -xzf QueueMetrics-1.5.5-trial.tar.gz
7) mv QueueMetrics-1.5.5-trial.tar.gz ./tars/
6) tar xvfz QueueMetrics-1.6.0.1-trial.tar.gz
7) mv QueueMetrics-1.6.0.1-trial.tar.gz ./tars/
8) mkdir /srv/tomcat6/webapps/QM
9) cp -r queuemetrics-1.5.5/* /srv/tomcat6/webapps/QM/
9) cp -r queuemetrics-1.6.0.1/* /srv/tomcat6/webapps/QM/
10) zypper in mysql-connector-java
11) cp /usr/share/java/mysql-connector-java.jar /srv/tomcat6/webapps/QM/WEB-INF/lib/
12) chkconfig tomcat6 on
@@ -730,7 +730,8 @@ xferconf_d_number VARCHAR(50) default '',
xferconf_e_number VARCHAR(50) default '',
use_custom_cid ENUM('Y','N') default 'N',
scheduled_callbacks_alert ENUM('NONE','BLINK','RED','BLINK_RED') default 'NONE',
queuemetrics_callstatus_override ENUM('DISABLED','NO','YES') default 'DISABLED'
queuemetrics_callstatus_override ENUM('DISABLED','NO','YES') default 'DISABLED',
extension_appended_cidname ENUM('Y','N') default 'N'
);
CREATE TABLE vicidial_lists (
@@ -880,7 +881,8 @@ dispo_call_url TEXT,
xferconf_c_number VARCHAR(50) default '',
xferconf_d_number VARCHAR(50) default '',
xferconf_e_number VARCHAR(50) default '',
ignore_list_script_override ENUM('Y','N') default 'N'
ignore_list_script_override ENUM('Y','N') default 'N',
extension_appended_cidname ENUM('Y','N') default 'N'
);
CREATE TABLE vicidial_stations (
@@ -2177,7 +2179,7 @@ ALTER TABLE vicidial_agent_log_archive MODIFY agent_log_id INT(9) UNSIGNED NOT N
CREATE TABLE vicidial_carrier_log_archive LIKE vicidial_carrier_log;
UPDATE system_settings SET db_schema_version='1212',db_schema_update_date=NOW();
UPDATE system_settings SET db_schema_version='1213',db_schema_update_date=NOW();
GRANT RELOAD ON *.* TO cron@'%';
GRANT RELOAD ON *.* TO cron@localhost;
+6
View File
@@ -225,3 +225,9 @@ UPDATE system_settings SET db_schema_version='1211',db_schema_update_date=NOW();
ALTER TABLE vicidial_campaigns ADD queuemetrics_callstatus_override ENUM('DISABLED','NO','YES') default 'DISABLED';
UPDATE system_settings SET db_schema_version='1212',db_schema_update_date=NOW();
ALTER TABLE vicidial_campaigns ADD extension_appended_cidname ENUM('Y','N') default 'N';
ALTER TABLE vicidial_inbound_groups ADD extension_appended_cidname ENUM('Y','N') default 'N';
UPDATE system_settings SET db_schema_version='1213',db_schema_update_date=NOW();
@@ -92,6 +92,9 @@ QueueMetrics CallStatus||
This option if set to 0 will not put in the CALLSTATUS entry into queue_log when an agent dispositions a call. Default is 1 for enabled||
QM CallStatus Override||
If QueueMetrics integration is enabled in the system settings then this setting allow the overriding of the System Settings setting for CallStatus queue_log entries. Default is DISABLED which will use the system setting||
Extension Append CID||
If enabled, the calls placed from this campaign will have a space and the phone extension of the agent appended to the end of the CallerID name for the call before it is sent to the agent. Default is N for disabled||
If enabled, the calls coming in from this in-group will have a space and the phone extension of the agent appended to the end of the CallerID name for the call before it is sent to the agent. Default is N for disabled||
AST_VICIDIAL_ingrouplist.php
@@ -275,6 +275,12 @@ if ($ignore_list_script < 1)
{$call_script = $agent_script_override;}
}
$stmt="SELECT list_name,list_description from vicidial_lists where list_id='$list_id';";
$rslt=mysql_query($stmt, $link);
$row=mysql_fetch_row($rslt);
$list_name = $row[0];
$list_description = $row[1];
$stmt="SELECT script_name,script_text from vicidial_scripts where script_id='$call_script';";
$rslt=mysql_query($stmt, $link);
$row=mysql_fetch_row($rslt);
@@ -288,6 +294,8 @@ if (eregi("iframe src",$script_text))
$vendor_id = eregi_replace(' ','+',$vendor_id);
$vendor_lead_code = eregi_replace(' ','+',$vendor_lead_code);
$list_id = eregi_replace(' ','+',$list_id);
$list_name = eregi_replace(' ','+',$list_name);
$list_description = eregi_replace(' ','+',$list_description);
$gmt_offset_now = eregi_replace(' ','+',$gmt_offset_now);
$phone_code = eregi_replace(' ','+',$phone_code);
$phone_number = eregi_replace(' ','+',$phone_number);
@@ -361,6 +369,8 @@ $script_text = eregi_replace('--A--lead_id--B--',"$lead_id",$script_text);
$script_text = eregi_replace('--A--vendor_id--B--',"$vendor_id",$script_text);
$script_text = eregi_replace('--A--vendor_lead_code--B--',"$vendor_lead_code",$script_text);
$script_text = eregi_replace('--A--list_id--B--',"$list_id",$script_text);
$script_text = eregi_replace('--A--list_name--B--',"$list_name",$script_text);
$script_text = eregi_replace('--A--list_description--B--',"$list_description",$script_text);
$script_text = eregi_replace('--A--gmt_offset_now--B--',"$gmt_offset_now",$script_text);
$script_text = eregi_replace('--A--phone_code--B--',"$phone_code",$script_text);
$script_text = eregi_replace('--A--phone_number--B--',"$phone_number",$script_text);
File diff suppressed because one or more lines are too long