Skip to content

Releases: fk0u/SiPenDosa

SiPenDosa v1.5.0: Server Workspace Edition

Choose a tag to compare

@fk0u fk0u released this 26 Oct 06:31

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

Choose a tag to compare

@fk0u fk0u released this 26 Oct 03:38

🚀 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() dan runtime.GOOS == "android" atau variabel lingkungan ANDROID_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

  • SiPenDosaServerService melakukan pengecekan ketersediaan daemon melalui endpoint /healthz pada 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.so langsung dari arsip APK instalasi jika sistem Android menolak izin eksekusi pada direktori nativeLibraryDir.
  • Biner diekstrak ke direktori internal aplikasi dengan izin eksekusi (chmod 0755).

4. Koneksi WebView Tangguh dengan Auto-Retry

  • InternalWebClient pada 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

Choose a tag to compare

@fk0u fk0u released this 25 Oct 23:42

🛠 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 .env menjadi SIPEN_UI=web.

2. Keamanan, Autentikasi, & Integritas Sesi

  • Penegakan 2FA pada API Token: Endpoint REST API /api/auth/login kini 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: false saat 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 cloudflared memverifikasi checksum SHA256 resmi dari GitHub API dan mengekstrak arsip .tgz dengan 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 WaktuSekarang otomatis 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.json serta 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

Choose a tag to compare

@fk0u fk0u released this 25 Oct 09:24

⚡ 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.txt resmi sebelum dieksekusi; kegagalan verifikasi = unduhan dibuang.
  • Termux updater pinned: skrip update Android dieksekusi dari tag rilis saat ini, bukan lagi dari master yang bisa berubah kapan saja.

⚠️ Catatan Migrasi

  • Perilaku default sipen berubah: tanpa konfigurasi, aplikasi berjalan dalam mode terminal. Untuk dashboard web, jalankan sipen web atau set SIPEN_UI=web di .env.

Detail lengkap: CHANGELOG.md


Dibuat dengan sepenuh dedikasi oleh Tim SiPenDosa.

SiPenDosa v1.3.0

Choose a tag to compare

@fk0u fk0u released this 25 Oct 04:06

🔐 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 kelas untuk 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_id dan 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-For tidak 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 — /healthz tidak lagi membocorkan nomor WA; konfigurasi secret hardcoded dihapus; dukungan cookie Secure.

3. 📱 Aplikasi Companion Mengikuti Skema Auth Baru

  • Endpoint baru POST /api/auth/login menukar 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=true pada .env bila 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

Choose a tag to compare

@fk0u fk0u released this 25 Sep 07:12

🚀 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 lipo untuk 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.
  • 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/ws untuk 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.Sleep dengan interrupt channel select sehingga server berhenti seketika.
  • WhatsApp Goroutine Leak & Panic Shield (BUG-03 & BUG-04): Melindungi loop auto-reconnect agar hanya 1 instance dan penutupan stopChan via sync.Once.
  • Reverse Proxy & Tunneling CSRF Support (BUG-06): Mendukung X-Forwarded-Host dan 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 NetworkInterface pada 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 pending yang 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

Choose a tag to compare

@fk0u fk0u released this 09 Sep 06:16

🚀 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

Choose a tag to compare

@fk0u fk0u released this 08 Sep 14:33

🚀 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

Choose a tag to compare

@fk0u fk0u released this 07 Sep 14:52

🚀 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

Choose a tag to compare

@fk0u fk0u released this 07 Sep 12:28

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