Added --vl-year flag option, to look in year-based vicidial_log_archive_YYYY tables
Fix for QC in the DB git-svn-id: svn://192.168.202.10@3959 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
@@ -16,12 +16,13 @@
|
|||||||
# Please schedule to run this script at a time when the reports will not be
|
# Please schedule to run this script at a time when the reports will not be
|
||||||
# used for several hours.
|
# used for several hours.
|
||||||
#
|
#
|
||||||
# Copyright (C) 2024 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
# Copyright (C) 2025 Matt Florell <vicidial@gmail.com> LICENSE: AGPLv2
|
||||||
#
|
#
|
||||||
# CHANGES
|
# CHANGES
|
||||||
# 240704-1815 - First version
|
# 240704-1815 - First version
|
||||||
# 240705-0954 - Added --query-count-test flag option
|
# 240705-0954 - Added --query-count-test flag option
|
||||||
# 240711-1938 - Added --no-optimize-tables flag option
|
# 240711-1938 - Added --no-optimize-tables flag option
|
||||||
|
# 251230-0853 - Added --vl-year flag option, to look in year-based vicidial_log_archive_YYYY tables
|
||||||
#
|
#
|
||||||
|
|
||||||
$DB=0;
|
$DB=0;
|
||||||
@@ -39,6 +40,9 @@ $api_log_only=0;
|
|||||||
$api_archive_only=0;
|
$api_archive_only=0;
|
||||||
$url_log_only=0;
|
$url_log_only=0;
|
||||||
$url_log_archive=0;
|
$url_log_archive=0;
|
||||||
|
$vl_year_tables=0;
|
||||||
|
$vl_year_A='';
|
||||||
|
$vl_year_B='';
|
||||||
|
|
||||||
### begin parsing run-time options ###
|
### begin parsing run-time options ###
|
||||||
if (length($ARGV[0])>1)
|
if (length($ARGV[0])>1)
|
||||||
@@ -58,6 +62,7 @@ if (length($ARGV[0])>1)
|
|||||||
print " [--calc-test] = date calculation test only\n";
|
print " [--calc-test] = date calculation test only\n";
|
||||||
print " [--query-count-test] = run archive counts test only\n";
|
print " [--query-count-test] = run archive counts test only\n";
|
||||||
print " [--no-optimize-tables] = do not optimize the archive tables after deletion of rows \n";
|
print " [--no-optimize-tables] = do not optimize the archive tables after deletion of rows \n";
|
||||||
|
print " [--vl-year] = look in year-based vicidial_log_archive_YYYY tables \n";
|
||||||
print " [--test] = test\n";
|
print " [--test] = test\n";
|
||||||
print " [--debug] = debug output for some options\n";
|
print " [--debug] = debug output for some options\n";
|
||||||
print " [--debugX] = extra debug output for some options\n";
|
print " [--debugX] = extra debug output for some options\n";
|
||||||
@@ -100,6 +105,11 @@ if (length($ARGV[0])>1)
|
|||||||
$NO_OPTIMIZE_TABLES=1;
|
$NO_OPTIMIZE_TABLES=1;
|
||||||
print "\n-----DO NOT OPTIMIZE ARCHIVE TABLES AFTER ROWS DELETION: $NO_OPTIMIZE_TABLES-----\n\n";
|
print "\n-----DO NOT OPTIMIZE ARCHIVE TABLES AFTER ROWS DELETION: $NO_OPTIMIZE_TABLES-----\n\n";
|
||||||
}
|
}
|
||||||
|
if ($args =~ /--vl-year/i)
|
||||||
|
{
|
||||||
|
$vl_year_tables=1;
|
||||||
|
print "\n-----Use year-based vicidial_log_archive_YYYY tables: $vl_year_tables-----\n\n";
|
||||||
|
}
|
||||||
if ($args =~ /--days=/i)
|
if ($args =~ /--days=/i)
|
||||||
{
|
{
|
||||||
@data_in = split(/--days=/,$args);
|
@data_in = split(/--days=/,$args);
|
||||||
@@ -159,6 +169,13 @@ if (!$Q) {print "other _archive tables and move them to the cold-storage log dat
|
|||||||
if (!$Q) {print "delete the records in original tables older than X days\n";}
|
if (!$Q) {print "delete the records in original tables older than X days\n";}
|
||||||
if (!$Q) {print "$CLIdays days ( $del_time [$del_date]|$del_epoch ) from current date \n\n";}
|
if (!$Q) {print "$CLIdays days ( $del_time [$del_date]|$del_epoch ) from current date \n\n";}
|
||||||
|
|
||||||
|
if ($vl_year_tables > 0)
|
||||||
|
{
|
||||||
|
$vl_year_A=$RMyear;
|
||||||
|
$vl_year_B=($RMyear - 1);
|
||||||
|
if (!$Q) {print "vicidial_log_archive_YYYY year-tables enabled: |$vl_year_A|$vl_year_B|$vl_year_tables| \n\n";}
|
||||||
|
}
|
||||||
|
|
||||||
# default path to astguiclient configuration file:
|
# default path to astguiclient configuration file:
|
||||||
$PATHconf = '/etc/astguiclient.conf';
|
$PATHconf = '/etc/astguiclient.conf';
|
||||||
|
|
||||||
@@ -416,9 +433,181 @@ if (!$T)
|
|||||||
##### END call_log_archive cold-storage processing #####
|
##### END call_log_archive cold-storage processing #####
|
||||||
|
|
||||||
|
|
||||||
|
if ($vl_year_tables > 0)
|
||||||
|
{
|
||||||
|
$vl_year_A=$RMyear;
|
||||||
|
$vl_year_B=($RMyear - 1);
|
||||||
|
if (!$Q) {print "vicidial_log_archive_YYYY year-tables enabled: |$vl_year_A|$vl_year_B|$vl_year_tables| \n\n";}
|
||||||
|
|
||||||
|
##### BEGIN vicidial_log_archive cold-storage processing #####
|
||||||
|
$vicidial_log_archive_count=0;
|
||||||
|
$vicidial_log_archive = "vicidial_log_archive_$vl_year_B";
|
||||||
|
$stmtA = "SELECT count(*) from $vicidial_log_archive WHERE call_date < '$del_time';";
|
||||||
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
||||||
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
||||||
|
$sthArows=$sthA->rows;
|
||||||
|
if ($sthArows > 0)
|
||||||
|
{
|
||||||
|
@aryA = $sthA->fetchrow_array;
|
||||||
|
$vicidial_log_archive_count = $aryA[0];
|
||||||
|
}
|
||||||
|
$sthA->finish();
|
||||||
|
|
||||||
|
$call_log_CS_count=0;
|
||||||
|
$stmtB = "SELECT count(*) from vicidial_log_archive;";
|
||||||
|
$sthB = $dbhB->prepare($stmtB) or die "preparing: ",$dbhB->errstr;
|
||||||
|
$sthB->execute or die "executing: $stmtB ", $dbhB->errstr;
|
||||||
|
$sthBrows=$sthB->rows;
|
||||||
|
if ($sthBrows > 0)
|
||||||
|
{
|
||||||
|
@aryB = $sthB->fetchrow_array;
|
||||||
|
$call_log_CS_count = $aryB[0];
|
||||||
|
}
|
||||||
|
$sthB->finish();
|
||||||
|
|
||||||
|
if (!$Q) {print "\nAnalyzing $vicidial_log_archive table... ($vicidial_log_archive_count|$call_log_CS_count)\n";}
|
||||||
|
|
||||||
|
if ( ($vicidial_log_archive_count < 1) || ($QUERY_COUNT_TEST > 0) )
|
||||||
|
{
|
||||||
|
if (!$Q) {print "$vicidial_log_archive has no records to send to cold-storage, skipping this table...\n";}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$sthAfields=0;
|
||||||
|
$stmtA = "SELECT * from $vicidial_log_archive limit 1;";
|
||||||
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
||||||
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
||||||
|
$sthArows=$sthA->rows;
|
||||||
|
if ($sthArows > 0)
|
||||||
|
{
|
||||||
|
$sthAfields = $sthA->{'NUM_OF_FIELDS'};
|
||||||
|
}
|
||||||
|
$sthA->finish();
|
||||||
|
|
||||||
|
$sthBfields=0;
|
||||||
|
if ($call_log_CS_count > 0)
|
||||||
|
{
|
||||||
|
$stmtB = "SELECT * from vicidial_log_archive limit 1;";
|
||||||
|
$sthB = $dbhB->prepare($stmtB) or die "preparing: ",$dbhB->errstr;
|
||||||
|
$sthB->execute or die "executing: $stmtB ", $dbhB->errstr;
|
||||||
|
$sthBrows=$sthB->rows;
|
||||||
|
if ($sthBrows > 0)
|
||||||
|
{
|
||||||
|
$sthBfields = $sthB->{'NUM_OF_FIELDS'};
|
||||||
|
}
|
||||||
|
$sthB->finish();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if($DBX){print STDERR "DEBUG: empty cold-storage table, no field count check\n";}
|
||||||
|
$sthBfields = $sthAfields;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ($sthAfields < 1) || ($sthBfields ne $sthAfields) )
|
||||||
|
{
|
||||||
|
if (!$Q) {print "$vicidial_log_archive cold-storage fields mismatch error($sthBfields|$sthAfields), skipping this table...\n";}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (!$Q) {print "$vicidial_log_archive cold-storage fields count match($sthBfields|$sthAfields), starting cold-storage move...\n";}
|
||||||
|
|
||||||
|
$stmtA = "SELECT * FROM $vicidial_log_archive WHERE call_date < '$del_time';";
|
||||||
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
||||||
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
||||||
|
$sthArows=$sthA->rows;
|
||||||
|
$Arow_ct=0;
|
||||||
|
$Irows_ct=0;
|
||||||
|
$Btotal_inserted=0;
|
||||||
|
$insert_stmt='INSERT IGNORE INTO vicidial_log_archive VALUES';
|
||||||
|
while ($sthArows > $Arow_ct)
|
||||||
|
{
|
||||||
|
@aryA = $sthA->fetchrow_array;
|
||||||
|
$Afield_ct=0;
|
||||||
|
while ($sthAfields > $Afield_ct)
|
||||||
|
{
|
||||||
|
if ($Afield_ct < 1) {$insert_stmt .= '(';}
|
||||||
|
else{$insert_stmt .= ',';}
|
||||||
|
$tmp_field = $aryA[$Afield_ct];
|
||||||
|
$tmp_field =~ s/\"//gi;
|
||||||
|
$insert_stmt .= "\"$tmp_field\"";
|
||||||
|
$Afield_ct++;
|
||||||
|
}
|
||||||
|
$insert_stmt .= '),';
|
||||||
|
$Irows_ct++;
|
||||||
|
|
||||||
|
if ($Irows_ct > 99)
|
||||||
|
{
|
||||||
|
chop($insert_stmt);
|
||||||
|
$stmtB = "$insert_stmt;";
|
||||||
|
$affected_rowsB = $dbhB->do($stmtB);
|
||||||
|
$Btotal_inserted = ($Btotal_inserted + $affected_rowsB);
|
||||||
|
if($DBX){print STDERR "\n|$affected_rowsB|$stmtB|\n";}
|
||||||
|
$Irows_ct=0;
|
||||||
|
$insert_stmt='INSERT IGNORE INTO vicidial_log_archive VALUES';
|
||||||
|
}
|
||||||
|
$Arow_ct++;
|
||||||
|
if ($Q < 1)
|
||||||
|
{
|
||||||
|
if ($Arow_ct =~ /10000$/i) {print STDERR "0 $Arow_ct\r";}
|
||||||
|
if ($Arow_ct =~ /20000$/i) {print STDERR "+ $Arow_ct\r";}
|
||||||
|
if ($Arow_ct =~ /30000$/i) {print STDERR "| $Arow_ct\r";}
|
||||||
|
if ($Arow_ct =~ /40000$/i) {print STDERR "\\ $Arow_ct\r";}
|
||||||
|
if ($Arow_ct =~ /50000$/i) {print STDERR "- $Arow_ct\r";}
|
||||||
|
if ($Arow_ct =~ /60000$/i) {print STDERR "/ $Arow_ct\r";}
|
||||||
|
if ($Arow_ct =~ /70000$/i) {print STDERR "| $Arow_ct\r";}
|
||||||
|
if ($Arow_ct =~ /80000$/i) {print STDERR "+ $Arow_ct\r";}
|
||||||
|
if ($Arow_ct =~ /90000$/i) {print STDERR "0 $Arow_ct\r";}
|
||||||
|
if ($Arow_ct =~ /00000$/i) {print "$Arow_ct|$Btotal_inserted|\n";}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$sthA->finish();
|
||||||
|
|
||||||
|
if ($Irows_ct > 0)
|
||||||
|
{
|
||||||
|
chop($insert_stmt);
|
||||||
|
$stmtB = "$insert_stmt;";
|
||||||
|
$affected_rowsB = $dbhB->do($stmtB);
|
||||||
|
$Btotal_inserted = ($Btotal_inserted + $affected_rowsB);
|
||||||
|
if($DBX){print STDERR "\n|$affected_rowsB|LAST INSERT|$stmtB|\n";}
|
||||||
|
}
|
||||||
|
if (!$Q) {print "$vicidial_log_archive cold-storage inserts completed ($Btotal_inserted / $sthArows)\n";}
|
||||||
|
|
||||||
|
if ($Btotal_inserted ne $sthArows)
|
||||||
|
{
|
||||||
|
print "ERROR! records inserted is les than records to be inserted ($Btotal_inserted / $sthArows)\n";
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (!$Q) {print "$vicidial_log_archive $sthArows deletions starting...\n";}
|
||||||
|
|
||||||
|
$stmtA = "DELETE FROM $vicidial_log_archive WHERE call_date < '$del_time';";
|
||||||
|
$affected_rowsA = $dbhA->do($stmtA);
|
||||||
|
if (!$Q) {print STDERR "records deleted from $vicidial_log_archive: $affected_rowsA|$stmtA|\n";}
|
||||||
|
|
||||||
|
if ($NO_OPTIMIZE_TABLES < 1)
|
||||||
|
{
|
||||||
|
$stmtA = "OPTIMIZE TABLE $vicidial_log_archive;";
|
||||||
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
||||||
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
||||||
|
if (!$Q) {print STDERR "$vicidial_log_archive table optimized, cold-storage process is complete for this table!\n";}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (!$Q) {print STDERR "$vicidial_log_archive table skip optimize\n";}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
##### END vicidial_log_archive cold-storage processing #####
|
||||||
|
}
|
||||||
|
|
||||||
##### BEGIN vicidial_log_archive cold-storage processing #####
|
##### BEGIN vicidial_log_archive cold-storage processing #####
|
||||||
$vicidial_log_archive_count=0;
|
$vicidial_log_archive_count=0;
|
||||||
$stmtA = "SELECT count(*) from vicidial_log_archive WHERE call_date < '$del_time';";
|
$vicidial_log_archive = "vicidial_log_archive";
|
||||||
|
if ($vl_year_tables > 0)
|
||||||
|
{$vicidial_log_archive = "vicidial_log_archive_$vl_year_A";}
|
||||||
|
$stmtA = "SELECT count(*) from $vicidial_log_archive WHERE call_date < '$del_time';";
|
||||||
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
||||||
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
||||||
$sthArows=$sthA->rows;
|
$sthArows=$sthA->rows;
|
||||||
@@ -441,16 +630,16 @@ if (!$T)
|
|||||||
}
|
}
|
||||||
$sthB->finish();
|
$sthB->finish();
|
||||||
|
|
||||||
if (!$Q) {print "\nAnalyzing vicidial_log_archive table... ($vicidial_log_archive_count|$call_log_CS_count)\n";}
|
if (!$Q) {print "\nAnalyzing $vicidial_log_archive table... ($vicidial_log_archive_count|$call_log_CS_count)\n";}
|
||||||
|
|
||||||
if ( ($vicidial_log_archive_count < 1) || ($QUERY_COUNT_TEST > 0) )
|
if ( ($vicidial_log_archive_count < 1) || ($QUERY_COUNT_TEST > 0) )
|
||||||
{
|
{
|
||||||
if (!$Q) {print "vicidial_log_archive has no records to send to cold-storage, skipping this table...\n";}
|
if (!$Q) {print "$vicidial_log_archive has no records to send to cold-storage, skipping this table...\n";}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$sthAfields=0;
|
$sthAfields=0;
|
||||||
$stmtA = "SELECT * from vicidial_log_archive limit 1;";
|
$stmtA = "SELECT * from $vicidial_log_archive limit 1;";
|
||||||
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
||||||
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
||||||
$sthArows=$sthA->rows;
|
$sthArows=$sthA->rows;
|
||||||
@@ -481,13 +670,13 @@ if (!$T)
|
|||||||
|
|
||||||
if ( ($sthAfields < 1) || ($sthBfields ne $sthAfields) )
|
if ( ($sthAfields < 1) || ($sthBfields ne $sthAfields) )
|
||||||
{
|
{
|
||||||
if (!$Q) {print "vicidial_log_archive cold-storage fields mismatch error($sthBfields|$sthAfields), skipping this table...\n";}
|
if (!$Q) {print "$vicidial_log_archive cold-storage fields mismatch error($sthBfields|$sthAfields), skipping this table...\n";}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!$Q) {print "vicidial_log_archive cold-storage fields count match($sthBfields|$sthAfields), starting cold-storage move...\n";}
|
if (!$Q) {print "$vicidial_log_archive cold-storage fields count match($sthBfields|$sthAfields), starting cold-storage move...\n";}
|
||||||
|
|
||||||
$stmtA = "SELECT * FROM vicidial_log_archive WHERE call_date < '$del_time';";
|
$stmtA = "SELECT * FROM $vicidial_log_archive WHERE call_date < '$del_time';";
|
||||||
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
||||||
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
||||||
$sthArows=$sthA->rows;
|
$sthArows=$sthA->rows;
|
||||||
@@ -546,7 +735,7 @@ if (!$T)
|
|||||||
$Btotal_inserted = ($Btotal_inserted + $affected_rowsB);
|
$Btotal_inserted = ($Btotal_inserted + $affected_rowsB);
|
||||||
if($DBX){print STDERR "\n|$affected_rowsB|LAST INSERT|$stmtB|\n";}
|
if($DBX){print STDERR "\n|$affected_rowsB|LAST INSERT|$stmtB|\n";}
|
||||||
}
|
}
|
||||||
if (!$Q) {print "vicidial_log_archive cold-storage inserts completed ($Btotal_inserted / $sthArows)\n";}
|
if (!$Q) {print "$vicidial_log_archive cold-storage inserts completed ($Btotal_inserted / $sthArows)\n";}
|
||||||
|
|
||||||
if ($Btotal_inserted ne $sthArows)
|
if ($Btotal_inserted ne $sthArows)
|
||||||
{
|
{
|
||||||
@@ -555,22 +744,22 @@ if (!$T)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!$Q) {print "vicidial_log_archive $sthArows deletions starting...\n";}
|
if (!$Q) {print "$vicidial_log_archive $sthArows deletions starting...\n";}
|
||||||
|
|
||||||
$stmtA = "DELETE FROM vicidial_log_archive WHERE call_date < '$del_time';";
|
$stmtA = "DELETE FROM $vicidial_log_archive WHERE call_date < '$del_time';";
|
||||||
$affected_rowsA = $dbhA->do($stmtA);
|
$affected_rowsA = $dbhA->do($stmtA);
|
||||||
if (!$Q) {print STDERR "records deleted from vicidial_log_archive: $affected_rowsA|$stmtA|\n";}
|
if (!$Q) {print STDERR "records deleted from $vicidial_log_archive: $affected_rowsA|$stmtA|\n";}
|
||||||
|
|
||||||
if ($NO_OPTIMIZE_TABLES < 1)
|
if ($NO_OPTIMIZE_TABLES < 1)
|
||||||
{
|
{
|
||||||
$stmtA = "OPTIMIZE TABLE vicidial_log_archive;";
|
$stmtA = "OPTIMIZE TABLE $vicidial_log_archive;";
|
||||||
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
||||||
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
||||||
if (!$Q) {print STDERR "vicidial_log_archive table optimized, cold-storage process is complete for this table!\n";}
|
if (!$Q) {print STDERR "$vicidial_log_archive table optimized, cold-storage process is complete for this table!\n";}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!$Q) {print STDERR "vicidial_log_archive table skip optimize\n";}
|
if (!$Q) {print STDERR "$vicidial_log_archive table skip optimize\n";}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5507,7 +5507,8 @@ INSERT INTO vicidial_lists SET list_id='998',list_name='Default Manual list',cam
|
|||||||
|
|
||||||
INSERT INTO system_settings (version,install_date,first_login_trigger) values('2.14b0.5', CURDATE(), 'Y');
|
INSERT INTO system_settings (version,install_date,first_login_trigger) values('2.14b0.5', CURDATE(), 'Y');
|
||||||
|
|
||||||
INSERT INTO vicidial_status_categories (vsc_id,vsc_name) values('UNDEFINED','Default Category');
|
INSERT INTO vicidial_status_categories (vsc_id,vsc_name,vsc_description) values('UNDEFINED','Default Category','');
|
||||||
|
INSERT INTO vicidial_status_categories (vsc_id,vsc_name,vsc_description) values('QC','QC-specific status','Quality control specific statuses');
|
||||||
|
|
||||||
INSERT INTO vicidial_user_groups SET user_group='ADMIN',group_name='VICIDIAL ADMINISTRATORS',allowed_campaigns=' -ALL-CAMPAIGNS- - -',agent_status_viewable_groups=' --ALL-GROUPS-- ',admin_viewable_groups=' ---ALL--- ',admin_viewable_call_times=' ---ALL--- ',agent_allowed_chat_groups=' --ALL-GROUPS-- ';
|
INSERT INTO vicidial_user_groups SET user_group='ADMIN',group_name='VICIDIAL ADMINISTRATORS',allowed_campaigns=' -ALL-CAMPAIGNS- - -',agent_status_viewable_groups=' --ALL-GROUPS-- ',admin_viewable_groups=' ---ALL--- ',admin_viewable_call_times=' ---ALL--- ',agent_allowed_chat_groups=' --ALL-GROUPS-- ';
|
||||||
|
|
||||||
@@ -5876,4 +5877,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 vdc_agent_api_active='1';
|
||||||
|
|
||||||
UPDATE system_settings SET db_schema_version='1735',db_schema_update_date=NOW(),reload_timestamp=NOW();
|
UPDATE system_settings SET db_schema_version='1736',db_schema_update_date=NOW(),reload_timestamp=NOW();
|
||||||
|
|||||||
@@ -3050,3 +3050,7 @@ ALTER TABLE vicidial_campaigns MODIFY dial_method ENUM('MANUAL','RATIO','ADAPT_H
|
|||||||
ALTER TABLE vicidial_campaigns ADD adaptive_percentmax_percentage TINYINT(2) UNSIGNED default '50';
|
ALTER TABLE vicidial_campaigns ADD adaptive_percentmax_percentage TINYINT(2) UNSIGNED default '50';
|
||||||
|
|
||||||
UPDATE system_settings SET db_schema_version='1735',db_schema_update_date=NOW() where db_schema_version < 1735;
|
UPDATE system_settings SET db_schema_version='1735',db_schema_update_date=NOW() where db_schema_version < 1735;
|
||||||
|
|
||||||
|
INSERT IGNORE INTO vicidial_status_categories (vsc_id,vsc_name,vsc_description) values('QC','QC-specific status','Quality control specific statuses');
|
||||||
|
|
||||||
|
UPDATE system_settings SET db_schema_version='1736',db_schema_update_date=NOW() where db_schema_version < 1736;
|
||||||
|
|||||||
Reference in New Issue
Block a user