# Telegram Control
> *Control and monitor your Minecraft world over Telegram — right from your phone*
## 📖 What is this?
A client-side Fabric mod (Minecraft 26.2, Kotlin) that hooks your game up to a
Telegram bot. Get pinged when your HP drops, grab a screenshot without
touching your PC, run commands or chat remotely, and keep an eye on things
while you're away from the keyboard.
Fully client-side — install it on your own client and it works whether
you're in singleplayer or on any server, no server-side install needed.
## ✨ Features
- ❤️ Low HP alert — configurable threshold and cooldown
- 💀 Death notification
- ▶️/⏹ Join/leave world notification
- 📸 `/screenshot` (or `/ss`) — screenshot of the current frame, straight to your Telegram chat
- 🎒 `/invscreenshot` — same, but opens your inventory first
- 📶 `/status` — HP, hunger, coordinates, world
- 👥 `/nearby [radius]` — your coordinates + every visible player within range, with name/distance/coordinates
- 🧰 `/inventory` (or `/inv`) — full inventory + armor + off-hand dump
- ✨ `/effects` — active potion effects
- 📡 `/ping` — your ping to the server
- 🛠 `/f3` (or `/debug`) — MC version, mod count, biome, light level, memory usage, world time
- 🚧 `/geofence` — alert when you leave (or return to) a radius around a point
- ⚔️ `/pvpalert` — alert the moment another player gets within range
- 🔧 `/durabilityalert` — alert when your held item or armor is about to break
- ⏱ `/autoscreenshot <minutes>` — periodic auto-screenshot on a timer
- 🕹 `/<command>` — run any Minecraft command remotely, or send plain text straight to in-game chat
- 💬 Echo of in-game chat (and, optionally, server system messages) into Telegram
- 🌐 Bot replies switch between Russian and English automatically — or lock them yourself
- ⚙️ **Full in-game settings screen** via [ModMenu](https://modrinth.com/mod/modmenu) — every option
above, editable with a mouse, no JSON editing required (see below)
## ⚙️ In-game settings screen
If you have ModMenu installed, Telegram Control shows up in your mods list with a config screen
covering every setting the mod has, grouped into sections:
- **Connection** — bot token, bound-chat status, reply language (Auto/RU/EN)
- **Chat & commands** — chat echo, system-message echo, remote command execution, remote chat
- **Alerts** — low HP threshold + cooldown, death alert, join/leave alert, durability alert + threshold
- **Location** — default `/nearby` radius, geofence (center + radius), PvP alert + radius
- **Misc** — auto-screenshot interval
It's a single scrollable page (mouse wheel to scroll, Save/Cancel always pinned at the bottom), so
you can set up the whole mod without ever touching `config/telegram-control.json` by hand. Editing
the JSON directly still works too — the mod hot-reloads it live either way.
## 🎮 Setup guide
1. **Create a bot.** Talk to [@BotFather](https://t.me/BotFather) on Telegram, `/newbot`, grab the token it gives you.
2. **Install the mod** (and optionally [ModMenu](https://modrinth.com/mod/modmenu) for the settings screen) and launch the game once — this generates `config/telegram-control.json`.
3. **Paste your token in.** Either:
- open **Mods → Telegram control → ⚙** in-game and paste it into the **Bot token** field, or
- edit `config/telegram-control.json` directly:
```json
{
"botToken": "123456:ABC-DEF...",
"ownerChatId": 0
}
```
4. **Message your bot on Telegram** (e.g. `/start`) — the mod auto-binds that chat as the owner and
confirms it. Every other chat is ignored from that point on, so only you can control the bot.
5. **Tune it to taste** from the settings screen, or straight in the JSON — changes apply live,
no restart needed.
6. Send `/help` to your bot any time for the full command list.
## 🔢 Compatibility
| Minecraft | Status |
| --------- | ---------- |
| 26.2 | ✅ Tested |
Fabric only. Client-side, so it doesn't need to be on the server. ModMenu is optional — only needed
for the in-game settings screen, everything else works without it.
## 🔒 Security notes
- Never share your bot token or `config/telegram-control.json` — whoever has it can chat and run
commands as you.
- Until `ownerChatId` is bound (it starts at `0`), whoever messages the bot first becomes the owner.
Don't publicize your bot's name until you've bound the chat yourself.
## ❓ FAQ
**Bot isn't responding at all?** Double-check the bot token in the settings screen (or
`config/telegram-control.json`), and that you actually rejoined the world (or restarted) after adding it.
**Told the bot to run a command and nothing happened?** Check **Command execution** in the settings
screen — it might be turned off.
**Alerts aren't firing?** Geofence and PvP alerts are off by default — enable them from the settings
screen, or with their own command, e.g. `/pvpalert on 50`.
**Screenshots failing?** Make sure you're actually loaded into a world; there's nothing to capture
from the main menu.
## 📜 License
Licensed under **CC BY-NC-ND 4.0** — see LICENSE. Credit `raskajanie`, no commercial use,
no redistributing modified versions.