Game Server Watcher

applications
Report Issue

A simple discord/telegram/slack bot that can be hosted on a free service to monitor your game servers and players in style. ๐Ÿ˜Ž

Contributors:
README

Game Server Watcher

From Github

A simple discord/telegram/slack bot that can be hosted on a free service to monitor your game servers and players in style. ๐Ÿ˜Ž

Screenshots

Running the bot

Refer to the wiki on how to acquire tokens for:

Server Ports

GSW Control Panel requires one port for http traffic.
(It can be any port.)

Port default
Web 8081
Docker Images (1)
Name Image
Node.js 20 ghcr.io/ptero-eggs/yolks:nodejs_20
Startup Command
env PORT={{SERVER_PORT}} /usr/local/bin/node /home/container/dist/server.js
Variables (9)

SECRET

Admin secret

Environment:
SECRET
Default:
None
User Viewable:
โŒ
User Editable:
โŒ
Rules:
required|string|min:8|max:255

DATA_PATH

Writable folder for data storage

Environment:
DATA_PATH
Default:
./data/
User Viewable:
โŒ
User Editable:
โŒ
Rules:
required|string|min:1|max:255

REFRESH_TIME_MINUTES

Game server info refresh interval in minutes

Environment:
REFRESH_TIME_MINUTES
Default:
2
User Viewable:
โŒ
User Editable:
โŒ
Rules:
required|integer|min:1

DISCORD_BOT_TOKEN

Discord bot token

Environment:
DISCORD_BOT_TOKEN
Default:
None
User Viewable:
โŒ
User Editable:
โŒ
Rules:
nullable|string

TELEGRAM_BOT_TOKEN

Telegram bot token

Environment:
TELEGRAM_BOT_TOKEN
Default:
None
User Viewable:
โŒ
User Editable:
โŒ
Rules:
nullable|string

STEAM_WEB_API_KEY

Steam web API key

Environment:
STEAM_WEB_API_KEY
Default:
None
User Viewable:
โŒ
User Editable:
โŒ
Rules:
nullable|string

Debug Mode

Enable or disable debug mode.

Environment:
DBG
Default:
0
User Viewable:
โŒ
User Editable:
โŒ
Rules:
required|in:0,1

SLACK_BOT_TOKEN

Slack bot token

Environment:
SLACK_BOT_TOKEN
Default:
None
User Viewable:
โŒ
User Editable:
โŒ
Rules:
nullable|string

SLACK_APP_TOKEN

Slack app token

Environment:
SLACK_APP_TOKEN
Default:
None
User Viewable:
โŒ
User Editable:
โŒ
Rules:
nullable|string
Installation Script
Container: node:20-bookworm-slim
Entrypoint: bash
#!/bin/bash

apt-get update && apt-get install ca-certificates git -yq --no-install-suggests --no-install-recommends --allow-downgrades --allow-remove-essential --allow-change-held-packages


cd /mnt/server

git config --global --add safe.directory /mnt/server
git clone https://github.com/a-sync/game-server-watcher.git . || git pull


npm install --no-save && npm update gamedig && npm run build
npm prune --omit=dev


## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"