Releases: agessaman/meshcore-bot
v0.6
This version adds these new features:
- calculation of packet hashes for deduplication of nodes
- the addition of an automated greeter command with an onboarding period to avoid spamming existing active members
- improved localization of bot commands
- commands have a generic per-channel configuration, instead of requiring custom code to work outside of the standard channels, this allows per-command channels
This version adds the following improvements:
- the weather command now has better hourly updates
- improvements to score extraction in the sports command
- better installation scripts
- WebViewer UI improvements
- delete contacts from the contacts database
- override the path guessing weighting for key infrastructure nodes
- cleaned up dashboard to make stats more useful
- improve multi-test command response format
v0.5
Added localization to all commands.
Used machine translation of strings into German, British English, Spanish, French Canadian, Dutch, Portuguese and Brazilian Portuguese. Any assistance with native-speaker localization would be appreciated.
Added wx tomorrow and wx #day commands.
Implemented a globally accessible weather API using OpenMeteo, currently running as gwx. Command structure is the same as wx command.
Added command overrides. If you want to make modifications to a command, you can duplicate the file into ./modules/commands/alternatives and they will override existing commands with the same name field. If you change name = "gwx" to name = "wx" the example global weather command will unload the standard wx command in favor of your replacement.
Used path guessing logic to estimate path lengths in test messages. New placeholders are {path_distance} for the estimated total path traveled, and {firstlast_distance} for the distance between the first and last known repeater.
Fixed an issue where we weren't initiating the packet_stream table for the WebViewer integration.
Several bug fixes, and sadly probably several more bugs. This is a work in progress.
v0.4
This version does some internal clean-up on the databases. A new contact database will be populated when you launch this version for the first time.
- Added processing of all adverts and discovery events. All contact data is stored information in database
- Added repeater geolocation data in the prefix command
- Added logic in the path command to try to deconflict prefixes in path based on distance and node advert age
- Significantly speeds up channel loading during bot startup. Detects all channels now, regardless of empty slots.
- Add web viewer with dashboard that runs in a separate process and provides stats, contact information and
- Various code structure and import improvements to core bot and command modules to support integration
- Add ACL support to restrict access to sensitive commands to DMs from known public keys
- Updated example config.ini files—to use some of the new features, you will need to update your config.ini. The Web_Viewer, Path_Command, Prefix_Command, and Admin_ACL sections have been added, and are necessary for full functionality of the bot.
v0.3
- Added channels command to share common hashtag channels, configurable in config.ini
- Added option to geolocate repeaters in output of the prefix command
- Cleaned up config.ini.example to reflect recent changes
- Revised path command to improve consistency of decoding and output.
- Improved ZIP code handling for aqi command
- Added responses for emoji greetings
- Improved sports command to format soccer home/away properly
- Added dice and roll commands for increased randomness
- Improved plugin architecture so command configuration is handled in config.ini and commands code is held in individual files
v0.2
Enhanced DM Reliability with meshcore-2.1.6
- NEW: Implemented
send_msg_with_retryfor Direct Messages using meshcore-2.1.6 - NEW: Automatic ACK confirmation for all DM sends
- NEW: Configurable retry parameters with intelligent fallback
- NEW: Path optimization and flood mode fallback for failed deliveries
- NEW: Enhanced DM logging with success/failure indicators
Advanced Prefix Command System
- NEW:
prefix <XX>command to query repeater prefixes via API - NEW:
prefix refreshsubcommand to manually refresh API cache - NEW:
prefix freecommand to list available (unused) prefixes - NEW: SQLite database fallback when API is unavailable
- NEW: 1-hour in-memory caching for API responses
- NEW: Dynamic API source detection in responses
- NEW: Random selection of free prefixes for better distribution
Command Matching Precision
- FIXED:
prefixcommand now only matches at the beginning of messages - FIXED:
t_phrasecommand restricted to beginning of message (torT) - FIXED:
@command no longer triggers on "at" in middle of messages - FIXED:
repeatercommand restricted to DM-only and beginning of message - IMPROVED: All commands now use precise keyword matching
v0.1.1
v0.1 Initial Release
It wasn't a bot, then it was... forgive my hacking.