64 Commits
Author SHA1 Message Date
jokob-sk dd4fc057c8 BE: SQL refactor presence 2026-09-10 22:11:46 +10:00
jokob-sk c3bdd92b8d BE: conditional device import support, notification supression support during scan #1721 2026-09-10 13:51:09 +10:00
jokob-sk cc3ccbcaf0 DOCS: skills + SQL cleanup 2026-09-10 10:59:33 +10:00
Jokob @NetAlertX 7a8ea5d829 feat(database): add cleanup for dangling parentMAC references and related tests 2026-08-21 23:22:40 +00:00
jokob-sk 1636d155c7 BE+FE: report findinfg fixes + css 2026-07-12 10:26:53 +10:00
Jokob @NetAlertX 18ec0ce96c feat: Implement DevicesHistory feature with triggers and history tracking
- Added db_history.py to manage DevicesHistory table and triggers for INSERT and UPDATE operations.
- Created device_history_instance.py for querying and grouping DevicesHistory records.
- Developed change_history.php for displaying device change history with filtering and pagination.
- Introduced skel_device_details_tab_history.php for skeleton loading state in device details tab.
- Added unit tests in test_device_history.py to validate trigger functionality and history management.
- Implemented filter population and pagination in the change history UI.
2026-07-04 23:34:52 +00:00
jokob-sk 37730301f4 BE: lazy SQL execution caused devIsSleeping to be missing and tiles not show #1569 #1250
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-03-23 09:55:45 +11:00
Jokob @NetAlertX fa22523a0b Refactor device tiles SQL logic to use get_sql_devices_tiles function for improved maintainability Feature Request - Flapping and Sleeping nuances
Fixes #1567
2026-03-21 21:10:37 +00:00
Jokob @NetAlertX 0a7ecb5b7c Update config.json files to add 'ordeable' option and refactor cacheStrings function for consistency 2026-03-17 09:22:25 +00:00
Jokob @NetAlertX c7399215ec Refactor event and session column names to camelCase
- Updated test cases to reflect new column names (eve_MAC -> eveMac, eve_DateTime -> eveDateTime, etc.) across various test files.
- Modified SQL table definitions in the database cleanup and migration tests to use camelCase naming conventions.
- Implemented migration tests to ensure legacy column names are correctly renamed to camelCase equivalents.
- Ensured that existing data is preserved during the migration process and that views referencing old column names are dropped before renaming.
- Verified that the migration function is idempotent, allowing for safe re-execution without data loss.
2026-03-16 10:11:22 +00:00
jokob-sk e1d206ca74 BE: new_online defined incorrectly
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-03-09 20:59:51 +11:00
Jokob @NetAlertX 3e237bb452 Normalize MAC addresses in SQL queries and add devCanSleep column to device schema 2026-03-02 06:03:18 +00:00
Jokob @NetAlertX 15807b7ab9 Add unit and integration tests for device down event handling and sleeping suppression 2026-03-02 05:53:28 +00:00
Jokob @NetAlertX 8e6efc3008 sleeping devices status #1519 2026-03-02 04:35:07 +00:00
Jokob @NetAlertX ea5585a8ef Add database cleanup for Sessions and optimize queries
- Implemented deletion of Sessions older than DAYS_TO_KEEP_EVENTS.
- Added index for Plugins_History to improve query performance.
- Introduced unit tests for Sessions trimming and database analysis.
2026-03-01 06:07:57 +00:00
jokob-sk 2f1e5068e3 BE+FE: Unstable devices list (3 status changes in 1h)
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-22 23:12:46 +11:00
jokob-sk 63810bc536 BE: Parameters table, app.sql duplicate removal
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-22 11:17:34 +11:00
jokob-sk 57d451fcf4 BE: Parameters table, app.sql duplicate removal
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-22 10:28:30 +11:00
jokob-sk 50f341e84f BE: force upgrade of unifi-sm-api>=0.2.3 #1524
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-20 07:44:49 +11:00
jokob-sk 64dbf8a3ba BE: lint
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-15 16:31:56 +11:00
jokob-sk 3587169791 BE+FE: refactor timezone UTC additional work #1506
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-15 16:13:53 +11:00
jokob-sk 9676111ceb BE: Events deduplication and uniqueness
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-15 13:59:15 +11:00
jokob-sk 2765e441a5 BE+FE: Check if current mac != parent mac for network page setup #1513
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-14 10:43:24 +11:00
jokob-sk b57d36607a BE+FE: refactor timezone UTC #1506
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-11 16:15:49 +11:00
Jokob @NetAlertX 45157b6156 timestamp cleanup 2026-02-11 01:55:02 +00:00
jokob-sk e899f657c5 BE+FE: refactor totals retrieval + LUCIRPC old field name
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-10 07:39:11 +11:00
Adam Outler 30c832b14e move app. 2026-02-07 15:20:49 +00:00
jokob-sk 946ad00253 FIX: lowercase MAC normalization across project v0.1
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-07 13:44:50 +11:00
jokob-sk 81202ce07e name resolution config clean up, authoritative fields fixes for none values, css fixes
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-02-03 20:40:11 +11:00
jokob-sk 229ea770cb feat: authoritative plugin fields - fix devFQDN + docs + allow filters and columns on new fields
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-01-30 07:50:21 +11:00
jokob-sk 1f5d6f96a4 feat: authoritative plugin fields - fix devLastIP
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-01-29 10:48:30 +11:00
jokob-sk d24411fa53 BE: CurrentScan table leanup - column rename
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-01-25 16:38:45 +11:00
jokob-sk 96e4909bf0 feat: authoritative plugin fields
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-01-25 11:40:29 +11:00
jokob-sk 3775e21dc7 feat: authoritative plugin fields
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-01-24 22:20:30 +11:00
jokob-sk be381488aa feat: authoritative plugin fields
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-01-24 16:19:27 +11:00
Jokob @NetAlertX 49e689f022 Refactor authoritative field handling and enhance device update logic
- Updated `get_source_for_field_update_with_value` to determine source values based on new field values, including handling for empty and unknown values.
- Introduced `get_overwrite_sql_clause` to build SQL conditions for authoritative overwrite checks based on plugin settings.
- Enhanced `update_devices_data_from_scan` to utilize new authoritative settings and conditions for updating device fields.
- Added new tests for source value determination and device creation to ensure proper handling of source fields.
- Created in-memory SQLite database fixtures for testing device creation and updates.
2026-01-22 04:33:49 +00:00
jokob-sk 422a048806 feat: authoritative plugin fields
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-01-22 11:17:46 +11:00
Jokob @NetAlertX 54d01f0a65 feat: Enhance authoritative field handling with new locking mechanisms and update tests 2026-01-21 04:46:07 +00:00
Jokob @NetAlertX 97e684dba4 change 2026-01-21 02:01:05 +00:00
Jokob @NetAlertX 478b018fa5 feat: Enhance plugin configurations and improve MAC normalization 2026-01-21 01:58:52 +00:00
Jokob @NetAlertX 3b203536b8 ALL:Authoritative plugin fields 2026-01-19 11:28:37 +00:00
Adam Outler ecea1d1fbd feat(api): MCP, OpenAPI & Dynamic Introspection
New Features:
- API endpoints now support comprehensive input validation with detailed error responses via Pydantic models.
- OpenAPI specification endpoint (/openapi.json) and interactive Swagger UI documentation (/docs) now available for API discovery.
- Enhanced MCP session lifecycle management with create, retrieve, and delete operations.
- Network diagnostic tools: traceroute, nslookup, NMAP scanning, and network topology viewing exposed via API.
- Device search, filtering by status (including 'offline'), and bulk operations (copy, delete, update).
- Wake-on-LAN functionality for remote device management.
- Added dynamic tool disablement and status reporting.

