diff --git a/extras/ConfBridge/ConfBridge Documentation.txt b/extras/ConfBridge/ConfBridge Documentation.txt index e53d2d2a..bdeb1cb8 100644 --- a/extras/ConfBridge/ConfBridge Documentation.txt +++ b/extras/ConfBridge/ConfBridge Documentation.txt @@ -6,6 +6,9 @@ VICIdial ConfBridge Support: STARTED: 2022-06-22 UPDATED: 2022-08-27 !!! NOTE: VICIdial ConfBridge support requires Asterisk 16 or higher to be installed on your dialers. Code development and testing was done with VICIbox 10 and the optional Asterisk 16 package available through VICIbox 10 !!! +BETA support for ConfBridge is included in the VICIdial svn/trunk codebase as of revision 3624. + + - Background For the past 19 years, the core of Vicidial has been based around the MeetMe conferencing engine built into Asterisk. When an agent logs into Vicidial their phone gets called by Vicidial. When that call connects the agent gets placed into a MeetMe conference. For the most part they stay within that conference the entire time they are logged into Vicidial. It is only when they leave a consultative transfer that they get moved to a different MeetMe conference. When an agent places a Manual dial phone call, the outbound call gets connected to their MeetMe phone conference. When an auto dial phone call answers it goes through the outbound routing agi and ultimately gets routed into an agent's MeetMe phone conference. When an inbound call gets past to the inbound routing AGI script it ultimately gets routed to an agent's MeetMe phone conference. Vicidial initiates call recordings by attaching a monitoring extension to an agents MeetMe phone conference. As such Vicidial at its most basic level is designed to place channels into and remove them from MeetMe phone conferences. @@ -556,3 +559,11 @@ Webservers: - vicidial.php.diff - vdc_db_query.php.diff - manager_send.php.diff + + + +- Web Admin changes: + +The admin web screens had been modified to show ConfBridges on servers and management of ConfBridges in the database. + +Also, the "Server Modify" page now has settings for the Conferencing Engine and the Conf Update Interval. diff --git a/www/vicidial/admin.php b/www/vicidial/admin.php index 523b0ce5..7824dafd 100644 --- a/www/vicidial/admin.php +++ b/www/vicidial/admin.php @@ -16,7 +16,7 @@ require("functions.php"); ###################################################################################################### ###################################################################################################### -$page_width='770'; +$page_width='870'; $section_width='750'; $header_font_size='12'; $subheader_font_size='11'; @@ -2718,6 +2718,10 @@ if (isset($_GET["max_logged_in_agents"])) {$max_logged_in_agents=$_GET["max_l elseif (isset($_POST["max_logged_in_agents"])) {$max_logged_in_agents=$_POST["max_logged_in_agents"];} if (isset($_GET["user_codes_admin"])) {$user_codes_admin=$_GET["user_codes_admin"];} elseif (isset($_POST["user_codes_admin"])) {$user_codes_admin=$_POST["user_codes_admin"];} +if (isset($_GET["conf_engine"])) {$conf_engine=$_GET["conf_engine"];} + elseif (isset($_POST["conf_engine"])) {$conf_engine=$_POST["conf_engine"];} +if (isset($_GET["conf_update_interval"])) {$conf_update_interval=$_GET["conf_update_interval"];} + elseif (isset($_POST["conf_update_interval"])) {$conf_update_interval=$_POST["conf_update_interval"];} $DB=preg_replace("/[^0-9a-zA-Z]/","",$DB); @@ -3219,6 +3223,7 @@ $allow_web_debug = preg_replace('/[^0-9]/','',$allow_web_debug); $force_logout = preg_replace('/[^0-9]/','',$force_logout); $log_recording_access = preg_replace('/[^0-9]/','',$log_recording_access); $dial_level_override = preg_replace('/[^0-9]/','',$dial_level_override); +$conf_update_interval = preg_replace('/[^0-9]/','',$conf_update_interval); $user_new_lead_limit = preg_replace('/[^-0-9]/','',$user_new_lead_limit); $drop_call_seconds = preg_replace('/[^-0-9]/','',$drop_call_seconds); @@ -3432,12 +3437,12 @@ $ig_xfer_list_sort = preg_replace('/[^-_0-9a-zA-Z]/','',$ig_xfer_list_sort); $script_tab_frame_size = preg_replace('/[^-_0-9a-zA-Z]/','',$script_tab_frame_size); $max_logged_in_agents = preg_replace('/[^-_0-9a-zA-Z]/','',$max_logged_in_agents); $user_codes_admin = preg_replace('/[^-_0-9a-zA-Z]/','',$user_codes_admin); +$conf_engine = preg_replace('/[^-_0-9a-zA-Z]/','',$conf_engine); if ($non_latin < 1) { ### ALPHA-NUMERIC ONLY ### $is_webphone = preg_replace('/[^-_0-9a-zA-Z]/','',$is_webphone); - $agent_script_override = preg_replace('/[^-_0-9a-zA-Z]/','',$agent_script_override); $campaign_script = preg_replace('/[^0-9a-zA-Z]/','',$campaign_script); $submit = preg_replace('/[^0-9a-zA-Z]/','',$submit); $campaign_cid = preg_replace('/[^0-9a-zA-Z]/','',$campaign_cid); @@ -3519,7 +3524,6 @@ if ($non_latin < 1) $dead_to_dispo = preg_replace('/[^0-9a-zA-Z]/','',$dead_to_dispo); $routing_prefix = preg_replace('/[^0-9a-zA-Z]/','',$routing_prefix); $inbound_survey = preg_replace('/[^0-9a-zA-Z]/','',$inbound_survey); - $inbound_list_script_override = preg_replace('/[^-_0-9a-zA-Z]/','',$inbound_list_script_override); $pause_max_dispo = preg_replace('/[^0-9a-zA-Z]/','',$pause_max_dispo); $areacode = preg_replace('/[^0-9a-zA-Z]/','',$areacode); $require_mgr_approval = preg_replace('/[^0-9a-zA-Z]/','',$require_mgr_approval); @@ -3858,6 +3862,8 @@ if ($non_latin < 1) $pre_filter_recent_call = preg_replace('/[^-_0-9a-zA-Z]/','',$pre_filter_recent_call); $pre_filter_recent_extension = preg_replace('/[^-_0-9a-zA-Z]/','',$pre_filter_recent_extension); $user_group_two = preg_replace('/[^-_0-9a-zA-Z]/','',$user_group_two); + $agent_script_override = preg_replace('/[^-_0-9a-zA-Z]/','',$agent_script_override); + $inbound_list_script_override = preg_replace('/[^-_0-9a-zA-Z]/','',$inbound_list_script_override); ### ALPHA-NUMERIC and underscore $qc_statuses_id = preg_replace('/[^_0-9a-zA-Z]/','',$qc_statuses_id); @@ -4156,7 +4162,6 @@ else { ### ALPHA-NUMERIC ONLY ### $is_webphone = preg_replace('/[^-_0-9\p{L}]/u','',$is_webphone); - $agent_script_override = preg_replace('/[^-_0-9\p{L}]/u','',$agent_script_override); $campaign_script = preg_replace('/[^0-9\p{L}]/u','',$campaign_script); $submit = preg_replace('/[^0-9\p{L}]/u','',$submit); $campaign_cid = preg_replace('/[^0-9\p{L}]/u','',$campaign_cid); @@ -4238,7 +4243,6 @@ else $dead_to_dispo = preg_replace('/[^0-9\p{L}]/u','',$dead_to_dispo); $routing_prefix = preg_replace('/[^0-9\p{L}]/u','',$routing_prefix); $inbound_survey = preg_replace('/[^0-9\p{L}]/u','',$inbound_survey); - $inbound_list_script_override = preg_replace('/[^-_0-9\p{L}]/u','',$inbound_list_script_override); $pause_max_dispo = preg_replace('/[^0-9\p{L}]/u','',$pause_max_dispo); $areacode = preg_replace('/[^0-9\p{L}]/u','',$areacode); $require_mgr_approval = preg_replace('/[^0-9\p{L}]/u','',$require_mgr_approval); @@ -4576,6 +4580,8 @@ else $queue_group = preg_replace('/[^-_0-9\p{L}]/u','',$queue_group); $pre_filter_recent_call = preg_replace('/[^-_0-9\p{L}]/u','',$pre_filter_recent_call); $pre_filter_recent_extension = preg_replace('/[^-_0-9\p{L}]/u','',$pre_filter_recent_extension); + $agent_script_override = preg_replace('/[^-_0-9\p{L}]/u','',$agent_script_override); + $inbound_list_script_override = preg_replace('/[^-_0-9\p{L}]/u','',$inbound_list_script_override); $user_group_two = preg_replace('/[^-_0-9\p{L}]/u','',$user_group_two); ### ALPHA-NUMERIC and underscore and dash and slash and dot @@ -5921,12 +5927,13 @@ if ($SSscript_remove_js > 0) # 220730-0859 - Added user_codes_admin user/system setting # 220811-0854 - Added webphone inticator"(w)" to Phone Listing page # 220824-1452 - Fix for Script override input variable filtering issues +# 220827-0855 - Added BETA support for ConfBridge in Servers and Conferences # # 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-862a'; -$build = '220824-1452'; +$admin_version = '2.14-863a'; +$build = '220827-0855'; $STARTtime = date("U"); $SQLdate = date("Y-m-d H:i:s"); @@ -6618,6 +6625,7 @@ if ($ADD==197111111111) {$hh='admin'; $sh='vmmg'; echo _QXZ("ADD VM MESSAGE GROU if ($ADD==198111111111) {$hh='admin'; $sh='qg'; echo _QXZ("ADD QUEUE GROUP");} if ($ADD==1111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("ADD NEW CONFERENCE");} if ($ADD==11111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("ADD NEW AGENT CONFERENCE");} +if ($ADD==12111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("ADD NEW AGENT CONFBRIDGE");} if ($ADD=='2') {$hh='users'; $sh='new'; echo _QXZ("New User Addition");} if ($ADD=='2A') {$hh='users'; $sh='copy'; echo _QXZ("New Copied User Addition");} if ($ADD==20) {$hh='campaigns'; $sh='basic'; echo _QXZ("New Copied Campaign Addition");} @@ -6676,6 +6684,7 @@ if ($ADD==297111111111) {$hh='admin'; $sh='vmmg'; echo _QXZ("ADDING NEW VM MESSA if ($ADD==298111111111) {$hh='admin'; $sh='qg'; echo _QXZ("ADDING NEW QUEUE GROUP");} if ($ADD==2111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("ADDING NEW CONFERENCE");} if ($ADD==21111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("ADDING NEW AGENT CONFERENCE");} +if ($ADD==22111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("ADDING NEW AGENT CONFBRIDGE");} if ($ADD==221111111111111) {$hh='admin'; $sh='status'; echo _QXZ("ADDING SYSTEM STATUSES");} if ($ADD==231111111111111) {$hh='admin'; $sh='status'; echo _QXZ("ADDING STATUS CATEGORY");} if ($ADD==241111111111111) {$hh='admin'; $sh='status'; echo _QXZ("ADDING QC STATUS CODE");} @@ -6761,6 +6770,7 @@ if ($ADD==397111111111) {$hh='admin'; $sh='vmmg'; echo _QXZ("MODIFY VM MESSAGE G if ($ADD==398111111111) {$hh='admin'; $sh='qg'; echo _QXZ("MODIFY QUEUE GROUP");} if ($ADD==3111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("MODIFY CONFERENCE");} if ($ADD==31111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("MODIFY AGENT CONFERENCE");} +if ($ADD==32111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("MODIFY AGENT CONFBRIDGE");} if ($ADD==311111111111111) {$hh='admin'; $sh='settings'; echo _QXZ("MODIFY SYSTEM SETTINGS");} if ($ADD==321111111111111) {$hh='admin'; $sh='status'; echo _QXZ("MODIFY SYSTEM STATUSES");} if ($ADD==331111111111111) {$hh='admin'; $sh='status'; echo _QXZ("MODIFY STATUS CATEGORY");} @@ -6816,6 +6826,7 @@ if ($ADD==497111111111) {$hh='admin'; $sh='vmmg'; echo _QXZ("MODIFY VM MESSAGE G if ($ADD==498111111111) {$hh='admin'; $sh='qg'; echo _QXZ("MODIFY QUEUE GROUP");} if ($ADD==4111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("MODIFY CONFERENCE");} if ($ADD==41111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("MODIFY CONFERENCE");} +if ($ADD==42111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("MODIFY CONFBRIDGE");} if ($ADD==411111111111111) {$hh='admin'; $sh='settings'; echo _QXZ("MODIFY SYSTEM SETTINGS");} if ($ADD==421111111111111) {$hh='admin'; $sh='status'; echo _QXZ("MODIFY SYSTEM STATUSES");} if ($ADD==431111111111111) {$hh='admin'; $sh='status'; echo _QXZ("MODIFY STATUS CATEGORIES");} @@ -6862,6 +6873,7 @@ if ($ADD==597111111111) {$hh='admin'; $sh='vmmg'; echo _QXZ("DELETE VM MESSAGE G if ($ADD==598111111111) {$hh='admin'; $sh='qg'; echo _QXZ("DELETE QUEUE GROUP");} if ($ADD==5111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("DELETE CONFERENCE");} if ($ADD==51111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("DELETE AGENT CONFERENCE");} +if ($ADD==52111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("DELETE AGENT CONFBRIDGE");} if ($ADD==6) {$hh='users'; $sh='list'; echo _QXZ("Delete User");} if ($ADD==61) {$hh='campaigns'; $sh='detail'; echo _QXZ("Delete Campaign");} if ($ADD==62) {$hh='campaigns'; $sh='detail'; echo _QXZ("Logout Agents");} @@ -6911,6 +6923,7 @@ if ($ADD==697111111111) {$hh='admin'; $sh='vmmg'; echo _QXZ("DELETE VM MESSAGE G if ($ADD==698111111111) {$hh='admin'; $sh='qg'; echo _QXZ("DELETE QUEUE GROUP");} if ($ADD==6111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("DELETE CONFERENCE");} if ($ADD==61111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("DELETE AGENT CONFERENCE");} +if ($ADD==62111111111111) {$hh='admin'; $sh='conference'; echo _QXZ("DELETE AGENT CONFBRIDGE");} if ($ADD==73) {$hh='campaigns'; echo _QXZ("Dialable Lead Count");} if ($ADD==7111111) {$hh='scripts'; $sh='list'; echo _QXZ("Preview Script");} if ($ADD==700000000000000) {$hh='reports'; echo _QXZ("ADMIN CHANGE LOG");} @@ -6966,6 +6979,7 @@ if ($ADD==197000000000) {$hh='admin'; $sh='vmmg'; echo _QXZ("VM MESSAGE GROUPS L if ($ADD==198000000000) {$hh='admin'; $sh='qg'; echo _QXZ("QUEUE GROUPS LIST");} if ($ADD==1000000000000) {$hh='admin'; $sh='conference'; echo _QXZ("CONFERENCE LIST");} if ($ADD==10000000000000) {$hh='admin'; $sh='conference'; echo _QXZ("AGENT CONFERENCE LIST");} +if ($ADD==12000000000000) {$hh='admin'; $sh='conference'; echo _QXZ("AGENT CONFBRIDGE LIST");} if ($ADD==100000000000000) {$hh='qc'; $sh='campaign'; echo _QXZ("Quality Control");} if ($ADD==881) {$hh='qc'; $sh='enter'; echo _QXZ("Quality Control Campaign")," $campaign_id";} if ($ADD==550) {$hh='users'; $sh='search'; echo _QXZ("Search Form");} @@ -11476,6 +11490,34 @@ if ($ADD==11111111111111) } +###################### +# ADD=12111111111111 display the ADD NEW VICIDIAL CONFBRIDGE SCREEN +###################### +if ($ADD==12111111111111) + { + if ($LOGast_admin_access==1) + { + echo "
| \n";
+ echo " "._QXZ("ADD A NEW AGENT CONFBRIDGE")." |