Sign inSign up

mfiscus/ref-bot

By mfiscus

•Updated 2 months ago

Image
0

2.4K

mfiscus/ref-bot repository overview

https://github.com/mfiscus/ref-bot⁠

⁠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⁠.

⁠Commands

CommandDescription
/statusReflector operational status and uptime
/lastheardLast 5 stations heard on the reflector
/peersInterlinked peer reflectors
/linksRepeaters currently linked to the reflector

All responses are ephemeral (visible only to the user who ran the command).

⁠Prerequisites

  • A Discord application and bot token — create one at discord.com/developers⁠
  • A running URF or MREF reflector with a compatible JSON API
  • Node.js 22+ (for local deployment) or Docker

⁠Configuration

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"
}
FieldDescription
tokenDiscord bot token (from the Bot section of your application)
clientIdDiscord application ID (from General Information)
guildIdDiscord server ID (right-click your server → Copy Server ID)
iconURL to an image used as the embed author icon
urlBase URL of your reflector dashboard (no trailing slash)

⁠Deployment

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
⁠Local
npm install
node deploy-commands.js   # register slash commands with Discord (run once)
node index.js

Note: deploy-commands.js only needs to be run when adding or changing slash commands.

⁠Development

npm install
npx eslint .        # lint
node index.js       # run

⁠Docker Hub

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.

⁠License

GPL-3.0-or-later⁠

Tag summary

Content type

Image

Digest

sha256:4d41c3bbe…

Size

414 MB

Last updated

2 months ago

docker pull mfiscus/ref-bot