https://github.com/rdner/q3-server-bot
Telegram bot for Quake 3 server announcements and maintenance.
https://github.com/rdner/q3-server-bot
telegram-bot
Last synced: 8 months ago
JSON representation
Telegram bot for Quake 3 server announcements and maintenance.
- Host: GitHub
- URL: https://github.com/rdner/q3-server-bot
- Owner: rdner
- License: mit
- Created: 2020-03-15T13:40:47.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2021-12-12T18:03:06.000Z (over 4 years ago)
- Last Synced: 2025-02-08T23:46:08.289Z (over 1 year ago)
- Topics: telegram-bot
- Language: Go
- Homepage:
- Size: 171 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Quake 3 Server Bot
The purpose of this bot is to make it easier for Quake 3 players to know what's happening on the server.
## Features
This bot sends messages to the given group/channel on Telegram when:
* the Quake 3 server becomes available or unavailable
* players join or leave the Quake 3 server
There is a throttling interval of 3 seconds in which the messages are grouped together, so the bot does not spam the chat much.
Here is an example of the messages from the bot:

## Compatibility
This bot and its parsers are tested with [Challenge ProMode Arena 1.52](https://www.playmorepromode.com/). There is absolutely no warranty it would work with other mods/versions.
## Usage
```
Usage of ./bin/q3serverbot:
-debug
Use this flag if you'd like to see detailed logging output
-q3-password string
The rcon password of the server. You can use 'Q3_PASSWORD' environment variable instead
-q3-server-addr string
Address of the quake server including port. You can use 'Q3_SERVER_ADDR' environment variable instead
-telegram-chat-id string
Unique identifier for the target chat or username of the target channel (in the format @channelusername). You can use 'TELEGRAM_CHAT_ID' environment variable instead.
-telegram-token string
Bot token that you get when you create a Telegram bot. You can use 'TELEGRAM_TOKEN' environment variable instead.
```
## Deployment
* `make` builds the binary in `./bin/q3serverbot`
* `make systemd` prompts some questions interactively and generates a systemd unit file (the service process will run from the current user and from `./bin/q3serverbot` path).
* `make clean` removes the binary and the systemd unit file.
MIT License.
Denis Rechkunov (denis@rdner.de)