Commit Graph

31 Commits

Author SHA1 Message Date
Lloyd 1a56b64dad Refactor Mesh CLI handler: rename RepeaterCLI to MeshCLI, initialization with identity type and region support, and update command handling for room servers. 2025-12-20 21:46:16 +00:00
Lloyd c98a33eda5 Refactor security configuration handling: update LoginHelper to retrieve security settings from the correct config path and adjust max_clients default value; modify APIEndpoints to ensure distinct admin and guest passwords, and enhance identity key validation logic in API responses. 2025-12-18 15:02:23 +00:00
Lloyd 1458ae00c6 typo sqlite handler reference in RepeaterDaemon initialization for room server database 2025-12-18 10:46:32 +00:00
Lloyd 710ee5b666 Implement room server functionality: add database schema, message handling, and client synchronization 2025-12-18 10:44:00 +00:00
Lloyd d85244b7e0 Enhance identity management: consolidate registration logic and add auto-generation for identity keys 2025-12-17 22:09:18 +00:00
Lloyd 2dce072124 Add ProtocolRequestHelper for handling protocol requests and update related components 2025-12-17 16:20:16 +00:00
Lloyd 82f1a20f44 Add PathHelper for processing PATH packets and update routing logic 2025-12-17 14:06:16 +00:00
Lloyd 1bb2d39940 Refactor LoginHelper and TextHelper to implement per-identity ACLs add CLI command handling 2025-12-17 11:08:14 +00:00
Lloyd 4b97c7b439 Implement text message handling and identity registration for room servers 2025-12-17 10:38:23 +00:00
Lloyd 73d5250560 Add identity management endpoints for API 2025-12-16 22:58:14 +00:00
Lloyd 5df266c83e Implement access control and login management for identities
- Added security settings in config.yaml.example for managing authenticated clients.
- Introduced ACL class for handling access control and client authentication in acl.py.
- Created LoginHelper class for processing login requests and managing authentication in login.py.
- Added IdentityManager class for managing multiple identities in identity_manager.py.
- Updated main.py to initialize IdentityManager and LoginHelper, and register identities.
- Added packet_router to process ANON_REQ login packets through the LoginHelper.
2025-12-16 22:39:26 +00:00
Lloyd bbfbdcce2f Ensure logging configuration is initialized when log level is provided 2025-12-14 22:35:57 +00:00
Lloyd ef4cb035be Update repeater/main.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-09 21:39:58 +00:00
Lloyd 60964ea13d Refactor packet handling to use packet injector for sending responses in DiscoveryHelper and TraceHelper; remove PacketRouter as it's no longer needed. 2025-12-01 22:05:02 +00:00
Lloyd d4a730bb0e rename PacketPipeline with PacketRouter 2025-12-01 20:56:59 +00:00
Lloyd e8afa79114 Refactor packet handling in pyMC Repeater
- Updated dependency for pymc_core to use the feat/valid-packets-checks branch.
- Removed neighbor tracking logic from RepeaterHandler and moved it to AdvertHelper.
- Introduced PacketPipeline for centralized packet processing, ensuring all packets flow through repeater logic.
- Created handler helpers: TraceHelper, DiscoveryHelper, and AdvertHelper for better modularity.
- Implemented asynchronous processing of advertisement packets and discovery requests.
- Enhanced logging for better traceability and debugging.
- Cleaned up unused code and improved overall structure for maintainability.
2025-12-01 15:13:23 +00:00
Lloyd 2c4cdbcf22 feat: implement control handler for discovery request/response in RepeaterDaemon 2025-11-27 22:04:24 +00:00
Lloyd 9ed3d4618f feat: add discovery response handling to RepeaterDaemon for automatic node discovery 2025-11-27 20:50:40 +00:00
Lloyd bdc38c5307 fix: standardize packet hash casing to uppercase in RepeaterHandler and RepeaterDaemon 2025-11-24 09:58:13 +00:00
Lloyd 2137e6a1c6 Refactor code structure for improved readability and maintainability 2025-11-22 22:07:46 +00:00
Lloyd 38569d029e log trace packet storage 2025-11-19 12:24:44 +00:00
Lloyd fa8084b98e renamed folders http > web 2025-11-07 13:32:40 +00:00
Lloyd 3f092e3b39 Add StorageCollector class for packet and advert management
- Refactored main.py to import HTTPStatsServer from the new path.
- Introduced storage.py to handle SQLite database for packets and adverts.
- Implemented methods for initializing SQLite, RRD, and MQTT.
- Added functionality to record packets and adverts, including storage and metrics updates.
- Created methods for retrieving packet statistics, recent packets, and filtered packets.
- Implemented RRD data fetching and packet type statistics.
- Added cleanup method for old data in the database.
2025-11-07 13:23:44 +00:00
Lloyd 4a9aa89042 UI with new dialog for displaying packet information 2025-11-04 22:13:22 +00:00
Lloyd 6a7dca0bca add heatmap chat 2025-11-01 22:41:26 +00:00
Lloyd 32c6b4f490 Refactor CAD calibration engine to use daemon instance instead of stats getter 2025-10-31 22:16:52 +00:00
Lloyd 3fc295e26c Add CAD calibration tool and endpoints for real-time detection optimization 2025-10-31 22:10:45 +00:00
Lloyd 1c5b67de95 CAD radio initialization and SNR handling in RepeaterDaemon 2025-10-31 00:15:41 +00:00
Lloyd 85df2c5b0f Implement trace packet logging and SNR display enhancements 2025-10-30 00:11:04 +00:00
Lloyd ed678af4ca Add TraceHandler for network diagnostics 2025-10-29 00:08:06 +00:00
Lloyd 97256eb132 Initial commit: PyMC Repeater Daemon
This commit sets up the initial project structure for the PyMC Repeater Daemon.
It includes base configuration files, dependency definitions, and scaffolding
for the main daemon service responsible for handling PyMC repeating operations.
2025-10-24 23:13:48 +01:00