🚀 WhitelistInTelegram
Add players to your server's whitelist seamlessly and secure player access directly from Telegram.
WhitelistInTelegram is a lightweight, robust, and modern solution that bridges your Minecraft server with a Telegram Bot. It allows players to safely register themselves on the whitelist by simply sending their nickname to a designated Telegram chat, private message (DM), or a specific group topic. Perfect for vanilla, SMP, and cross-play servers!
✨ Features🔗
- 🔗 Fully Automated Whitelisting — Players just type their nickname in Telegram, and the bot automatically executes the whitelist command.
- 👥 Geyser & Floodgate Support — Automatically handles space-to-underscore conversions (e.g., Player Name \(\rightarrow\) Player_Name) for seamless Bedrock edition integration.
- 📂 Group Topic (Threads) Compatibility — Restrict the bot to look for nicknames only inside a specific forum topic/thread within your Telegram group.
- 💬 Smart /id & /start Commands — Type /id in any chat or topic, and the bot replies with copiable Chat ID and Thread ID.
- ⚡ Seamless Dynamic Reload — Configuration changes via /wit reload apply instantly in memory without dropping the Telegram connection or causing long-polling errors.
- 🌍 Full Localization (EN/RU) — Every message in the console and inside Telegram is 100% customizable via en_US.yml and ru_RU.yml.
- 📦 Zero External Server Dependencies — Works out of the box with your server software.
⚙️ Compatibility
Minecraft Versions
1.21 – 1.21.11
Server Software
Paper | Purpur | Spigot | Bukkit
🎮 Commands
| Command |
Description |
/wit |
The plugin's main command; displays a list of available commands. |
/wit reload |
Reloads the plugin configuration and language files safely. |
🔑 Permissions
| Permission |
Default |
Description |
| wit.wit |
OP |
Allows access to the main command and basic help message (good for future subcommands expansion). |
| wit.reload |
OP |
Allows reloading the plugin configuration and language settings. |
⚙️ Configuration & Customization
The plugin generates a clean configuration structure along with customizable language files.
config.yml
# ╔══════════════════════════════════════════════╗
# ║ WhitelistInTelegram ║
# ║ by Cuamp ║
# ╠══════════════════════════════════════════════╣
# ║ Version : 1.9 ║
# ║ Author : Cuamp, Zontik ║
# ║ TG : @zontfamily ║
# ╚══════════════════════════════════════════════╝
# [en] The language of the plugin. Files are located in the "lang" folder (without .yml extension).
# [ru] Язык плагина. Файлы находятся в папке "lang" (указывать без расширения .yml).
lang: "en_US"
# [en] Token of your Telegram bot received from @BotFather.
# [ru] Токен вашего Telegram бота, полученный от @BotFather.
bot-token: "YOUR_TELEGRAM_BOT_TOKEN"
# [en] Chat ID (for groups it usually starts with -100, for private chat with bot it is positive number).
# [ru] ID чата (для групп обычно начинается с -100, для личного чата с ботом - положительное число).
chat-id: -1001234567890
# [en] Thread/Topic ID inside a supergroup.
# Set -1 if you want to use regular group, private chat (DM) or general topic.
# [ru] ID темы/топика внутри супергруппы.
# Укажите -1, если используете обычную группу, личный чат с ботом или общую тему (General).
thread-id: -1
# [en] Command execution template. %player% will be replaced by nickname.
# [ru] Шаблон выполнения команды. %player% будет автоматически заменен на никнейм.
command-template: "whitelist add %player%"
📋 Customizing Language Files (lang/en_US.yml)
You can use specialized placeholders and Telegram's Markdown ( `for copiable text, *for bold, _for italic) to completely change the bot's appearance in Telegram:
# =========================================================================
# WhitelistInTelegram Translation File (English)
#
# PLACEHOLDERS EXPLANATION:
# %player% - Returns the Minecraft player's nickname.
# %chat_id% - Returns the Telegram Chat ID.
# %thread_id% - Returns the Telegram Topic (Thread) ID, or -1 if none.
# =========================================================================
# --- Console & Chat Messages ---
prefix: "[WhitelistInTelegram] "
bot-started: "Telegram bot has been successfully started!"
bot-stopped: "Telegram bot has been stopped."
invalid-nickname: "Error: Received invalid nickname from Telegram: %player%"
player-added: "Player %player% has been successfully added to the whitelist!"
plugin-reloaded: "Plugin configuration and languages have been reloaded!"
no-permission: "You do not have permission to execute this command!"
# --- Telegram Bot Responses ---
tg-start-message: "👋 *Hello!* Here is your chat information:\n\n• Chat ID (copiable): `%chat_id%`\n• Topic ID (copiable): `%thread_id%`\n\n_Copy these values and paste them into your config.yml!_"
tg-player-added: "✅ Player %player% has been successfully added to the whitelist!"
tg-invalid-nickname: "❌ Error: Invalid Minecraft nickname: %player%"
❤️ Why WhitelistInTelegram?
Very lightweight & fast — Written with optimal async scheduler tasks to prevent main thread ticks lagging.
Fault-Tolerant (Auto-Reconnect) — If Telegram servers lag or internet blinks, the bot safely reconnects on its own without spamming or crashing your game server.
No Markdown Parsing Crashes — Safely sanitizes nickname formatting characters (_ and *) so Bedrock/Java names never break Telegram's API rendering.
Perfect for Bedrock/Java Crossplay — Makes vanilla whitelisting completely hands-free for admins.
💬 Stay Updated
Follow the project for updates, announcements, and future plugins.
Telegram Channel:
https://t.me/zontfamily