From 04fa201cade7e9e3ced99a5f5fe30f12909fc0d5 Mon Sep 17 00:00:00 2001 From: mattf Date: Thu, 29 Apr 2021 21:02:47 +0000 Subject: [PATCH] Added mohsuggest phone config option for SIP and IAX phones Added new option/layout to agc/alt_display.php git-svn-id: svn://192.168.202.10@3435 3d104415-ff17-0410-8863-d5cf3c621b8a --- agc_2-X/trunk/UPGRADE | 4 ++ agc_2-X/trunk/bin/ADMIN_keepalive_ALL.pl | 17 ++++++-- agc_2-X/trunk/docs/CRM_EXAMPLE_SKIN.txt | 2 +- .../trunk/extras/MySQL_AST_CREATE_tables.sql | 3 +- agc_2-X/trunk/extras/upgrade_2.14.sql | 4 ++ agc_2-X/trunk/www/agc/alt_display.php | 42 ++++++++++--------- agc_2-X/trunk/www/vicidial/admin.php | 17 +++++--- .../trunk/www/vicidial/help_documentation.txt | 3 +- 8 files changed, 62 insertions(+), 30 deletions(-) diff --git a/agc_2-X/trunk/UPGRADE b/agc_2-X/trunk/UPGRADE index e42e10b6..8ed5562d 100644 --- a/agc_2-X/trunk/UPGRADE +++ b/agc_2-X/trunk/UPGRADE @@ -629,6 +629,10 @@ OTHER CHANGES: with separate configurable labels and in-group/campaign parameters. Also, this can be used with the alt_display.php script. +176. Added new "Music on Hold Suggest" Phones setting for SIP and IAX phones. + It will define the Hold music played to a customer when the phone user + puts them on hold through the phone. + diff --git a/agc_2-X/trunk/bin/ADMIN_keepalive_ALL.pl b/agc_2-X/trunk/bin/ADMIN_keepalive_ALL.pl index a39ffbee..18822f95 100644 --- a/agc_2-X/trunk/bin/ADMIN_keepalive_ALL.pl +++ b/agc_2-X/trunk/bin/ADMIN_keepalive_ALL.pl @@ -147,9 +147,10 @@ # 210207-1200 - Added purging of vicidial_shared_log log entries # 210311-2229 - Added purging of old records from vicidial_two_factor_auth # 210325-2145 - Fix for -adfill-delay= CLI flag, Issue #1266 +# 210429-1644 - Added mohsuggest config for SIP and IAX phones # -$build = '210325-2145'; +$build = '210429-1644'; $DB=0; # Debug flag $teodDB=0; # flag to log Timeclock End of Day processes to log file @@ -2996,7 +2997,7 @@ if ( ($active_asterisk_server =~ /Y/) && ($generate_vicidial_conf =~ /Y/) && ($r ##### BEGIN Generate the IAX phone entries ##### - $stmtA = "SELECT extension,dialplan_number,voicemail_id,pass,template_id,conf_override,email,template_id,conf_override,outbound_cid,fullname,phone_context,phone_ring_timeout,conf_secret,delete_vm_after_email,codecs_list,codecs_with_template,voicemail_timezone,voicemail_options,voicemail_instructions,unavail_dialplan_fwd_exten,unavail_dialplan_fwd_context,conf_qualify FROM phones where server_ip='$server_ip' and protocol='IAX2' and active='Y' order by extension;"; + $stmtA = "SELECT extension,dialplan_number,voicemail_id,pass,template_id,conf_override,email,template_id,conf_override,outbound_cid,fullname,phone_context,phone_ring_timeout,conf_secret,delete_vm_after_email,codecs_list,codecs_with_template,voicemail_timezone,voicemail_options,voicemail_instructions,unavail_dialplan_fwd_exten,unavail_dialplan_fwd_context,conf_qualify,mohsuggest FROM phones where server_ip='$server_ip' and protocol='IAX2' and active='Y' order by extension;"; # print "$stmtA\n"; $sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr; $sthA->execute or die "executing: $stmtA ", $dbhA->errstr; @@ -3028,6 +3029,7 @@ if ( ($active_asterisk_server =~ /Y/) && ($generate_vicidial_conf =~ /Y/) && ($r $unavail_dialplan_fwd_exten[$i] = $aryA[20]; $unavail_dialplan_fwd_context[$i] = $aryA[21]; $conf_qualify[$i] = $aryA[22]; + $mohsuggest[$i] = $aryA[23]; if ( (length($SSdefault_codecs) > 2) && (length($codecs_list[$i]) < 3) ) {$codecs_list[$i] = $SSdefault_codecs;} $active_dialplan_numbers .= "'$aryA[1]',"; @@ -3087,6 +3089,8 @@ if ( ($active_asterisk_server =~ /Y/) && ($generate_vicidial_conf =~ /Y/) && ($r {$Piax .= "qualify=yes\n";} if ($codecs_with_template[$i] > 0) {$Piax .= "$Pcodec";} + if (length($mohsuggest[$i]) > 0) + {$Piax .= "mohsuggest=$mohsuggest[$i]\n";} $Piax .= "$template_contents[$i]\n"; $conf_entry_written++; @@ -3119,6 +3123,8 @@ if ( ($active_asterisk_server =~ /Y/) && ($generate_vicidial_conf =~ /Y/) && ($r $Piax .= "host=dynamic\n"; if ($conf_qualify[$i] =~ /Y/) {$Piax .= "qualify=yes\n";} + if (length($mohsuggest[$i]) > 0) + {$Piax .= "mohsuggest=$mohsuggest[$i]\n";} } %ast_ver_str = parse_asterisk_version($asterisk_version); if (( $ast_ver_str{major} = 1 ) && ($ast_ver_str{minor} < 6)) @@ -3163,7 +3169,7 @@ if ( ($active_asterisk_server =~ /Y/) && ($generate_vicidial_conf =~ /Y/) && ($r ##### BEGIN Generate the SIP phone entries ##### - $stmtA = "SELECT extension,dialplan_number,voicemail_id,pass,template_id,conf_override,email,template_id,conf_override,outbound_cid,fullname,phone_context,phone_ring_timeout,conf_secret,delete_vm_after_email,codecs_list,codecs_with_template,voicemail_timezone,voicemail_options,voicemail_instructions,unavail_dialplan_fwd_exten,unavail_dialplan_fwd_context FROM phones where server_ip='$server_ip' and protocol='SIP' and active='Y' order by extension;"; + $stmtA = "SELECT extension,dialplan_number,voicemail_id,pass,template_id,conf_override,email,template_id,conf_override,outbound_cid,fullname,phone_context,phone_ring_timeout,conf_secret,delete_vm_after_email,codecs_list,codecs_with_template,voicemail_timezone,voicemail_options,voicemail_instructions,unavail_dialplan_fwd_exten,unavail_dialplan_fwd_context,mohsuggest FROM phones where server_ip='$server_ip' and protocol='SIP' and active='Y' order by extension;"; # print "$stmtA\n"; $sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr; $sthA->execute or die "executing: $stmtA ", $dbhA->errstr; @@ -3194,6 +3200,7 @@ if ( ($active_asterisk_server =~ /Y/) && ($generate_vicidial_conf =~ /Y/) && ($r $voicemail_instructions[$i] = $aryA[19]; $unavail_dialplan_fwd_exten[$i] = $aryA[20]; $unavail_dialplan_fwd_context[$i] = $aryA[21]; + $mohsuggest[$i] = $aryA[22]; if ( (length($SSdefault_codecs) > 2) && (length($codecs_list[$i]) < 3) ) {$codecs_list[$i] = $SSdefault_codecs;} $active_dialplan_numbers .= "'$aryA[1]',"; @@ -3251,6 +3258,8 @@ if ( ($active_asterisk_server =~ /Y/) && ($generate_vicidial_conf =~ /Y/) && ($r $Psip .= "mailbox=$voicemail[$i]\n"; if ($codecs_with_template[$i] > 0) {$Psip .= "$Pcodec";} + if (length($mohsuggest[$i]) > 0) + {$Psip .= "mohsuggest=$mohsuggest[$i]\n";} $Psip .= "$template_contents[$i]\n"; $conf_entry_written++; @@ -3279,6 +3288,8 @@ if ( ($active_asterisk_server =~ /Y/) && ($generate_vicidial_conf =~ /Y/) && ($r $Psip .= "$Pcodec"; $Psip .= "type=friend\n"; $Psip .= "host=dynamic\n"; + if (length($mohsuggest[$i]) > 0) + {$Psip .= "mohsuggest=$mohsuggest[$i]\n";} } %ast_ver_str = parse_asterisk_version($asterisk_version); if (( $ast_ver_str{major} = 1 ) && ($ast_ver_str{minor} < 6)) diff --git a/agc_2-X/trunk/docs/CRM_EXAMPLE_SKIN.txt b/agc_2-X/trunk/docs/CRM_EXAMPLE_SKIN.txt index af82a825..72184930 100644 --- a/agc_2-X/trunk/docs/CRM_EXAMPLE_SKIN.txt +++ b/agc_2-X/trunk/docs/CRM_EXAMPLE_SKIN.txt @@ -63,4 +63,4 @@ Additional enhancements: http://server/agc/alt_display.php?user=6666&ACTION=top_panel http://server/agc/alt_display.php?user=6666&ACTION=top_panel_realtime http://server/agc/alt_display.php?user=6666&ACTION=agent_status -http://server/agc/alt_display.php?user=6666&ACTION=top_panel_realtime&calls_in_queue_option=CAMPAIGN +http://server/agc/alt_display.php?user=6666&ACTION=top_panel_realtime&calls_in_queue_option=CAMPAIGN&calls_in_queue_display=STACKED diff --git a/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql b/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql index b10b4b33..a6156fe9 100644 --- a/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql +++ b/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql @@ -102,6 +102,7 @@ webphone_debug ENUM('Y','N') default 'N', outbound_alt_cid VARCHAR(20) default '', conf_qualify ENUM('Y','N') default 'Y', webphone_layout VARCHAR(255) default '', +mohsuggest VARCHAR(100) default '', index (server_ip), index (voicemail_id), index (dialplan_number), @@ -4930,4 +4931,4 @@ INSERT INTO vicidial_settings_containers(container_id,container_notes,container_ UPDATE system_settings set vdc_agent_api_active='1'; -UPDATE system_settings SET db_schema_version='1632',db_schema_update_date=NOW(),reload_timestamp=NOW(); +UPDATE system_settings SET db_schema_version='1633',db_schema_update_date=NOW(),reload_timestamp=NOW(); diff --git a/agc_2-X/trunk/extras/upgrade_2.14.sql b/agc_2-X/trunk/extras/upgrade_2.14.sql index 974081a1..4401817b 100644 --- a/agc_2-X/trunk/extras/upgrade_2.14.sql +++ b/agc_2-X/trunk/extras/upgrade_2.14.sql @@ -1679,3 +1679,7 @@ ALTER TABLE vicidial_campaigns ADD calls_inqueue_count_one VARCHAR(40) default ' ALTER TABLE vicidial_campaigns ADD calls_inqueue_count_two VARCHAR(40) default 'DISABLED'; UPDATE system_settings SET db_schema_version='1632',db_schema_update_date=NOW() where db_schema_version < 1632; + +ALTER TABLE phones ADD mohsuggest VARCHAR(100) default ''; + +UPDATE system_settings SET db_schema_version='1633',db_schema_update_date=NOW() where db_schema_version < 1633; diff --git a/agc_2-X/trunk/www/agc/alt_display.php b/agc_2-X/trunk/www/agc/alt_display.php index 7dfa1fff..c462ac77 100644 --- a/agc_2-X/trunk/www/agc/alt_display.php +++ b/agc_2-X/trunk/www/agc/alt_display.php @@ -19,10 +19,11 @@ # 200920-0906 - Added agent-lag-time to agent_status action # 201026-1504 - Fix for LIVE call issue in top_panel # 210426-0138 - Added calls_inqueue_count_ campaign settings options, and calls_in_queue_option=CAMPAIGN setting +# 210428-2156 - Added calls_in_queue_display setting # -$version = '2.14-4'; -$build = '210426-0138'; +$version = '2.14-5'; +$build = '210428-2156'; $php_script = 'alt_display.php'; $mel=1; # Mysql Error Log enabled = 1 $mysql_log_count=11; @@ -32,6 +33,7 @@ $VD_login=0; $SSagent_debug_logging=0; $pause_to_code_jump=0; $startMS = microtime(); +$STACKED_left=80; require_once("dbconnect_mysqli.php"); require_once("functions.php"); @@ -45,6 +47,8 @@ if (isset($_GET["ACTION"])) {$ACTION=$_GET["ACTION"];} elseif (isset($_POST["ACTION"])) {$ACTION=$_POST["ACTION"];} if (isset($_GET["calls_in_queue_option"])) {$calls_in_queue_option=$_GET["calls_in_queue_option"];} elseif (isset($_POST["calls_in_queue_option"])) {$calls_in_queue_option=$_POST["calls_in_queue_option"];} +if (isset($_GET["calls_in_queue_display"])) {$calls_in_queue_display=$_GET["calls_in_queue_display"];} + elseif (isset($_POST["calls_in_queue_display"])) {$calls_in_queue_display=$_POST["calls_in_queue_display"];} if (isset($_GET["DB"])) {$DB=$_GET["DB"];} elseif (isset($_POST["DB"])) {$DB=$_POST["DB"];} @@ -52,6 +56,7 @@ $user = preg_replace("/\'|\"|\\\\|;/","",$user); $stage = preg_replace("/[^-_0-9a-zA-Z]/","",$stage); $ACTION = preg_replace('/[^-_0-9a-zA-Z]/','',$ACTION); $calls_in_queue_option = preg_replace('/[^-_0-9a-zA-Z]/','',$calls_in_queue_option); +$calls_in_queue_display = preg_replace('/[^-_0-9a-zA-Z]/','',$calls_in_queue_display); $DB = preg_replace('/[^-_0-9a-zA-Z]/','',$DB); # default optional vars if not set @@ -277,10 +282,11 @@ if ($ACTION == 'top_panel') $CLtime = sprintf('%s:%s',$minutes,str_pad($seconds,2,'0',STR_PAD_LEFT)); echo ""._QXZ("Call Timer").": $CLtime     \n"; $stage = "LIVE $CLtime"; + $STACKED_left = ($STACKED_left + 140); } if ($live_call == 'DEAD') { - echo ""._QXZ("DEAD CALL")."     \n"; + echo ""._QXZ("DEAD CALL")."   \n"; $call_length = ($VLAlast_state_change_epoch - $VLAlast_call_time_epoch); $minutes = floor($call_length / 60); @@ -292,9 +298,10 @@ if ($ACTION == 'top_panel') $seconds = $hangup_length - ($minutes * 60); $HUtime = sprintf('%s:%s',$minutes,str_pad($seconds,2,'0',STR_PAD_LEFT)); - echo ""._QXZ("Call Time").": $CLtime     \n"; - echo ""._QXZ("Dead Timer").": $HUtime     \n"; + echo ""._QXZ("Call Time").": $CLtime   \n"; + echo ""._QXZ("Dead Timer").": $HUtime   \n"; $stage = "DEAD $CLtime $HUtime"; + $STACKED_left = ($STACKED_left + 230); } } else @@ -323,18 +330,6 @@ if ($ACTION == 'top_panel') $ADsql = "or ( (campaign_id LIKE \"%AGENTDIRECT%\") and (agent_only='$user') )"; } - - - - - - - - - - - - ### BEGIN check for calls_inqueue_count_ settings containers and calculate calls in queue ### $RingCallsOne=''; $RingCallsTwo=''; @@ -689,7 +684,16 @@ if ($ACTION == 'top_panel') if ( (strlen($RingCallsOne) > 10) or (strlen($RingCallsTwo) > 10) ) { if ( (strlen($RingCallsOne) > 10) and (strlen($RingCallsTwo) > 10) ) - {echo "$RingCallsOne     $RingCallsTwo";} + { + if ($calls_in_queue_display == 'STACKED') + { + echo "                             "; + echo "$RingCallsOne"; + echo "$RingCallsTwo"; + } + else + {echo "$RingCallsOne     $RingCallsTwo";} + } else {echo "$RingCallsOne$RingCallsTwo";} } @@ -792,7 +796,7 @@ if ($ACTION == 'top_panel_realtime') } if (xmlhttp) { - top_panel_query = "user=&ACTION=top_panel&calls_in_queue_option="; + top_panel_query = "user=&ACTION=top_panel&calls_in_queue_option=&calls_in_queue_display="; xmlhttp.open('POST', 'alt_display.php'); xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); xmlhttp.send(top_panel_query); diff --git a/agc_2-X/trunk/www/vicidial/admin.php b/agc_2-X/trunk/www/vicidial/admin.php index 0d1aefb3..4769defd 100644 --- a/agc_2-X/trunk/www/vicidial/admin.php +++ b/agc_2-X/trunk/www/vicidial/admin.php @@ -2644,6 +2644,8 @@ if (isset($_GET["calls_inqueue_count_one"])) {$calls_inqueue_count_one=$_GET[" elseif (isset($_POST["calls_inqueue_count_one"])) {$calls_inqueue_count_one=$_POST["calls_inqueue_count_one"];} if (isset($_GET["calls_inqueue_count_two"])) {$calls_inqueue_count_two=$_GET["calls_inqueue_count_two"];} elseif (isset($_POST["calls_inqueue_count_two"])) {$calls_inqueue_count_two=$_POST["calls_inqueue_count_two"];} +if (isset($_GET["mohsuggest"])) {$mohsuggest=$_GET["mohsuggest"];} + elseif (isset($_POST["mohsuggest"])) {$mohsuggest=$_POST["mohsuggest"];} if (isset($script_id)) {$script_id= mb_strtoupper($script_id,'utf-8');} if (isset($lead_filter_id)) {$lead_filter_id = mb_strtoupper($lead_filter_id,'utf-8');} @@ -3537,6 +3539,7 @@ if ($non_latin < 1) $agent_dial_owner_only = preg_replace('/[^-_0-9a-zA-Z]/','',$agent_dial_owner_only); $reset_time = preg_replace('/[^-_0-9a-zA-Z]/','',$reset_time); $moh_id = preg_replace('/[^-_0-9a-zA-Z]/','',$moh_id); + $mohsuggest = preg_replace('/[^-_0-9a-zA-Z]/','',$mohsuggest); $drop_inbound_group_override = preg_replace('/[^-_0-9a-zA-Z]/','',$drop_inbound_group_override); $timer_action = preg_replace('/[^-_0-9a-zA-Z]/','',$timer_action); $record_call = preg_replace('/[^-_0-9a-zA-Z]/','',$record_call); @@ -4241,6 +4244,7 @@ else $agent_dial_owner_only = preg_replace('/[^-_0-9\p{L}]/u','',$agent_dial_owner_only); $reset_time = preg_replace('/[^-_0-9\p{L}]/u','',$reset_time); $moh_id = preg_replace('/[^-_0-9\p{L}]/u','',$moh_id); + $mohsuggest = preg_replace('/[^-_0-9\p{L}]/u','',$mohsuggest); $drop_inbound_group_override = preg_replace('/[^-_0-9\p{L}]/u','',$drop_inbound_group_override); $timer_action = preg_replace('/[^-_0-9\p{L}]/u','',$timer_action); $record_call = preg_replace('/[^-_0-9\p{L}]/u','',$record_call); @@ -5645,12 +5649,13 @@ if ($SSscript_remove_js > 0) # 210417-1027 - Added calls_waiting_vl_X campaign settings # 210421-2227 - Added more screen labels for non-form fields # 210425-1506 - Added calls_inqueue_count_ campaign options +# 210429-1624 - Added mohsuggest phone config 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-811a'; -$build = '210425-1506'; +$admin_version = '2.14-812a'; +$build = '210429-1624'; $STARTtime = date("U"); $SQLdate = date("Y-m-d H:i:s"); @@ -10171,7 +10176,7 @@ if ($ADD==21222222222) else { echo "
"._QXZ("PHONE COPIED").": $new_extension, $new_server_ip - VIEW HERE\n"; - $ins_stmt="INSERT INTO phones select '$new_extension', '$new_dialplan_number', '$new_voicemail_id', phone_ip, computer_ip, '$new_server_ip', '$new_login', '$new_pass', status, active, phone_type, '$new_fullname', company, picture, messages, old_messages, protocol, local_gmt, ASTmgrUSERNAME, ASTmgrSECRET, login_user, login_pass, login_campaign, park_on_extension, conf_on_extension, VICIDIAL_park_on_extension, VICIDIAL_park_on_filename, monitor_prefix, recording_exten, voicemail_exten, voicemail_dump_exten, ext_context, dtmf_send_extension, call_out_number_group, client_browser, install_directory, local_web_callerID_URL, VICIDIAL_web_URL, AGI_call_logging_enabled, user_switching_enabled, conferencing_enabled, admin_hangup_enabled, admin_hijack_enabled, admin_monitor_enabled, call_parking_enabled, updater_check_enabled, AFLogging_enabled, QUEUE_ACTION_enabled, CallerID_popup_enabled, voicemail_button_enabled, enable_fast_refresh, fast_refresh_rate, enable_persistant_mysql, auto_dial_next_number, VDstop_rec_after_each_call, DBX_server, DBX_database, DBX_user, DBX_pass, DBX_port, DBY_server, DBY_database, DBY_user, DBY_pass, DBY_port, '$new_outbound_cid', enable_sipsak_messages, email, template_id, conf_override, phone_context, phone_ring_timeout, '$new_conf_secret', delete_vm_after_email, is_webphone, use_external_server_ip, codecs_list, codecs_with_template, webphone_dialpad, on_hook_agent, webphone_auto_answer, voicemail_timezone, voicemail_options, user_group, voicemail_greeting, voicemail_dump_exten_no_inst, voicemail_instructions, on_login_report, unavail_dialplan_fwd_exten, unavail_dialplan_fwd_context, nva_call_url, nva_search_method, nva_error_filename, nva_new_list_id, nva_new_phone_code, nva_new_status, webphone_dialbox, webphone_mute, webphone_volume, webphone_debug, outbound_alt_cid, conf_qualify, webphone_layout from phones where extension='$source_extension' and server_ip='$source_server_ip'"; + $ins_stmt="INSERT INTO phones select '$new_extension', '$new_dialplan_number', '$new_voicemail_id', phone_ip, computer_ip, '$new_server_ip', '$new_login', '$new_pass', status, active, phone_type, '$new_fullname', company, picture, messages, old_messages, protocol, local_gmt, ASTmgrUSERNAME, ASTmgrSECRET, login_user, login_pass, login_campaign, park_on_extension, conf_on_extension, VICIDIAL_park_on_extension, VICIDIAL_park_on_filename, monitor_prefix, recording_exten, voicemail_exten, voicemail_dump_exten, ext_context, dtmf_send_extension, call_out_number_group, client_browser, install_directory, local_web_callerID_URL, VICIDIAL_web_URL, AGI_call_logging_enabled, user_switching_enabled, conferencing_enabled, admin_hangup_enabled, admin_hijack_enabled, admin_monitor_enabled, call_parking_enabled, updater_check_enabled, AFLogging_enabled, QUEUE_ACTION_enabled, CallerID_popup_enabled, voicemail_button_enabled, enable_fast_refresh, fast_refresh_rate, enable_persistant_mysql, auto_dial_next_number, VDstop_rec_after_each_call, DBX_server, DBX_database, DBX_user, DBX_pass, DBX_port, DBY_server, DBY_database, DBY_user, DBY_pass, DBY_port, '$new_outbound_cid', enable_sipsak_messages, email, template_id, conf_override, phone_context, phone_ring_timeout, '$new_conf_secret', delete_vm_after_email, is_webphone, use_external_server_ip, codecs_list, codecs_with_template, webphone_dialpad, on_hook_agent, webphone_auto_answer, voicemail_timezone, voicemail_options, user_group, voicemail_greeting, voicemail_dump_exten_no_inst, voicemail_instructions, on_login_report, unavail_dialplan_fwd_exten, unavail_dialplan_fwd_context, nva_call_url, nva_search_method, nva_error_filename, nva_new_list_id, nva_new_phone_code, nva_new_status, webphone_dialbox, webphone_mute, webphone_volume, webphone_debug, outbound_alt_cid, conf_qualify, webphone_layout, mohsuggest from phones where extension='$source_extension' and server_ip='$source_server_ip'"; $ins_rslt=mysql_to_mysqli($ins_stmt, $link); $affected_rows = mysqli_affected_rows($link); if ($affected_rows>0) @@ -18542,7 +18547,7 @@ if ($ADD==41111111111) if ( ($voicemail_greeting == '') and (strlen($old_voicemail_greeting) > 0) ) {$voicemail_greeting = '---DELETE---';} - $stmt="UPDATE phones set extension='$extension', dialplan_number='$dialplan_number', voicemail_id='$voicemail_id', phone_ip='$phone_ip', computer_ip='$computer_ip', server_ip='$server_ip', login='$login', pass='$pass', status='$status', active='$active', phone_type='$phone_type', fullname='$fullname', company='$company', picture='$picture', protocol='$protocol', local_gmt='$local_gmt', ASTmgrUSERNAME='$ASTmgrUSERNAME', ASTmgrSECRET='$ASTmgrSECRET', login_user='$login_user', login_pass='$login_pass', login_campaign='$login_campaign', park_on_extension='$park_on_extension', conf_on_extension='$conf_on_extension', VICIDIAL_park_on_extension='$VICIDIAL_park_on_extension', VICIDIAL_park_on_filename='$VICIDIAL_park_on_filename', monitor_prefix='$monitor_prefix', recording_exten='$recording_exten', voicemail_exten='$voicemail_exten', voicemail_dump_exten='$voicemail_dump_exten', ext_context='$ext_context', dtmf_send_extension='$dtmf_send_extension', call_out_number_group='$call_out_number_group', client_browser='$client_browser', install_directory='$install_directory', local_web_callerID_URL='" . mysqli_real_escape_string($link, $local_web_callerID_URL) . "', VICIDIAL_web_URL='" . mysqli_real_escape_string($link, $VICIDIAL_web_URL) . "', AGI_call_logging_enabled='$AGI_call_logging_enabled', user_switching_enabled='$user_switching_enabled', conferencing_enabled='$conferencing_enabled', admin_hangup_enabled='$admin_hangup_enabled', admin_hijack_enabled='$admin_hijack_enabled', admin_monitor_enabled='$admin_monitor_enabled', call_parking_enabled='$call_parking_enabled', updater_check_enabled='$updater_check_enabled', AFLogging_enabled='$AFLogging_enabled', QUEUE_ACTION_enabled='$QUEUE_ACTION_enabled', CallerID_popup_enabled='$CallerID_popup_enabled', voicemail_button_enabled='$voicemail_button_enabled', enable_fast_refresh='$enable_fast_refresh', fast_refresh_rate='$fast_refresh_rate', enable_persistant_mysql='$enable_persistant_mysql', auto_dial_next_number='$auto_dial_next_number', VDstop_rec_after_each_call='$VDstop_rec_after_each_call', DBX_server='$DBX_server', DBX_database='$DBX_database', DBX_user='$DBX_user', DBX_pass='$DBX_pass', DBX_port='$DBX_port', DBY_server='$DBY_server', DBY_database='$DBY_database', DBY_user='$DBY_user', DBY_pass='$DBY_pass', DBY_port='$DBY_port', outbound_cid='$outbound_cid', enable_sipsak_messages='$enable_sipsak_messages', email='$email', template_id='$template_id', conf_override='$conf_override',phone_context='$phone_context',phone_ring_timeout='$phone_ring_timeout',conf_secret='$conf_secret', delete_vm_after_email='$delete_vm_after_email',is_webphone='$is_webphone',use_external_server_ip='$use_external_server_ip',codecs_list='$codecs_list',codecs_with_template='$codecs_with_template',webphone_dialpad='$webphone_dialpad',on_hook_agent='$on_hook_agent',webphone_auto_answer='$webphone_auto_answer',voicemail_timezone='$voicemail_timezone',voicemail_options='$voicemail_options',user_group='$user_group',voicemail_greeting='$voicemail_greeting',voicemail_dump_exten_no_inst='$voicemail_dump_exten_no_inst',voicemail_instructions='$voicemail_instructions',on_login_report='$show_vm_on_summary',unavail_dialplan_fwd_exten='$unavail_dialplan_fwd_exten',unavail_dialplan_fwd_context='$unavail_dialplan_fwd_context', nva_call_url='" . mysqli_real_escape_string($link, $nva_call_url) . "', nva_search_method='$nva_search_method', nva_error_filename='$nva_error_filename',nva_new_list_id='$nva_new_list_id',nva_new_phone_code='$nva_new_phone_code',nva_new_status='$nva_new_status',webphone_dialbox='$webphone_dialbox',webphone_mute='$webphone_mute',webphone_volume='$webphone_volume',webphone_debug='$webphone_debug',outbound_alt_cid='$outbound_alt_cid',conf_qualify='$conf_qualify',webphone_layout='" . mysqli_real_escape_string($link, $webphone_layout) . "' where extension='$old_extension' and server_ip='$old_server_ip';"; + $stmt="UPDATE phones set extension='$extension', dialplan_number='$dialplan_number', voicemail_id='$voicemail_id', phone_ip='$phone_ip', computer_ip='$computer_ip', server_ip='$server_ip', login='$login', pass='$pass', status='$status', active='$active', phone_type='$phone_type', fullname='$fullname', company='$company', picture='$picture', protocol='$protocol', local_gmt='$local_gmt', ASTmgrUSERNAME='$ASTmgrUSERNAME', ASTmgrSECRET='$ASTmgrSECRET', login_user='$login_user', login_pass='$login_pass', login_campaign='$login_campaign', park_on_extension='$park_on_extension', conf_on_extension='$conf_on_extension', VICIDIAL_park_on_extension='$VICIDIAL_park_on_extension', VICIDIAL_park_on_filename='$VICIDIAL_park_on_filename', monitor_prefix='$monitor_prefix', recording_exten='$recording_exten', voicemail_exten='$voicemail_exten', voicemail_dump_exten='$voicemail_dump_exten', ext_context='$ext_context', dtmf_send_extension='$dtmf_send_extension', call_out_number_group='$call_out_number_group', client_browser='$client_browser', install_directory='$install_directory', local_web_callerID_URL='" . mysqli_real_escape_string($link, $local_web_callerID_URL) . "', VICIDIAL_web_URL='" . mysqli_real_escape_string($link, $VICIDIAL_web_URL) . "', AGI_call_logging_enabled='$AGI_call_logging_enabled', user_switching_enabled='$user_switching_enabled', conferencing_enabled='$conferencing_enabled', admin_hangup_enabled='$admin_hangup_enabled', admin_hijack_enabled='$admin_hijack_enabled', admin_monitor_enabled='$admin_monitor_enabled', call_parking_enabled='$call_parking_enabled', updater_check_enabled='$updater_check_enabled', AFLogging_enabled='$AFLogging_enabled', QUEUE_ACTION_enabled='$QUEUE_ACTION_enabled', CallerID_popup_enabled='$CallerID_popup_enabled', voicemail_button_enabled='$voicemail_button_enabled', enable_fast_refresh='$enable_fast_refresh', fast_refresh_rate='$fast_refresh_rate', enable_persistant_mysql='$enable_persistant_mysql', auto_dial_next_number='$auto_dial_next_number', VDstop_rec_after_each_call='$VDstop_rec_after_each_call', DBX_server='$DBX_server', DBX_database='$DBX_database', DBX_user='$DBX_user', DBX_pass='$DBX_pass', DBX_port='$DBX_port', DBY_server='$DBY_server', DBY_database='$DBY_database', DBY_user='$DBY_user', DBY_pass='$DBY_pass', DBY_port='$DBY_port', outbound_cid='$outbound_cid', enable_sipsak_messages='$enable_sipsak_messages', email='$email', template_id='$template_id', conf_override='$conf_override',phone_context='$phone_context',phone_ring_timeout='$phone_ring_timeout',conf_secret='$conf_secret', delete_vm_after_email='$delete_vm_after_email',is_webphone='$is_webphone',use_external_server_ip='$use_external_server_ip',codecs_list='$codecs_list',codecs_with_template='$codecs_with_template',webphone_dialpad='$webphone_dialpad',on_hook_agent='$on_hook_agent',webphone_auto_answer='$webphone_auto_answer',voicemail_timezone='$voicemail_timezone',voicemail_options='$voicemail_options',user_group='$user_group',voicemail_greeting='$voicemail_greeting',voicemail_dump_exten_no_inst='$voicemail_dump_exten_no_inst',voicemail_instructions='$voicemail_instructions',on_login_report='$show_vm_on_summary',unavail_dialplan_fwd_exten='$unavail_dialplan_fwd_exten',unavail_dialplan_fwd_context='$unavail_dialplan_fwd_context', nva_call_url='" . mysqli_real_escape_string($link, $nva_call_url) . "', nva_search_method='$nva_search_method', nva_error_filename='$nva_error_filename',nva_new_list_id='$nva_new_list_id',nva_new_phone_code='$nva_new_phone_code',nva_new_status='$nva_new_status',webphone_dialbox='$webphone_dialbox',webphone_mute='$webphone_mute',webphone_volume='$webphone_volume',webphone_debug='$webphone_debug',outbound_alt_cid='$outbound_alt_cid',conf_qualify='$conf_qualify',webphone_layout='" . mysqli_real_escape_string($link, $webphone_layout) . "',mohsuggest='$mohsuggest' where extension='$old_extension' and server_ip='$old_server_ip';"; $rslt=mysql_to_mysqli($stmt, $link); $stmtA="UPDATE servers SET rebuild_conf_files='Y' where generate_vicidial_conf='Y' and active_asterisk_server='Y' and server_ip='$server_ip';"; @@ -37699,7 +37704,7 @@ if ($ADD==31111111111) echo "\n"; echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo "\n"; diff --git a/agc_2-X/trunk/www/vicidial/help_documentation.txt b/agc_2-X/trunk/www/vicidial/help_documentation.txt index 6a7a5e25..7ecf17c5 100644 --- a/agc_2-X/trunk/www/vicidial/help_documentation.txt +++ b/agc_2-X/trunk/www/vicidial/help_documentation.txt @@ -1,4 +1,4 @@ -# version: 20210425150401 +# version: 20210429163201 users-user User ID This field is where you put the users ID number, can be up to 8 digits in length, Must be at least 2 characters in length. users-pass Password This field is where you put the users password. Must be at least 2 characters in length. 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. users-force_change_password Force Change Password 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. @@ -866,6 +866,7 @@ phones-voicemail_greeting Voicemail Greeting This optional setting allows y phones-voicemail_instructions Voicemail Instructions This setting allows you to define if the voicemail instructions will play after the voicemail greeting when a call rings on the agent extension and times out to voicemail. Default is Y. phones-show_vm_on_summary Show VM on Summary Screen This option will display this Voicemail Box information on the summary page seen when logging into the administration page. It will show the box name, new message count, old count, and total messages in the box. Note the table will not be shown unless you have set at least one mailbox to Y. Default is N for off. phones-unavail_dialplan_fwd_exten Unavailable Dialplan Forward If this field is populated, any calls sent to this phone that go unanswered will be sent to a dialplan extension instead of going to the phone voicemail box. If context is left blank then the call will go to the extension at the default context. Default is blank for disabled. +phones-mohsuggest Music on Hold Suggest This option will allow you to define a specific Music on Hold context for the system to use for the customer to hear if the user of this phone places a customer on hold through their phone, not through the Agent Screen. Default is blank for disabled. phones-picture Picture Not yet Implemented. phones-messages New Messages Number of new voicemail messages for this phone on the Asterisk server. phones-old_messages Old Messages Number of old voicemail messages for this phone on the Asterisk server.
\n"; echo ""; - $stmt="SELECT extension,dialplan_number,voicemail_id,phone_ip,computer_ip,server_ip,login,pass,status,active,phone_type,fullname,company,picture,messages,old_messages,protocol,local_gmt,ASTmgrUSERNAME,ASTmgrSECRET,login_user,login_pass,login_campaign,park_on_extension,conf_on_extension,VICIDIAL_park_on_extension,VICIDIAL_park_on_filename,monitor_prefix,recording_exten,voicemail_exten,voicemail_dump_exten,ext_context,dtmf_send_extension,call_out_number_group,client_browser,install_directory,local_web_callerID_URL,VICIDIAL_web_URL,AGI_call_logging_enabled,user_switching_enabled,conferencing_enabled,admin_hangup_enabled,admin_hijack_enabled,admin_monitor_enabled,call_parking_enabled,updater_check_enabled,AFLogging_enabled,QUEUE_ACTION_enabled,CallerID_popup_enabled,voicemail_button_enabled,enable_fast_refresh,fast_refresh_rate,enable_persistant_mysql,auto_dial_next_number,VDstop_rec_after_each_call,DBX_server,DBX_database,DBX_user,DBX_pass,DBX_port,DBY_server,DBY_database,DBY_user,DBY_pass,DBY_port,outbound_cid,enable_sipsak_messages,email,template_id,conf_override,phone_context,phone_ring_timeout,conf_secret,delete_vm_after_email,is_webphone,use_external_server_ip,codecs_list,codecs_with_template,webphone_dialpad,on_hook_agent,webphone_auto_answer,voicemail_timezone,voicemail_options,user_group,voicemail_greeting,voicemail_dump_exten_no_inst,voicemail_instructions,on_login_report,unavail_dialplan_fwd_exten,unavail_dialplan_fwd_context,nva_call_url,nva_search_method,nva_error_filename,nva_new_list_id,nva_new_phone_code,nva_new_status,webphone_dialbox,webphone_mute,webphone_volume,webphone_debug,outbound_alt_cid,conf_qualify,webphone_layout from phones where extension='$extension' and server_ip='$server_ip' $LOGadmin_viewable_groupsSQL;"; + $stmt="SELECT extension,dialplan_number,voicemail_id,phone_ip,computer_ip,server_ip,login,pass,status,active,phone_type,fullname,company,picture,messages,old_messages,protocol,local_gmt,ASTmgrUSERNAME,ASTmgrSECRET,login_user,login_pass,login_campaign,park_on_extension,conf_on_extension,VICIDIAL_park_on_extension,VICIDIAL_park_on_filename,monitor_prefix,recording_exten,voicemail_exten,voicemail_dump_exten,ext_context,dtmf_send_extension,call_out_number_group,client_browser,install_directory,local_web_callerID_URL,VICIDIAL_web_URL,AGI_call_logging_enabled,user_switching_enabled,conferencing_enabled,admin_hangup_enabled,admin_hijack_enabled,admin_monitor_enabled,call_parking_enabled,updater_check_enabled,AFLogging_enabled,QUEUE_ACTION_enabled,CallerID_popup_enabled,voicemail_button_enabled,enable_fast_refresh,fast_refresh_rate,enable_persistant_mysql,auto_dial_next_number,VDstop_rec_after_each_call,DBX_server,DBX_database,DBX_user,DBX_pass,DBX_port,DBY_server,DBY_database,DBY_user,DBY_pass,DBY_port,outbound_cid,enable_sipsak_messages,email,template_id,conf_override,phone_context,phone_ring_timeout,conf_secret,delete_vm_after_email,is_webphone,use_external_server_ip,codecs_list,codecs_with_template,webphone_dialpad,on_hook_agent,webphone_auto_answer,voicemail_timezone,voicemail_options,user_group,voicemail_greeting,voicemail_dump_exten_no_inst,voicemail_instructions,on_login_report,unavail_dialplan_fwd_exten,unavail_dialplan_fwd_context,nva_call_url,nva_search_method,nva_error_filename,nva_new_list_id,nva_new_phone_code,nva_new_status,webphone_dialbox,webphone_mute,webphone_volume,webphone_debug,outbound_alt_cid,conf_qualify,webphone_layout,mohsuggest from phones where extension='$extension' and server_ip='$server_ip' $LOGadmin_viewable_groupsSQL;"; $rslt=mysql_to_mysqli($stmt, $link); $row=mysqli_fetch_row($rslt); @@ -37777,6 +37782,8 @@ if ($ADD==31111111111) echo "
"._QXZ("Show VM on Summary Screen").": $NWB#phones-show_vm_on_summary$NWE
"._QXZ("Unavailable Dialplan Forward").": "._QXZ("context").": $NWB#phones-unavail_dialplan_fwd_exten$NWE
"._QXZ("Music on Hold Suggest").": "._QXZ("moh chooser")." $NWB#phones-mohsuggest$NWE
"._QXZ("Company").": $NWB#phones-company$NWE
"._QXZ("Picture").": $NWB#phones-picture$NWE
"._QXZ("New Messages").": $row[14]$NWB#phones-messages$NWE