Лёгкая библиотека для aiogram: проверка подписки на Telegram-каналы и управление администраторами бота. Простая настройка и интеграция.
Project description
subscribe_check_guard
subscribe_check_guard — это лёгкая библиотека для aiogram, которая упрощает работу с проверкой подписки на Telegram-каналы и управлением администраторами бота.
📌 Badges
📦 Installation
pip install subscribe_check_guard
Usage
from aiogram.types import Message
from aiogram.filters import Command
from subscribe_check_guard import set_channel, check_subscribe
# Добавление нового канала (только для админов)
@dp.message(Command("set_channel"))
@set_channel()
async def add_channel(msg: Message):
pass
# Проверка подписки пользователя на обязательные каналы
@dp.message()
@check_subscribe()
async def handle_message(msg: Message):
await msg.answer("Вы подписаны на все каналы ✅")
🔐 Adding an admin
После установки библиотеки необходимо добавить хотя бы одного администратора:
from subscribe_check_guard import setup_superuser
async def main():
setup_superuser("123456789") # замените на ваш Telegram ID
🛠 Managing admins and channels
from aiogram.types import Message
from aiogram.filters import Command
from subscribe_check_guard import set_admin, del_admin, set_channel, del_channel
# Добавление администратора
@dp.message(Command("set_admin"))
@set_admin()
async def add_admin(msg: Message):
pass
# Удаление администратора
@dp.message(Command("del_admin"))
@del_admin()
async def remove_admin(msg: Message):
pass
# Добавление канала в список обязательных
@dp.message(Command("set_channel"))
@set_channel()
async def add_channel(msg: Message):
pass
# Удаление канала из списка обязательных
@dp.message(Command("del_channel"))
@del_channel()
async def remove_channel(msg: Message):
pass
❕Команды для бота могут быть любыми (это то, что внутри Command()).
🧠 Optional initialization
Если вы хотите вручную загрузить данные из файлов при старте бота:
from subscribe_check_guard import init_storage
# Загружает список админов и каналов в память
init_storage()
⚠️ Для первой версии библиотеки init_storage() вызывается автоматически при импорте, так что этот шаг можно пропустить.
💬 Community / Contributing
Этот проект открыт для сообщества! Если у вас есть идеи по улучшению библиотеки, баги или предложения новых функций, вы можете:
-
Открыть issue на GitHub
-
Создать pull request с вашими изменениями
-
Поделиться своим опытом использования библиотеки
Любая помощь и обратная связь приветствуются! 🙌
📄 License
MIT License © 2025 MuhammadAli Astanaqulov
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file subscribe_check_guard-0.1.0.tar.gz.
File metadata
- Download URL: subscribe_check_guard-0.1.0.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c4fd721b322ef1069a575e5fee88732b29e111ba0c3330df9cf8da208e49ccb7
|
|
| MD5 |
3c8990c17f8c1cf23c39e371cbe1b9c9
|
|
| BLAKE2b-256 |
10bc04428d1486c854296316ba666d2dd7d0a4ab5f01ef5da4cc080091ebb722
|
File details
Details for the file subscribe_check_guard-0.1.0-py3-none-any.whl.
File metadata
- Download URL: subscribe_check_guard-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b2537a8b32ca5ca4d3f5cc7e74516d824ff54828f0d7c7541fd728d492bc64df
|
|
| MD5 |
be09dc5c052c9fe176b0200570a75679
|
|
| BLAKE2b-256 |
f7c9bf98e03a1b7c9c62f314fe476f10eb38450fdb799d96daa5076a69e01e4d
|