Commit graph

72 commits

Author SHA1 Message Date
F
9ca50d00f6
Update rtcom_bridge.py 2026-01-21 20:11:40 +01:00
F
933e8495f0
Create rtcom_bridge.py
plugin to allow rtcom webui to trigger start and stop range tests inside lxmf cli toward a base station using the webui button
2026-01-21 20:01:44 +01:00
F
4263e60a84
Refactor HTML generation and signal handling
Refactor HTML generation for range test coverage map with improved signal-based coloring and enhanced styling. Update functions to handle GPS points, signal data, and HTML file appending.
2026-01-15 00:01:49 +01:00
F
3adbb89434
Enhance rangeclear command functionality
Refactor rangeclear command to improve logging and error handling.
2026-01-14 23:47:32 +01:00
F
1c2bb87d06
Enhance HTML file generation and signal data tracking
Refactor HTML initialization and signal data handling in the range test client.
2026-01-14 23:43:34 +01:00
F
c038d06179
Enhance HTML map file initialization and signal icons
Refactor HTML generation and signal handling in range test client.
2026-01-14 23:29:21 +01:00
F
9b3e84adc1
Refactor GPS location handling in rangetest_client
Refactor GPS handling by removing threading and caching logic. Simplify GPS location retrieval with prioritized satellite and network attempts. improved html map file.
2026-01-14 23:16:07 +01:00
F
6b09274ced
Add rangeclear command and improve GPS retrieval
Added 'rangeclear' command to clear logged GPS points and enhanced GPS location retrieval with multiple attempts and caching.
2026-01-14 22:28:50 +01:00
F
b82855563e
Range Test Server Plugin
Run this plugin on the fixed position node. Will listen ro rangetest N T commands from the mobile client and starts to send range testing messages.
2026-01-14 22:00:47 +01:00
F
311bdf3513
Add Range Test Client plugin for GPS logging and files export
Range Test Client to run on the mobile client. Implement Range Test Client for logging GPS positions and exporting data in multiple formats: kml, json, csv, geojson, html map.
2026-01-14 21:58:43 +01:00
F
abef85806b
Add rangeexport command and improve logging
Added 'rangeexport' command for exporting test logs to Download folder. Simplified log directory handling and improved error handling for file operations.
2026-01-13 21:48:30 +01:00
F
bba91378f7
Improve file handling and permissions in rangetest.py
Added error handling and permission adjustments for JSON, KML, and HTML file operations. Enhanced logging for permission issues and fallback mechanisms.
2026-01-13 21:30:17 +01:00
F
fa1979ffc0
Enhance documentation and update delivery methods
Added detailed documentation for LXMF delivery methods, updated print statements to reflect opportunistic delivery, and modified file saving instructions for Termux.
2026-01-13 20:54:18 +01:00
F
c53376f066
Add signal quality extraction and logging to range test, kml json and html output
Enhanced range testing plugin with signal data extraction and improved logging features. kml, json and html page map files output, automatic save from termux to sdcard/download folder for easily file navigation in android. NOTE: THIS IS AN EXPERIMENTAL PLUGIN IN TEST PHASE and an active WORK IN PROGRESS!
2026-01-13 13:56:17 +01:00
F
3539e81e74
Replace KML with HTML map generation in rangetest
Updated the rangetest plugin to include HTML map generation and logging, replacing KML functionality. Adjusted descriptions and methods to support the new HTML output.
2026-01-12 23:38:27 +01:00
F
c8c7374282
Refactor rangetest.py for phone mode support
Refactor rangetest.py to support phone mode for receiving pings and logging GPS data. Update variable names and comments for clarity.
2026-01-12 23:23:10 +01:00
F
d20c418aff
Refactoring and improving logic 2026-01-12 23:10:58 +01:00
F
f201de9fc2
Refactor GPS location handling and error messages 2026-01-12 22:41:00 +01:00
F
aadb7407d9
Update 2026-01-12 22:32:35 +01:00
F
cad5c46761
Improve GPS location retrieval and debugging
Enhanced GPS debugging output and error handling.
2026-01-12 20:19:10 +01:00
F
70c6eabe41
Enhance debug logging in rangetest.py
Added debug logging for incoming messages and range test pings.
2026-01-12 20:15:26 +01:00
F
5ba4c120bc
Refactor GPS location retrieval with multiple providers 2026-01-12 20:09:45 +01:00
F
8c72a18c56
Refactor GPS handling and improve logging
Added import for sys module and updated print statements for clarity. Removed debug prints related to environment checks and adjusted GPS response messages.
2026-01-12 20:05:21 +01:00
F
a77967d8c3
Refactor GPS response logging and error handling 2026-01-12 19:58:34 +01:00
F
cbfbc036d8
Improve GPS logging and response details
Enhanced GPS logging and response messages with accuracy and provider information.
2026-01-12 19:48:17 +01:00
F
967e7afaa5
Update and new features 2026-01-12 18:38:57 +01:00
F
5998d8323a
Add range testing plugin with GPS functionality
This plugin handles automated bidirectional range testing with GPS, allowing users to start, stop, and check the status of range tests. It includes functionality for sending and receiving GPS data, logging results, and generating summaries. Need 2 lxmf clients to work together: 1 in the fixed spot and 1 on the mobile client, both with rangetest plugin installed.

