Added alter_cid_name DID option

git-svn-id: svn://192.168.202.10@3952 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
mattf
2025-11-14 18:41:50 +00:00
parent eb9c48b3cc
commit 98ad0f7ed5
5 changed files with 102 additions and 13 deletions
+80 -4
View File
@@ -53,6 +53,7 @@
# 241208-1748 - Changed DID filter_phone_group_id & pre_filter_phone_group_id to multi-selects
# 250924-2156 - Added code for deprecation of "Monitor" application after Asterisk 20
# 251006-0905 - If recording_dtmf_muting enabled, force use of MixMonitor for recording
# 251112-1517 - Added alter_cid_name option
#
@@ -240,7 +241,7 @@ if (length($VICIrecGatewayID) > 19)
if ($SSdid_system_filter > 0)
{
if ($AGILOG) {$agi_string = "-- DID SYSTEM FILTER ENABLED: |$SSdid_system_filter|"; &agi_output;}
$stmtA = "SELECT did_id,did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,group_id,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension FROM vicidial_inbound_dids where did_pattern = 'did_system_filter' and did_active='Y';";
$stmtA = "SELECT did_id,did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,group_id,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension,alter_cid_name FROM vicidial_inbound_dids where did_pattern = 'did_system_filter' and did_active='Y';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
@@ -296,6 +297,7 @@ if ($SSdid_system_filter > 0)
$inbound_route_answer = $aryA[46];
$pre_filter_recent_call = $aryA[47];
$pre_filter_recent_extension = $aryA[48];
$alter_cid_name = $aryA[49];
}
else
{
@@ -305,10 +307,46 @@ if ($SSdid_system_filter > 0)
if ($sthArows > 0)
{
### BEGIN alter caller id name ###
if ( ($alter_cid_name !~ /DISABLED/i) && (length($alter_cid_name) > 2) )
{
$cidname_altered=0;
$new_calleridname='';
if ($alter_cid_name =~ /ALLCALLS_CIDNUM/i)
{
$new_calleridname = $callerid;
$cidname_altered++;
}
if ($alter_cid_name =~ /ALLCALLS_CLEAN/i)
{
$new_calleridname = 'CLEANED';
$cidname_altered++;
}
if ( ($alter_cid_name =~ /OTHSYS_CIDNUM/i) && ($calleridname =~ /^V\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^Y\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^M\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^DC\d\d\d\d\d\dW\d\d\d\d\d\d\d\d\d\dW/) )
{
$new_calleridname = $callerid;
$cidname_altered++;
}
if ( ($alter_cid_name =~ /OTHSYS_CLEAN/i) && ($calleridname =~ /^V\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^Y\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^M\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^DC\d\d\d\d\d\dW\d\d\d\d\d\d\d\d\d\dW/) )
{
$new_calleridname = 'CLEANED';
$cidname_altered++;
}
if ($cidname_altered > 0)
{
$newcallerid = "\"$new_calleridname <$callerid>\"";
$AGI->set_callerid($newcallerid);
if ($AGILOG) {$agi_string = "cidname altered, setting new CID: |$new_calleridname|$callerid|$alter_cid_name| Old: |$calleridname|"; &agi_output;}
$calleridname = $new_calleridname;
}
}
### END alter caller id name ###
if ($filter_inbound_number =~ /GROUP|URL|DNC_INTERNAL|DNC_CAMPAIGN/)
{
$original_callerid = $callerid;
### BEGIN temp clean caller id number ###
### BEGIN clean caller id number ###
if (length($filter_clean_cid_number) > 1)
{
$original_callerid = $callerid;
@@ -701,7 +739,7 @@ if ($SSdid_system_filter > 0)
### Grab DID values from the database
$DIDs_in_system=0;
$stmtA = "SELECT did_id,did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,group_id,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension FROM vicidial_inbound_dids where did_pattern = '$extension' and did_active='Y';";
$stmtA = "SELECT did_id,did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,group_id,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension,alter_cid_name FROM vicidial_inbound_dids where did_pattern = '$extension' and did_active='Y';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$sthArows=$sthA->rows;
@@ -757,6 +795,7 @@ if ($sthArows > 0)
$inbound_route_answer = $aryA[46];
$pre_filter_recent_call = $aryA[47];
$pre_filter_recent_extension = $aryA[48];
$alter_cid_name = $aryA[49];
$DIDs_in_system++;
}
@@ -765,7 +804,7 @@ $sthA->finish();
if ($sthArows < 1)
{
### Grab DID values from the database for a default DID pattern if there is one
$stmtA = "SELECT did_id,did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,group_id,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension FROM vicidial_inbound_dids where did_pattern = 'default' and did_active='Y';";
$stmtA = "SELECT did_id,did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,group_id,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension,alter_cid_name FROM vicidial_inbound_dids where did_pattern = 'default' and did_active='Y';";
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
$DIDs_in_system=$sthA->rows;
@@ -821,10 +860,47 @@ if ($sthArows < 1)
$inbound_route_answer = $aryA[46];
$pre_filter_recent_call = $aryA[47];
$pre_filter_recent_extension = $aryA[48];
$alter_cid_name = $aryA[49];
}
$sthA->finish();
}
### BEGIN alter caller id name ###
if ( ($alter_cid_name !~ /DISABLED/i) && (length($alter_cid_name) > 2) )
{
$cidname_altered=0;
$new_calleridname='';
if ($alter_cid_name =~ /ALLCALLS_CIDNUM/i)
{
$new_calleridname = $callerid;
$cidname_altered++;
}
if ($alter_cid_name =~ /ALLCALLS_CLEAN/i)
{
$new_calleridname = 'CLEANED';
$cidname_altered++;
}
if ( ($alter_cid_name =~ /OTHSYS_CIDNUM/i) && ($calleridname =~ /^V\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^Y\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^M\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^DC\d\d\d\d\d\dW\d\d\d\d\d\d\d\d\d\dW/) )
{
$new_calleridname = $callerid;
$cidname_altered++;
}
if ( ($alter_cid_name =~ /OTHSYS_CLEAN/i) && ($calleridname =~ /^V\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^Y\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^M\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d|^DC\d\d\d\d\d\dW\d\d\d\d\d\d\d\d\d\dW/) )
{
$new_calleridname = 'CLEANED';
$cidname_altered++;
}
if ($cidname_altered > 0)
{
$newcallerid = "\"$new_calleridname <$callerid>\"";
$AGI->set_callerid($newcallerid);
if ($AGILOG) {$agi_string = "cidname altered, setting new CID: |$new_calleridname|$callerid|$alter_cid_name| Old: |$calleridname|"; &agi_output;}
$calleridname = $new_calleridname;
}
}
### END alter caller id name ###
### Log the call to vicidial_did_log
$stmtA = "INSERT INTO vicidial_did_log SET uniqueid='$uniqueid',channel='$channel',server_ip='$VARserver_ip',caller_id_number='$callerid',caller_id_name='$calleridname',extension='$extension',call_date='$SQLdate',did_id='$did_id',did_route='$did_route';";
if ($AGILOG) {$agi_string = "|$stmtA|"; &agi_output;}
+3 -2
View File
@@ -2401,8 +2401,9 @@ did_carrier_description VARCHAR(255) default '',
inbound_route_answer ENUM('Y','N') DEFAULT 'Y',
pre_filter_recent_call VARCHAR(20) default '',
pre_filter_recent_extension VARCHAR(50) default '',
unique index (did_pattern),
alter_cid_name VARCHAR(40) default 'DISABLED',
modify_stamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
unique index (did_pattern),
index (group_id)
) ENGINE=MyISAM;
@@ -5874,4 +5875,4 @@ INSERT INTO `wallboard_reports` VALUES ('AGENTS_AND_QUEUES','Agents and Queues',
UPDATE system_settings set vdc_agent_api_active='1';
UPDATE system_settings SET db_schema_version='1733',db_schema_update_date=NOW(),reload_timestamp=NOW();
UPDATE system_settings SET db_schema_version='1734',db_schema_update_date=NOW(),reload_timestamp=NOW();
+4
View File
@@ -3040,3 +3040,7 @@ last_check_datetime DATETIME
ALTER TABLE system_settings ADD db_crashed_tables_check ENUM('0','1','2','3','4','5','6') default '1';
UPDATE system_settings SET db_schema_version='1733',db_schema_update_date=NOW() where db_schema_version < 1733;
ALTER TABLE vicidial_inbound_dids ADD alter_cid_name VARCHAR(40) default 'DISABLED';
UPDATE system_settings SET db_schema_version='1734',db_schema_update_date=NOW() where db_schema_version < 1734;
+13 -6
View File
@@ -2872,6 +2872,8 @@ if (isset($_GET["call_count_limit_restrict"])) {$call_count_limit_restrict=$_G
elseif (isset($_POST["call_count_limit_restrict"])) {$call_count_limit_restrict=$_POST["call_count_limit_restrict"];}
if (isset($_GET["db_crashed_tables_check"])) {$db_crashed_tables_check=$_GET["db_crashed_tables_check"];}
elseif (isset($_POST["db_crashed_tables_check"])) {$db_crashed_tables_check=$_POST["db_crashed_tables_check"];}
if (isset($_GET["alter_cid_name"])) {$alter_cid_name=$_GET["alter_cid_name"];}
elseif (isset($_POST["alter_cid_name"])) {$alter_cid_name=$_POST["alter_cid_name"];}
$DB=preg_replace("/[^0-9a-zA-Z]/","",$DB);
@@ -3656,6 +3658,7 @@ $stereo_recording = preg_replace('/[^-_0-9a-zA-Z]/','',$stereo_recording);
$stereo_parallel_recording = preg_replace('/[^-_0-9a-zA-Z]/','',$stereo_parallel_recording);
$stereo_recording_agent = preg_replace('/[^-_0-9a-zA-Z]/','',$stereo_recording_agent);
$call_count_limit_restrict = preg_replace('/[^-_0-9a-zA-Z]/','',$call_count_limit_restrict);
$alter_cid_name = preg_replace('/[^-_0-9a-zA-Z]/','',$alter_cid_name);
if ($non_latin < 1)
{
@@ -6295,12 +6298,13 @@ if ($SSscript_remove_js > 0)
# 251002-1428 - Added call_count_limit_restrict campaign setting
# 251019-2024 - Added Recording DTMF Muting
# 251025-1924 - Added CRASHED DATABASE TABLES display page, db_crashed_tables_check system settings option
# 251112-2201 - Added alter_cid_name DID option
#
# make sure you have added a user to the vicidial_users MySQL table with at least user_level 9 to access this page the first time
$admin_version = '2.14-947a';
$build = '251025-1924';
$admin_version = '2.14-948a';
$build = '251112-2201';
$STARTtime = date("U");
$SQLdate = date("Y-m-d H:i:s");
@@ -14095,7 +14099,7 @@ if ($ADD==2411)
}
else
{
$stmtA="INSERT INTO vicidial_inbound_dids (did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,group_id,call_handle_method,agent_search_method,list_id,campaign_id,phone_code,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,custom_one,custom_two,custom_three,custom_four,custom_five,user_group,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,entry_list_id,filter_entry_list_id,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,did_carrier_description,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension) SELECT \"$did_pattern\",\"$did_description\",did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,group_id,call_handle_method,agent_search_method,list_id,campaign_id,phone_code,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,custom_one,custom_two,custom_three,custom_four,custom_five,user_group,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,entry_list_id,filter_entry_list_id,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,did_carrier_description,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension from vicidial_inbound_dids where did_id=\"$source_did\";";
$stmtA="INSERT INTO vicidial_inbound_dids (did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,group_id,call_handle_method,agent_search_method,list_id,campaign_id,phone_code,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,custom_one,custom_two,custom_three,custom_four,custom_five,user_group,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,entry_list_id,filter_entry_list_id,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,did_carrier_description,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension,alter_cid_name) SELECT \"$did_pattern\",\"$did_description\",did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,group_id,call_handle_method,agent_search_method,list_id,campaign_id,phone_code,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,custom_one,custom_two,custom_three,custom_four,custom_five,user_group,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,entry_list_id,filter_entry_list_id,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,did_carrier_description,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension,alter_cid_name from vicidial_inbound_dids where did_id=\"$source_did\";";
$rslt=mysql_to_mysqli($stmtA, $link);
$stmt="SELECT did_id from vicidial_inbound_dids where did_pattern='$did_pattern';";
@@ -18891,7 +18895,7 @@ if ($ADD==4311)
$new_field_value = preg_replace("/\<|\>|\'|\"|\\\\|;/","",$new_field_value);
$pre_filter_phone_group_id = preg_replace("/,$/","",$new_field_value);
$stmt="UPDATE vicidial_inbound_dids set did_pattern='$did_pattern',did_description='$did_description',did_active='$did_active',did_route='$did_route',extension='$extension',exten_context='$exten_context',voicemail_ext='$voicemail_ext',phone='$phone',server_ip='$server_ip',user='$user',user_unavailable_action='$user_unavailable_action',user_route_settings_ingroup='$user_route_settings_ingroup',group_id='$group_id',call_handle_method='$call_handle_method',agent_search_method='$agent_search_method',list_id='$list_id',campaign_id='$campaign_id',phone_code='$phone_code',menu_id='$menu_id',record_call='$record_call',filter_inbound_number='$filter_inbound_number',filter_phone_group_id='$filter_phone_group_id',filter_url='" . mysqli_real_escape_string($link, $filter_url) . "',filter_action='$filter_action',filter_extension='$filter_extension',filter_exten_context='$filter_exten_context',filter_voicemail_ext='$filter_voicemail_ext',filter_phone='$filter_phone',filter_server_ip='$filter_server_ip',filter_user='$filter_user',filter_user_unavailable_action='$filter_user_unavailable_action',filter_user_route_settings_ingroup='$filter_user_route_settings_ingroup',filter_group_id='$filter_group_id',filter_call_handle_method='$filter_call_handle_method',filter_agent_search_method='$filter_agent_search_method',filter_list_id='$filter_list_id',filter_campaign_id='$filter_campaign_id',filter_phone_code='$filter_phone_code',filter_menu_id='$filter_menu_id',filter_clean_cid_number='$filter_clean_cid_number',custom_one='$custom_one',custom_two='$custom_two',custom_three='$custom_three',custom_four='$custom_four',custom_five='$custom_five',user_group='$user_group',filter_dnc_campaign='$filter_dnc_campaign',filter_url_did_redirect='$filter_url_did_redirect',no_agent_ingroup_redirect='$no_agent_ingroup_redirect',no_agent_ingroup_id='$no_agent_ingroup_id',no_agent_ingroup_extension='$no_agent_ingroup_extension',pre_filter_phone_group_id='$pre_filter_phone_group_id',pre_filter_extension='$pre_filter_extension',max_queue_ingroup_calls='$max_queue_ingroup_calls',max_queue_ingroup_id='$max_queue_ingroup_id',max_queue_ingroup_extension='$max_queue_ingroup_extension',did_carrier_description='$did_carrier_description',inbound_route_answer='$inbound_route_answer',pre_filter_recent_call='$pre_filter_recent_call',pre_filter_recent_extension='$pre_filter_recent_extension'$did_entry_list_idSQL where did_id='$did_id';";
$stmt="UPDATE vicidial_inbound_dids set did_pattern='$did_pattern',did_description='$did_description',did_active='$did_active',did_route='$did_route',extension='$extension',exten_context='$exten_context',voicemail_ext='$voicemail_ext',phone='$phone',server_ip='$server_ip',user='$user',user_unavailable_action='$user_unavailable_action',user_route_settings_ingroup='$user_route_settings_ingroup',group_id='$group_id',call_handle_method='$call_handle_method',agent_search_method='$agent_search_method',list_id='$list_id',campaign_id='$campaign_id',phone_code='$phone_code',menu_id='$menu_id',record_call='$record_call',filter_inbound_number='$filter_inbound_number',filter_phone_group_id='$filter_phone_group_id',filter_url='" . mysqli_real_escape_string($link, $filter_url) . "',filter_action='$filter_action',filter_extension='$filter_extension',filter_exten_context='$filter_exten_context',filter_voicemail_ext='$filter_voicemail_ext',filter_phone='$filter_phone',filter_server_ip='$filter_server_ip',filter_user='$filter_user',filter_user_unavailable_action='$filter_user_unavailable_action',filter_user_route_settings_ingroup='$filter_user_route_settings_ingroup',filter_group_id='$filter_group_id',filter_call_handle_method='$filter_call_handle_method',filter_agent_search_method='$filter_agent_search_method',filter_list_id='$filter_list_id',filter_campaign_id='$filter_campaign_id',filter_phone_code='$filter_phone_code',filter_menu_id='$filter_menu_id',filter_clean_cid_number='$filter_clean_cid_number',custom_one='$custom_one',custom_two='$custom_two',custom_three='$custom_three',custom_four='$custom_four',custom_five='$custom_five',user_group='$user_group',filter_dnc_campaign='$filter_dnc_campaign',filter_url_did_redirect='$filter_url_did_redirect',no_agent_ingroup_redirect='$no_agent_ingroup_redirect',no_agent_ingroup_id='$no_agent_ingroup_id',no_agent_ingroup_extension='$no_agent_ingroup_extension',pre_filter_phone_group_id='$pre_filter_phone_group_id',pre_filter_extension='$pre_filter_extension',max_queue_ingroup_calls='$max_queue_ingroup_calls',max_queue_ingroup_id='$max_queue_ingroup_id',max_queue_ingroup_extension='$max_queue_ingroup_extension',did_carrier_description='$did_carrier_description',inbound_route_answer='$inbound_route_answer',pre_filter_recent_call='$pre_filter_recent_call',pre_filter_recent_extension='$pre_filter_recent_extension',alter_cid_name='$alter_cid_name'$did_entry_list_idSQL where did_id='$did_id';";
$rslt=mysql_to_mysqli($stmt, $link);
### LOG INSERTION Admin Log Table ###
@@ -37787,7 +37791,7 @@ if ($ADD==3311)
$didSQL = "did_id='$did_id'";
if ( (strlen($did_id)<1) and (strlen($did_pattern)>0) )
{$didSQL = "did_pattern='$did_pattern'";}
$stmt="SELECT did_id,did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,group_id,call_handle_method,agent_search_method,list_id,campaign_id,phone_code,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,custom_one,custom_two,custom_three,custom_four,custom_five,user_group,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,entry_list_id,filter_entry_list_id,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,did_carrier_description,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension from vicidial_inbound_dids where $didSQL $LOGadmin_viewable_groupsSQL;";
$stmt="SELECT did_id,did_pattern,did_description,did_active,did_route,extension,exten_context,voicemail_ext,phone,server_ip,user,user_unavailable_action,user_route_settings_ingroup,group_id,call_handle_method,agent_search_method,list_id,campaign_id,phone_code,menu_id,record_call,filter_inbound_number,filter_phone_group_id,filter_url,filter_action,filter_extension,filter_exten_context,filter_voicemail_ext,filter_phone,filter_server_ip,filter_user,filter_user_unavailable_action,filter_user_route_settings_ingroup,filter_group_id,filter_call_handle_method,filter_agent_search_method,filter_list_id,filter_campaign_id,filter_phone_code,filter_menu_id,filter_clean_cid_number,custom_one,custom_two,custom_three,custom_four,custom_five,user_group,filter_dnc_campaign,filter_url_did_redirect,no_agent_ingroup_redirect,no_agent_ingroup_id,no_agent_ingroup_extension,pre_filter_phone_group_id,pre_filter_extension,entry_list_id,filter_entry_list_id,max_queue_ingroup_calls,max_queue_ingroup_id,max_queue_ingroup_extension,did_carrier_description,inbound_route_answer,pre_filter_recent_call,pre_filter_recent_extension,alter_cid_name from vicidial_inbound_dids where $didSQL $LOGadmin_viewable_groupsSQL;";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$row=mysqli_fetch_row($rslt);
@@ -37856,6 +37860,7 @@ if ($ADD==3311)
$inbound_route_answer = $row[60];
$pre_filter_recent_call = $row[61];
$pre_filter_recent_extension = $row[62];
$alter_cid_name = $row[63];
$stmt="SELECT campaign_id,campaign_name from vicidial_campaigns $whereLOGallowed_campaignsSQL order by campaign_id;";
$rslt=mysql_to_mysqli($stmt, $link);
@@ -38016,7 +38021,7 @@ if ($ADD==3311)
echo "</select>$NWB#inbound_dids-user_group$NWE</td></tr>\n";
echo "<tr bgcolor=#$SSstd_row4_background><td align=right>"._QXZ("Active").": </td><td align=left><input type=hidden name=did_active value='Y'>Y</td></tr>\n";
echo "<tr bgcolor=#99FFCC><td align=right>"._QXZ("Clean CID Number").": </td><td align=left><input type=text name=filter_clean_cid_number size=20 maxlength=20 value=\"$filter_clean_cid_number\">$NWB#inbound_dids-filter_clean_cid_number$NWE</td></tr>\n";
echo "<tr bgcolor=#99FFCC><td align=right>"._QXZ("Alter CID Name").": </td><td align=left><select size=1 name=alter_cid_name><option value='DISABLED'>"._QXZ("DISABLED")."</option><option value='ALLCALLS_CIDNUM'>"._QXZ("ALLCALLS_CIDNUM")."</option><option value='ALLCALLS_CLEAN'>"._QXZ("ALLCALLS_CLEAN")."</option><option value='OTHSYS_CIDNUM'>"._QXZ("OTHSYS_CIDNUM")."</option><option value='OTHSYS_CLEAN'>"._QXZ("OTHSYS_CLEAN")."</option><option value='$alter_cid_name' SELECTED>"._QXZ("$alter_cid_name")."</option></select>$NWB#inbound_dids-alter_cid_name$NWE</td></tr>\n";
echo "<tr bgcolor=#99FFCC><td align=right></td><td align=left>";
echo "<input type=hidden name=did_route value='$did_route'>\n";
echo "<input type=hidden name=record_call value='$record_call'>\n";
@@ -38193,6 +38198,8 @@ if ($ADD==3311)
echo "<tr bgcolor=#99FFCC><td align=right>"._QXZ("Clean CID Number").": </td><td align=left><input type=text name=filter_clean_cid_number size=20 maxlength=20 value=\"$filter_clean_cid_number\">$NWB#inbound_dids-filter_clean_cid_number$NWE</td></tr>\n";
echo "<tr bgcolor=#99FFCC><td align=right>"._QXZ("Alter CID Name").": </td><td align=left><select size=1 name=alter_cid_name><option value='DISABLED'>"._QXZ("DISABLED")."</option><option value='ALLCALLS_CIDNUM'>"._QXZ("ALLCALLS_CIDNUM")."</option><option value='ALLCALLS_CLEAN'>"._QXZ("ALLCALLS_CLEAN")."</option><option value='OTHSYS_CIDNUM'>"._QXZ("OTHSYS_CIDNUM")."</option><option value='OTHSYS_CLEAN'>"._QXZ("OTHSYS_CLEAN")."</option><option value='$alter_cid_name' SELECTED>"._QXZ("$alter_cid_name")."</option></select>$NWB#inbound_dids-alter_cid_name$NWE</td></tr>\n";
echo "<tr bgcolor=#CCFFFF><td align=right>"._QXZ("No-Agent In-Group Redirect").": </td><td align=left><select size=1 name=no_agent_ingroup_redirect><option value=\"DISABLED\">"._QXZ("DISABLED")."</option><option value=\"Y\">"._QXZ("Y")."</option><option value=\"NO_PAUSED\">"._QXZ("NO_PAUSED")."</option><option value=\"READY_ONLY\">"._QXZ("READY_ONLY")."</option><option value=\"$no_agent_ingroup_redirect\" SELECTED>"._QXZ("$no_agent_ingroup_redirect")."</option></select>$NWB#inbound_dids-no_agent_ingroup_redirect$NWE</td></tr>\n";
echo "<tr bgcolor=#CCFFFF><td align=right><a href=\"$PHP_SELF?ADD=3111&group_id=$no_agent_ingroup_id\">"._QXZ("No-Agent In-Group ID")."</a>: </td><td align=left><select size=1 name=no_agent_ingroup_id>";
+2 -1
View File
@@ -1,4 +1,4 @@
# version: 20251025191301
# version: 20251112180001
users-user User ID <QXZ>This field is where you put the users ID number, can be up to 20 digits in length, Must be at least 2 characters in length. We strongly recommend not reusing user accounts for different users, for reporting accuracy. To disable a user account, set the Active option to -N-.</QXZ>
users-pass Password <QXZ>This field is where you put the users password. Must be at least 2 characters in length, unless the User Password Minimum Length system setting is enabled, which will require a longer password. Only letters and numbers are allowed in user passwords. A medium strength user password will be at least 10 characters in length, and a strong user password will be at least 20 characters in length and have letters as well as at least one number. It is recommended that you use a longer password if possible, stringing together several unrelated words with no spaces, and a number somewhere in the string. The maximum size of a password is 100 characters.</QXZ>
users-force_change_password Force Change Password <QXZ>If this option is set to Y then the user will be prompted to change their password the next time they log in to the administration webpage or the agent screen. Default is N.</QXZ>
@@ -742,6 +742,7 @@ inbound_dids-entry_list_id In-Group Entry List ID <QXZ>If IN_GROUP is selected a
inbound_dids-campaign_id In-Group Campaign ID <QXZ>If IN_GROUP is selected as the DID Route, then this is the Campaign ID that leads may be searched for in if the call handle method is CIDLOOKUPRC.</QXZ>
inbound_dids-phone_code In-Group Phone Code <QXZ>If IN_GROUP is selected as the DID Route, then this is the Phone Code used if a new lead is created.</QXZ>
inbound_dids-filter_clean_cid_number Clean CID Number <QXZ>This field allows you to specify a number of digits to restrict the incoming caller ID number to by putting an R in front of the number of digits, for example to restrict to the right 10 digits you would enter in R10. You can also use this feature to remove only a leading digit or digits by putting an L in front of the specific digits that you want to remove, for example to remove a 1 as the first digit you would enter in L1. The T option which will trim the end number to a specific number of digits from the left for example T3 on 12345 will return 123. Default is empty. If more than one rule is specified make sure you separate them with a space and they will be executed in the following order R L T.</QXZ>
inbound_dids-alter_cid_name Alter CID Name <QXZ>If enabled, this option will alter the Caller ID Name of a call when it is first entering the Inbound DID routing process. If the option has ALLCALLS in it, then every call that goes through this DID will have its CID name altered. If the option has OTHSYS in it, then only calls that came from another system with a special 20-character CIDname beginning with V, Y, M or DC that go through this DID will have their CID name altered. If the option has CIDNUM in it, then the CID name will be changed to the CID number on the call. If the option has CLEAN in it, then the CID name will be changed to the word CLEANED. Default is DISABLED.</QXZ>
inbound_dids-no_agent_ingroup_redirect No-Agent In-Group Redirect <QXZ>This setting allows you to redirect calls on this DID if there are no logged-in agents set to take calls from a specific In-Group. If this field is set to Y or NO_PAUSED and there are no agents logged in to take calls from the specific In-Group the calls will go to the No Agent In-Group Extension set below. The NO_PAUSED option will only send the call to the defined Extension if there are only paused agents in the in-group. The READY_ONLY option will send the call to the defined Extension if there are no agents waiting for calls right now in the in-group. Default is DISABLED. See the No Agent In-Group Extension setting below for more information.</QXZ>
inbound_dids-no_agent_ingroup_id No-Agent In-Group ID <QXZ>For the No-Agent In-Group Redirect feature above to work properly, an in-Group must be selected from this menu. Default is blank.</QXZ>
inbound_dids-no_agent_ingroup_extension No-Agent In-Group Extension <QXZ>For the No-Agent In-Group Redirect feature above to work properly, an Extension must be set in this field. Default is 9998811112. Below you will see some examples of default extensions that you can use in the system to terminate calls to,</QXZ><BR>- <QXZ>9998811112 - ANSWERED, This number is not in service</QXZ><BR>- <QXZ>9993333333 - UNANSWERED, signal 1, unallocated number, immediate hangup</QXZ><BR>- <QXZ>9998888888 - UNANSWERED, signal 17, busy signal, immediate hangup</QXZ><BR>- <QXZ>9994444444 - UNANSWERED, signal 27, out of order, immediate hangup</QXZ><BR>- <QXZ>9995555555 - UNANSWERED, ring for 120 seconds then hangup</QXZ>