mirror of
https://github.com/agessaman/meshcore-bot.git
synced 2026-08-22 02:19:48 +00:00
chore: Remove outdated documentation files and update references
- Deleted COMMANDS.md, DOCKER.md, WEB_VIEWER.md, and other related documentation files to streamline the project structure. - Updated README.md and other documentation references to point to the new locations of the command and Docker instructions. - Added optional dependencies for documentation generation in pyproject.toml.
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
# Build and deploy Material for MkDocs to GitHub Pages
|
||||
name: Deploy docs
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: "3.x"
|
||||
|
||||
- name: Install MkDocs and Material
|
||||
run: pip install mkdocs-material
|
||||
|
||||
- name: Deploy to GitHub Pages
|
||||
run: mkdocs gh-deploy --force
|
||||
@@ -119,7 +119,7 @@ For containerized deployment using Docker:
|
||||
docker-compose logs -f
|
||||
```
|
||||
|
||||
See [DOCKER.md](DOCKER.md) for detailed Docker deployment instructions, including serial port access, web viewer configuration, and troubleshooting.
|
||||
See [DOCKER.md](docs/DOCKER.md) for detailed Docker deployment instructions, including serial port access, web viewer configuration, and troubleshooting.
|
||||
|
||||
## NixOS
|
||||
Use the Nix flake via flake.nix
|
||||
@@ -220,7 +220,7 @@ python meshcore_bot.py
|
||||
|
||||
### Available Commands
|
||||
|
||||
For a comprehensive list of all available commands with examples and detailed explanations, see [COMMANDS.md](COMMANDS.md).
|
||||
For a comprehensive list of all available commands with examples and detailed explanations, see [COMMANDS.md](docs/COMMANDS.md).
|
||||
|
||||
Quick reference:
|
||||
- **Basic:** `test`, `ping`, `help`, `hello`, `cmd`
|
||||
|
||||
@@ -11,7 +11,7 @@ This document provides a comprehensive list of all available commands in the Mes
|
||||
- [Entertainment Commands](#entertainment-commands)
|
||||
- [Sports Commands](#sports-commands)
|
||||
- [MeshCore Utility Commands](#meshcore-utility-commands)
|
||||
- [Management Commands](#management-commands)
|
||||
- [Admin Commands](#admin-commands)
|
||||
|
||||
---
|
||||
|
||||
@@ -663,9 +663,77 @@ mt
|
||||
|
||||
---
|
||||
|
||||
## Management Commands
|
||||
## Command Syntax
|
||||
|
||||
**Note:** Management commands are only available via Direct Message (DM) and may require ACL permissions.
|
||||
### Prefix
|
||||
|
||||
Commands can be used with or without the `!` prefix:
|
||||
- `test` or `!test` - Both work
|
||||
- `wx 98101` or `!wx 98101` - Both work
|
||||
|
||||
### Direct Messages
|
||||
|
||||
Some commands work in both public channels and direct messages, while admin commands typically require direct messages for security.
|
||||
|
||||
### Rate Limiting
|
||||
|
||||
The bot implements rate limiting to prevent spam. If you send commands too quickly, you may receive a rate limit message. Wait a few seconds before trying again.
|
||||
|
||||
### Case Sensitivity
|
||||
|
||||
Most commands are case-insensitive:
|
||||
- `TEST` and `test` work the same
|
||||
- `WX 98101` and `wx 98101` work the same
|
||||
|
||||
### Getting Help
|
||||
|
||||
Use the `help` command to get more information:
|
||||
- `help` - List all commands
|
||||
- `help <command>` - Get detailed help for a specific command
|
||||
|
||||
---
|
||||
|
||||
## Additional Notes
|
||||
|
||||
### Location Requirements
|
||||
|
||||
Some commands use location data:
|
||||
- **`sun` and `moon`** - Use the bot's configured default location (`bot_latitude` and `bot_longitude` in config.ini), not the user's location from their advert
|
||||
- **`solar`** - Does not require location (provides global solar conditions)
|
||||
- **`solarforecast`** - Requires a location parameter (location name, repeater name, coordinates, or zipcode)
|
||||
- **`wx`** - Requires a zipcode parameter
|
||||
- **`gwx`** - Requires a location parameter
|
||||
- **`aqi`** - Requires a location parameter
|
||||
|
||||
### API Keys
|
||||
|
||||
Some commands require API keys to be configured in `config.ini`:
|
||||
- `satpass` - Requires `n2yo_api_key`
|
||||
- `aqi` - Requires `airnow_api_key` (optional, uses fallback if not configured)
|
||||
|
||||
### Weather Data
|
||||
|
||||
- `wx` uses NOAA API (US locations only)
|
||||
- `gwx` uses Open-Meteo API (global locations)
|
||||
- Both provide current conditions and forecasts
|
||||
|
||||
### Command Categories
|
||||
|
||||
Commands are organized into categories for easier discovery:
|
||||
- **Basic** - Essential commands for testing and help
|
||||
- **Information** - Weather, astronomy, and data queries
|
||||
- **Emergency** - Emergency and safety information
|
||||
- **Gaming** - Fun commands for games and random numbers
|
||||
- **Entertainment** - Jokes and humorous responses
|
||||
- **Sports** - Sports scores and information
|
||||
- **MeshCore Utility** - Network-specific utilities
|
||||
- **Admin** - Administrative commands (DM only)
|
||||
|
||||
---
|
||||
|
||||
## Admin Commands
|
||||
|
||||
**Note:** Admin commands are only available via Direct Message (DM) and may require ACL permissions.
|
||||
|
||||
### `repeater` or `repeaters` or `rp`
|
||||
|
||||
@@ -792,73 +860,5 @@ feed test https://example.com/feed.xml
|
||||
|
||||
---
|
||||
|
||||
## Command Syntax
|
||||
|
||||
### Prefix
|
||||
|
||||
Commands can be used with or without the `!` prefix:
|
||||
- `test` or `!test` - Both work
|
||||
- `wx 98101` or `!wx 98101` - Both work
|
||||
|
||||
### Direct Messages
|
||||
|
||||
Some commands work in both public channels and direct messages, while management commands typically require direct messages for security.
|
||||
|
||||
### Rate Limiting
|
||||
|
||||
The bot implements rate limiting to prevent spam. If you send commands too quickly, you may receive a rate limit message. Wait a few seconds before trying again.
|
||||
|
||||
### Case Sensitivity
|
||||
|
||||
Most commands are case-insensitive:
|
||||
- `TEST` and `test` work the same
|
||||
- `WX 98101` and `wx 98101` work the same
|
||||
|
||||
### Getting Help
|
||||
|
||||
Use the `help` command to get more information:
|
||||
- `help` - List all commands
|
||||
- `help <command>` - Get detailed help for a specific command
|
||||
|
||||
---
|
||||
|
||||
## Additional Notes
|
||||
|
||||
### Location Requirements
|
||||
|
||||
Some commands use location data:
|
||||
- **`sun` and `moon`** - Use the bot's configured default location (`bot_latitude` and `bot_longitude` in config.ini), not the user's location from their advert
|
||||
- **`solar`** - Does not require location (provides global solar conditions)
|
||||
- **`solarforecast`** - Requires a location parameter (location name, repeater name, coordinates, or zipcode)
|
||||
- **`wx`** - Requires a zipcode parameter
|
||||
- **`gwx`** - Requires a location parameter
|
||||
- **`aqi`** - Requires a location parameter
|
||||
|
||||
### API Keys
|
||||
|
||||
Some commands require API keys to be configured in `config.ini`:
|
||||
- `satpass` - Requires `n2yo_api_key`
|
||||
- `aqi` - Requires `airnow_api_key` (optional, uses fallback if not configured)
|
||||
|
||||
### Weather Data
|
||||
|
||||
- `wx` uses NOAA API (US locations only)
|
||||
- `gwx` uses Open-Meteo API (global locations)
|
||||
- Both provide current conditions and forecasts
|
||||
|
||||
### Command Categories
|
||||
|
||||
Commands are organized into categories for easier discovery:
|
||||
- **Basic** - Essential commands for testing and help
|
||||
- **Information** - Weather, astronomy, and data queries
|
||||
- **Emergency** - Emergency and safety information
|
||||
- **Gaming** - Fun commands for games and random numbers
|
||||
- **Entertainment** - Jokes and humorous responses
|
||||
- **Sports** - Sports scores and information
|
||||
- **MeshCore Utility** - Network-specific utilities
|
||||
- **Management** - Administrative commands (DM only)
|
||||
|
||||
---
|
||||
|
||||
For more information about configuring the bot, see the main [README.md](README.md) file.
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
---
|
||||
layout: default
|
||||
title: Discord Bridge Service
|
||||
---
|
||||
|
||||
# Discord Bridge Service
|
||||
|
||||
The Discord Bridge service posts MeshCore channel messages to Discord channels via webhooks. This is a **one-way, read-only bridge** - messages only flow from MeshCore to Discord.
|
||||
|
||||
@@ -470,4 +470,4 @@ docker-compose up -d
|
||||
|
||||
- [Docker Documentation](https://docs.docker.com/)
|
||||
- [Docker Compose Documentation](https://docs.docker.com/compose/)
|
||||
- [Main README](README.md) for general bot configuration
|
||||
- [Main README](https://github.com/agessaman/meshcore-bot/blob/main/README.md) for general bot configuration
|
||||
@@ -1,8 +1,3 @@
|
||||
---
|
||||
layout: default
|
||||
title: Feed Management
|
||||
---
|
||||
|
||||
# Feed Management
|
||||
|
||||
The Feed Management system allows the bot to subscribe to RSS feeds and REST APIs, automatically polling for new content and posting updates to specified mesh channels.
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
---
|
||||
layout: default
|
||||
title: Map Uploader Service
|
||||
---
|
||||
|
||||
# Map Uploader Service
|
||||
|
||||
Uploads node advertisements to [map.meshcore.dev](https://map.meshcore.dev) for network visualization.
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
---
|
||||
layout: default
|
||||
title: Packet Capture Service
|
||||
---
|
||||
|
||||
# Packet Capture Service
|
||||
|
||||
Captures packets from the MeshCore network and publishes them to MQTT brokers.
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
---
|
||||
layout: default
|
||||
title: Path Command Configuration
|
||||
---
|
||||
|
||||
# Path Command Configuration Guide
|
||||
|
||||
This document explains all configuration parameters for the Path Command, which decodes hex path data to identify repeaters in message routing paths.
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
---
|
||||
layout: default
|
||||
title: Repeater Management Commands
|
||||
---
|
||||
|
||||
# Repeater Management DM Commands
|
||||
|
||||
This document provides comprehensive documentation for all repeater management commands available via direct message (DM) to the bot.
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
---
|
||||
layout: default
|
||||
title: Weather Service
|
||||
---
|
||||
|
||||
# Weather Service
|
||||
|
||||
Provides scheduled weather forecasts, weather alerts, and lightning detection.
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
# GitHub Pages / Jekyll config for meshcore-bot documentation
|
||||
title: meshcore-bot Documentation
|
||||
description: Documentation for the MeshCore bot and its services
|
||||
theme: jekyll-theme-cayman
|
||||
markdown: kramdown
|
||||
|
||||
# Set to your repo URL (used for "Project overview" links on index)
|
||||
repository_url: https://github.com/agessaman/meshcore-bot
|
||||
repository_branch: main
|
||||
|
||||
# Apply default layout to all docs under docs/
|
||||
defaults:
|
||||
- scope:
|
||||
path: ""
|
||||
type: pages
|
||||
values:
|
||||
layout: default
|
||||
@@ -0,0 +1,63 @@
|
||||
# Configuration
|
||||
|
||||
The bot is configured via `config.ini` in the project root (or the path given with `--config`). This page describes how configuration is organized and where to find command-specific options.
|
||||
|
||||
## config.ini structure
|
||||
|
||||
- **Sections** are named in square brackets, e.g. `[Bot]`, `[Connection]`, `[Path_Command]`.
|
||||
- **Options** are `key = value` (or `key=value`). Comments start with `#` or `;`.
|
||||
- **Paths** can be relative (to the directory containing the config file) or absolute. For Docker, use absolute paths under `/data/` (see [Docker deployment](DOCKER.md)).
|
||||
|
||||
The main sections include:
|
||||
|
||||
| Section | Purpose |
|
||||
|--------|---------|
|
||||
| `[Bot]` | Bot name, database path, response toggles, command prefix |
|
||||
| `[Connection]` | Serial, BLE, or TCP connection to the MeshCore device |
|
||||
| `[Channels]` | Channels to monitor, DM behavior |
|
||||
| `[Admin_ACL]` | Admin public keys and admin-only commands |
|
||||
| `[Keywords]` | Keyword → response pairs |
|
||||
| `[Weather]` | Units and settings shared by `wx` / `gwx` and Weather Service |
|
||||
| `[Logging]` | Log file path and level |
|
||||
|
||||
## Command and feature sections
|
||||
|
||||
Many commands and features have their own section. Options there control whether the command is enabled and how it behaves.
|
||||
|
||||
### Enabling and disabling commands
|
||||
|
||||
- **`enabled`** – Common option to turn a command or plugin on or off. Example:
|
||||
```ini
|
||||
[Aurora_Command]
|
||||
enabled = true
|
||||
```
|
||||
- Commands without an `enabled` key are typically always available (subject to [Admin_ACL](https://github.com/agessaman/meshcore-bot/blob/main/README.md) for admin-only commands).
|
||||
|
||||
### Command-specific sections
|
||||
|
||||
Examples of sections that configure specific commands or features:
|
||||
|
||||
- **`[Path_Command]`** – Path decoding and repeater selection. See [Path Command](PATH_COMMAND_CONFIG.md) for all options.
|
||||
- **`[Prefix_Command]`** – Prefix lookup, prefix best, range limits.
|
||||
- **`[Weather]`** – Used by the `wx` / `gwx` commands and the Weather Service plugin (see [Weather Service](WEATHER_SERVICE.md)).
|
||||
- **`[Airplanes_Command]`** – Aircraft/ADS-B command (API URL, radius, limits).
|
||||
- **`[Aurora_Command]`** – Aurora command (default coordinates).
|
||||
- **`[Alert_Command]`** – Emergency alerts (agency IDs, etc.).
|
||||
- **`[Sports_Command]`** – Sports scores (teams, leagues).
|
||||
- **`[Joke_Command]`**, **`[DadJoke_Command]`** – Joke sources and options.
|
||||
|
||||
Full reference: see `config.ini.example` in the repository for every section and option, with inline comments.
|
||||
|
||||
## Path Command configuration
|
||||
|
||||
The Path command has many options (presets, proximity, graph validation, etc.). All are documented in:
|
||||
|
||||
**[Path Command](PATH_COMMAND_CONFIG.md)** – Presets, geographic and graph settings, and tuning.
|
||||
|
||||
## Service plugin configuration
|
||||
|
||||
Service plugins (Discord Bridge, Packet Capture, Map Uploader, Weather Service) each have their own section and are documented under [Service Plugins](service-plugins.md).
|
||||
|
||||
## Reloading configuration
|
||||
|
||||
Some configuration can be reloaded without restarting the bot using the **`reload`** command (admin only). Radio/connection settings are not changed by reload; restart the bot for those.
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
# FAQ
|
||||
|
||||
Frequently asked questions about meshcore-bot.
|
||||
|
||||
## Installation and upgrades
|
||||
|
||||
### Will using `--upgrade` on the install script move over the settings file as well as upgrade the bot?
|
||||
|
||||
No. The install script **never overwrites** an existing `config.ini` in the installation directory. Whether you run it with or without `--upgrade`, your current `config.ini` is left as-is. So your settings are preserved when you upgrade.
|
||||
|
||||
With `--upgrade`, the script also updates the service definition (systemd unit or launchd plist) and reloads the service so the new code and any changed paths take effect.
|
||||
|
||||
### If I don't use `--upgrade`, is the bot still upgraded after `git pull` and running the install script?
|
||||
|
||||
**Partially.** The script still copies repo files into the install directory and only overwrites when the source file is newer (and it never overwrites `config.ini`). So the **installed code** is upgraded.
|
||||
|
||||
Without `--upgrade`, the script does *not* update the service file (systemd/launchd) and does *not* reload the service. So:
|
||||
|
||||
- New bot code is on disk.
|
||||
- The running service may still be using the old code until you restart it (e.g. `sudo systemctl restart meshcore-bot` or equivalent).
|
||||
- Any changes to the service definition (paths, user, etc.) in the script are not applied.
|
||||
|
||||
**Recommendation:** Use `./install-service.sh --upgrade` after `git pull` when you want to upgrade; that updates files, dependencies, and the service, and reloads the service, while keeping your `config.ini` intact.
|
||||
@@ -0,0 +1,82 @@
|
||||
# Getting Started
|
||||
|
||||
Get meshcore-bot running on your machine in a few minutes.
|
||||
|
||||
## Requirements
|
||||
|
||||
- **Python 3.7+**
|
||||
- **MeshCore-compatible device** (Heltec V3, RAK Wireless, etc.)
|
||||
- **Connection**: USB cable, BLE, or TCP/IP to the device
|
||||
|
||||
## Quick start (development)
|
||||
|
||||
1. **Clone and install**
|
||||
|
||||
```bash
|
||||
git clone https://github.com/agessaman/meshcore-bot.git
|
||||
cd meshcore-bot
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
2. **Configure**
|
||||
|
||||
Copy an example config and edit with your connection and bot settings:
|
||||
|
||||
- **Full config** (all commands and options):
|
||||
```bash
|
||||
cp config.ini.example config.ini
|
||||
```
|
||||
- **Minimal config** (core commands only: ping, test, path, prefix, multitest):
|
||||
```bash
|
||||
cp config.ini.minimal-example config.ini
|
||||
```
|
||||
|
||||
Edit `config.ini`: set at least `[Connection]` (serial/BLE/TCP) and `[Bot]` (e.g. `bot_name`).
|
||||
|
||||
3. **Run**
|
||||
|
||||
```bash
|
||||
python3 meshcore_bot.py
|
||||
```
|
||||
|
||||
## Production deployment
|
||||
|
||||
### Systemd service
|
||||
|
||||
Run the bot as a system service on Linux:
|
||||
|
||||
```bash
|
||||
sudo ./install-service.sh
|
||||
sudo nano /opt/meshcore-bot/config.ini # configure
|
||||
sudo systemctl start meshcore-bot
|
||||
sudo systemctl status meshcore-bot
|
||||
```
|
||||
|
||||
See [SERVICE-INSTALLATION.md](https://github.com/agessaman/meshcore-bot/blob/main/SERVICE-INSTALLATION.md) for full steps.
|
||||
|
||||
### Docker
|
||||
|
||||
Run in a container with Docker Compose:
|
||||
|
||||
```bash
|
||||
mkdir -p data/{config,databases,logs,backups}
|
||||
cp config.ini.example data/config/config.ini
|
||||
# Edit data/config/config.ini and set paths to /data/... (see [Docker](DOCKER.md))
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
See [Docker deployment](DOCKER.md) for paths, serial access, and troubleshooting.
|
||||
|
||||
### NixOS
|
||||
|
||||
Use the flake:
|
||||
|
||||
```nix
|
||||
meshcore-bot.url = "github:agessaman/meshcore-bot/";
|
||||
```
|
||||
|
||||
## Next steps
|
||||
|
||||
- **[Command Reference](COMMANDS.md)** — Full command reference (wx, aqi, sun, path, prefix, etc.)
|
||||
- **[README](https://github.com/agessaman/meshcore-bot/blob/main/README.md)** — Features, keywords, configuration overview
|
||||
- **Guides** (sidebar) — Path command, repeater commands, feeds, weather service, Discord bridge, map uploader, packet capture
|
||||
+29
-19
@@ -1,29 +1,39 @@
|
||||
---
|
||||
layout: default
|
||||
title: meshcore-bot Documentation
|
||||
---
|
||||
|
||||
# meshcore-bot Documentation
|
||||
|
||||
Documentation for the MeshCore bot: setup, configuration, commands, and services.
|
||||
|
||||
**New to the project?** Start with [Getting Started](getting-started.md).
|
||||
|
||||
## Project overview
|
||||
|
||||
- [README]({{ site.repository_url }}/blob/{{ site.repository_branch }}/README.md) – Getting started, installation, quick start
|
||||
- [COMMANDS.md]({{ site.repository_url }}/blob/{{ site.repository_branch }}/COMMANDS.md) – Full command reference
|
||||
- [DOCKER.md]({{ site.repository_url }}/blob/{{ site.repository_branch }}/DOCKER.md) – Docker deployment
|
||||
- [SERVICE-INSTALLATION.md]({{ site.repository_url }}/blob/{{ site.repository_branch }}/SERVICE-INSTALLATION.md) – Systemd service setup
|
||||
- [WEB_VIEWER.md]({{ site.repository_url }}/blob/{{ site.repository_branch }}/WEB_VIEWER.md) – Web viewer module
|
||||
- [README](https://github.com/agessaman/meshcore-bot/blob/main/README.md) – Getting started, installation, quick start
|
||||
- [Command Reference](COMMANDS.md) – Full command reference
|
||||
- [Docker deployment](DOCKER.md) – Docker deployment
|
||||
- [SERVICE-INSTALLATION.md](https://github.com/agessaman/meshcore-bot/blob/main/SERVICE-INSTALLATION.md) – Systemd service setup
|
||||
- [Web Viewer](WEB_VIEWER.md) – Web viewer module
|
||||
|
||||
## Guides (this site)
|
||||
## Configuration
|
||||
|
||||
| Document | Description |
|
||||
|----------|-------------|
|
||||
| [Path Command Configuration](PATH_COMMAND_CONFIG.html) | Path command presets and options |
|
||||
| [Repeater Commands](REPEATER_COMMANDS.html) | Repeater management DM commands |
|
||||
| [Feed Management](FEEDS.html) | RSS/REST feeds and posting to channels |
|
||||
| [Weather Service](WEATHER_SERVICE.html) | Scheduled weather and alerts |
|
||||
| [Discord Bridge](DISCORD_BRIDGE.html) | One-way bridge to Discord |
|
||||
| [Map Uploader](MAP_UPLOADER.html) | Uploading to map.meshcore.dev |
|
||||
| [Packet Capture](PACKET_CAPTURE.html) | Packet capture and MQTT |
|
||||
| [Documentation site setup](DOCS_SITE.html) | How to enable and configure this GitHub Pages site |
|
||||
| [Configuration](configuration.md) | config.ini structure and command options |
|
||||
| [Path Command](PATH_COMMAND_CONFIG.md) | Path command presets and tuning |
|
||||
|
||||
## Guides
|
||||
|
||||
| Document | Description |
|
||||
|----------|-------------|
|
||||
| [Repeater Commands](REPEATER_COMMANDS.md) | Repeater management DM commands |
|
||||
| [Feed Management](FEEDS.md) | RSS/REST feeds and posting to channels |
|
||||
| [Web Viewer](WEB_VIEWER.md) | Web-based data viewer and API |
|
||||
| [Documentation site setup](DOCS_SITE.md) | How to build and deploy this site |
|
||||
|
||||
## Service Plugins
|
||||
|
||||
| Document | Description |
|
||||
|----------|-------------|
|
||||
| [Service Plugins overview](service-plugins.md) | Enable and configure background services |
|
||||
| [Discord Bridge](DISCORD_BRIDGE.md) | One-way bridge to Discord |
|
||||
| [Packet Capture](PACKET_CAPTURE.md) | Packet capture and MQTT |
|
||||
| [Map Uploader](MAP_UPLOADER.md) | Uploading to map.meshcore.dev |
|
||||
| [Weather Service](WEATHER_SERVICE.md) | Scheduled weather and alerts |
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
# Service Plugins
|
||||
|
||||
Service plugins extend the bot with background services that run alongside the main message loop. Each can be enabled or disabled in `config.ini`.
|
||||
|
||||
| Plugin | Description |
|
||||
|--------|-------------|
|
||||
| [Discord Bridge](DISCORD_BRIDGE.md) | One-way webhook bridge to post mesh messages to Discord channels |
|
||||
| [Packet Capture](PACKET_CAPTURE.md) | Capture packets from the mesh and publish them to MQTT brokers |
|
||||
| [Map Uploader](MAP_UPLOADER.md) | Upload node advertisements to [map.meshcore.dev](https://map.meshcore.dev) for network visualization |
|
||||
| [Weather Service](WEATHER_SERVICE.md) | Scheduled weather forecasts, weather alerts, and lightning detection |
|
||||
|
||||
## Enabling a plugin
|
||||
|
||||
1. Add or edit the plugin's section in `config.ini` (see each plugin's doc for options).
|
||||
2. Set `enabled = true` for that plugin.
|
||||
3. Restart the bot.
|
||||
|
||||
Some plugins require additional configuration (API keys, webhook URLs, etc.) before they will run successfully.
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
# Material for MkDocs - meshcore-bot documentation
|
||||
site_name: Meshcore Bot Documentation
|
||||
site_description: Documentation for the MeshCore bot and its services
|
||||
site_url: https://agessaman.github.io/meshcore-bot/
|
||||
|
||||
repo_name: meshcore-bot
|
||||
repo_url: https://github.com/agessaman/meshcore-bot
|
||||
edit_uri: edit/main/docs/
|
||||
|
||||
theme:
|
||||
name: material
|
||||
language: en
|
||||
palette:
|
||||
- scheme: default
|
||||
primary: indigo
|
||||
accent: cyan
|
||||
toggle:
|
||||
icon: material/brightness-7
|
||||
name: Switch to dark mode
|
||||
- scheme: slate
|
||||
primary: indigo
|
||||
accent: cyan
|
||||
toggle:
|
||||
icon: material/brightness-4
|
||||
name: Switch to light mode
|
||||
features:
|
||||
- navigation.instant
|
||||
- navigation.tracking
|
||||
- navigation.tabs
|
||||
- navigation.sections
|
||||
- toc.integrate
|
||||
- content.code.copy
|
||||
|
||||
plugins:
|
||||
- search
|
||||
|
||||
markdown_extensions:
|
||||
- pymdownx.superfences
|
||||
- pymdownx.highlight:
|
||||
anchor_linenums: true
|
||||
- pymdownx.tabbed:
|
||||
alternate_style: true
|
||||
- tables
|
||||
- attr_list
|
||||
- md_in_html
|
||||
|
||||
nav:
|
||||
- Home: index.md
|
||||
- Getting Started: getting-started.md
|
||||
- FAQ: faq.md
|
||||
- Command Reference: COMMANDS.md
|
||||
- Configuration:
|
||||
- Overview: configuration.md
|
||||
- Path Command: PATH_COMMAND_CONFIG.md
|
||||
- Web Viewer: WEB_VIEWER.md
|
||||
- Service Plugins:
|
||||
- Overview: service-plugins.md
|
||||
- Discord Bridge: DISCORD_BRIDGE.md
|
||||
- Packet Capture: PACKET_CAPTURE.md
|
||||
- Map Uploader: MAP_UPLOADER.md
|
||||
- Weather Service: WEATHER_SERVICE.md
|
||||
- Feed Management: FEEDS.md
|
||||
@@ -37,6 +37,9 @@ dependencies = [
|
||||
"pynacl>=1.5.0",
|
||||
]
|
||||
|
||||
[project.optional-dependencies]
|
||||
docs = ["mkdocs-material>=9.0.0"]
|
||||
|
||||
[project.scripts]
|
||||
meshcore-bot = "meshcore_bot:main"
|
||||
meshcore-viewer = "modules.web_viewer.app:main"
|
||||
|
||||
Reference in New Issue
Block a user