Commands usage sending to remote host via message: 
rangetest N T (N is the number of messages to send, T the delay time for each message)
rangestop (stop the current range test)
2026-01-12 18:33:57 +01:00
F
e5e448bb64
Add Remote Shell Plugin
rssh plugin: remote ssh

transform your lxmf-cli in a remote shell server that works via lxmf message for remote nodes management 

Note: the plugin works for single and simple commands, commands that opens interactive sessions will not work, like nano for example.

COMMAND USAGE:

📋 Server Setup (Host)
Initial Setup:
ssh on              # Enable & set password (first time)

Management Commands:
ssh                 # Show status
ssh on              # Enable remote shell
ssh off             # Disable remote shell
ssh password        # Change password
ssh sessions        # List active connections
ssh kick <#>        # Close session by number
ssh log             # View activity log
```

---

## 🖥️ Remote Client Usage

### Connect
```
ssh                 # Request access
<password>          # Enter password when prompted
```

### Execute Commands
```
ls -la              # Any shell command
pwd                 # Works like normal terminal
sudo apt update     # Sudo commands work too
```

### Disconnect
```
ssh exit            # Close session
```

---

## 🎯 Quick Example

**Server:**
```
> ssh on
Set password: ********
 Remote shell enabled
```

**Remote Client:**
```
> ssh
🔐 Remote Shell Authentication
Enter password: ********
 Connected to Remote Shell
user@hostname:~

> whoami
root

> ls -la
[file listing...]

> ssh exit
👋 Session closed

🔒 Security Notes

⚠️ All commands are logged
🔐 Password must be 8+ characters
⏱️ Auth timeout: 60 seconds
🚫 Max 3 password attempts
📝 Log file: plugins/remote_shell.log

That's it! Simple SSH-like access over LXMF.
2026-01-09 11:13:30 +01:00
F
ff3b3c4572
Enhance HTML client with Termux browser support
Added Termux support for opening HTML files and improved command handling.
2026-01-03 13:10:22 +01:00
F
bd1ee986a2
Refactor HTML server plugin with new features 2026-01-03 13:09:54 +01:00
F
97c8ac209b
Add experimental html server and client plugin
Test only at the moment!
2026-01-03 11:27:35 +01:00
F
c475a0057c
Add file_manager plugin for file transfer support
Added file transfer via plugin.

Send and receive files via lxmf-cli, compatible with reticulum file raw binary encoding.

Command usage after plugin installation:

# Send any file type
sendfile Alice document.pdf
sf 3 vacation.jpg
sendfile Bob archive.zip
sf Alice song.mp3

# List transfers
listfiles
lf received
lf sent

# Configure
filesettings
2025-12-22 18:24:00 +01:00
F
e2e43c8bf2
Add experimental status warning to pgp.py
Added a warning about the plugin's experimental status.
2025-12-20 14:08:11 +01:00
F
37512a189b
Update PGP key generation and display capabilities 2025-12-20 14:03:14 +01:00
F
b86c81ff6c
Implement trust level command for PGP keys
Add trust level setting for PGP keys with fallback methods.
2025-12-20 13:58:48 +01:00
F
5c36f41e56
Enhance encryption message handling and key display 2025-12-20 13:50:28 +01:00
F
db4976438e
Implement passphrase support for PGP keys
Added passphrase handling for PGP key management.
2025-12-20 13:40:51 +01:00
F
88a4eb0d22
Refactor trust and send commands for better usage 2025-12-20 13:35:00 +01:00
F
e8ccde91f6
Implement automatic PGP key exchange
Added automatic key exchange feature to handle PGP key requests and responses.
2025-12-20 13:27:53 +01:00
F
fb2569f8cf
Add automatic key exchange guide 2025-12-20 13:27:04 +01:00
F
1ffe076641
Termux keygen fix update 2025-12-20 13:18:30 +01:00
F
546a1a78f7
Fix termux keygen 2025-12-20 13:13:53 +01:00
F
e21618b995
fix termux keygen 2025-12-20 13:10:12 +01:00
F
6286dab887
Add readme and termux install script 2025-12-20 13:00:50 +01:00
F
874eb477d3
PGP Plugin Termux usage fix
Added keygen and diagnose commands to generate pgp keys if skipped on termux and verify pgp is working properly
2025-12-20 12:59:40 +01:00
F
e5787f5ef8
Add PGP plugin
PGP plugin for added security layer in messaging, included readme and easy installation script.
Automatically generate PGP signature keys on first load and auto encrypt / decript messages using PGP.
 
