OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
cream
/
zzXpress
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
π
..
-
06/17/2025 10:17:24 AM
rwxrwxr-x
π
.browserslistrc
208 bytes
01/07/2025 11:52:51 AM
rw-r--r--
π
.gitignore
42 bytes
01/07/2025 11:52:51 AM
rw-r--r--
π
.htaccess
803 bytes
01/07/2025 11:52:51 AM
rw-r--r--
π
.htaccess.swp
12 KB
01/07/2025 11:52:52 AM
rw-r--r--
π
.travis.yml
199 bytes
01/07/2025 11:52:52 AM
rw-r--r--
π
addList.php
5.23 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
aditya_navbar.php
23.72 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
allTemplates.php
5 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
assets
-
01/07/2025 11:50:15 AM
rwxr-xr-x
π
b_navbar.php
7.84 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
bbsns_subscribe.php
5.14 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
bcreateList.php
9.61 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
blacklist.php
13.36 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
bounceViewList.php
8.39 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
bounce_handler.php
4.99 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
bprocess_emails.php
6.73 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
checkNotificationTopics.php
5.11 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
check_identity
-
05/19/2025 10:07:22 AM
rwxr-xr-x
π
checknotif.php
1.01 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
ckeditor.php
2.14 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
clickViewList.php
5.13 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
click_handler.php
1.75 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
combined.php
11.23 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
complaintsViewList.php
6.78 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
complaints_handler.php
2.89 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
composer.json
200 bytes
01/07/2025 11:52:56 AM
rw-r--r--
π
composer.lock
39.12 KB
01/07/2025 11:52:56 AM
rw-r--r--
π
createList.php
17.4 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
credentials
-
01/07/2025 11:52:11 AM
rwxr-xr-x
π
csv.php
11.75 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
db.php
1000 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
deleteCampaign.php
966 bytes
05/19/2025 10:07:24 AM
rw-r--r--
π
delete_list.php
509 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
delete_users.php
435 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
deliveryViewList.php
6.87 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
delivery_handler.php
3.25 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
download_Complaints.php
974 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
download_bounces.php
1.18 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
download_clicked.php
1.23 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
download_delivered.php
1.12 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
download_open.php
1.22 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
download_report.php
3.33 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
download_unique_open.php
1.6 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
duplicate_campaign.php
1.62 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
edit_campaign.php
1.45 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
edit_list.php
9.89 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
feedback.php
1.66 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
footer.php
1.7 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
grfx
-
01/07/2025 11:52:13 AM
rwxr-xr-x
π
groupchatnavbar.php
607 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
himanshu_navbar.php
7.84 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
housekeeping.php
13.27 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
index.php
8.57 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
insert_list.php
2.64 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
js
-
01/07/2025 11:52:15 AM
rwxr-xr-x
π
load.php
159 bytes
05/19/2025 10:07:24 AM
rw-r--r--
π
log
-
01/07/2025 11:52:18 AM
rwxr-xr-x
π
main.css
413 bytes
01/07/2025 11:53:01 AM
rw-r--r--
π
navbar.php
23.77 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
newCompaign.php
11.12 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
openViewList.php
8.48 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
open_handler.php
1.75 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
process
-
05/19/2025 10:07:22 AM
rwxr-xr-x
π
process_emails.php
11.31 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
real-recipients.csv
39.48 KB
01/07/2025 11:53:03 AM
rw-r--r--
π
resubscribe.php
5.51 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
sample.csv
55 bytes
01/07/2025 11:53:03 AM
rw-r--r--
π
save.php
252 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
save_campaign.php
612 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
saved_content.html
6.48 KB
01/07/2025 11:53:03 AM
rw-r--r--
π
send_email.php
987 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
send_email_campaignGraph.php
2.24 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
sendgrid.php
3.62 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
showListMembers.php
13.98 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
showcase.php
7.93 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
sidebar.php
0 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
sns_subscribe.php
5.25 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
submit_form.php
2.48 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
test-mail.csv
337 bytes
01/07/2025 11:53:05 AM
rw-r--r--
π
test.php
969 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
test_process_emails.php
1.91 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
unsubscribe.php
3.8 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
upload_image.php
606 bytes
05/19/2025 10:07:22 AM
rw-r--r--
π
uploads
-
01/07/2025 11:52:34 AM
rwxr-xr-x
π
vendor
-
05/19/2025 10:07:24 AM
rwxr-xr-x
π
verify.html
486 bytes
01/07/2025 11:53:06 AM
rw-r--r--
π
verify.php
3.12 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
verify_email.php
5.12 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
viewCampaign.php
23.92 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
viewList.php
15.04 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
xpress_handler.php
9.79 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
zcreateList.php
13.51 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
znewCompaign.php
8.29 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
zprocess_emails.php
10.19 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
zviewList.php
14.63 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
zzindex.php
10.24 KB
05/19/2025 10:07:24 AM
rw-r--r--
π
zzviewCampaign.php
22.42 KB
05/19/2025 10:07:22 AM
rw-r--r--
π
zzviewList.php
14.63 KB
05/19/2025 10:07:22 AM
rw-r--r--
Editing: bounce_handler.php
Close
<?php // Define the path to the log file $logFilePath = 'log/sns_bounces.log'; // Update this path as needed // Capture the raw POST data $postData = file_get_contents('php://input'); $message = json_decode($postData, true); // $jsonData = json_encode($message, JSON_PRETTY_PRINT); // // Define the path for the JSON file // $filePath = 'log/data.json'; // // Write the JSON data to the file (creating it if it doesnβt exist) // file_put_contents($filePath, $jsonData); // Log the incoming message for debugging file_put_contents($logFilePath, date('Y-m-d H:i:s') . " - Received message: " . print_r($message, true), FILE_APPEND); // Verify the message type if (isset($message['Type'])) { if ($message['Type'] === 'SubscriptionConfirmation') { // Handle subscription confirmation $subscribeUrl = $message['SubscribeURL']; $response = file_get_contents($subscribeUrl); file_put_contents($logFilePath, date('Y-m-d H:i:s') . " - Subscription confirmed: " . print_r($response, true), FILE_APPEND); } elseif ($message['Type'] === 'Notification') { $notification = json_decode($message['Message'], true); // Handle bounce notification if (isset($notification['notificationType']) && $notification['notificationType'] === 'Bounce') { $bounce = $notification['bounce']; $bouncedRecipients = $bounce['bouncedRecipients']; foreach ($bouncedRecipients as $recipient) { $sourceEmail = $notification['mail']['source']; $emailAddress = $recipient['emailAddress']; $bounceType = $bounce['bounceType']; $bounceSubType = $bounce['bounceSubType']; $timestamp = $bounce['timestamp']; $feedbackId = $bounce['feedbackId']; $remoteMtaIp = $recipient['remoteMtaIp'] ?? ''; $diagnosticCode = $recipient['diagnosticCode'] ?? ''; $messageId = $notification['mail']['messageId']; // Save bounce information to your database saveBounce($sourceEmail, $emailAddress, $bounceType, $bounceSubType, $timestamp, $feedbackId, $remoteMtaIp, $diagnosticCode, $messageId); add_suppression_list($emailAddress, $diagnosticCode); // deleteEmailFromAllLists($emailAddress); } } } } // Respond with 200 OK http_response_code(200); // Function to save bounce information to the database using MySQLi function saveBounce($sourceEmail, $email, $type, $subType, $timestamp, $feedbackId, $remoteMtaIp, $diagnosticCode, $messageId) { include 'db.php'; // Convert ISO 8601 timestamp to MySQL DATETIME format $dateTime = new DateTime($timestamp); $formattedTimestamp = $dateTime->format('Y-m-d H:i:s'); // Check connection if ($conn->connect_error) { file_put_contents('log/sns_bounces.log', date('Y-m-d H:i:s') . " - Database connection error: " . $conn->connect_error, FILE_APPEND); return; } // Prepare and bind $stmt = $conn->prepare("INSERT INTO bounces(from_email, email, bounce_type, bounce_sub_type, timestamp, feedback_id, remote_mta_ip, diagnostic_code, message_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)"); $stmt->bind_param("sssssssss", $sourceEmail, $email, $type, $subType, $formattedTimestamp, $feedbackId, $remoteMtaIp, $diagnosticCode, $messageId); // Execute the statement if ($stmt->execute() === FALSE) { file_put_contents('log/sns_bounces.log', date('Y-m-d H:i:s') . " - Database insert error: " . $stmt->error, FILE_APPEND); } // Close the statement and connection $stmt->close(); $conn->close(); } function add_suppression_list($email, $reason) { include 'db.php'; mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); try { $stmt = $conn->prepare("INSERT INTO suppression_list(email, reason) VALUES (?,?)"); $stmt->bind_param("ss", $email, $reason); if ($stmt->execute() === FALSE) { file_put_contents('log/sns_bounces.log', date('Y-m-d H:i:s') . " - Database insert error: " . $stmt->error, FILE_APPEND); } } catch (mysqli_sql_exception $e) { if ($e->getCode() == 1062) { // 1062 is the error code for duplicate entry http_response_code(409); // HTTP status code for conflict echo 'Duplicate entry detected'; file_put_contents('log/sns_bounces.log', date('Y-m-d H:i:s') . " - Database insert error: Duplicate entry detected", FILE_APPEND); } else { // Other MySQL errors http_response_code(500); echo 'Failed to add to collection: ' . $e->getMessage(); file_put_contents('log/sns_bounces.log', date('Y-m-d H:i:s') . " - Database insert error: Failed to add to collection:" . $e->getMessage(), FILE_APPEND); } // Close the statement and connection $stmt->close(); $conn->close(); } } ?>