From 80ab4278c2ce79c31d66e9998ae31988f250c7d6 Mon Sep 17 00:00:00 2001 From: mattf Date: Thu, 14 Nov 2024 06:23:43 +0000 Subject: [PATCH] Added update timestamps for sub-settings groups(like campaigns) to admin.php Added in_groups as input option for update_user Non-Agent API function git-svn-id: svn://192.168.202.10@3885 3d104415-ff17-0410-8863-d5cf3c621b8a --- agc_2-X/trunk/docs/INBOUND_CALLBACK_QUEUE.txt | 7 +- .../docs/MySQL_Multi-source-replication.txt | 284 ++++++++++++++++++ agc_2-X/trunk/docs/NON-AGENT_API.txt | 5 +- .../trunk/extras/MySQL_AST_CREATE_tables.sql | 52 +++- agc_2-X/trunk/extras/upgrade_2.14.sql | 31 ++ agc_2-X/trunk/www/vicidial/admin.php | 164 +++++++--- agc_2-X/trunk/www/vicidial/non_agent_api.php | 14 +- 7 files changed, 502 insertions(+), 55 deletions(-) create mode 100644 agc_2-X/trunk/docs/MySQL_Multi-source-replication.txt diff --git a/agc_2-X/trunk/docs/INBOUND_CALLBACK_QUEUE.txt b/agc_2-X/trunk/docs/INBOUND_CALLBACK_QUEUE.txt index 13be7367..0396beaa 100644 --- a/agc_2-X/trunk/docs/INBOUND_CALLBACK_QUEUE.txt +++ b/agc_2-X/trunk/docs/INBOUND_CALLBACK_QUEUE.txt @@ -1,4 +1,4 @@ -INBOUND CALLBACK QUEUE Started: 2018-01-15 Updated: 2023-03-12 +INBOUND CALLBACK QUEUE Started: 2018-01-15 Updated: 2024-11-01 The purpose of this feature is to allow for callers to leave the queue and be called back when their place in line is reached. Included in this new set of features are the new Closed Time features to In-Groups that allow all callers in queue to be presented with a press-1 option when the in-group closing time for the day has been reached. Also, an in-group feature was added to manually force the end of all queueing of calls for an in-group for the rest of the day. @@ -21,6 +21,9 @@ The ADMIN_keepalive_ALL.pl now has an added process to take care of archiving on The Real-Time report also has a new "Callback Queue Calls" top header in HTML view mode, so you can see how many LIVE entries there are in the inbound callback queue. If you want to see what in-groups those LIVE records are in, you can click on the "SHOW IN-GROUP STATS" link at the top of the Real-Time report. +NOTE: ORPHAN status callback-queue records were queued up to a specific available agent for the outbound call to be placed, but an error happened on the agent screen(like the agent closing their web browser) and it never changed from the SENDING status, but it is possible that the dial was initiated, so it is flagged as ORPHAN so at least you can look into it if you need to. + + Admin Web page changes: @@ -63,6 +66,8 @@ Closing Time Option Callback List ID - If Closing Time Option is set to CALLERID + + --------------------------------------------------------- Somewhat related feature: vicidial_abandon_check_queue diff --git a/agc_2-X/trunk/docs/MySQL_Multi-source-replication.txt b/agc_2-X/trunk/docs/MySQL_Multi-source-replication.txt new file mode 100644 index 00000000..96c2c945 --- /dev/null +++ b/agc_2-X/trunk/docs/MySQL_Multi-source-replication.txt @@ -0,0 +1,284 @@ +MySQL(MariaDB) Multi-Source Replication Started: 2024-09-20 Updated: 2024-09-24 + + +MariaDB 10.0.1(released 2013-02-06) added the Multi-Source Replication features: +https://mariadb.com/kb/en/multi-source-replication/ + + +Intro with instructions for how to set up multi-source replication, 2-master DBs feeding to 1-secondary DB server: +https://dev.mysql.com/blog-archive/mysql-5-7-multi-source-replication-automatically-combining-data-from-multiple-databases-into-one/ + + + + +Changes to the 82 VICIdial database tables that have AUTO_INCREMENT columns(As of September 24, 2024 - svn/trunk revision 3876): + + +FOR ALL 3 MASTER DB SERVERS: +SET GLOBAL auto_increment_increment=3; + + + +FOR SERVER 1: + +SET GLOBAL auto_increment_offset=3; + +ALTER TABLE verm_custom_report_holder AUTO_INCREMENT = 3; +ALTER TABLE vicidial_khomp_log AUTO_INCREMENT = 3; +ALTER TABLE contact_information AUTO_INCREMENT = 3; +ALTER TABLE dialable_inventory_snapshots AUTO_INCREMENT = 3; +ALTER TABLE gateway_recording_log AUTO_INCREMENT = 3; +ALTER TABLE inbound_disabled_entries AUTO_INCREMENT = 3; +ALTER TABLE inbound_email_attachments AUTO_INCREMENT = 3; +ALTER TABLE quality_control_checkpoint_log AUTO_INCREMENT = 3; +ALTER TABLE quality_control_checkpoints AUTO_INCREMENT = 3; +ALTER TABLE quality_control_queue AUTO_INCREMENT = 3; +ALTER TABLE recording_log AUTO_INCREMENT = 3; +ALTER TABLE user_call_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_abandon_check_queue AUTO_INCREMENT = 3; +ALTER TABLE vicidial_admin_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_agent_function_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_agent_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_agent_notifications AUTO_INCREMENT = 3; +ALTER TABLE vicidial_agent_notifications_queue AUTO_INCREMENT = 3; +ALTER TABLE vicidial_agent_skip_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_amm_multi AUTO_INCREMENT = 3; +ALTER TABLE vicidial_api_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_auto_calls AUTO_INCREMENT = 3; +ALTER TABLE vicidial_call_notes AUTO_INCREMENT = 3; +ALTER TABLE vicidial_callbacks AUTO_INCREMENT = 3; +ALTER TABLE vicidial_chat_archive AUTO_INCREMENT = 3; +ALTER TABLE vicidial_chat_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_chat_log_archive AUTO_INCREMENT = 3; +ALTER TABLE vicidial_chat_participants AUTO_INCREMENT = 3; +ALTER TABLE vicidial_closer_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_comments AUTO_INCREMENT = 3; +ALTER TABLE vicidial_configuration AUTO_INCREMENT = 3; +ALTER TABLE vicidial_country_dnc_queue AUTO_INCREMENT = 3; +ALTER TABLE vicidial_cpd_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_custom_reports AUTO_INCREMENT = 3; +ALTER TABLE vicidial_demographic_quotas_goals AUTO_INCREMENT = 3; +ALTER TABLE vicidial_dnccom_filter_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_dtmf_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_email_list AUTO_INCREMENT = 3; +ALTER TABLE vicidial_email_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_extension_groups AUTO_INCREMENT = 3; +ALTER TABLE vicidial_hopper AUTO_INCREMENT = 3; +ALTER TABLE vicidial_inbound_callback_queue AUTO_INCREMENT = 3; +ALTER TABLE vicidial_inbound_dids AUTO_INCREMENT = 3; +ALTER TABLE vicidial_ivr AUTO_INCREMENT = 3; +ALTER TABLE vicidial_ivr_response AUTO_INCREMENT = 3; +ALTER TABLE vicidial_language_phrases AUTO_INCREMENT = 3; +ALTER TABLE vicidial_lead_recycle AUTO_INCREMENT = 3; +ALTER TABLE vicidial_lead_search_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_list AUTO_INCREMENT = 3; +ALTER TABLE vicidial_list_alt_phones AUTO_INCREMENT = 3; +ALTER TABLE vicidial_list_pins AUTO_INCREMENT = 3; +ALTER TABLE vicidial_lists_fields AUTO_INCREMENT = 3; +ALTER TABLE vicidial_live_agents AUTO_INCREMENT = 3; +ALTER TABLE vicidial_live_chats AUTO_INCREMENT = 3; +ALTER TABLE vicidial_long_extensions AUTO_INCREMENT = 3; +ALTER TABLE vicidial_manager AUTO_INCREMENT = 3; +ALTER TABLE vicidial_manager_chat_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_manager_chat_log_archive AUTO_INCREMENT = 3; +ALTER TABLE vicidial_manager_chats AUTO_INCREMENT = 3; +ALTER TABLE vicidial_manager_chats_archive AUTO_INCREMENT = 3; +ALTER TABLE vicidial_manual_dial_queue AUTO_INCREMENT = 3; +ALTER TABLE vicidial_monitor_calls AUTO_INCREMENT = 3; +ALTER TABLE vicidial_peer_event_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_pending_ar AUTO_INCREMENT = 3; +ALTER TABLE vicidial_qc_agent_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_recording_access_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_remote_agents AUTO_INCREMENT = 3; +ALTER TABLE vicidial_report_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_security_event_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_sip_event_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_territories AUTO_INCREMENT = 3; +ALTER TABLE vicidial_timeclock_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_timeoff_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_url_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_url_multi AUTO_INCREMENT = 3; +ALTER TABLE vicidial_urls AUTO_INCREMENT = 3; +ALTER TABLE vicidial_user_log AUTO_INCREMENT = 3; +ALTER TABLE vicidial_users AUTO_INCREMENT = 3; +ALTER TABLE vicidial_webservers AUTO_INCREMENT = 3; +ALTER TABLE vicidial_xfer_log AUTO_INCREMENT = 3; +ALTER TABLE vtiger_rank_parameters AUTO_INCREMENT = 3; +ALTER TABLE www_phrases AUTO_INCREMENT = 3; + + +FOR SERVER 2: + +SET GLOBAL auto_increment_offset=4; + +ALTER TABLE verm_custom_report_holder AUTO_INCREMENT = 4; +ALTER TABLE vicidial_khomp_log AUTO_INCREMENT = 4; +ALTER TABLE contact_information AUTO_INCREMENT = 4; +ALTER TABLE dialable_inventory_snapshots AUTO_INCREMENT = 4; +ALTER TABLE gateway_recording_log AUTO_INCREMENT = 4; +ALTER TABLE inbound_disabled_entries AUTO_INCREMENT = 4; +ALTER TABLE inbound_email_attachments AUTO_INCREMENT = 4; +ALTER TABLE quality_control_checkpoint_log AUTO_INCREMENT = 4; +ALTER TABLE quality_control_checkpoints AUTO_INCREMENT = 4; +ALTER TABLE quality_control_queue AUTO_INCREMENT = 4; +ALTER TABLE recording_log AUTO_INCREMENT = 4; +ALTER TABLE user_call_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_abandon_check_queue AUTO_INCREMENT = 4; +ALTER TABLE vicidial_admin_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_agent_function_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_agent_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_agent_notifications AUTO_INCREMENT = 4; +ALTER TABLE vicidial_agent_notifications_queue AUTO_INCREMENT = 4; +ALTER TABLE vicidial_agent_skip_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_amm_multi AUTO_INCREMENT = 4; +ALTER TABLE vicidial_api_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_auto_calls AUTO_INCREMENT = 4; +ALTER TABLE vicidial_call_notes AUTO_INCREMENT = 4; +ALTER TABLE vicidial_callbacks AUTO_INCREMENT = 4; +ALTER TABLE vicidial_chat_archive AUTO_INCREMENT = 4; +ALTER TABLE vicidial_chat_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_chat_log_archive AUTO_INCREMENT = 4; +ALTER TABLE vicidial_chat_participants AUTO_INCREMENT = 4; +ALTER TABLE vicidial_closer_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_comments AUTO_INCREMENT = 4; +ALTER TABLE vicidial_configuration AUTO_INCREMENT = 4; +ALTER TABLE vicidial_country_dnc_queue AUTO_INCREMENT = 4; +ALTER TABLE vicidial_cpd_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_custom_reports AUTO_INCREMENT = 4; +ALTER TABLE vicidial_demographic_quotas_goals AUTO_INCREMENT = 4; +ALTER TABLE vicidial_dnccom_filter_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_dtmf_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_email_list AUTO_INCREMENT = 4; +ALTER TABLE vicidial_email_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_extension_groups AUTO_INCREMENT = 4; +ALTER TABLE vicidial_hopper AUTO_INCREMENT = 4; +ALTER TABLE vicidial_inbound_callback_queue AUTO_INCREMENT = 4; +ALTER TABLE vicidial_inbound_dids AUTO_INCREMENT = 4; +ALTER TABLE vicidial_ivr AUTO_INCREMENT = 4; +ALTER TABLE vicidial_ivr_response AUTO_INCREMENT = 4; +ALTER TABLE vicidial_language_phrases AUTO_INCREMENT = 4; +ALTER TABLE vicidial_lead_recycle AUTO_INCREMENT = 4; +ALTER TABLE vicidial_lead_search_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_list AUTO_INCREMENT = 4; +ALTER TABLE vicidial_list_alt_phones AUTO_INCREMENT = 4; +ALTER TABLE vicidial_list_pins AUTO_INCREMENT = 4; +ALTER TABLE vicidial_lists_fields AUTO_INCREMENT = 4; +ALTER TABLE vicidial_live_agents AUTO_INCREMENT = 4; +ALTER TABLE vicidial_live_chats AUTO_INCREMENT = 4; +ALTER TABLE vicidial_long_extensions AUTO_INCREMENT = 4; +ALTER TABLE vicidial_manager AUTO_INCREMENT = 4; +ALTER TABLE vicidial_manager_chat_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_manager_chat_log_archive AUTO_INCREMENT = 4; +ALTER TABLE vicidial_manager_chats AUTO_INCREMENT = 4; +ALTER TABLE vicidial_manager_chats_archive AUTO_INCREMENT = 4; +ALTER TABLE vicidial_manual_dial_queue AUTO_INCREMENT = 4; +ALTER TABLE vicidial_monitor_calls AUTO_INCREMENT = 4; +ALTER TABLE vicidial_peer_event_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_pending_ar AUTO_INCREMENT = 4; +ALTER TABLE vicidial_qc_agent_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_recording_access_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_remote_agents AUTO_INCREMENT = 4; +ALTER TABLE vicidial_report_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_security_event_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_sip_event_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_territories AUTO_INCREMENT = 4; +ALTER TABLE vicidial_timeclock_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_timeoff_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_url_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_url_multi AUTO_INCREMENT = 4; +ALTER TABLE vicidial_urls AUTO_INCREMENT = 4; +ALTER TABLE vicidial_user_log AUTO_INCREMENT = 4; +ALTER TABLE vicidial_users AUTO_INCREMENT = 4; +ALTER TABLE vicidial_webservers AUTO_INCREMENT = 4; +ALTER TABLE vicidial_xfer_log AUTO_INCREMENT = 4; +ALTER TABLE vtiger_rank_parameters AUTO_INCREMENT = 4; +ALTER TABLE www_phrases AUTO_INCREMENT = 4; + + +FOR SERVER 3: + +SET GLOBAL auto_increment_offset=5; + +ALTER TABLE verm_custom_report_holder AUTO_INCREMENT = 5; +ALTER TABLE vicidial_khomp_log AUTO_INCREMENT = 5; +ALTER TABLE contact_information AUTO_INCREMENT = 5; +ALTER TABLE dialable_inventory_snapshots AUTO_INCREMENT = 5; +ALTER TABLE gateway_recording_log AUTO_INCREMENT = 5; +ALTER TABLE inbound_disabled_entries AUTO_INCREMENT = 5; +ALTER TABLE inbound_email_attachments AUTO_INCREMENT = 5; +ALTER TABLE quality_control_checkpoint_log AUTO_INCREMENT = 5; +ALTER TABLE quality_control_checkpoints AUTO_INCREMENT = 5; +ALTER TABLE quality_control_queue AUTO_INCREMENT = 5; +ALTER TABLE recording_log AUTO_INCREMENT = 5; +ALTER TABLE user_call_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_abandon_check_queue AUTO_INCREMENT = 5; +ALTER TABLE vicidial_admin_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_agent_function_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_agent_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_agent_notifications AUTO_INCREMENT = 5; +ALTER TABLE vicidial_agent_notifications_queue AUTO_INCREMENT = 5; +ALTER TABLE vicidial_agent_skip_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_amm_multi AUTO_INCREMENT = 5; +ALTER TABLE vicidial_api_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_auto_calls AUTO_INCREMENT = 5; +ALTER TABLE vicidial_call_notes AUTO_INCREMENT = 5; +ALTER TABLE vicidial_callbacks AUTO_INCREMENT = 5; +ALTER TABLE vicidial_chat_archive AUTO_INCREMENT = 5; +ALTER TABLE vicidial_chat_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_chat_log_archive AUTO_INCREMENT = 5; +ALTER TABLE vicidial_chat_participants AUTO_INCREMENT = 5; +ALTER TABLE vicidial_closer_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_comments AUTO_INCREMENT = 5; +ALTER TABLE vicidial_configuration AUTO_INCREMENT = 5; +ALTER TABLE vicidial_country_dnc_queue AUTO_INCREMENT = 5; +ALTER TABLE vicidial_cpd_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_custom_reports AUTO_INCREMENT = 5; +ALTER TABLE vicidial_demographic_quotas_goals AUTO_INCREMENT = 5; +ALTER TABLE vicidial_dnccom_filter_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_dtmf_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_email_list AUTO_INCREMENT = 5; +ALTER TABLE vicidial_email_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_extension_groups AUTO_INCREMENT = 5; +ALTER TABLE vicidial_hopper AUTO_INCREMENT = 5; +ALTER TABLE vicidial_inbound_callback_queue AUTO_INCREMENT = 5; +ALTER TABLE vicidial_inbound_dids AUTO_INCREMENT = 5; +ALTER TABLE vicidial_ivr AUTO_INCREMENT = 5; +ALTER TABLE vicidial_ivr_response AUTO_INCREMENT = 5; +ALTER TABLE vicidial_language_phrases AUTO_INCREMENT = 5; +ALTER TABLE vicidial_lead_recycle AUTO_INCREMENT = 5; +ALTER TABLE vicidial_lead_search_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_list AUTO_INCREMENT = 5; +ALTER TABLE vicidial_list_alt_phones AUTO_INCREMENT = 5; +ALTER TABLE vicidial_list_pins AUTO_INCREMENT = 5; +ALTER TABLE vicidial_lists_fields AUTO_INCREMENT = 5; +ALTER TABLE vicidial_live_agents AUTO_INCREMENT = 5; +ALTER TABLE vicidial_live_chats AUTO_INCREMENT = 5; +ALTER TABLE vicidial_long_extensions AUTO_INCREMENT = 5; +ALTER TABLE vicidial_manager AUTO_INCREMENT = 5; +ALTER TABLE vicidial_manager_chat_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_manager_chat_log_archive AUTO_INCREMENT = 5; +ALTER TABLE vicidial_manager_chats AUTO_INCREMENT = 5; +ALTER TABLE vicidial_manager_chats_archive AUTO_INCREMENT = 5; +ALTER TABLE vicidial_manual_dial_queue AUTO_INCREMENT = 5; +ALTER TABLE vicidial_monitor_calls AUTO_INCREMENT = 5; +ALTER TABLE vicidial_peer_event_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_pending_ar AUTO_INCREMENT = 5; +ALTER TABLE vicidial_qc_agent_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_recording_access_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_remote_agents AUTO_INCREMENT = 5; +ALTER TABLE vicidial_report_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_security_event_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_sip_event_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_territories AUTO_INCREMENT = 5; +ALTER TABLE vicidial_timeclock_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_timeoff_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_url_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_url_multi AUTO_INCREMENT = 5; +ALTER TABLE vicidial_urls AUTO_INCREMENT = 5; +ALTER TABLE vicidial_user_log AUTO_INCREMENT = 5; +ALTER TABLE vicidial_users AUTO_INCREMENT = 5; +ALTER TABLE vicidial_webservers AUTO_INCREMENT = 5; +ALTER TABLE vicidial_xfer_log AUTO_INCREMENT = 5; +ALTER TABLE vtiger_rank_parameters AUTO_INCREMENT = 5; +ALTER TABLE www_phrases AUTO_INCREMENT = 5; + diff --git a/agc_2-X/trunk/docs/NON-AGENT_API.txt b/agc_2-X/trunk/docs/NON-AGENT_API.txt index a14b8592..0ad15d2a 100644 --- a/agc_2-X/trunk/docs/NON-AGENT_API.txt +++ b/agc_2-X/trunk/docs/NON-AGENT_API.txt @@ -1,4 +1,4 @@ -NON-AGENT API DOCUMENT Started: 2008-07-24 Updated: 2024-10-04 +NON-AGENT API DOCUMENT Started: 2008-07-24 Updated: 2024-11-13 This document describes the functions of an API(Application Programming Interface) for all functions NOT directly relating to the VICIDIAL Agent screen. @@ -228,6 +228,7 @@ Changes: 240730-1832 - Changes for PHP8 compatibility, Added copy_did function 240824-1626 - Added user_details function 241004-1518 - Added webform_one-three variables to the update_campaign function +241113-1600 - Added in_groups as input option for update_user function API Functions use the 'function' variable @@ -1546,6 +1547,8 @@ ingrp_rg_only - 0 or 1, this will set only one inbound group rank/grade for thi group_id - only required for use with ingrp_rg_only reset_password - 0 or 8+ digits, this will reset the user's password to a random password of this length and email the new password to the user NOTE: the 'email' field is required if the user's current email is not a valid email address +in_groups - pipe-delimited list of inbound groups to make selected for the user "SALESLINE|SUPPORT" + NOTE: setting 'in-groups' will not change selected in-groups for a currently-logged-in session, only for the next agent login Example URL strings for API calls: http://server/vicidial/non_agent_api.php?source=test&function=update_user&user=6666&pass=1234&agent_user=2424&agent_pass=9876 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 8d06bc20..b3bae8fd 100644 --- a/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql +++ b/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql @@ -705,7 +705,8 @@ failed_last_ip_today VARCHAR(50) default '', failed_last_type_today VARCHAR(20) default '', modify_dial_prefix ENUM('0','1','2','3','4','5','6') default '0', inbound_credits MEDIUMINT(7) default '-1', -hci_enabled ENUM('0','1','2','3','4','5','6') default '0' +hci_enabled ENUM('0','1','2','3','4','5','6') default '0', +modify_stamp TIMESTAMP ) ENGINE=MyISAM; CREATE UNIQUE INDEX user ON vicidial_users (user); @@ -771,7 +772,8 @@ webphone_layout VARCHAR(255) default '', allowed_queue_groups TEXT, reports_header_override ENUM('DISABLED','LOGO_ONLY_SMALL','LOGO_ONLY_LARGE','ALT_1','ALT_2','ALT_3','ALT_4') default 'DISABLED', admin_home_url VARCHAR(255) default '', -script_id VARCHAR(20) default '' +script_id VARCHAR(20) default '', +modify_stamp TIMESTAMP ) ENGINE=MyISAM; CREATE TABLE vicidial_campaigns ( @@ -1198,7 +1200,8 @@ scheduled_callback ENUM('Y','N') default 'N', completed ENUM('Y','N') default 'N', min_sec INT(5) UNSIGNED default '0', max_sec INT(5) UNSIGNED default '0', -answering_machine ENUM('Y','N') default 'N' +answering_machine ENUM('Y','N') default 'N', +modify_stamp TIMESTAMP ) ENGINE=MyISAM; CREATE TABLE vicidial_campaign_statuses ( @@ -1459,7 +1462,8 @@ third_alert_container VARCHAR(40) default 'DISABLED', third_alert_only VARCHAR(40) default 'DISABLED', agent_search_list VARCHAR(20) default '', state_descriptions VARCHAR(40) default '---DISABLED---', -stereo_recording ENUM('DISABLED','CUSTOMER','CUSTOMER_MUTE') default 'DISABLED' +stereo_recording ENUM('DISABLED','CUSTOMER','CUSTOMER_MUTE') default 'DISABLED', +modify_stamp TIMESTAMP ) ENGINE=MyISAM; CREATE TABLE vicidial_stations ( @@ -1574,7 +1578,8 @@ script_comments VARCHAR(255), script_text TEXT, active ENUM('Y','N'), user_group VARCHAR(20) default '---ALL---', -script_color VARCHAR(20) default 'white' +script_color VARCHAR(20) default 'white', +modify_stamp TIMESTAMP ) ENGINE=MyISAM; CREATE TABLE phone_favorites ( @@ -1626,7 +1631,8 @@ lead_filter_id VARCHAR(20) PRIMARY KEY NOT NULL, lead_filter_name VARCHAR(30) NOT NULL, lead_filter_comments VARCHAR(255), lead_filter_sql TEXT, -user_group VARCHAR(20) default '---ALL---' +user_group VARCHAR(20) default '---ALL---', +modify_stamp TIMESTAMP ) ENGINE=MyISAM; CREATE TABLE vicidial_call_times ( @@ -1659,7 +1665,8 @@ thursday_afterhours_filename_override VARCHAR(255) default '', friday_afterhours_filename_override VARCHAR(255) default '', saturday_afterhours_filename_override VARCHAR(255) default '', user_group VARCHAR(20) default '---ALL---', -ct_holidays TEXT +ct_holidays TEXT, +modify_stamp TIMESTAMP ) ENGINE=MyISAM; CREATE TABLE vicidial_state_call_times ( @@ -1684,7 +1691,8 @@ sct_friday_stop SMALLINT(4) unsigned default '0', sct_saturday_start SMALLINT(4) unsigned default '0', sct_saturday_stop SMALLINT(4) unsigned default '0', user_group VARCHAR(20) default '---ALL---', -ct_holidays TEXT +ct_holidays TEXT, +modify_stamp TIMESTAMP ) ENGINE=MyISAM; CREATE TABLE vicidial_campaign_stats ( @@ -2219,6 +2227,7 @@ shift_weekdays VARCHAR(7) default '0123456', report_option ENUM('Y','N') default 'N', user_group VARCHAR(20) default '---ALL---', report_rank SMALLINT(5) default '1', +modify_stamp TIMESTAMP, index (shift_id) ) ENGINE=MyISAM; @@ -2369,6 +2378,7 @@ 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), +modify_stamp TIMESTAMP, index (group_id) ) ENGINE=MyISAM; @@ -3776,6 +3786,7 @@ url_description VARCHAR(255) default '', url_address TEXT, url_lists VARCHAR(1000) default '', url_call_length SMALLINT(5) default '0', +modify_stamp TIMESTAMP, PRIMARY KEY (url_id), KEY vicidial_url_multi_campaign_id_key (campaign_id) ) ENGINE=MyISAM CHARSET=utf8 COLLATE=utf8_unicode_ci; @@ -3826,7 +3837,8 @@ container_id VARCHAR(40) PRIMARY KEY NOT NULL, container_notes VARCHAR(255) default '', container_type VARCHAR(40) default 'OTHER', user_group VARCHAR(20) default '---ALL---', -container_entry MEDIUMTEXT +container_entry MEDIUMTEXT, +modify_stamp TIMESTAMP ) ENGINE=MyISAM CHARSET=utf8 COLLATE=utf8_unicode_ci; CREATE TABLE vicidial_dnc_log ( @@ -3841,7 +3853,8 @@ index (phone_number) CREATE TABLE vicidial_status_groups ( status_group_id VARCHAR(20) PRIMARY KEY NOT NULL, status_group_notes VARCHAR(255) default '', -user_group VARCHAR(20) default '---ALL---' +user_group VARCHAR(20) default '---ALL---', +modify_stamp TIMESTAMP ) ENGINE=MyISAM CHARSET=utf8 COLLATE=utf8_unicode_ci; CREATE TABLE vicidial_custom_reports ( @@ -4239,7 +4252,8 @@ cid_auto_rotate_minutes MEDIUMINT(7) UNSIGNED default '0', cid_auto_rotate_minimum MEDIUMINT(7) UNSIGNED default '0', cid_auto_rotate_calls MEDIUMINT(7) UNSIGNED default '0', cid_last_auto_rotate DATETIME, -cid_auto_rotate_cid VARCHAR(20) default '' +cid_auto_rotate_cid VARCHAR(20) default '', +modify_stamp TIMESTAMP ) ENGINE=MyISAM CHARSET=utf8 COLLATE=utf8_unicode_ci; CREATE TABLE vicidial_agent_function_log ( @@ -5305,6 +5319,20 @@ index(lead_id), index(start_time) ) ENGINE=MyISAM; +CREATE TABLE clr_log ( +clr_id INT(10) UNSIGNED PRIMARY KEY AUTO_INCREMENT NOT NULL, +start_time DATETIME, +begin_range DATETIME, +range_minutes SMALLINT(5) UNSIGNED default '0', +phase VARCHAR(40) default '', +records_ct MEDIUMINT(7) UNSIGNED default '0', +length_in_sec MEDIUMINT(8) UNSIGNED default '0', +options VARCHAR(100) default '', +server_ip VARCHAR(15) default '', +processing_log TEXT, +index(start_time) +) ENGINE=MyISAM; + ALTER TABLE vicidial_email_list MODIFY message text character set utf8; @@ -5709,4 +5737,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='1720',db_schema_update_date=NOW(),reload_timestamp=NOW(); +UPDATE system_settings SET db_schema_version='1721',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 77854a3d..3725f9e1 100644 --- a/agc_2-X/trunk/extras/upgrade_2.14.sql +++ b/agc_2-X/trunk/extras/upgrade_2.14.sql @@ -2782,3 +2782,34 @@ UPDATE system_settings SET db_schema_version='1719',db_schema_update_date=NOW() ALTER TABLE vicidial_khomp_log ADD khomp_settings_container VARCHAR(40); UPDATE system_settings SET db_schema_version='1720',db_schema_update_date=NOW() where db_schema_version < 1720; + +CREATE TABLE clr_log ( +clr_id INT(10) UNSIGNED PRIMARY KEY AUTO_INCREMENT NOT NULL, +start_time DATETIME, +begin_range DATETIME, +range_minutes SMALLINT(5) UNSIGNED default '0', +phase VARCHAR(40) default '', +records_ct MEDIUMINT(7) UNSIGNED default '0', +length_in_sec MEDIUMINT(8) UNSIGNED default '0', +options VARCHAR(100) default '', +server_ip VARCHAR(15) default '', +processing_log TEXT, +index(start_time) +) ENGINE=MyISAM; + +ALTER TABLE vicidial_inbound_dids ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_inbound_groups ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_users ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_user_groups ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_lead_filters ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_scripts ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_call_times ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_state_call_times ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_shifts ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_statuses ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_status_groups ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_cid_groups ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_settings_containers ADD modify_stamp TIMESTAMP; +ALTER TABLE vicidial_url_multi ADD modify_stamp TIMESTAMP; + +UPDATE system_settings SET db_schema_version='1721',db_schema_update_date=NOW() where db_schema_version < 1721; diff --git a/agc_2-X/trunk/www/vicidial/admin.php b/agc_2-X/trunk/www/vicidial/admin.php index cb87ab3f..090f4672 100644 --- a/agc_2-X/trunk/www/vicidial/admin.php +++ b/agc_2-X/trunk/www/vicidial/admin.php @@ -6217,12 +6217,13 @@ if ($SSscript_remove_js > 0) # 240826-0918 - Added mnaual dial minimum campaign settings # 241001-1532 - Added Khomp Quick Stats Report # 241021-2138 - Added Khomp campaign settings option +# 241113-2002 - Added update timestamps for sub-settings groups(like campaigns) # # 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-930a'; -$build = '241021-2138'; +$admin_version = '2.14-931a'; +$build = '241113-2002'; $STARTtime = date("U"); $SQLdate = date("Y-m-d H:i:s"); @@ -12772,8 +12773,11 @@ if ($ADD==22) $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable,scheduled_callback,completed,min_sec,max_sec,answering_machine) values('$status_id','$status_name','$selectable','$campaign_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable','$scheduled_callbacks','$completed','$min_sec','$max_sec','$answering_machine');"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADD CAMPAIGN STATUS', event_sql=\"$SQL_log\", event_notes='Status: $status_id';"; @@ -12824,8 +12828,11 @@ if ($ADD==23) $stmt="INSERT INTO vicidial_campaign_hotkeys(status,hotkey,status_name,selectable,campaign_id) values('$status','$hotkey','$status_name','$selectable','$campaign_id');"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_HOTKEY', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADD CAMPAIGN HOTKEY', event_sql=\"$SQL_log\", event_notes='Status: $status|HotKey: $hotkey';"; @@ -12873,8 +12880,11 @@ if ($ADD==25) $stmt="INSERT INTO vicidial_lead_recycle(campaign_id,status,attempt_delay,attempt_maximum,active) values('$campaign_id','$status','$attempt_delay','$attempt_maximum','$active');"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_RECYCLE', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADD CAMPAIGN LEAD RECYCLE', event_sql=\"$SQL_log\", event_notes='Status: $status';"; @@ -12923,7 +12933,7 @@ if ($ADD==26) if (strlen($row[0])<2) {$row[0] = ' -';} $auto_alt_dial_statuses = " $status$row[0]"; - $stmt="UPDATE vicidial_campaigns set auto_alt_dial_statuses='$auto_alt_dial_statuses' where campaign_id='$campaign_id';"; + $stmt="UPDATE vicidial_campaigns set auto_alt_dial_statuses='$auto_alt_dial_statuses',campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; $rslt=mysql_to_mysqli($stmt, $link); ### LOG INSERTION Admin Log Table ### @@ -12974,8 +12984,11 @@ if ($ADD==27) $stmt="INSERT INTO vicidial_pause_codes(campaign_id,pause_code,pause_code_name,billable,time_limit,require_mgr_approval) values('$campaign_id','$pause_code','$pause_code_name','$billable','$time_limit','$require_mgr_approval');"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_PAUSECODE', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADD CAMPAIGN PAUSE CODE', event_sql=\"$SQL_log\", event_notes='Pause Code: $pause_code';"; @@ -13024,7 +13037,7 @@ if ($ADD==28) if (strlen($row[0])<2) {$row[0] = ' -';} $dial_statuses = " $status$row[0]"; - $stmt="UPDATE vicidial_campaigns set dial_statuses='$dial_statuses' where campaign_id='$campaign_id';"; + $stmt="UPDATE vicidial_campaigns set dial_statuses='$dial_statuses',campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; $rslt=mysql_to_mysqli($stmt, $link); ### LOG INSERTION Admin Log Table ### @@ -13077,8 +13090,11 @@ if ($ADD==201) $stmtA="INSERT INTO vicidial_xfer_stats(campaign_id,preset_name) values('$campaign_id','$preset_name');"; $rslt=mysql_to_mysqli($stmtA, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|$stmtA|"; + $SQL_log = "$stmt|$stmtA|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_PRESET', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADD CAMPAIGN PRESET', event_sql=\"$SQL_log\", event_notes='Preset: $preset_name - $preset_number';"; @@ -13124,8 +13140,11 @@ if ($ADD==202) $stmt="INSERT INTO vicidial_campaign_cid_areacodes(campaign_id,areacode,outbound_cid,cid_description) values('$campaign_id','$areacode','$outbound_cid','$cid_description');"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_AC-CID', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADD CAMPAIGN AC-CID', event_sql=\"$SQL_log\", event_notes='CID: $areacode - $outbound_cid';"; @@ -13154,8 +13173,11 @@ if ($ADD==202) $stmt="DELETE FROM vicidial_campaign_cid_areacodes WHERE campaign_id='$campaign_id' and areacode='$areacode' and outbound_cid='$outbound_cid';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_AC-CID', event_type='DELETE', record_id='$campaign_id', event_code='ADMIN DELETE CAMPAIGN AC-CID', event_sql=\"$SQL_log\", event_notes='CID: $areacode - $outbound_cid';"; @@ -13221,7 +13243,10 @@ if ($ADD==202) $stmt="UPDATE vicidial_campaign_cid_areacodes SET active='$Factive_value',cid_description='$Fcid_description_value' WHERE campaign_id='$campaign_id' and areacode='$Xareacode[$o]' and outbound_cid='$Xoutbound_cid[$o]';"; $rslt=mysql_to_mysqli($stmt, $link); - $stmt_log .= "$stmt|"; + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + + $stmt_log .= "$stmt|$stmtB|"; $accid_log .= "CID: $Xareacode[$o] - $Xoutbound_cid[$o] - $Factive_value - $Fcid_description_value|"; } $o++; @@ -17508,8 +17533,11 @@ if ($ADD==42) $stmtA="DELETE FROM vicidial_campaign_hotkeys where campaign_id='$campaign_id' and status='$status';"; $rslt=mysql_to_mysqli($stmtA, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|$stmtA|"; + $SQL_log = "$stmt|$stmtA|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='DELETE', record_id='$campaign_id', event_code='ADMIN DELETE CAMPAIGN STATUS', event_sql=\"$SQL_log\", event_notes='Status: $status';"; @@ -17523,8 +17551,11 @@ if ($ADD==42) $stmt="UPDATE vicidial_campaign_statuses SET status_name='$status_name',selectable='$selectable',human_answered='$human_answered',category='$category',sale='$sale',dnc='$dnc',customer_contact='$customer_contact',not_interested='$not_interested',unworkable='$unworkable',scheduled_callback='$scheduled_callbacks',completed='$completed',min_sec='$min_sec',max_sec='$max_sec',answering_machine='$answering_machine' where campaign_id='$campaign_id' and status='$status';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_STATUS', event_type='MODIFY', record_id='$campaign_id', event_code='ADMIN MODIFY CAMPAIGN STATUS', event_sql=\"$SQL_log\", event_notes='Status: $status';"; @@ -17566,8 +17597,11 @@ if ($ADD==43) $stmt="DELETE FROM vicidial_campaign_hotkeys where campaign_id='$campaign_id' and status='$status' and hotkey='$hotkey';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_HOTKEY', event_type='DELETE', record_id='$campaign_id', event_code='ADMIN DELETE CAMPAIGN HOTKEY', event_sql=\"$SQL_log\", event_notes='Status: $status|HotKey: $hotkey';"; @@ -17761,8 +17795,11 @@ if ($ADD==45) $stmt="UPDATE vicidial_lead_recycle SET attempt_delay='$attempt_delay',attempt_maximum='$attempt_maximum',active='$active' where campaign_id='$campaign_id' and status='$status';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_RECYCLE', event_type='MODIFY', record_id='$campaign_id', event_code='ADMIN MODIFY CAMPAIGN LEAD RECYCLE', event_sql=\"$SQL_log\", event_notes='';"; @@ -17804,8 +17841,11 @@ if ($ADD==47) $stmt="UPDATE vicidial_pause_codes SET pause_code_name='$pause_code_name',billable='$billable',time_limit='$time_limit',require_mgr_approval='$require_mgr_approval' where campaign_id='$campaign_id' and pause_code='$pause_code';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_PAUSECODE', event_type='MODIFY', record_id='$campaign_id', event_code='ADMIN MODIFY CAMPAIGN PAUSE CODE', event_sql=\"$SQL_log\", event_notes='';"; @@ -17862,7 +17902,7 @@ if ($ADD==48) echo "
"._QXZ("QC SETTINGS MODIFIED").": $campaign_id\n"; - $stmt="UPDATE vicidial_campaigns SET qc_enabled='$qc_enabled',qc_statuses='$QC_statuses',qc_lists='$QC_lists',qc_web_form_address='" . mysqli_real_escape_string($link, $qc_web_form_address) . "',qc_script='$qc_script',qc_get_record_launch='$qc_get_record_launch',qc_show_recording='$qc_show_recording',qc_shift_id='$qc_shift_id',qc_scorecard_id='$qc_scorecard_id',qc_statuses_id='$qc_statuses_id' where campaign_id='$campaign_id';"; + $stmt="UPDATE vicidial_campaigns SET qc_enabled='$qc_enabled',qc_statuses='$QC_statuses',qc_lists='$QC_lists',qc_web_form_address='" . mysqli_real_escape_string($link, $qc_web_form_address) . "',qc_script='$qc_script',qc_get_record_launch='$qc_get_record_launch',qc_show_recording='$qc_show_recording',qc_shift_id='$qc_shift_id',qc_scorecard_id='$qc_scorecard_id',qc_statuses_id='$qc_statuses_id',campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; $rslt=mysql_to_mysqli($stmt, $link); ### LOG INSERTION Admin Log Table ### @@ -17901,7 +17941,7 @@ if ($ADD=='40A') { echo "
"._QXZ("SURVEY SETTINGS MODIFIED").": $campaign_id\n"; - $stmt="UPDATE vicidial_campaigns SET survey_first_audio_file='$survey_first_audio_file',survey_dtmf_digits='$survey_dtmf_digits',survey_ni_digit='$survey_ni_digit',survey_opt_in_audio_file='$survey_opt_in_audio_file',survey_ni_audio_file='$survey_ni_audio_file',survey_method='$survey_method',survey_no_response_action='$survey_no_response_action',survey_ni_status='$survey_ni_status',survey_response_digit_map='$survey_response_digit_map',survey_xfer_exten='$survey_xfer_exten',survey_camp_record_dir='$survey_camp_record_dir',voicemail_ext='$voicemail_ext',survey_third_digit='$survey_third_digit',survey_fourth_digit='$survey_fourth_digit',survey_third_audio_file='$survey_third_audio_file',survey_fourth_audio_file='$survey_fourth_audio_file',survey_third_status='$survey_third_status',survey_fourth_status='$survey_fourth_status',survey_third_exten='$survey_third_exten',survey_fourth_exten='$survey_fourth_exten',survey_menu_id='$survey_menu_id',survey_recording='$survey_recording',survey_wait_sec='$survey_wait_sec' where campaign_id='$campaign_id';"; + $stmt="UPDATE vicidial_campaigns SET survey_first_audio_file='$survey_first_audio_file',survey_dtmf_digits='$survey_dtmf_digits',survey_ni_digit='$survey_ni_digit',survey_opt_in_audio_file='$survey_opt_in_audio_file',survey_ni_audio_file='$survey_ni_audio_file',survey_method='$survey_method',survey_no_response_action='$survey_no_response_action',survey_ni_status='$survey_ni_status',survey_response_digit_map='$survey_response_digit_map',survey_xfer_exten='$survey_xfer_exten',survey_camp_record_dir='$survey_camp_record_dir',voicemail_ext='$voicemail_ext',survey_third_digit='$survey_third_digit',survey_fourth_digit='$survey_fourth_digit',survey_third_audio_file='$survey_third_audio_file',survey_fourth_audio_file='$survey_fourth_audio_file',survey_third_status='$survey_third_status',survey_fourth_status='$survey_fourth_status',survey_third_exten='$survey_third_exten',survey_fourth_exten='$survey_fourth_exten',survey_menu_id='$survey_menu_id',survey_recording='$survey_recording',survey_wait_sec='$survey_wait_sec',campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; $rslt=mysql_to_mysqli($stmt, $link); ### LOG INSERTION Admin Log Table ### @@ -17965,8 +18005,11 @@ if ($ADD==49) $stmt="UPDATE vicidial_campaigns_list_mix SET vcl_name='$vcl_name',mix_method='$mix_method',list_mix_container='$list_mix_container' where campaign_id='$campaign_id' and vcl_id='$vcl_id';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_LISTMIX', event_type='MODIFY', record_id='$campaign_id', event_code='ADMIN MODIFY CAMPAIGN LIST MIX', event_sql=\"$SQL_log\", event_notes='List Mix: $vcl_id';"; @@ -17999,8 +18042,11 @@ if ($ADD==49) $stmt="UPDATE vicidial_campaigns_list_mix SET list_mix_container='$NEWlist_mix_container' where campaign_id='$campaign_id' and vcl_id='$vcl_id';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_LISTMIX', event_type='MODIFY', record_id='$campaign_id', event_code='ADMIN MODIFY CAMPAIGN LIST MIX', event_sql=\"$SQL_log\", event_notes='List Mix: $vcl_id';"; @@ -18072,8 +18118,11 @@ if ($ADD==49) $stmt="UPDATE vicidial_campaigns_list_mix SET list_mix_container='$NEWlist_mix_container' where campaign_id='$campaign_id' and vcl_id='$vcl_id';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_LISTMIX', event_type='MODIFY', record_id='$campaign_id', event_code='ADMIN MODIFY CAMPAIGN LIST MIX', event_sql=\"$SQL_log\", event_notes='List Mix: $vcl_id';"; @@ -18116,8 +18165,11 @@ if ($ADD==49) $stmt="INSERT INTO vicidial_campaigns_list_mix SET list_mix_container='$list_id|1|100| $status -|',campaign_id='$campaign_id',vcl_id='$vcl_id',vcl_name='$vcl_name',mix_method='$mix_method',status='INACTIVE';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_LISTMIX', event_type='ADD', record_id='$campaign_id', event_code='ADMIN ADD CAMPAIGN LIST MIX', event_sql=\"$SQL_log\", event_notes='List Mix: $vcl_id';"; @@ -18145,8 +18197,11 @@ if ($ADD==49) $stmt="DELETE from vicidial_campaigns_list_mix where vcl_id='$vcl_id' and campaign_id='$campaign_id';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_LISTMIX', event_type='DELETE', record_id='$campaign_id', event_code='ADMIN DELETE CAMPAIGN LIST MIX', event_sql=\"$SQL_log\", event_notes='List Mix: $vcl_id';"; @@ -18175,8 +18230,11 @@ if ($ADD==49) $stmtA="UPDATE vicidial_campaigns_list_mix SET status='ACTIVE' where vcl_id='$vcl_id' and campaign_id='$campaign_id';"; $rslt=mysql_to_mysqli($stmtA, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|$stmtA|"; + $SQL_log = "$stmt|$stmtA|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_LISTMIX', event_type='MODIFY', record_id='$campaign_id', event_code='ADMIN MODIFY CAMPAIGN LIST MIX ACTIVE', event_sql=\"$SQL_log\", event_notes='List Mix: $vcl_id';"; @@ -18219,8 +18277,11 @@ if ($ADD==401) $stmt="UPDATE vicidial_xfer_presets SET preset_dtmf='$preset_dtmf',preset_number='$preset_number',preset_hide_number='$preset_hide_number' where campaign_id='$campaign_id' and preset_name='$preset_name';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_PRESET', event_type='MODIFY', record_id='$campaign_id', event_code='ADMIN MODIFY CAMPAIGN PRESET', event_sql=\"$SQL_log\", event_notes='Preset: $preset_name - $preset_number';"; @@ -20567,8 +20628,11 @@ if ($ADD==493111111111) $stmt="INSERT INTO vicidial_campaign_statuses (status,status_name,selectable,campaign_id,human_answered,category,sale,dnc,customer_contact,not_interested,unworkable,scheduled_callback,completed,min_sec,max_sec,answering_machine) values('$status_id','$status_name','$selectable','$status_group_id','$human_answered','$category','$sale','$dnc','$customer_contact','$not_interested','$unworkable','$scheduled_callbacks','$completed','$min_sec','$max_sec','$answering_machine');"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_status_groups set modify_stamp='$SQLdate' where status_group_id='$status_group_id';"; + $rslt=mysql_to_mysqli($stmtA, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='STATUSGROUPS', event_type='ADD', record_id='$status_group_id', event_code='ADMIN ADD STATUS GROUP STATUS', event_sql=\"$SQL_log\", event_notes='Status: $status_id';"; @@ -20586,8 +20650,11 @@ if ($ADD==493111111111) $stmt="DELETE FROM vicidial_campaign_statuses where campaign_id='$status_group_id' and status='$status';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_status_groups set modify_stamp='$SQLdate' where status_group_id='$status_group_id';"; + $rslt=mysql_to_mysqli($stmtA, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='STATUSGROUPS', event_type='DELETE', record_id='$status_group_id', event_code='ADMIN DELETE STATUS GROUP STATUS', event_sql=\"$SQL_log\", event_notes='Status: $status';"; @@ -20601,8 +20668,11 @@ if ($ADD==493111111111) $stmt="UPDATE vicidial_campaign_statuses SET status_name='$status_name',selectable='$selectable',human_answered='$human_answered',category='$category',sale='$sale',dnc='$dnc',customer_contact='$customer_contact',not_interested='$not_interested',unworkable='$unworkable',scheduled_callback='$scheduled_callbacks',completed='$completed',min_sec='$min_sec',max_sec='$max_sec',answering_machine='$answering_machine' where campaign_id='$status_group_id' and status='$status';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_status_groups set modify_stamp='$SQLdate' where status_group_id='$status_group_id';"; + $rslt=mysql_to_mysqli($stmtA, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='STATUSGROUPS', event_type='MODIFY', record_id='$status_group_id', event_code='ADMIN MODIFY STATUS GROUP STATUS', event_sql=\"$SQL_log\", event_notes='Status: $status';"; @@ -20781,8 +20851,11 @@ if ($ADD==496111111111) $stmt="INSERT INTO vicidial_campaign_cid_areacodes(campaign_id,areacode,outbound_cid,cid_description) values('$cid_group_id','$areacode','$outbound_cid','$cid_description');"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_cid_groups set modify_stamp='$SQLdate' where cid_group_id='$cid_group_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CIDGROUPS', event_type='ADD', record_id='$cid_group_id', event_code='ADMIN ADD CID GROUP ENTRY', event_sql=\"$SQL_log\", event_notes='CID: $areacode - $outbound_cid';"; @@ -20821,8 +20894,11 @@ if ($ADD==496111111111) $stmt="DELETE FROM vicidial_campaign_cid_areacodes WHERE campaign_id='$cid_group_id' and areacode='$areacode' and outbound_cid='$outbound_cid';"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_cid_groups set modify_stamp='$SQLdate' where cid_group_id='$cid_group_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CIDGROUPS', event_type='DELETE', record_id='$cid_group_id', event_code='ADMIN DELETE CID GROUP ENTRY', event_sql=\"$SQL_log\", event_notes='CID: $areacode - $outbound_cid';"; @@ -20901,7 +20977,10 @@ if ($ADD==496111111111) $stmt="UPDATE vicidial_campaign_cid_areacodes SET active='$Factive_value',cid_description='$Fcid_description_value' WHERE campaign_id='$cid_group_id' and areacode='$Xareacode[$o]' and outbound_cid='$Xoutbound_cid[$o]';"; $rslt=mysql_to_mysqli($stmt, $link); - $stmt_log .= "$stmt|"; + $stmtB="UPDATE vicidial_cid_groups set modify_stamp='$SQLdate' where cid_group_id='$cid_group_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + + $stmt_log .= "$stmt|$stmtB|"; $accid_log .= "CID: $Xareacode[$o] - $Xoutbound_cid[$o] - $Factive_value - $Fcid_description_value|"; } $o++; @@ -22952,8 +23031,11 @@ if ($ADD==65) $stmt="DELETE FROM vicidial_lead_recycle where campaign_id='$campaign_id' and status='$status' $LOGallowed_campaignsSQL;"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_RECYCLE', event_type='DELETE', record_id='$campaign_id', event_code='ADMIN DELETE CAMPAIGN LEAD RECYCLE', event_sql=\"$SQL_log\", event_notes='Status: $status';"; @@ -23008,11 +23090,11 @@ if ($ADD==66) $row=mysqli_fetch_row($rslt); $auto_alt_dial_statuses = preg_replace("/\s$status\s/i", " ",$row[0]); - $stmt="UPDATE vicidial_campaigns set auto_alt_dial_statuses='$auto_alt_dial_statuses' where campaign_id='$campaign_id' $LOGallowed_campaignsSQL;"; + $stmt="UPDATE vicidial_campaigns set auto_alt_dial_statuses='$auto_alt_dial_statuses',campaign_changedate='$SQLdate' where campaign_id='$campaign_id' $LOGallowed_campaignsSQL;"; $rslt=mysql_to_mysqli($stmt, $link); ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_ALTDIALS', event_type='DELETE', record_id='$campaign_id', event_code='ADMIN DELETE CAMPAIGN ALT DIAL', event_sql=\"$SQL_log\", event_notes='Status: $status';"; @@ -23060,8 +23142,11 @@ if ($ADD==67) $stmt="DELETE FROM vicidial_pause_codes where campaign_id='$campaign_id' and pause_code='$pause_code' $LOGallowed_campaignsSQL;"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|"; + $SQL_log = "$stmt|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_PAUSECODES', event_type='DELETE', record_id='$campaign_id', event_code='ADMIN DELETE CAMPAIGN PAUSE CODE', event_sql=\"$SQL_log\", event_notes='Status: $pause_code';"; @@ -23116,7 +23201,7 @@ if ($ADD==68) $row=mysqli_fetch_row($rslt); $dial_statuses = preg_replace("/\s$status\s/i", " ",$row[0]); - $stmt="UPDATE vicidial_campaigns set dial_statuses='$dial_statuses' where campaign_id='$campaign_id' $LOGallowed_campaignsSQL;"; + $stmt="UPDATE vicidial_campaigns set dial_statuses='$dial_statuses',campaign_changedate='$SQLdate' where campaign_id='$campaign_id' $LOGallowed_campaignsSQL;"; $rslt=mysql_to_mysqli($stmt, $link); ### LOG INSERTION Admin Log Table ### @@ -23171,8 +23256,11 @@ if ($ADD==601) $stmtA="DELETE FROM vicidial_xfer_stats where campaign_id='$campaign_id' and preset_name='$preset_name' $LOGallowed_campaignsSQL;"; $rslt=mysql_to_mysqli($stmt, $link); + $stmtB="UPDATE vicidial_campaigns set campaign_changedate='$SQLdate' where campaign_id='$campaign_id';"; + $rslt=mysql_to_mysqli($stmtB, $link); + ### LOG INSERTION Admin Log Table ### - $SQL_log = "$stmt|$stmtA|"; + $SQL_log = "$stmt|$stmtA|$stmtB|"; $SQL_log = preg_replace('/;/', '', $SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$SQLdate', user='$PHP_AUTH_USER', ip_address='$ip', event_section='CAMPAIGN_PRESETS', event_type='DELETE', record_id='$campaign_id', event_code='ADMIN DELETE CAMPAIGN PRESET', event_sql=\"$SQL_log\", event_notes='Preset: $preset_name';"; diff --git a/agc_2-X/trunk/www/vicidial/non_agent_api.php b/agc_2-X/trunk/www/vicidial/non_agent_api.php index 03ff30ba..f62abd2d 100644 --- a/agc_2-X/trunk/www/vicidial/non_agent_api.php +++ b/agc_2-X/trunk/www/vicidial/non_agent_api.php @@ -217,10 +217,11 @@ # 240730-1832 - Changes for PHP8 compatibility, Added copy_did function # 240824-1626 - Added user_details function # 241004-1518 - Added webform_one-three variables to the update_campaign function +# 241113-1600 - Added in_groups as input option for update_user function # -$version = '2.14-194'; -$build = '241004-1518'; +$version = '2.14-195'; +$build = '241113-1600'; $php_script='non_agent_api.php'; $api_url_log = 0; $camp_lead_order_random=1; @@ -4109,6 +4110,7 @@ if ($function == 'update_user') $custom_fiveSQL=''; $activeSQL=''; $wrapup_seconds_overrideSQL=''; + $closer_campaignsSQL=''; if (strlen($agent_pass) > 0) { @@ -4401,6 +4403,12 @@ if ($function == 'update_user') else {$wrapup_seconds_overrideSQL = " ,wrapup_seconds_override='$wrapup_seconds_override'";} } + if (strlen($in_groups) > 0) + { + $in_groups = preg_replace("/\|/"," ",$in_groups); + $in_groups = " ".$in_groups." -"; + $closer_campaignsSQL = " ,closer_campaigns=\"$in_groups\""; + } if ( (strlen($campaign_rank) > 0) or (strlen($campaign_grade) > 0) ) { @@ -4629,7 +4637,7 @@ if ($function == 'update_user') ### END reset_password section ### } - $updateSQL = "$passSQL$pass_hashSQL$full_nameSQL$user_levelSQL$user_groupSQL$phone_loginSQL$phone_passSQL$hotkeys_activeSQL$voicemail_idSQL$emailSQL$custom_oneSQL$custom_twoSQL$custom_threeSQL$custom_fourSQL$custom_fiveSQL$activeSQL$wrapup_seconds_overrideSQL"; + $updateSQL = "$passSQL$pass_hashSQL$full_nameSQL$user_levelSQL$user_groupSQL$phone_loginSQL$phone_passSQL$hotkeys_activeSQL$voicemail_idSQL$emailSQL$custom_oneSQL$custom_twoSQL$custom_threeSQL$custom_fourSQL$custom_fiveSQL$activeSQL$wrapup_seconds_overrideSQL$closer_campaignsSQL"; if (strlen($updateSQL)< 3) {