diff --git a/README.md b/README.md index 94682d14..2992711c 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,7 @@ If you are reading this it looks like you are looking to add an egg to your serv * [CorpBot](/bots/discord/corpbot) Python * [Dynamica](/bots/discord/dynamica) Node JS * [fragbot](/bots/discord/fragbot) Golang +* [Game Server Watcher](/bots/discord/game-server-watcher) Node JS * [JMusicBot](/bots/discord/jmusicbot) Java * [Muse](/bots/discord/muse) Node JS * [parkertron](/bots/discord/parkertron) Golang diff --git a/bots/discord/README.md b/bots/discord/README.md index 1793f497..070b5148 100644 --- a/bots/discord/README.md +++ b/bots/discord/README.md @@ -22,6 +22,11 @@ A very clumsy python bot for discord [fragforce/fragbot](https://github.com/fragforce/fragbot) The bot that runs as the fragforce `@Fragbot` offering looking-for-group services for now +### [Game Server Watcher](game-server-watcher) + +[a-sync/game-server-watcher](https://github.com/a-sync/game-server-watcher) +A simple discord/telegram/slack bot that can be hosted on a free service to monitor your game servers and players in style. 😎 + ### [JMusicBot](jmusicbot) [jagrosh/MusicBot](https://github.com/jagrosh/MusicBot) diff --git a/bots/discord/game-server-watcher/README.md b/bots/discord/game-server-watcher/README.md new file mode 100644 index 00000000..5134102b --- /dev/null +++ b/bots/discord/game-server-watcher/README.md @@ -0,0 +1,22 @@ +# Game Server Watcher + +## From [Github](https://github.com/a-sync/game-server-watcher#readme) +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: + * [steam](https://github.com/a-sync/game-server-watcher/wiki/Steam-Web-API-key) + * [discord](https://github.com/a-sync/game-server-watcher/wiki/Discord-bot-token) + * [telegram](https://github.com/a-sync/game-server-watcher/wiki/Telegram-bot-token) + * [slack](https://github.com/a-sync/game-server-watcher/wiki/Slack-bot-token) + +## Server Ports +GSW Control Panel requires one port for http traffic. +(It can be any port.) + +| Port | default | +|---------|---------| +| Web | 8081 | diff --git a/bots/discord/game-server-watcher/egg-game-server-watcher.json b/bots/discord/game-server-watcher/egg-game-server-watcher.json new file mode 100644 index 00000000..47cbaee8 --- /dev/null +++ b/bots/discord/game-server-watcher/egg-game-server-watcher.json @@ -0,0 +1,122 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v2", + "update_url": null + }, + "exported_at": "2023-10-24T16:33:47+00:00", + "name": "Game Server Watcher", + "author": "a-sync@devs.space", + "description": "A simple discord\/telegram\/slack bot that can be hosted on a free service to monitor your game servers and players in style. \ud83d\ude0e", + "features": null, + "docker_images": { + "Node.js 20": "ghcr.io\/parkervcp\/yolks:nodejs_20" + }, + "file_denylist": [], + "startup": "env PORT={{SERVER_PORT}} \/usr\/local\/bin\/node \/home\/container\/dist\/server.js", + "config": { + "files": "{}", + "startup": "{\r\n \"done\": \"starting loop...\"\r\n}", + "logs": "{}", + "stop": "^^C" + }, + "scripts": { + "installation": { + "script": "#!\/bin\/bash\r\napt-get update && apt-get install ca-certificates git -yq --no-install-suggests --no-install-recommends --allow-downgrades --allow-remove-essential --allow-change-held-packages\r\ncd \/mnt\/server\r\ngit config --global --add safe.directory \/mnt\/server\r\ngit clone https:\/\/github.com\/a-sync\/game-server-watcher.git . || git pull\r\nnpm install && npm run build\r\nnpm prune --omit=dev", + "container": "node:20-bullseye-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "SECRET", + "description": "Admin secret", + "env_variable": "SECRET", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|min:8|max:255", + "field_type": "text" + }, + { + "name": "DATA_PATH", + "description": "Writable folder for data storage", + "env_variable": "DATA_PATH", + "default_value": ".\/data\/", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|min:1|max:255", + "field_type": "text" + }, + { + "name": "REFRESH_TIME_MINUTES", + "description": "Game server info refresh interval in minutes", + "env_variable": "REFRESH_TIME_MINUTES", + "default_value": "2", + "user_viewable": true, + "user_editable": true, + "rules": "required|integer|min:1", + "field_type": "text" + }, + { + "name": "DISCORD_BOT_TOKEN", + "description": "Discord bot token", + "env_variable": "DISCORD_BOT_TOKEN", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string", + "field_type": "text" + }, + { + "name": "TELEGRAM_BOT_TOKEN", + "description": "Telegram bot token", + "env_variable": "TELEGRAM_BOT_TOKEN", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string", + "field_type": "text" + }, + { + "name": "STEAM_WEB_API_KEY", + "description": "Steam web API key", + "env_variable": "STEAM_WEB_API_KEY", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string", + "field_type": "text" + }, + { + "name": "Debug Mode", + "description": "Enable or disable debug mode.", + "env_variable": "DBG", + "default_value": "0", + "user_viewable": true, + "user_editable": true, + "rules": "required|in:0,1", + "field_type": "text" + }, + { + "name": "SLACK_BOT_TOKEN", + "description": "Slack bot token", + "env_variable": "SLACK_BOT_TOKEN", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string", + "field_type": "text" + }, + { + "name": "SLACK_APP_TOKEN", + "description": "Slack app token", + "env_variable": "SLACK_APP_TOKEN", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string", + "field_type": "text" + } + ] +} \ No newline at end of file