Telegram бот с AI-возможностями: генерация текста, изображений, игр, перевод и саммаризация.
- 🤖 AI-ассистент - ответы через Gemini/OpenRouter/Pollinations
- 🎨 Генерация изображений - через Gemini и Pollinations
- 🎮 Генерация игр - создание 2D/3D игр на JavaScript
- 🌍 Переводчик - быстрый перевод на 9 языков
- 📝 Саммаризация - краткое содержание текстов и статей
- 📊 Статистика - отслеживание использования
- 🔒 Безопасность - rate limiting, валидация, защита от атак
-
Создай Redis на Upstash или Redis Cloud
-
Создай бота через @BotFather
-
Получи API ключи:
- Google AI Studio для Gemini
- OpenRouter (опционально)
- Pollinations (опционально)
-
Форкни репозиторий и подключи к Render
-
Настрой переменные окружения (см.
.env.example) -
Деплой!
Обязательные:
TG_TOKEN- токен Telegram ботаREDIS_URL- URL Redis (используйrediss://для SSL)ADMIN_ID- твой Telegram IDFLASK_SECRET_KEY- случайный ключ (генерируй черезsecrets.token_hex(32))GEMINI_API_KEY_1- Gemini API ключWEBAPP_BASE_URL- URL твоего приложения на Render
Опциональные:
GEMINI_API_KEY_2- второй ключ для ротацииOPENROUTER_API_KEY- для OpenRouter моделейPOLLINATIONS_API_KEY- для приватных запросов
/tr [язык] текст- перевести текст/sum текст/url- краткое содержание/draw описание- нарисовать изображение/game идея- сгенерировать игру/stats- статистика использования/settings- настройки/help- все команды
✅ Шифрование PII - персональные данные (имена, username) шифруются AES-256 (Fernet)
✅ Псевдонимизация - user_id хэшируются HMAC-SHA256, невозможно восстановить без соли
✅ Минимизация данных - хранятся только необходимые данные
✅ Право на удаление - команда /delete_data для полного удаления данных
✅ Rate limiting (10 req/min, 100 req/hour)
✅ Login rate limiting (5 попыток/мин, 20/час)
✅ Валидация всех входных данных
✅ Защита от timing attacks (constant-time comparison)
✅ Защита от path traversal
✅ Защита от code injection
✅ Secure cookies (HTTPONLY, SECURE, SAMESITE)
✅ Redis URL валидация
✅ Webhook secret token verification
Для полной защиты данных добавь в переменные окружения:
# Соль для хэширования ID
DATA_HASH_SALT=<64 символа hex>
# Ключ шифрования персональных данных
DATA_ENCRYPTION_KEY=<Fernet ключ или пароль>
С шифрованием:
- Злоумышленник видит только зашифрованные данные и хэши
- Невозможно восстановить реальные user_id, имена, username
- Данные бесполезны без ключей шифрования
Без шифрования:
- Все данные в открытом виде
- Риск штрафов по GDPR/ФЗ-152
# Установка зависимостей
pip install -r requirements.txt
# Настройка .env
cp .env.example .env
# Отредактируй .env
# Запуск
python -m app.mainЭтот бот использует AI-модели для генерации контента (текст, изображения, игры). Разработчик НЕ НЕСЕТ ОТВЕТСТВЕННОСТИ за:
- Содержание сгенерированного контента
- Точность переводов и саммаризаций
- Работоспособность сгенерированных игр
- Любые последствия использования бота
Используя этот бот, вы соглашаетесь с тем, что:
- Весь контент генерируется AI и может содержать ошибки
- Вы используете бота на свой страх и риск
- Разработчик не контролирует и не модерирует генерируемый контент
- Вы несете полную ответственность за использование сгенерированного контента
MIT License - используй на свой страх и риск изменённая