meshing-around
Random Mesh Scripts for BBS activities for use with Meshtastic nodes
pong-bot.sh
Little bot which will trap keywords like ping and respond on a DM with pong. The script will also monitor the group channels for keywords to trap on. you can also Ping @Data to Echo as a example for further processing.
other features
motdor to set the messagemotd $New Message Of the daylheardreturns the last 5 heard nodes with SNR, can also usesitrepcmdreturns the list of commands (the help message)
mesh-bot.sh
alternate bot, adds internet and other telemetry data which goes beyond just ping
- Various solar details for radio propagation
sunandmoonreturn info on rise and set local timesolargives an idea of the x-ray fluxhfcondreturns a table of HF solar conditions
- Bulletin Board (BBS) functions
bbshelpreturns the followingbbslistlist the messages by ID and subjectbbsreadread a message example use:bbsread #1bbspostpost a message example use:bbspost $Message Subject #Message Bodybbsdeletedelete a message example use:bbsdelete #4
- Other functions
whereamireturns the address of location of sender if knowntidereturns the local tides, NOAA data sourcewxandwxcreturns local weather forecast, NOAA data source (wxc is metric value)wxaandwxalertreturns NOAA alerts. short title or expanded detailsjoketells a joke
Install
- Clone the project with
git clone https://github.com/spudgunman/meshing-around install.shwill automate optional venv and requirements installlaunch.shwill activate and launch the app in the venv if built
Configurations
Some config is via code, converting to config.ini set the appropriate interface for your method (serial/ble/tcp).
Only one at a time is supported to a single node at a time.
#config.ini
# type can be serial, tcp, or ble
# port is the serial port to use, commented out will try to auto-detect
# hostname is the IP address of the device to connect to for tcp type
# mac is the MAC address of the device to connect to for ble type
[interface]
type = serial
# port = '/dev/ttyUSB0'
# hostname = 192.168.0.1
# mac = 00:11:22:33:44:55
The following pair of settings determine how to respond, default action is to not spam the default channel. Setting DM_ONLY will force all DM which may not be wanted. Setting the Default channel is the channel which wont be spammed by the bot.
[general]
respond_by_dm_only = True
defaultChannel = 0
Modules can be disabled
[bbs]
enabled = False
requirements
can also be installed with pip install -r requirements.txt
pip install meshtastic
pip install pubsub
mesh-bot enhancments
pip install pyephem
pip install requests
pip install geopy
pip install maidenhead
pip install beautifulsoup4
pip install dadjokes
Recognition
Used ideas and snippets from other responder bots want to call them out!
GitHub user https://github.com/PiDiBi
- providing looking at test functions and other suggestions like wxc, cpu use and alerting code
Discord and Mesh user Cisien for testing and ideas!