After install usage:

──────────────────────────────────────────────────────────────────────
PGP PLUGIN - COMMANDS
──────────────────────────────────────────────────────────────────────

📊 Status & Info:
  pgp status              - Show PGP status and settings
  pgp list                - List all keys in keyring

🔑 Key Management:
  pgp keygen              - Generate new PGP key pair
  pgp export              - Export your public key
  pgp import <contact>    - Request public key from contact
  pgp trust <contact> <key> - Import and trust a public key

📨 Messaging:
  pgp send <contact> <msg> - Send encrypted message

⚙️  Settings:
  pgp set auto_encrypt on/off    - Auto-encrypt outgoing
  pgp set auto_sign on/off        - Auto-sign outgoing
  pgp set auto_decrypt on/off     - Auto-decrypt incoming
  pgp set auto_verify on/off      - Auto-verify signatures
  pgp set reject_unsigned on/off  - Reject unsigned messages
  pgp set reject_unencrypted on/off - Reject unencrypted

──────────────────────────────────────────────────────────────────────
2025-12-20 12:46:02 +01:00
F
16d4b2e8b2
Add bme680 sensor telemetry plugin bot
Telemetry plugin for bme680 Temp / Hum / Gas sensor, connected to i2c address 0x76 or 0x77 on Raspberry pi zero.

Supports sensor warmup on plugin load, gas sensor baseline calibration, AQI and AQ scores, Temp and Humidity readings. 

Local and remote sensor reading!

Commands usage:
bme           - Show help
bme read      - Full telemetry with AQI
bme simple    - Telemetry without AQI (faster)
bme raw       - JSON output
bme calibrate - Calibrate baseline
bme baseline  - Show baseline values
bme reinit    - Reinitialize sensor  

From a remote lxmf client, send message: bme

Originally Made by: Cascafico , edited by F
2025-12-07 22:19:40 +01:00
F
b64276aafc
Add prop_node plugin
Add propagation nodes management plugin.

Configurable propagation nodes discovery from announces, enable or disable PN function, set your favorite address manually or from the PN announce list, auto send to PN on failed delivery, auto or manual sync to retrieve queued messages from PN.

============================================================
PROPAGATION NODE PLUGIN
============================================================

Commands:
  prop status          - Show detailed status
  prop on/off          - Enable/disable plugin
  prop list            - List propagation nodes
  prop set <#|hash>    - Set active node by index or hash
  prop unset           - Deactivate node
  prop sync            - Sync messages now
  prop send <#|hash> <message>  - Send via prop node
  prop autosync on/off - Toggle auto-sync
  prop interval <s>    - Set sync interval
  prop retry on/off    - Auto-retry failed
  prop discover on/off - Toggle alerts
============================================================
2025-11-23 16:22:24 +01:00
F
bd42a87f67
Add meteo plugin
Add meteo plugin for local or remote weather requests

# Local commands
> meteo                    # Show weather for default city (Rome)
> meteo London            # Show weather for London
> meteo New York          # Show weather for New York
> meteo set Paris         # Set Paris as default city
> meteo default           # Show current default city

# Remote commands (via LXMF message)
/meteo                    # Default city weather
/meteo Tokyo             # Tokyo weather
/weather Berlin          # Berlin weather (alias)
```

**Sample Output:**
```
==================================================
🌍 WEATHER FORECAST
==================================================

📍 Rome, Lazio, Italy

☀️ CURRENT CONDITIONS
--------------------------------------------------
Condition: Clear sky
Temperature: 18.5°C (feels like 17.2°C)
Humidity: 65%
Wind: → 12.3 km/h

📅 3-DAY FORECAST
--------------------------------------------------

Mon 2024-01-15:  Partly cloudy
  Temp: 12.0°C - 19.0°C
  Wind: 15.2 km/h

Tue 2024-01-16: 🌧️ Moderate rain
  Temp: 10.5°C - 15.0°C
  Rain: 8.5 mm
  Wind: 18.5 km/h

Wed 2024-01-17: 🌤️ Mainly clear
  Temp: 11.0°C - 17.5°C
  Wind: 12.0 km/h

==================================================
Data: Open-Meteo.com
2025-11-22 10:55:29 +01:00
F
a886bb528f
Add c_info plugin contact info
Contact info plugin to search and show, and  easily copy contact hash address.

💡 Usage: show <contact>

Search by:
  - Contact index: show 1
  - Contact name: show Alice
  - Peer index: show 5
  - Display name: show Bob
  - Hash: show abc123...
  - Partial hash: show abc123

💡 Quick Actions:
   copy - Copy hash to clipboard
   send user <msg> - Send message
   edit user - Edit contact
   messages user 1 - View conversation
2025-11-22 10:30:22 +01:00