63 lines
1.4 KiB
Markdown
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.
|