Repository navigation
Releases: fk0u/SiPenDosa
Release list
SiPenDosa v1.5.0: Server Workspace Edition
What's Changed in SiPenDosa v1.5.0
🏢 Server Workspace Edition
- Multi-Tenant Workspaces: Dukungan workspace kolaborasi untuk banyak kelas dan sipen dalam satu server VPS.
- Isolasi Data Penuh: Jadwal, kontak dosen, riwayat log, template pesan, dan sesi WhatsApp terisolasi rapi per-workspace.
- Fleksibilitas Gateway WhatsApp:
- Nomor Pribadi: Masing-masing sipen menggunakan nomor WhatsApp pribadinya untuk mengirim reminder ke dosen.
- Bot Bersama: Opsi 1 nomor WhatsApp resmi kelas/organisasi yang dipakai bersama untuk gateway pesan.
🤖 WhatsApp Interactive Buttons & Assistant Bot
- Interactive Buttons / Quick Reply: Pesan pengingat dosen dengan tombol respon cepat (Konfirmasi Hadir, Reschedule, Minta Materi) menggunakan standar NativeFlow.
- Auto-Reply Bot Kehadiran: Bot otomatis mendeteksi konfirmasi dosen dan mencatat kehadiran tanpa perlu input manual sipen.
🛡️ Smart Rate Limiting (Non-IP Based)
- Campus WiFi Friendly: Rate limiter pendaftaran publik menggunakan entropi perangkat dan timing fingerprinting, sehingga tidak memblokir mahasiswa yang berada di balik NAT/WiFi kampus bersama.
⚡ Ultra-Low Resource Footprint
- Penggunaan RAM hanya ~10.9 MiB / 256 MiB (4.2% limit) dan < 0.2% CPU dalam kontainer Docker Alpine.
🐛 Bug Fixes
- Memperbaiki evaluasi field dan pada Go HTML template parser.
- Menyelaraskan registrasi akun publik dengan mode server (
SIPEN_SERVER_MODE).
SiPenDosa v1.4.2 — Android Daemon Auto-Start & Multi-Platform Packaging
🚀 SiPenDosa v1.4.2 — Android Daemon Auto-Start & Web-Mode Fixes
Rilis versi v1.4.2 berfokus pada penyempurnaan keandalan platform Android (Embedded Daemon & WebView), deteksi otomatis lingkungan non-TTY/mobile, fallback ekstraksi biner APK, serta sinkronisasi versi seluruh paket instalasi resmi.
📱 Sorotan Pembaruan (Android & Embedded Engine)
1. Otomasi Mode Web pada Android
- Binary engine mendeteksi eksekusi di lingkungan Android (
netutil.IsAndroid()danruntime.GOOS == "android"atau variabel lingkunganANDROID_ROOT/ANDROID_DATA) dan secara otomatis memaksa mode web (SIPEN_UI=web). - Menghilangkan kendala EOF atau hang saat binary engine dijalankan dari background service Android tanpa TTY interaktif.
2. Deteksi Daemon & Healthcheck Service Android
SiPenDosaServerServicemelakukan pengecekan ketersediaan daemon melalui endpoint/healthzpada port 8473 sebelum meluncurkan proses baru.- Mencegah crash atau port already in use ketika Android OS memulai ulang service setelah background kill.
3. Ekstraksi Biner APK Otomatis (Fallback Mekanisme)
- Menambahkan mekanisme fallback untuk mengekstrak biner native
libsipen.solangsung dari arsip APK instalasi jika sistem Android menolak izin eksekusi pada direktorinativeLibraryDir. - Biner diekstrak ke direktori internal aplikasi dengan izin eksekusi (
chmod 0755).
4. Koneksi WebView Tangguh dengan Auto-Retry
InternalWebClientpada aplikasi Android kini otomatis mencoba kembali (retry reload) memuat antarmuka web di port 8473 saat engine Go sedang dalam proses inisialisasi awal.
5. Sinkronisasi Lintas Platform
- Seluruh paket installer dan komponen resmi disinkronkan ke versi v1.4.2 (macOS PKG & DMG, Windows Installer, Debian/Ubuntu, Android APK & AAB).
📦 Berkas Instalasi Resmi (Multi-Platform Artifacts)
| Platform | Format Paket | Nama Berkas | Keterangan |
|---|---|---|---|
| macOS | Apple Disk Image | SiPenDosa-1.4.2.dmg |
Drag-and-drop installer retina dengan status bar companion |
| macOS | Installer Package | SiPenDosa-1.4.2-Installer.pkg |
Installer wizard dengan auto-upgrade daemon & auto-launch |
| macOS | Universal Tarball | sipendosa_macos_universal.tar.gz |
Biner standalone (Apple Silicon & Intel) + skrip instalasi |
| Windows | Setup Executable | SiPenDosa-Setup.exe |
Standalone wizard installer terintegrasi |
| Windows | Portable Binary | sipen_windows_amd64.exe |
Eksekusi langsung tanpa instalasi (64-bit x86_64) |
| Linux | Debian/Ubuntu x86_64 | sipendosa_1.4.2_amd64.deb |
Paket 64-bit x86_64 dengan integrasi systemd daemon |
| Linux | Debian/Ubuntu ARM64 | sipendosa_1.4.2_arm64.deb |
Paket 64-bit ARM64 (Raspberry Pi, SBC, VPS Ampere) |
| Linux | Universal Tarball | sipendosa_linux_amd64.tar.gz |
Tarball multi-distro (RHEL, Fedora, Arch Linux, Alpine) |
| Android | Universal APK | SiPenDosa-Android.apk |
Standalone APK Android API 21+ bertanda tangan resmi |
| Android | App Bundle | SiPenDosa-Android.aab |
Google Play Store publication format bundle |
🔒 Checksum Verifikasi (SHA256)
93216d7ee0ece3a4bda3cd4317801c94a09848b713afd6b1cd1a801da4129f74 SiPenDosa-1.4.2.dmg
9021ac0a7291df307383f10a1292503ca71343514b9d09e5eed9e8293a6bcfd5 SiPenDosa-1.4.2-Installer.pkg
96e79f20cb838f9408808dd00ad5f5564d80e3993fd18b00a7784dd246821dd9 SiPenDosa-Setup.exe
d4ad1462e18c180a63b2c8ae96e06003fa648ac638697c3406947be1b2f73bed sipen_windows_amd64.exe
1ed233da6e210b39bd5e7a76418ce770ae440cd4306d8eaa250c63b68062568c sipendosa_1.4.2_amd64.deb
4e35df1bbfd3db40936c5e8275bb7d1ca9bd349c70df8be5019612c58367d52c sipendosa_1.4.2_arm64.deb
812e7545374511cf3e2fef269205af88b2440a04ca31692b6096f784f4a2d015 sipendosa_linux_amd64.tar.gz
096d4a7130811536e06f14958dcaa53e4864ba6ab2ca82c40bb359b8b2293461 sipendosa_macos_universal.tar.gz
77fd93aa9300a07f4c62605a3fb9621cb286c9214df21c71d019a00a6f3d77d3 SiPenDosa-Android.apk
283db9ae2c90babd15ee02d707ca2d16e3b0d6771373f55a9956268b9f86c350 SiPenDosa-Android.aab
SiPenDosa — Sistem Pengingat Dosen Otomatis
SiPenDosa v1.4.1 — Stabilitas Lintas Platform, Audit Keamanan, & Full Release
🛠 SiPenDosa v1.4.1 — Stabilitas Lintas Platform, Audit Keamanan, & Full Release
Rilis versi v1.4.1 menghadirkan pembaruan besar menyeluruh untuk keandalan mesin otomatisasi, penyelesaian kendala upgrade dari versi lama (v1.2.0), perbaikan 24 temuan audit keamanan & stabilitas, scheduler cerdas, serta penyediaan paket instalasi resmi lengkap untuk seluruh sistem operasi (macOS, Windows, Linux, dan Android).
🚀 Sorotan Pembaruan & Perbaikan
1. Perbaikan Menyeluruh Masalah Upgrade dari Versi Lama (v1.2.0 ➔ v1.4.1)
- Pembersihan Proses & Hijack Port 8473 Otomatis: Memperbaiki masalah di mana instalasi versi baru (v1.4.1) tetap terbaca sebagai versi lama karena proses daemon lama masih terkunci di memori. Installer macOS (
.pkg), DMG (SiPenDosaApp.swift), dan skrip instalasi kini mendeteksi versi engine yang berjalan via/api/system/version. Jika versi < 1.4.1 terdeteksi, proses lama diterminasi secara otomatis (kill -9), port dibebaskan, dan daemon baru v1.4.1 dijalankan. - Auto-Restart Pasca Self-Update: SiPenDosa melakukan re-exec otomatis setelah biner di-update, mengeliminasi dialog pembaruan berulang (infinite update loop).
- Embedded Frontend Selalu Sinkron: Aset dashboard HTML/CSS/JS web kini selalu disajikan langsung dari biner tertanam (embedded assets). Aset lama di disk tidak lagi menimpa antarmuka modern, sehingga UI langsung berganti ke versi terbaru.
- Mode Background Tanpa TTY: Memperbaiki daemon yang langsung keluar (immediate exit EOF) saat dijalankan di latar belakang dengan memodifikasi profil service (
launchd/systemd) dan default.envmenjadiSIPEN_UI=web.
2. Keamanan, Autentikasi, & Integritas Sesi
- Penegakan 2FA pada API Token: Endpoint REST API
/api/auth/loginkini mewajibkan validasi kode TOTP jika akun pengguna telah mengaktifkan Two-Factor Authentication. - RFC 6265bis Cookie Logout: Penghapusan session cookie kini kompatibel dengan koneksi HTTP non-HTTPS (localhost/LAN) dengan menyetel flag
Secure: falsesaat logout. - Autentikasi Aman Loopback Pairing WhatsApp: Memastikan pairing nomor WhatsApp via internal loopback (
/api/internal/pair-phone) diverifikasi secara aman dan terikat langsung ke pengguna utama. - Verifikasi Checksum Cloudflare Tunnel: Unduhan biner
cloudflaredmemverifikasi checksum SHA256 resmi dari GitHub API dan mengekstrak arsip.tgzdengan benar pada macOS.
3. Penjadwalan & Pengiriman Pesan Cerdas
- Pemicu Jadwal Hari-H (H-0): Pemicu jadwal manual (
TriggerScheduleManually) kini menggunakan tanggal hari ini jika perkuliahan jatuh pada hari yang sama, tanpa melompat 7 hari ke depan. - Countdown & Penghitungan Waktu Presisi: Hitung mundur dan pengiriman terjadwal menghitung waktu absolut kuliah terdekat tanpa distorsi minggu berikutnya.
- Zona Waktu Dinamis: Variabel pesan
WaktuSekarangotomatis menyesuaikan singkatan zona waktu yang dikonfigurasi (WIB, WITA, WIT), bukan nilai statis.
4. Ekosistem Arsitektur & Kerapian Kode
- Integrasi
@fk0u/ruas: Proyek telah mengadopsi standarisasi Clean Architecture via@fk0u/ruas, memetakan batasan Domain, Use Case, Interface, dan Infrastructure dalam.ruas/architecture.jsonserta mengindeks basis pengetahuan kode ke SQLite database.
📦 Berkas Instalasi Resmi (Multi-Platform Artifacts)
| Platform | Format Paket | Nama Berkas | Keterangan |
|---|---|---|---|
| macOS | Apple Disk Image | SiPenDosa-1.4.1.dmg |
Drag-and-drop installer retina dengan status bar companion |
| macOS | Installer Package | SiPenDosa-1.4.1-Installer.pkg |
Installer wizard dengan auto-upgrade daemon & auto-launch |
| macOS | Universal Tarball | sipendosa_macos_universal.tar.gz |
Biner standalone (Apple Silicon & Intel) + skrip instalasi |
| Windows | Setup Executable | SiPenDosa-Setup.exe |
Standalone wizard installer terintegrasi |
| Windows | Portable Binary | sipen_windows_amd64.exe |
Eksekusi langsung tanpa instalasi (64-bit x86_64) |
| Linux | Debian/Ubuntu x86_64 | sipendosa_1.4.1_amd64.deb |
Paket 64-bit x86_64 dengan integrasi systemd daemon |
| Linux | Debian/Ubuntu ARM64 | sipendosa_1.4.1_arm64.deb |
Paket 64-bit ARM64 (Raspberry Pi, SBC, VPS Ampere) |
| Linux | Universal Tarball | sipendosa_linux_amd64.tar.gz |
Tarball multi-distro (RHEL, Fedora, Arch Linux, Alpine) |
| Android | Universal APK | SiPenDosa-Android.apk |
Standalone APK Android API 21+ bertanda tangan resmi |
| Android | App Bundle | SiPenDosa-Android.aab |
Google Play Store publication format bundle |
| Instalasi Cepat | Shell Script | install-macos.sh |
One-liner installer via curl/bash untuk macOS |
🔒 Checksum Verifikasi (SHA256)
893f25c2b737a60e8d3ca73cc2eb783724da1fa389d0e34257d1d1c86b415e2b SiPenDosa-1.4.1.dmg
5922004937d65a702a90e1a01bd077fb6e8197ea03df5e4ef7f9bc6622d7b532 SiPenDosa-1.4.1-Installer.pkg
7890bc19ef9ef52f98756f4b6d98c0b8619741bb4522a0ed0d21d6ca40fdd7f1 SiPenDosa-Setup.exe
552e566b80391e479cda7d07eb4fe66aa1135f2146aae548d37df6f5f8b25602 sipen_windows_amd64.exe
95fe0767aa26e690f20f9b59bf7654a6174714e34da24f06865b7219de072160 sipendosa_1.4.1_amd64.deb
df1e22233bacc750cc97b3142afe34a14b59a3a570c2f072ee7a6ba8919d3ed8 sipendosa_1.4.1_arm64.deb
75a55ec297740118451068693c1aeab597059d4c8057bdbc0049c4933e742f08 sipendosa_linux_amd64.tar.gz
fb2136d50ce77996c037bbbe603c3f1b161f13a5e6fc364b60aa4b7c2487ff5f sipendosa_macos_universal.tar.gz
e56e1f26b25ea63f74b800bcb364743abec30d2e10808597bfb546720bfb9ff0 SiPenDosa-Android.apk
2f51cdc4da8c12c967168a14796873da5778f035440b26d90b9a075f5e889965 SiPenDosa-Android.aab
Dibuat dengan dedikasi penuh oleh Tim SiPenDosa.
SiPenDosa v1.4.0
⚡ SiPenDosa v1.4.0 — Terminal-First, Mode Akses & Aplikasi Desktop
Sistem Pengingat Dosen Saatnya — Universal Multi-Platform Academic WhatsApp Assistant
🌟 Ringkasan Rilis v1.4.0:
1. ⌨️ Mode Akses First-Class (SIPEN_UI=terminal|web|desktop)
- Terminal (default) — konsol interaktif penuh TANPA server HTTP: status engine live, countdown pengiriman, daftar jadwal & antrian lintas akun, trigger pengiriman, mint kode pairing WhatsApp, dan daftar akun kelas — semua dari konsol.
- Web — daemon + dashboard browser (perilaku klasik).
- Desktop + Web — jendela aplikasi desktop: native WKWebView di macOS, jendela app-mode Edge/Chrome di Windows/Linux.
2. 🧙 Installer Bertanya Mode Akses
- Semua installer (
install-macos.sh,install-linux.sh,install-android-termux.sh,install.ps1, exe installer Windows) kini menanyakan: Terminal saja / Web / Desktop + Web saat instalasi. - First-run wizard menanyakan mode yang sama bila installer tidak bisa bertanya (DMG/PKG) — pilihan tersimpan di
.env. - Subcommand baru:
sipen terminal,sipen web,sipen desktop,sipen mode <pilihan>. - Instalasi lama yang non-interaktif dimigrasi otomatis ke mode web — tidak ada yang rusak saat update.
3. 🖥 Aplikasi Desktop macOS
- Companion app kini memiliki jendela native (WKWebView) selain menu bar — menu "Buka Aplikasi Desktop", auto-terbuka saat engine dimulai oleh aplikasi.
4. 🎨 Dasbor Generasi Baru (dari v1.3.x series)
- Material Design 3 penuh + dynamic color (Material You) dengan 6 pilihan aksen & tema terang/gelap.
- Typography display Outfit, hero countdown, KPI ekspresif, kartu berikon — self-hosted tanpa CDN.
5. 🔒 Pengerasan Keamanan (Lanjutan Audit)
- CSRF fail-closed: permintaan state-changing ber-cookie kini WAJIB membawa header Origin/Referer yang cocok — permintaan tanpa keduanya ditolak (API Bearer token & loopback internal tetap dikecualikan karena aman dari CSRF).
- Verifikasi checksum cloudflared: binary tunnel diverifikasi SHA256 terhadap
checksums.txtresmi sebelum dieksekusi; kegagalan verifikasi = unduhan dibuang. - Termux updater pinned: skrip update Android dieksekusi dari tag rilis saat ini, bukan lagi dari
masteryang bisa berubah kapan saja.
⚠️ Catatan Migrasi
- Perilaku default
sipenberubah: tanpa konfigurasi, aplikasi berjalan dalam mode terminal. Untuk dashboard web, jalankansipen webatau setSIPEN_UI=webdi.env.
Detail lengkap: CHANGELOG.md
Dibuat dengan sepenuh dedikasi oleh Tim SiPenDosa.
SiPenDosa v1.3.0
🔐 SiPenDosa v1.3.0 — Akun Kelas Multi-Tenant & Hardening Keamanan
Sistem Pengingat Dosen Saatnya — Universal Multi-Platform Academic WhatsApp Assistant
🌟 Ringkasan Rilis v1.3.0:
1. 👥 Akun Kelas (Multi-Tenant)
- Peran baru
kelasuntuk penanggung jawab mata kuliah — kini menjadi default akun yang dibuat administrator. - Sesi WhatsApp terpisah per akun: setiap akun kelas melakukan pairing mandiri — bisa memakai nomor pribadi penanggung jawab, atau (disarankan) nomor WA khusus milik kelas agar nomor pribadi tidak dipertaruhkan.
- Isolasi data penuh: kontak dosen, jadwal, template, dan antrian pesan sepenuhnya terpisah antar akun kelas.
2. 🔒 Hardening Keamanan (Hasil Security Audit Menyeluruh)
- IDOR diperbaiki — seluruh mutasi kontak/jadwal/template/antrian kini di-scope
user_iddan divalidasi kepemilikannya; akun kelas tidak dapat mengubah data kelas lain. - WebSocket & Mobile API wajib autentikasi — QR code dan pairing code WhatsApp tidak lagi ter-broadcast ke klien tanpa sesi; origin check dikunci same-origin.
- Bypass pair-phone ditambal — spoofing
X-Forwarded-Fortidak lagi melewati guard loopback; saat tunnel publik aktif, endpoint internal menuntut sesi login. - Self-update diperkuat — hanya superadmin, URL unduhan dikunci ke host GitHub resmi (HTTPS).
- Kebocoran informasi ditutup —
/healthztidak lagi membocorkan nomor WA; konfigurasi secret hardcoded dihapus; dukungan cookieSecure.
3. 📱 Aplikasi Companion Mengikuti Skema Auth Baru
- Endpoint baru
POST /api/auth/loginmenukar kredensial menjadi bearer token. - Flutter, iOS (background sync engine), dan Android telah diperbarui untuk mengautentikasi setiap permintaan.
⚠️ Catatan Migrasi
- Aplikasi companion lama yang memanggil
/api/*tanpa token akan menerima HTTP 401 — perbarui aplikasi dan login terlebih dahulu. - Set
COOKIE_SECURE=truepada.envbila dashboard disajikan lewat HTTPS/tunnel.
Detail lengkap: CHANGELOG.md
Dibuat dengan sepenuh dedikasi oleh Tim SiPenDosa.
SiPenDosa v1.2.1 — macOS 12+ Universal Edition & Mobile 24/7 Engine
🚀 SiPenDosa v1.2.1 — macOS 12+ Universal Edition & Mobile 24/7 Engine
Sistem Pengingat Dosen Saatnya — Universal Multi-Platform Academic WhatsApp Assistant
🌟 Ringkasan Rilis v1.2.1:
1. 🍎 macOS 12+ Universal 2 Distribution (Monterey, Ventura, Sonoma, Sequoia)
- Dukungan Arsitektur Universal: Mengompilasi dan menggabungkan dual-target Mach-O via
lipountuk Apple Silicon (M1-M4) dan Intel (x86_64). - Paket Distribusi Lengkap:
- Apple Disk Image (
SiPenDosa-1.2.1.dmg): Installer retina drag-and-drop mandiri. - Apple Installer Wizard (
SiPenDosa-1.2.1-Installer.pkg): Setup installer dengan konfigurasi LaunchAgent 24/7 otomatis. - Universal Tarball (
sipendosa_macos_universal.tar.gz): Biner CLI dan skrip setup daemon mandiri.
- Apple Disk Image (
- Menu Bar Companion Controller: Kontrol background engine, monitoring latency C++17, status WhatsApp, dan parsing port dinamis dari
.env.
2. 📱 Mobile 24/7 Background Execution & Real-Time Engine
- Android: Foreground service dengan tipe
dataSync, dual-lock CPU WakeLock + High-Performance WifiLock, perlindungan Doze Mode, Boot Completed persistence (BootCompletedReceiver), dan Watchdog Auto-Respawn. - iOS: Integrasi
BGTaskScheduler(BGAppRefreshTask&BGProcessingTask), extended background execution saat diminimalkan, live WebSocket telemetry hub, dan notifikasi lokal realtime (UNUserNotificationCenter). - REST JSON API Endpoints: Menambahkan endpoint
/api/stats,/api/whatsapp/status,/api/contacts,/api/schedules,/api/queue, dan/api/wsuntuk konsumsi klien mobile dan IoT.
3. 🛡️ Perbaikan Keandalan & Audit Sistem (12 Bug Fixes)
- Atomic Queue Claiming (BUG-01): Mencegah duplikasi kirim pesan ke WhatsApp dosen dengan lock atomik pada antrian SQLite.
- Non-Blocking Graceful Shutdown (BUG-02 & BUG-11): Mengganti semua pemblokir
time.Sleepdengan interrupt channelselectsehingga server berhenti seketika. - WhatsApp Goroutine Leak & Panic Shield (BUG-03 & BUG-04): Melindungi loop auto-reconnect agar hanya 1 instance dan penutupan
stopChanviasync.Once. - Reverse Proxy & Tunneling CSRF Support (BUG-06): Mendukung
X-Forwarded-Hostdan perbandingan base hostname untuk Nginx, Caddy, dan Cloudflare Tunnel. - API Authentication Handling (BUG-07): Mendukung header
Authorization: Bearer <token>dan respon JSON HTTP 401. - Robust LAN IP Detection Android (BUG-09): Fallback iterasi antarmuka jaringan
NetworkInterfacepada Android 11+. - Holiday-Aware Countdown (BUG-10): Widget hitung mundur memvalidasi kalender libur nasional dan kampus.
- Status Validation (BUG-12): Validasi ketat pada pemicu antrian manual agar hanya pesan
pendingyang diproses.
📦 Berkas Unduhan Resmi:
| Berkas Paket | Platform Target | Deskripsi |
|---|---|---|
| SiPenDosa-1.2.1.dmg | macOS 12+ (Universal: M1-M4 & Intel) | Apple Disk Image retina drag-and-drop installer ke Applications |
| SiPenDosa-1.2.1-Installer.pkg | macOS 12+ (Universal) | Apple Installer Package wizard dengan auto LaunchAgent service |
| sipendosa_macos_universal.tar.gz | macOS Universal CLI | Paket tarball CLI & LaunchAgent universal (arm64 + amd64) |
| install-macos.sh | macOS CLI / Terminal | Skrip instalasi otomatis macOS dari terminal |
Dibuat dengan sepenuh dedikasi oleh Tim SiPenDosa.
SiPenDosa v1.2.0 — Dynamic WA Picker, Public Portal, Zero-Config Tunnel & 2FA
🚀 SiPenDosa v1.2.0 — Dynamic WA Picker, Public Portal, Zero-Config Tunnel & 2FA
Sistem Pengingat Dosen Saatnya — Universal Multi-Device Academic WhatsApp Assistant
🌟 Sorotan Pembaruan Utama (v1.2.0):
1. 👥 Dynamic WhatsApp Group & Contact Picker (Closes #2)
- Pencarian & Pemilihan Grup Otomatis: Integrasi WhatsMeow engine untuk mengambil seluruh grup yang diikuti bot ('client.GetJoinedGroups()') dan kontak yang tersinkronisasi ('client.Store.Contacts.GetAllContacts()').
- Endpoint API Dedicated: Menyediakan '/api/wa/groups' dan '/api/wa/contacts' dengan proteksi autentikasi per-user.
- Smart UI Selector Dropdown: Antarmuka pemilih interaktif pada formulir jadwal dengan tab pilihan:
- 👥 Grup WhatsApp: Menampilkan nama grup resmi dan jumlah anggota.
- 👤 Kontak Tersimpan: Nama kontak dan nomor telepon terdaftar.
- ✍️ Input Manual: Format nomor kustom untuk fleksibilitas maksimal.
2. 🌐 Built-in Zero-Config Public Tunneling (Closes #3)
- Akses Jarak Jauh Tanpa Konfigurasi Port-Forwarding: Integrasi modul tunneling mandiri Cloudflare Quick Tunnel ('trycloudflare.com').
- 1-Klik Aktivasi di Menu Pengaturan: Toggle tombol "Aktifkan Akses Global (Tunneling)" untuk menghasilkan tautan HTTPS publik instan.
- Visual QR Code & Live Status: Menampilkan QR Code langsung di dashboard web untuk dipindai dari smartphone di mana saja tanpa berada di jaringan Wi-Fi lokal yang sama.
3. 📅 Public Academic Schedule Board & iCalendar Sync (Closes #4)
- Portal Jadwal Akademik Terbuka ('/jadwal' & '/public/schedule'): Halaman publik ramah mahasiswa tanpa memerlukan login, menyajikan jadwal kuliah secara transparan, lokasi ruangan, nama dosen pengampu, dan SKS.
- Realtime Countdown Perkuliahan: Widget hitung mundur dinamis ("Kuliah berikutnya dimulai dalam X menit").
- Ekspor Kalender Universal ('/jadwal/calendar.ics'): Dukungan download format iCalendar ('.ics') standar untuk sinkronisasi instan ke Google Calendar, Apple Calendar, dan Microsoft Outlook.
- Privasi Fleksibel: Opsi toggle "Tampilkan di Portal Publik" pada setiap item jadwal.
4. 🔐 Keamanan Tingkat Lanjut: Two-Factor Authentication (2FA / TOTP)
- Proteksi Akun Ekstra: Dukungan TOTP standar RFC 6238 (Google Authenticator, Microsoft Authenticator, 1Password, Bitwarden).
- Alur Aktivasi & Recovery Interaktif: Dilengkapi pemindaian QR Code SVG murni, verifikasi kode 6-digit, serta pembuatan 8 kode cadangan pemulihan (emergency backup codes).
- Tantangan Login 2FA Tangguh: Alur login dua tahap berbasis challenge token berbatas waktu singkat (5 menit) dengan proteksi brute-force rate-limiting.
5. 🏢 Multi-Tenant User Isolation & WhatsApp Multi-Session
- Isolasi Data Terstruktur: Jadwal, kontak, antrian pesan, log aktivitas, dan template terikat langsung ke ID pengguna ('user_id').
- WhatsApp Multi-Session Manager: Arsitektur multi-sesi yang memungkinkan setiap pengguna memiliki koneksi bot WhatsApp tersendiri secara independen.
- Manajemen Pengguna Terkendali: Endpoint registrasi pengguna baru kini dibatasi khusus untuk Administrator demi integritas sistem.
📦 Berkas Unduhan Resmi (Self-Contained & Verified):
| Berkas Paket | Target Platform | Deskripsi |
|---|---|---|
| SiPenDosa-Android.apk | Android 5.0+ (Universal Multi-Arch) | Standalone APK Native Mobile UI dengan 24/7 Background Service (Signed: KOU) |
| SiPenDosa-Android.aab | Android App Bundle | Paket resmi Google App Bundle (AAB) terkompresi multi-arsitektur |
| SiPenDosa-1.2.0.dmg | macOS (Apple Silicon M1-M4 & Intel) | Apple Disk Image retina drag-and-drop installer ke Applications |
| SiPenDosa-1.2.0-Installer.pkg | macOS (Universal) | Apple Installer Package wizard dengan auto LaunchAgent service |
| SiPenDosa-Setup.exe | Windows 10 & 11 | Windows Standalone Setup Wizard dengan shortcut Desktop & Start Menu |
| sipendosa_1.2.0_amd64.deb | Ubuntu / Debian (x86_64) | Paket DEB dengan konfigurasi systemd daemon otomatis |
| sipendosa_1.2.0_arm64.deb | Debian / Ubuntu ARM64 | Paket DEB untuk Raspberry Pi, AWS Graviton, & server ARM |
| sipendosa_linux_amd64.tar.gz | Linux Universal | Tarball distribusi standalone untuk RedHat, CentOS, Fedora, Arch, SUSE |
| sipendosa_macos_universal.tar.gz | macOS Universal CLI | Paket tarball CLI & LaunchAgent universal (arm64 + amd64) |
| install-android-termux.sh | Android (Termux) | Skrip instalasi server otomatis Termux dengan shortcut sipen-pair |
Dibuat dengan sepenuh dedikasi oleh Tim SiPenDosa.
SiPenDosa v1.1.2 — Android WhatsApp WebSocket Fix & Single Mobile Dock Bar
🚀 SiPenDosa v1.1.2 — Android WhatsApp WebSocket Fix & Single Mobile Dock Bar
Sistem Pengingat Dosen Saatnya — Universal Multi-Device Academic WhatsApp Assistant
🌟 Yang Baru di Versi 1.1.2:
1. ⚡ Perbaikan Krusial WhatsApp WebSocket di Android
- DNS Fallback Resolver Cerdas: Mengatasi masalah kegagalan resolusi domain 'web.whatsapp.com' saat WhatsMeow menghubungkan WebSocket di Android akibat tidak adanya '/etc/resolv.conf'. Resolver otomatis mem-fallback query ke DNS sistem ('getprop net.dns1') dan DNS publik ('8.8.8.8', '1.1.1.1').
- Sinkronisasi Thread-Safe Gorilla WebSocket Hub: Penambahan write mutex pada 'ClientConn' untuk mengeliminasi potensi concurrent write panic saat broadcast event bersamaan dengan heartbeat ping ticker.
- Integrasi Root CA Android: Pemuatan sertifikat CA sistem Android ('/system/etc/security/cacerts' & '/apex/com.android.conscrypt/cacerts') serta penyuntikan 'SSL_CERT_DIR' pada background daemon process.
2. 📱 Penyempurnaan UI Mobile (Penghapusan Double Bottom Dock Bar)
- Single Bottom Dock Bar: Menghapus dock bar native Android yang tumpang tindih dengan dock bar Web UI, sehingga antarmuka mobile kini bersih, elegan, dan memaksimalkan ruang layar.
- Immersive WebView: Area tampilan web kini mengisi penuh ruang layar secara responsif dari bawah top bar hingga batas bawah layar.
- Web UI Dock Bar Unggulan: Tetap mempertahankan bilah navigasi 5 tab bawaan web UI (Home, Kontak, Jadwal, Antrian, Menu) dengan safe-area ergonomis.
3. 🛡️ Resilient Realtime Client & Fallback Polling
- Robust DOM Bootstrapping: Inisialisasi WebSocket langsung berjalan seketika saat halaman selesai diparsing tanpa risiko terlewat oleh siklus DOMContentLoaded.
- HTTP Polling Fallback Otomatis: Jika koneksi WebSocket terputus atau terhambat, aplikasi otomatis mengaktifkan polling status dan QR Code via '/api/wa/qr' sehingga status WhatsApp tidak pernah tertahan di status "Memeriksa...".
4. 🌐 Peningkatan Konektivitas Native Android
- CookieManager & Third-Party Cookies: Pengaktifan penuh manajemen cookie dan mixed content allow pada Android WebView.
- Console Logging: Pencatatan log JavaScript WebView ke Android Logcat via 'onConsoleMessage'.
- Native Phone Pairing Alias: Penambahan alias route '/api/whatsapp/pair-phone' dengan parser JSON respons untuk kemudahan taut kode WhatsApp native.
📦 Berkas Unduhan Resmi (Self-Contained & Verified):
| Berkas Paket | Target Platform | Deskripsi |
|---|---|---|
| SiPenDosa-Android.apk | Android 5.0+ (Universal Multi-Arch) | Standalone APK Native Mobile UI dengan 24/7 Background Service (Signed: KOU) |
| SiPenDosa-Android.aab | Android App Bundle | Paket resmi Google App Bundle (AAB) terkompresi multi-arsitektur |
| SiPenDosa-1.1.2.dmg | macOS (Apple Silicon M1-M4 & Intel) | Apple Disk Image retina drag-and-drop installer ke Applications |
| SiPenDosa-1.1.2-Installer.pkg | macOS (Universal) | Apple Installer Package wizard dengan auto LaunchAgent service |
| SiPenDosa-Setup.exe | Windows 10 & 11 | Windows Standalone Setup Wizard dengan shortcut Desktop & Start Menu |
| sipendosa_1.1.2_amd64.deb | Ubuntu / Debian (x86_64) | Paket DEB dengan konfigurasi systemd daemon otomatis |
| sipendosa_1.1.2_arm64.deb | Debian / Ubuntu ARM64 | Paket DEB untuk Raspberry Pi, AWS Graviton, & server ARM |
| sipendosa_linux_amd64.tar.gz | Linux Universal | Tarball distribusi standalone untuk RedHat, CentOS, Fedora, Arch, SUSE |
| sipendosa_macos_universal.tar.gz | macOS Universal CLI | Paket tarball CLI & LaunchAgent universal (arm64 + amd64) |
| install-android-termux.sh | Android (Termux) | Skrip instalasi server otomatis Termux dengan shortcut sipen-pair |
Dibuat dengan sepenuh dedikasi oleh Tim SiPenDosa.
SiPenDosa v1.1.1 — Native Mobile Overhaul & In-App Changelog
🚀 SiPenDosa v1.1.1 — Native Mobile Overhaul & Automatic Updates
Sistem Pengingat Dosen Saatnya — Universal Multi-Device Academic WhatsApp Assistant
🌟 Yang Baru di Versi 1.1.1:
1. 📱 Pengalaman Aplikasi Android 100% Native Mobile
- Penghapusan Developer Bar: Bilah navigasi debug di bagian atas yang memakan ruang kini dihilangkan sepenuhnya.
- Native Splash Loader Screen: Tampilan splash modern dengan logo emas berkilau, judul aplikasi, dan indikator pemuatan halus yang otomatis memudar saat daemon backend siap.
- Immersive Android System Bars: Penyelarasan status bar (#08090d) dan navigation bar sistem Android secara mulus tanpa batas patah.
- Floating Quick LAN Pill ('⚡ IP'): Tombol aksi mengambang minimalis di sudut kanan atas untuk menyalin alamat IP LAN atau membuka di browser eksternal melalui dialog modal elegan.
- Native Dialog Interceptor: Pop-up konfirmasi dan peringatan web (alert / confirm) kini di-render menggunakan dialog native Android Material Alert.
- Mobile 5-Tab Navigation Bar: Bilah navigasi bawah 5 tab (Home, Kontak, Jadwal, Antrian, Menu) dengan pill aktif crimson scarlet, titik indikator menyala, haptic feedback, dan safe-area ergonomis.
2. 🔄 Automatic Update System
- Pengecekan Otomatis GitHub Release: Aplikasi secara cerdas mendeteksi ketersediaan rilis baru langsung dari API GitHub saat dibuka.
- Modal Pembaruan 1-Klik: Notifikasi pembaruan instan lengkap dengan ringkasan fitur baru dan tombol unduh langsung tanpa langkah manual.
3. 📜 Pusat Catatan Rilis & In-App Changelog ('/changelog')
- Changelog Bento Grid: Halaman riwayat rilis interaktif yang dapat diakses langsung dari profil pengguna, sidebar, dan footer.
- Dokumentasi Lengkap Versi: Catatan komprehensif untuk v1.1.1, v1.1.0, dan v1.0.0 dengan penanda kategori (Fitur Baru, Peningkatan, Keamanan).
4. 🧠 Integrasi Graphify Knowledge Graph
- Terintegrasi penuh dengan kemampuan Graphify (.agents/skills/graphify dan CLI graphify) untuk pembuatan knowledge graph, analisis AST, dan relasi arsitektur kode.
📦 Berkas Unduhan Resmi (Self-Contained & Verified):
| Berkas Paket | Target Platform | Deskripsi |
|---|---|---|
| SiPenDosa-Android.apk | Android 5.0+ (Universal Multi-Arch) | Standalone APK Native Mobile UI dengan 24/7 Background Service (Signed: KOU) |
| SiPenDosa-Android.aab | Android App Bundle | Paket resmi Google App Bundle (AAB) terkompresi multi-arsitektur |
| SiPenDosa-1.1.1.dmg | macOS (Apple Silicon M1-M4 & Intel) | Apple Disk Image retina drag-and-drop installer ke Applications |
| SiPenDosa-1.1.1-Installer.pkg | macOS (Universal) | Apple Installer Package wizard dengan auto LaunchAgent service |
| SiPenDosa-Setup.exe | Windows 10 & 11 | Windows Standalone Setup Wizard dengan shortcut Desktop & Start Menu |
| sipendosa_1.1.1_amd64.deb | Ubuntu / Debian (x86_64) | Paket DEB dengan konfigurasi systemd daemon otomatis |
| sipendosa_1.1.1_arm64.deb | Debian / Ubuntu ARM64 | Paket DEB untuk Raspberry Pi, AWS Graviton, & server ARM |
| sipendosa_linux_amd64.tar.gz | Linux Universal | Tarball mandiri untuk RedHat, CentOS, Fedora, Arch, SUSE |
| sipendosa_macos_universal.tar.gz | macOS Universal CLI | Paket tarball CLI & LaunchAgent universal (arm64 + amd64) |
| install-android-termux.sh | Android (Termux) | Skrip instalasi server otomatis Termux dengan shortcut sipen-pair |
Dibuat dengan sepenuh dedikasi oleh Tim SiPenDosa.
SiPenDosa v1.1.0 — Advanced Multi-Platform Release
🚀 SiPenDosa v1.1.0 — Advanced Multi-Platform Official Release
Sistem Pengingat Dosen Saatnya — Universal Multi-Device WhatsApp Automation
🌟 Yang Baru di Versi 1.1.0:
1. 🔢 WhatsApp Pairing Code (Login via Nomor Telepon)
- Solusi Login Tanpa Kamera / Scan QR: Memungkinkan penautan akun WhatsApp langsung di layar smartphone atau lingkungan headless tanpa meminjam HP lain untuk memindai kode QR.
- Modal Dual-Tab di Web Dashboard: Pilihan tab Scan QR Code atau Tautkan Nomor HP.
- Kode 8 karakter yang dihasilkan otomatis terformat rapi dengan tombol Salin Kode ke clipboard.
2. ⚡ Auto-Refresh QR Engine & Anti-Stuck Loading
- Mengatasi masalah QR Code kedaluwarsa atau macet pada WebView ponsel. Backend secara otomatis memicu sesi baru jika QR kosong atau expired saat diminta oleh client.
3. 📱 Ekosistem Termux & Web Terminal Advanced
- Perintah CLI Termux: Jalankan 'sipen pair 08123456789' atau shortcut 'sipen-pair 08123456789' untuk mendapatkan kode pairing langsung di terminal Termux.
- Web Terminal Interactive Prompt: Ketik perintah 'pair <nomor_hp>' di /terminal untuk meminta pairing code langsung dari antarmuka shell.
4. 🛡️ Audit & Pengerasan Keamanan (Strix / OWASP Compliance)
- Broken Function Level Authorization (BFLA): Proteksi ketat hak akses SuperAdmin pada ekspor backup database, toggle pendaftaran akun, dan manajemen pengguna.
- CSRF Origin Verification: Validasi ketat header Origin/Referer pada seluruh endpoint mutasi state (POST/PUT/DELETE).
- Brute-Force Rate Limiting: Batasan rate limiter 10 req/menit per IP pada rute login dan registrasi.
- Security Headers & Memory DoS Guard: Injeksi header keamanan OWASP dan pembatasan body payload maksimum 2MB.
📦 Berkas Unduhan Resmi (Self-Contained & Verified):
| Berkas Paket | Target Platform | Deskripsi |
|---|---|---|
| SiPenDosa-Android.apk | Android 5.0+ (Universal Multi-Arch) | Standalone APK dengan 24/7 Background Service & Terminal View (Signed: KOU) |
| SiPenDosa-Android.aab | Android App Bundle | Paket resmi Google App Bundle (AAB) terkompresi untuk Google Play |
| SiPenDosa-1.1.0.dmg | macOS (Apple Silicon M1-M4 & Intel) | Apple Disk Image retina drag-and-drop installer ke Applications |
| SiPenDosa-1.1.0-Installer.pkg | macOS (Universal) | Apple Installer Package wizard dengan auto LaunchAgent service |
| SiPenDosa-Setup.exe | Windows 10 & 11 | Windows Standalone Setup Wizard dengan shortcut Desktop & Start Menu |
| sipendosa_1.1.0_amd64.deb | Ubuntu / Debian (x86_64) | Paket DEB dengan konfigurasi systemd daemon otomatis |
| sipendosa_1.1.0_arm64.deb | Debian / Ubuntu ARM64 | Paket DEB untuk Raspberry Pi, AWS Graviton, & server ARM |
| sipendosa_linux_amd64.tar.gz | Linux Universal | Tarball mandiri untuk RedHat, CentOS, Fedora, Arch, SUSE |
| sipendosa_macos_universal.tar.gz | macOS Universal CLI | Paket tarball CLI & LaunchAgent universal (arm64 + amd64) |
| install-android-termux.sh | Android (Termux) | Skrip instalasi server otomatis Termux dengan shortcut sipen-pair |
Dibuat dengan sepenuh dedikasi oleh Tim SiPenDosa.