- address the live device by ddns and call /cmd via bare axios
- write the response body once on timeout (was written twice)
- group results by outcome and show stderr in the detail dialog
- default user to root, minimum wait 1s, warn on long/streaming commands
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
Only emit offline for devices that came online, debounce online/offline
per device within 30s, and drop the INFO log that printed the server token.
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
Quote $TOKEN in the rtty watchdog so an empty token no longer consumes -d
(empty MAC), and reject empty-MAC registrations before the devices upsert
to avoid the UNIQUE constraint failure.
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
Route button labels through the project's vue-i18n; the upstream
fallback only knew en/zh and crashed the footer in de/es/fr/ja/ko.
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
- SMTP config with TLS/STARTTLS/plain support and test email
- Notification rules for device online, offline, and remote access
- Recipient management with add/remove endpoints
- Async email sending via goroutines to avoid blocking device runtime
- Admin settings page with SMTP, rules, and recipients sections
- Bell icon added to sidebar menu
- i18n support for all 7 languages
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
- Record device online/offline, remote SSH, Web and Control sessions
- Add device_event_logs table with MAC, event type and time range indexes
- Distinguish remote_control vs remote_web by device client type
- Admin-only log page with device/access tabs, duration column and filters
- Permission-gated sidebar entry (device_log.read)
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
- Personal Center page with profile editing and last-login info
- TOTP-based two-factor authentication with QR code setup
- 30-day trusted-device cookie to skip 2FA on familiar browsers
- Friendly browser/OS labels for the trusted device list
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
- Align API behavior with frontend integration
- Fix issues found during joint debugging
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
Remove unnecessary and ineffective query parameters when redirecting to the remote web interface.
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
Move deprecated interfaces into the updated project layout to align with the new architecture.
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
Remove the obsolete legacy main entry to avoid confusion and reduce maintenance overhead.
Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>