Bug Fixes:
- Fixed get_tools_status in registry to correctly return boolean values instead of None for enabled tools.
- Improved error handling for invalid API inputs with standardized validation responses.
- Fixed OPTIONS request handling for cross-origin requests.

Refactoring:
- Significant refactoring of api_server_start.py to use decorator-based validation (@validate_request).
2026-01-18 18:16:18 +00:00
jokob-sk 5eaeffca04 DOCS: new URL https://docs.netalertx.com/
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2026-01-13 20:16:43 +11:00
Jokob @NetAlertX d849583dd5 refactor UI backend calls to python endpoints 2026-01-10 03:06:02 +00:00
jokob-sk 139447b253 BE: mylog() better code radability
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2025-11-25 07:54:17 +11:00
jokob-sk 872ac1ce0f BE: linting fixes 3
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2025-11-22 21:06:03 +11:00
jokob-sk ebeb7a07af BE: linting fixes 2
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2025-11-22 20:43:36 +11:00
jokob-sk 5c14b34a8b BE: linting fixes
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2025-11-22 13:14:06 +11:00
Adam Outler 5b871865db /data and /tmp standarization 2025-11-09 17:03:25 +00:00
jokob-sk 2215272e78 BE: short-circuit of name resolution #1251
Signed-off-by: jokob-sk <jokob.sk@gmail.com>
2025-11-02 11:57:08 +11:00