๐Ÿค– Panduan Bot WhatsApp JRK 1

Paguyuban Perumahan JRK 1 โ€” Iuran Pembangunan Lingkungan (IPL)

๐Ÿ“‹ Daftar Isi

๐Ÿ’ฌ Perintah Dasar

PerintahFungsi
/infoMenampilkan menu sesuai role pengguna (lihat Role-Based Menu)
/inputDinonaktifkan Fitur input data sedang dalam pengembangan
/debugMenampilkan Info Chat ID untuk konfigurasi
skipMelewati upload bukti (hanya untuk input pemasukan/pengeluaran)

๐Ÿ‘ฅ Role-Based Menu

Bot mendeteksi nomor WA pengirim dan menampilkan menu yang berbeda sesuai jabatan. Berikut daftar pengurus:

Tim Inti

JabatanNamaRole Badge
Ketua PaguyubanPak HarkesKetua
Wakil Ketua PaguyubanPak NungkyKetua
Sie Lingkungan & KeamananPak DwiStaff
Sie Data & TeknologiPak AdamData
Sie DataPak RendyData
Bendahara 1Bu ThiaKeuangan
Bendahara 2Bu DiazKeuangan
SekretarisBu ReffaStaff

Koordinator Lapangan (Korlap)

NamaBlokRole Badge
Pak BobyIKorlap
Pak Try PamungkasIIKorlap
Pak LukiIIIKorlap
Pak NanangIVKorlap
Pak FebryVKorlap
Pak OkyVIKorlap
Pak SofyanVIIKorlap
Pak IndraVIII, IXKorlap
Pak HamzahRaya DepanKorlap
Pak MulyadiRaya BelakangKorlap
Pak HudaX DepanKorlap
Pak SaifulX BelakangKorlap
Bu AnnisaRUHAKorlap

๐Ÿงพ Generate Kwitansi IPL Menu 8

Alur Lengkap

Pilih Blok โ†’ Pilih Unit โ†’ Jumlah Bulan โ†’ Input Tanggal โ†’ Kwitansi PDF Dikirim โ†’ Forward ke Admin?

Tarif IPL

Tipe UnitHarga/Bulan
Unit Biasa (Blok I-X, Raya)Rp 150.000
Unit RUHARp 200.000

Detail Setiap Langkah

LangkahYang Dilakukan
Pilih Blok Pilih nomor blok (1-14): I, II, III, IV, V, VI, VII, VIII, IX, X Depan, X Belakang, Raya Depan, Raya Belakang, RUHA
Pilih Unit Pilih nomor unit yang tampil di daftar
Jumlah Bulan Kirim angka (contoh: 3). Bot otomatis menghitung bulan mulai dari bulan setelah pembayaran terakhir unit tersebut. Jika belum pernah bayar, mulai dari bulan saat ini.
Input Tanggal Kirim DD-MM-YYYY (contoh: 04-05-2026) atau TODAY untuk pakai tanggal hari ini

Contoh Skenario

Misal: Unit JRK 1 Blok I No. 5 terakhir bayar bulan Maret 2026.
User memilih 3 bulan โ†’ Bot hitung: April 2026, Mei 2026, Juni 2026.
Total: 3 ร— Rp 150.000 = Rp 450.000.
PDF Kwitansi mencantumkan periode "April 2026, Mei 2026, Juni 2026".

Isi PDF Kwitansi

๐Ÿงพ Generate Kwitansi Biasa Menu 9

Untuk pengeluaran kasbon / dana pribadi (bukan IPL).

Alur

Nama Pengaju โ†’ Keperluan โ†’ Nominal โ†’ Tanggal โ†’ Kwitansi PDF Dikirim โ†’ Forward ke Admin?
LangkahContoh Input
Nama PengajuAgus atau Tim Keamanan
KeperluanPembelian BBM atau Biaya ATK
Nominal250000 (angka saja)
Tanggal04-05-2026 atau TODAY

๐Ÿ“‹ Auto-Notifikasi Korlap

Setiap tanggal 10 pukul 08:00 WIB, bot otomatis mengirim pesan pribadi ke setiap Korlap yang memiliki warga menunggak di bloknya.

Fitur ini otomatis: Korlap tidak perlu melakukan apapun. Notifikasi dikirim langsung ke nomor WA pribadi masing-masing Korlap.

๐Ÿ“ค Forward Kwitansi ke Admin

Setelah kwitansi berhasil di-generate, bot otomatis menawarkan:

Nomor forward admin: 6285210100793 (dapat diubah di file allowed-groups-config.json)

โ†ฉ๏ธ Reply/Quote Menu

Bot mendukung fitur reply (quote) ke pesan menu. Ini berguna ketika:

Reply ke MenuContoh ReplyHasil
Menu Role (Korlap/Ketua/dll)1 sampai 11Langsung ke fitur sesuai nomor
Laporan Pengeluaran3Export tahun ini
Laporan Pemasukan1Export bulan ini

Cara: Tekan lama pesan bot โ†’ pilih "Balas" / "Reply" โ†’ ketik nomor pilihan โ†’ kirim.

๐Ÿ” Akses & Keamanan

Grup yang Diizinkan

Fitur Kwitansi (Menu 8 & 9)

Hanya bisa diakses oleh:

Cek Akses Anda

Kirim /debug ke bot untuk melihat Chat ID Anda. Jika tidak bisa menghubungi bot, hubungi admin untuk didaftarkan.

๐Ÿ”„ Auto-Heal & Maintenance

Bot memiliki sistem pemulihan otomatis untuk menjaga koneksi tetap stabil:

FiturDetail
Keep-AliveMengirim presence update setiap 3 menit untuk mencegah idle disconnect
Health CheckMemeriksa koneksi WebSocket setiap 5 menit. Jika terputus, otomatis reconnect
Systemd RestartService baileys-bot.service dengan Restart=always, restart dalam 5 detik jika crash
Unhandled ErrorError koneksi ditangkap dan memicu reconnect dalam 3 detik
Duplicate MessagePesan duplikat otomatis diabaikan (cache 5000 pesan terakhir)
Conflict ResolutionJika ada konflik koneksi, bot akan restart maksimal 3 kali

Memantau Bot

๐Ÿ“ File Konfigurasi

FileKeterangan
baileys-bot/allowed-groups-config.jsonKonfigurasi grup, nomor, reminder, dan forward admin
baileys-bot/roles-config.jsonMapping nomor WA ke role pengurus (fallback lokal)
baileys-bot/bot.jsFile utama bot (logika pesan, state machine)
baileys-bot/lib/helpers.jsHelper functions (akses data, validasi, cache, role lookup)
baileys-bot/lib/actions.jsFungsi generate laporan, kwitansi PDF, input data, notifikasi
baileys-bot/lib/menus.jsBuilder menu per role (dipisahkan dari bot.js)
/etc/systemd/system/baileys-bot.serviceSystemd service unit