Files
wevads-platform/ads-commander/scripts/sync-custom-audiences.php
2026-02-26 04:53:11 +01:00

16 lines
953 B
PHP

<?php
require_once __DIR__ . '/../config.php';
echo date('Y-m-d H:i:s') . " Syncing custom audiences...\n";
$db = wv_db();
$emails = $db->query("SELECT DISTINCT recipient FROM unified_send_log WHERE created_at > NOW() - INTERVAL '7 days' AND recipient IS NOT NULL AND recipient != '' LIMIT 10000")->fetchAll(PDO::FETCH_COLUMN);
if (empty($emails)) { echo "No emails to sync\n"; exit; }
$hashed = array_map(function($e) { return hash('sha256', strtolower(trim($e))); }, $emails);
echo count($hashed) . " hashed emails ready for upload\n";
$acc = $db->query("SELECT account_id, access_token_encrypted FROM ads_accounts WHERE platform='meta' AND is_active=TRUE LIMIT 1")->fetch(PDO::FETCH_ASSOC);
if ($acc && $acc['access_token_encrypted'] && $acc['access_token_encrypted'] !== 'TEST_TOKEN_META') {
echo "Would upload to Meta account {$acc['account_id']}\n";
} else {
echo "No valid Meta token - skipping upload (test mode)\n";
}
echo "Done.\n";
?>