feat: add telethon userbot with ban/unban auto-delete

This commit is contained in:
sadtweenk
2026-04-20 16:31:31 +03:00
parent c45da22039
commit d539eab31d
5 changed files with 276 additions and 0 deletions

View File

@@ -1,2 +1,43 @@
# AntiMichaell
Юзербот на `Telethon`, который:
- по команде-ответу добавляет пользователя в список автоудаления;
- удаляет его новые сообщения в любых группах только у вас;
- умеет снимать автоудаление (разбан) для конкретного пользователя.
## Функции
- Команда бана: `/ВБАННАХУЙ` (или `/ВБАННАХУЙ!`, регистр не важен).
- Команда разбана: `/РАЗБАН` (тоже можно с `!`).
- Обе команды работают только как `reply` на сообщение нужного пользователя.
- Список ID хранится в `data/blocked_users.json` и сохраняется между перезапусками.
## Установка
1. Установите Python 3.10+.
2. Создайте и активируйте виртуальное окружение:
- macOS/Linux:
- `python3 -m venv .venv`
- `source .venv/bin/activate`
- Windows (PowerShell):
- `py -m venv .venv`
- `.venv\Scripts\Activate.ps1`
3. Установите зависимости:
- `pip install -r requirements.txt`
4. Создайте `.env` из примера:
- `cp .env.example .env`
5. Заполните `.env`:
- `API_ID` и `API_HASH` берутся на `https://my.telegram.org`
- `SESSION_NAME` можно оставить по умолчанию.
## Запуск
- `python bot.py`
- При первом запуске Telethon попросит номер телефона, код и при необходимости 2FA-пароль.
## Как пользоваться
1. В группе ответьте на сообщение пользователя командой `/ВБАННАХУЙ!`.
2. Юзербот покажет короткую анимацию и добавит ID пользователя в автоудаление.
3. Новые сообщения этого пользователя в группах будут удаляться только у вас.
4. Чтобы отключить автоудаление, ответьте на его сообщение командой `/РАЗБАН`.
## Ограничения
- Удаление "только у вас" работает в формате `best effort` и зависит от ограничений Telegram API.
- Если Telegram ограничивает удаление в конкретном типе чата, бот залогирует ошибку и продолжит работу.