All checks were successful
CI / test (push) Successful in 1m55s
- ganti sisa URL gitea.oxpoe.qzz.io -> gitea.oxpoe.xyz (sidebar, donate, package.json, projectUrl) - default menu sidebar semuanya Tampil (tidak ada lagi menu terkunci) - hapus nomor kontak aktivasi palsu 081947215703 dari UI & pesan route - form pengaturan sidebar tidak lagi meminta password aktivasi
67 lines
2.7 KiB
Markdown
67 lines
2.7 KiB
Markdown
# OPEN-ISP v0.5.3 — "forge-lime"
|
|
|
|
Rilis ini menggabungkan pembaruan fitur dari repo upstream (`alijayanet/billing-rtrw`) yang relevan untuk fork ini, plus perbaikan bug login/sesi.
|
|
|
|
## Yang baru
|
|
|
|
### 1. Pembatasan wilayah kerja
|
|
- Teknisi hanya melihat/mengambil tiket, pelanggan, perangkat, dan peta di area tugasnya.
|
|
- Kolektor hanya melihat & menagih pelanggan di area/tugasnya, termasuk lewat APK (dashboard & pay-bill).
|
|
- Mendukung multi-area (`area` dipisah koma), kosong/`semua` = tanpa batas.
|
|
- Pelanggan baru yang didaftarkan teknisi otomatis masuk area teknisi tersebut.
|
|
|
|
### 2. Inventaris gudang
|
|
- Stok keluar dengan FIFO atau serial number spesifik.
|
|
- Retur barang bekas/copotan.
|
|
- Stock opname (sesuaikan stok sistem dengan fisik, selisih dicatat).
|
|
- Detail unit per barang, daftar serial tersedia, statistik stok, harga & supplier.
|
|
- Semua transaksi tercatat dengan sisa stok di log.
|
|
|
|
### 3. Edit slip payroll
|
|
- Rincian gaji bisa diubah selama berstatus draft; gross, potongan, dan net dihitung ulang otomatis.
|
|
|
|
### 4. AI & Self-Healing
|
|
- Provider AI lewat satu jalur OpenAI-compatible: **DeepSeek (default)**, OpenAI, Groq, OpenRouter, atau custom (Ollama/LM Studio).
|
|
- Bot Telegram menjawab pertanyaan admin (termasuk tool: cek pelanggan, perangkat, dll).
|
|
- Self-healing memeriksa & memperbaiki:
|
|
- pelanggan terisolir padahal tagihan lunas,
|
|
- secret PPPoE hilang / tertukar profil isolir,
|
|
- pelanggan terisolir tapi masih aktif di MikroTik,
|
|
- sesi RADIUS menggantung,
|
|
- IP modem ACS kosong.
|
|
- **Toggle on/off di Pengaturan** (default nonaktif) + tombol Diagnosa / Perbaiki Sekarang.
|
|
|
|
### 5. Security Watchdog
|
|
- Deteksi brute-force login admin/kasir/teknisi/kolektor dan login MikroTik.
|
|
- Blokir IP sementara 15 menit setelah 5 percobaan gagal.
|
|
- Alert suara (TTS) via soundbox + notifikasi admin.
|
|
|
|
### 6. Batas sesi login
|
|
- Admin/kasir/teknisi/kolektor: maksimal **2** sesi per akun.
|
|
- Pelanggan: maksimal **3** sesi per akun.
|
|
- Sesi tertua diputus otomatis saat melebihi batas; session ID dirotasi saat login (anti session fixation).
|
|
- Sesi tetap tersimpan saat service restart (cookie 30 hari, rolling).
|
|
|
|
## Perbaikan
|
|
- Tab **Status** di login pelanggan kini mengikuti setting `uptime_url`, bukan URL lama.
|
|
- Kolom API key AI disamarkan di halaman Pengaturan.
|
|
|
|
## Dokumentasi
|
|
- 10 screenshot (desktop + mobile) di `docs/screenshots/` (format WebP, ringan).
|
|
|
|
## Cara upgrade
|
|
|
|
```bash
|
|
git pull
|
|
npm install
|
|
# restart service (pm2 / systemd / docker compose)
|
|
```
|
|
|
|
Migrasi database berjalan otomatis saat aplikasi start (kolom inventaris & tabel sesi login).
|
|
|
|
Pengaturan AI (opsional): **Pengaturan → AI & Self-Healing** — pilih provider, isi API key/model, lalu nyalakan auto-repair bila sudah yakin.
|
|
|
|
---
|
|
|
|
**Full changelog:** [CHANGELOG.md](../CHANGELOG.md)
|