diff --git a/agc_2-X/trunk/bin/VICIDIAL_UPDATE_leads_status_file.pl b/agc_2-X/trunk/bin/VICIDIAL_UPDATE_leads_status_file.pl index 37c91568..3d6ce56e 100644 --- a/agc_2-X/trunk/bin/VICIDIAL_UPDATE_leads_status_file.pl +++ b/agc_2-X/trunk/bin/VICIDIAL_UPDATE_leads_status_file.pl @@ -15,6 +15,7 @@ # # CHANGES # 90627-1402 - First Build +# 90907-0635 - Added list_id to table and allowed for multiple matches in results # $secX = time(); @@ -394,24 +395,41 @@ foreach(@FILES) if ($DBX) {print "$a|$vendor_lead_code|$lead_id|$status|$add_to_dnc\n";} + $lead_id = ''; + $vendor_lead_code = ''; + $old_status = ''; + $phone_number = ''; + $old_list_id = ''; + $lead_found=0; - $stmtA = "SELECT lead_id,vendor_lead_code,status,phone_number from vicidial_list where $lookupSQL;"; + $stmtA = "SELECT lead_id,vendor_lead_code,status,phone_number,list_id from vicidial_list where $lookupSQL;"; if($DBX){print STDERR "\n|$stmtA|\n";} $sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr; $sthA->execute or die "executing: $stmtA ", $dbhA->errstr; $sthArows=$sthA->rows; - if ($sthArows > 0) + $h=0; + while ($sthArows > $h) { @aryA = $sthA->fetchrow_array; - $lead_id = $aryA[0]; - $vendor_lead_code = $aryA[1]; - $old_status = $aryA[2]; - $phone_number = $aryA[3]; + $lead_idSQL .= "'$aryA[0]',"; + $lead_id .= "$aryA[0],"; + $vendor_lead_code .= "$aryA[1],"; + $old_status .= "$aryA[2],"; + $phone_number = "$aryA[3],"; + $old_list_id = "$aryA[4],"; $lead_found++; + $h++; } $sthA->finish(); + chop($lead_idSQL); + chop($lead_id); + chop($vendor_lead_code); + chop($old_status); + chop($phone_number); + chop($old_list_id); + if ($lead_found > 0) { $stmtZ = "UPDATE vicidial_list SET status='$status' where $lookupSQL;"; @@ -424,9 +442,9 @@ foreach(@FILES) if ($delete_from_hopper > 0) { - $stmtZ = "DELETE from vicidial_hopper where lead_id='$lead_id';"; + $stmtZ = "DELETE from vicidial_hopper where lead_id IN($lead_id);"; if (!$T) {$Uaffected_rows = $dbhA->do($stmtZ); } # or die "Couldn't execute query: |$stmtZ|\n"; - if($DB){print STDERR "\n|$affected_rows|$stmtZ|\n";} + if($DB){print STDERR "\n|$Uaffected_rows|$stmtZ|\n";} } } else @@ -445,7 +463,7 @@ foreach(@FILES) # index (event_date) # ); - $stmtZ = "INSERT INTO vicidial_list_update_log SET event_date='$SQL_date',lead_id='$lead_id',vendor_id='$vendor_lead_code',phone_number='$phone_number',status='$status',old_status='$old_status',filename='$FILEname',result='$result',result_rows='$Uaffected_rows';"; + $stmtZ = "INSERT INTO vicidial_list_update_log SET event_date='$SQL_date',lead_id='$lead_id',vendor_id='$vendor_lead_code',phone_number='$phone_number',status='$status',old_status='$old_status',filename='$FILEname',result='$result',result_rows='$Uaffected_rows',list_id='$list_id';"; if (!$T) {$affected_rows = $dbhA->do($stmtZ); } # or die "Couldn't execute query: |$stmtZ|\n"; # $alt_phone_id = $dbhA->{'mysql_insertid'}; if($DB){print STDERR "\n|$affected_rows|$stmtZ|\n";} diff --git a/agc_2-X/trunk/docs/AGENT_API.txt b/agc_2-X/trunk/docs/AGENT_API.txt index 995c6f84..5171a909 100644 --- a/agc_2-X/trunk/docs/AGENT_API.txt +++ b/agc_2-X/trunk/docs/AGENT_API.txt @@ -26,7 +26,7 @@ New scripts: Required variables for API calls: # user - is the API user # pass - is the API user password -# agent_user - is the user whose session that you want to affect +# agent_user - is the vicidial agent user whose session that you want to affect # source - description of what originated the API call (maximum 20 characters) Example URL strings for API calls: 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 34e1065b..73892d94 100644 --- a/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql +++ b/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql @@ -1577,14 +1577,15 @@ index (call_date) CREATE TABLE vicidial_list_update_log ( event_date DATETIME, -lead_id INT(9) UNSIGNED, -vendor_id VARCHAR(20), -phone_number VARCHAR(20), +lead_id VARCHAR(255), +vendor_id VARCHAR(255), +phone_number VARCHAR(255), status VARCHAR(6), -old_status VARCHAR(6), +old_status VARCHAR(255), filename VARCHAR(255) default '', result VARCHAR(20), result_rows SMALLINT(3) UNSIGNED default '0', +list_id VARCHAR(255), index (event_date) ); @@ -1911,7 +1912,7 @@ CREATE INDEX phone_number on vicidial_closer_log (phone_number); CREATE INDEX date_user on vicidial_closer_log (call_date,user); CREATE INDEX comment_a on live_inbound_log (comment_a); -UPDATE system_settings SET db_schema_version='1170'; +UPDATE system_settings SET db_schema_version='1171'; GRANT RELOAD ON *.* TO cron@'%'; GRANT RELOAD ON *.* TO cron@localhost; diff --git a/agc_2-X/trunk/extras/upgrade_2.2.0.sql b/agc_2-X/trunk/extras/upgrade_2.2.0.sql index 66b9dd36..ffd5e36f 100644 --- a/agc_2-X/trunk/extras/upgrade_2.2.0.sql +++ b/agc_2-X/trunk/extras/upgrade_2.2.0.sql @@ -516,3 +516,11 @@ ALTER TABLE servers ADD rebuild_music_on_hold ENUM('Y','N') default 'Y'; ALTER TABLE servers ADD active_agent_login_server ENUM('Y','N') default 'Y'; UPDATE system_settings SET db_schema_version='1170'; + +ALTER TABLE vicidial_list_update_log ADD list_id VARCHAR(255); +ALTER TABLE vicidial_list_update_log MODIFY lead_id VARCHAR(255); +ALTER TABLE vicidial_list_update_log MODIFY vendor_id VARCHAR(255); +ALTER TABLE vicidial_list_update_log MODIFY phone_number VARCHAR(255); +ALTER TABLE vicidial_list_update_log MODIFY old_status VARCHAR(255); + +UPDATE system_settings SET db_schema_version='1171'; diff --git a/agc_2-X/trunk/www/vicidial/AST_LIST_UPDATEstats.php b/agc_2-X/trunk/www/vicidial/AST_LIST_UPDATEstats.php index 553abe23..8fd08268 100644 --- a/agc_2-X/trunk/www/vicidial/AST_LIST_UPDATEstats.php +++ b/agc_2-X/trunk/www/vicidial/AST_LIST_UPDATEstats.php @@ -6,6 +6,7 @@ # CHANGES # # 90627-2055 - First build +# 90907-0636 - Added list id to results # require("dbconnect.php"); @@ -165,11 +166,11 @@ echo "\n\n"; ### GRAB ALL RECORDS WITHIN RANGE FROM THE DATABASE ### echo "List Update Detail:
\n"; echo "\n"; -echo "\n"; +echo "\n"; echo "\n"; -$stmt="SELECT event_date,lead_id,vendor_id,phone_number,status,old_status,filename,result,result_rows from vicidial_list_update_log where event_date >= '$query_date' and event_date <= '$end_date' order by event_date,filename;"; +$stmt="SELECT event_date,lead_id,vendor_id,phone_number,status,old_status,filename,result,result_rows,list_id from vicidial_list_update_log where event_date >= '$query_date' and event_date <= '$end_date' order by event_date,filename;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $records_to_grab = mysql_num_rows($rslt); @@ -178,7 +179,7 @@ while ($i < $records_to_grab) { $row=mysql_fetch_row($rslt); $row[6] = trim($row[6]); - echo "\n"; + echo "\n"; $i++; }
DATE/TIMELEAD_IDVENDOR_IDPHONESTATUSOLD_STATUSFILENAMERESULTUPDATED_ROWS
DATE/TIMELEAD_IDVENDOR_IDPHONESTATUSOLD_STATUSOLD_LISTFILENAMERESULTUPDATED_ROWS
$row[0]$row[1]$row[2]$row[3]$row[4]$row[5]$row[6]$row[7]$row[8]
$row[0]$row[1]$row[2]$row[3]$row[4]$row[5]$row[9]$row[6]$row[7]$row[8]