Telegram боты
Скрипт тг бота предложки
O
Автор:@okroshka3000
Подробное описание
Полная информация о ресурсе, функциональности и возможностях
📱 Telegram Бот для Модерации Контента Канала
📋 Описание проекта
Это Telegram бот, созданный для управления пользовательским контентом на канале. Бот позволяет подписчикам канала отправлять свои идеи, предложения и контент, который проходит модерацию администраторами перед публикацией на канале.
🎯 Основное назначение
Бот служит посредником между подписчиками и каналом, обеспечивая:
- Прием сообщений и изображений от пользователей
- Модерацию контента администраторами
- Автоматическую публикацию одобренного контента в канал
- Обратную связь с пользователями о статусе их предложений
🏗️ Структура проекта
channel/
│
├── bot/ # Основная конфигурация бота
│ ├── bot.py # Инициализация бота, загрузка токенов
│ └── main.py # Точка входа, запуск бота
│
├── handlers/ # Обработчики событий
│ ├── handlers.py # Пользовательские команды и сообщения
│ ├── callbacks.py # Обработка callback-кнопок админов
│ └── admin.py # Уведомления администраторам
│
├── database/ # Работа с базой данных
│ ├── users.py # Класс управления SQLite БД
│ ├── functions.py # Вспомогательные функции (клавиатуры, изображения)
│ └── constants.py # Текстовые константы
│
├── data/ # Данные приложения
│ ├── .env # Переменные окружения (токены, ID)
│ └── data.db # SQLite база данных
│
└── requirements.txt # Зависимости проекта
🔧 Технологии
- Python 3.x
- aiogram 3.20.0 - асинхронный фреймворк для Telegram Bot API
- SQLite3 - база данных для хранения сообщений
- Pillow 11.2.1 - обработка изображений
- python-dotenv 1.1.0 - управление переменными окружения
⚙️ Функциональность
Для пользователей:
- Отправка текстовых сообщений - пользователи могут отправлять текст с идеями
- Отправка изображений - возможность отправки фото с подписью
- Получение номера заявки - каждому сообщению присваивается уникальный номер
- Уведомления о статусе - пользователи получают ответ о принятии/отклонении
Для администраторов:
- Просмотр предложений - все сообщения приходят администраторам
- Модерация контента - кнопки "Принять" / "Отказать"
- Автоматическая публикация - одобренный контент сразу публикуется в канал
- Защита от дублирования - если один админ уже обработал заявку, другие получают уведомление
💾 База данных
Структура таблицы Messages:
USER_ID- ID пользователя TelegramNum- уникальный номер сообщенияText- текст сообщенияImage- изображение в base64 (или '-' если нет)Processed- статус обработки (0 - не обработано, 1 - принято, 2 - отклонено)Name_USER- имя пользователя
🚀 Запуск проекта
- Установите зависимости:
pip install -r requirements.txt
- Создайте файл
data/.envс переменными:
API_TELEGRAM=ваш_токен_бота
ADMINS=id1_id2_id3
CHANNEL_ID=id_канала
- Инициализируйте базу данных (при первом запуске):
python database/users.py
- Запустите бота:
python bot/main.py
🛡️ Правила модерации
Контент НЕ будет принят, если содержит:
- Запрещенный законом контент (наркотики, экстремизм, расизм)
- Материалы сексуального характера
- Рекламу
- Нецензурную лексику
📝 Рабочий процесс
- Пользователь отправляет сообщение/фото боту
- Сообщению присваивается уникальный номер
- Все администраторы получают уведомление с кнопками
- Админ принимает решение (Принять/Отказать)
- Пользователь получает уведомление о решении
- При принятии - контент автоматически публикуется в канал с пометкой "Прислано подписчиком"
🔐 Безопасность
- Доступ к функциям администрирования только для ID из списка ADMINS
- Проверка прав доступа на каждом этапе
- Защита от повторной обработки одного сообщения несколькими админами
Скачать ресурс
Версия 1.0.0
Размер файлов:5.7 KB
Статистика
0
Скачиваний
0
В избранном
Опубликован
...Обновлен
...Загрузка комментариев...