# Setup Cron 5 Menit - Preregister Email Gateway Dokumen ini untuk menjalankan worker pengiriman email preregister secara terjadwal setiap 5 menit. ## 1) Tambahkan cron job Edit crontab user yang menjalankan service web/app: ```bash crontab -e ``` Tambahkan baris ini: ```cron */5 * * * * /usr/bin/php /home/one/project/one/BE_CPONE/index.php tools/Email_gateway/preregister >> /xtmp/cron-preregister-email.log 2>&1 ``` Catatan: - Sesuaikan path PHP jika berbeda (`which php`). - Sesuaikan path repo jika berbeda dari `/home/one/project/one/BE_CPONE`. ## 2) Cara kerja dengan config jam kirim Worker `tools/Email_gateway/preregister` akan: - Baca `Email_ConfigNofificationSendTime` dari tabel `cpone.email_config_nofification` (record aktif terbaru). - Jika waktu sekarang belum mencapai jam tersebut, worker langsung `exit`. - Jika sudah masuk jam kirim, worker proses queue `preregister_email_outbox`. Default `send time` saat ini: `20:00:00`. ## 3) Verifikasi cron aktif Cek isi crontab: ```bash crontab -l ``` Pantau log cron: ```bash tail -f /xtmp/cron-preregister-email.log ``` Pantau log worker: ```bash tail -f /xtmp/x-email-preregister.log ``` ## 4) Ubah jam kirim via DB Contoh ubah jam kirim jadi 20:00:00: ```sql UPDATE cpone.email_config_nofification SET Email_ConfigNofificationSendTime = '20:00:00' WHERE Email_ConfigNofificationIsActive = 'Y'; ``` Disarankan hanya 1 row aktif untuk konfigurasi ini.