https://github.com/mfiscus/ref-bot
A Discord bot that provides real-time status information for amateur radio reflectors. Supports reflectors running mfiscus's URFD API or the default MREFD API bundled with KC1AWV's gomrefdash.
| Command | Description |
|---|---|
/status | Reflector operational status and uptime |
/lastheard | Last 5 stations heard on the reflector |
/peers | Interlinked peer reflectors |
/links | Repeaters currently linked to the reflector |
All responses are ephemeral (visible only to the user who ran the command).
Copy config.json-example to config.json and fill in your values:
{
"token": "your-bot-token",
"clientId": "your-application-id",
"guildId": "your-server-id",
"icon": "https://example.com/your-icon.png",
"url": "https://your-reflector-dashboard-url"
}
| Field | Description |
|---|---|
token | Discord bot token (from the Bot section of your application) |
clientId | Discord application ID (from General Information) |
guildId | Discord server ID (right-click your server → Copy Server ID) |
icon | URL to an image used as the embed author icon |
url | Base URL of your reflector dashboard (no trailing slash) |
services:
ref-bot:
image: mfiscus/ref-bot:latest
container_name: ref-bot
volumes:
- /opt/ref-bot:/config
restart: unless-stopped
Place your config.json at /opt/ref-bot/config.json on the host, then:
docker compose up -d
npm install
node deploy-commands.js # register slash commands with Discord (run once)
node index.js
Note:
deploy-commands.jsonly needs to be run when adding or changing slash commands.
npm install
npx eslint . # lint
node index.js # run
Pre-built multi-architecture images (linux/amd64, linux/arm64) are published automatically to hub.docker.com/r/mfiscus/ref-bot on every push to main, on tagged releases, and on a monthly schedule to pick up base image updates.
Content type
Image
Digest
sha256:4d41c3bbe…
Size
414 MB
Last updated
2 months ago
docker pull mfiscus/ref-bot