Files
BE_CPONE/docs_preregister_email_cron.md
2026-05-08 14:59:50 +07:00

63 lines
1.4 KiB
Markdown

# 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.