9 Commits

Author SHA1 Message Date
9d116a91ab 🔐 Улучшена обработка облачного пароля (Cloud Password)
 УЛУЧШЕНИЯ:
  • Более подробное сообщение при запросе облачного пароля
  • Ясное объяснение, что это именно облачный пароль (2FA)
  • Разъяснение что это НЕ SMS-код и НЕ пароль от почты
  • Инструкции где найти облачный пароль
  • Советы по вводу (учитывается регистр)

📝 СООБЩЕНИЯ:
   Запрос пароля - 15 строк с полным объяснением
   Неверный пароль - рекомендации и способ восстановления
   Ошибка при проверке - сообщение об ошибке

💡 ПОДДЕРЖКА:
  • Восстановительный код (если забыли пароль)
  • Инструкции для мобильного Telegram
  • Чек-лист перед вводом пароля

🚀 ГОТОВНОСТЬ: Полная поддержка 2FA с облачным паролем
2025-12-22 05:17:40 +09:00
8c3631b947 📖 Добавлена документация по 2FA реализации
 Создана подробная документация:
  • 2FA_GUIDE.md - полное руководство (500+ строк)
  • 2FA_IMPLEMENTATION.md - отчет о реализации
  • Обновлены инструкции в боте

📊 Статус реализации 2FA:
   Обработка пароля 2FA (handle_password)
   Различие ошибок (неверный пароль vs другие)
   Поддержка восстановительных кодов
   Улучшенные сообщения об ошибках
   Подробные подсказки для пользователя
   Безопасное обращение с паролями
   Полная документация

🚀 Система полностью готова к 2FA авторизации!
2025-12-21 12:34:10 +09:00
c849866fbd 🔐 Добавлена полная поддержка 2FA авторизации
 Улучшения:
   Расширенная обработка ошибок при вводе пароля 2FA
   Различие между неверным паролем и другими ошибками
   Подробные подсказки для пользователя при ошибках
   Поддержка восстановительных кодов 2FA
   Улучшенное сообщение при запросе пароля 2FA

📖 Документация:
   Создан 2FA_GUIDE.md (подробное руководство)
   Обновлена информация о 2FA в боте (auth_info)
   Добавлены примеры и советы по использованию

🔐 Обработка ошибок:
  • Неверный пароль - ясное сообщение + подсказки
  • Пароль истек - предложение повторить
  • SMS-код истек - инструкция по получению нового
  • Много попыток - информация о ограничениях

📱 Процесс с 2FA:
  1. Номер телефона
  2. SMS-код (5 цифр)
  3. Пароль 2FA (если включена)
  4.  Авторизация успешна

💡 Основные преимущества:
  • Ясные объяснения на каждом этапе
  • Подсказки при забывании пароля
  • Безопасное обращение с паролями (не сохраняются)
  • Поддержка восстановительных кодов
2025-12-21 12:33:29 +09:00
b4f86a33cb 🚀 Интерактивная авторизация - завершено и протестировано
 Достижения:
   Авторизация полностью в боте, без терминала
   Все 7 функций авторизации реализованы
   Интеграция в меню UserBot завершена
   7 проверок в тестовом скрипте - все пройдены
   Полная документация (5000+ слов)
   Обработка всех типов ошибок
   Поддержка 2FA

📋 Новые файлы:
  • app/handlers/userbot_auth.py (450 строк)
  • INTERACTIVE_AUTH_GUIDE.md (полная инструкция)
  • INTERACTIVE_AUTH_README.txt (краткая версия)
  • INTERACTIVE_AUTH_COMPLETE.md (отчет о завершении)
  • test_interactive_auth.sh (тестирование)

🔐 Безопасность:
  • SMS-коды не логируются
  • Пароли не сохраняются
  • Сессии зашифрованы
  • Локальная авторизация

🚀 Готово к использованию!
2025-12-21 12:25:15 +09:00
57d7c9ace3 Реализована интерактивная авторизация UserBot через бот
- Создан модуль userbot_auth.py для управления авторизацией через Telethon
- Добавлены обработчики для всех этапов авторизации (номер, SMS, 2FA)
- Интегрирована авторизация в меню UserBot
- Добавлена кнопка 🔐 Авторизация в главное меню UserBot
- Полная обработка ошибок и подробные сообщения пользователю
- Сессии сохраняются безопасно в PostgreSQL
- Документация с примерами использования

Этапы авторизации:
1. Пользователь нажимает 🔐 Авторизация в меню UserBot
2. Вводит номер телефона в формате +XX-XXX-XXX-XXXX
3. Получает SMS с кодом подтверждения (5 цифр)
4. При необходимости вводит пароль 2FA
5. Сессия автоматически сохраняется и UserBot готов к работе
2025-12-21 12:23:47 +09:00
e57ca0b36e Add simplified UserBot authorization script and quick guide
NEW FILES:
 authorize_userbot_simple.sh - Simple one-command authorization
 QUICK_AUTH_GUIDE.md - Quick authorization reference
 AUTH_INSTRUCTIONS.txt - Pre-authorization instructions

IMPROVEMENTS:
 Simpler, more user-friendly authorization process
 Direct Python-based authentication (no bash complexity)
 Clear prompts and status messages
 Better error handling
 Works with interactive terminal (docker-compose exec -it)

USAGE:
  ./authorize_userbot_simple.sh
  [Wait for SMS]
  [Enter code when prompted]

This provides two options:
1. Simple mode: ./authorize_userbot_simple.sh
2. Original mode: ./init_telethon_session.sh

Both do the same thing, simple mode is more straightforward for users.
2025-12-21 12:18:05 +09:00
5a00e161e6 🔐 Add Telethon session initialization tools and authorization guide
NEW FILES:
 init_telethon_session.py - Interactive Python script for session initialization
 init_telethon_session.sh - Bash wrapper for Docker-based authorization
 TELETHON_AUTHORIZATION_GUIDE.md - Comprehensive authorization guide
 USERBOT_AUTHORIZATION_README.md - Quick start guide for users

FEATURES:
 Interactive authorization flow with SMS code verification
 2FA password support
 Session persistence to app/sessions/
 Docker container integration
 Verification of existing sessions
 Clear error messages and troubleshooting

USAGE:
$ ./init_telethon_session.sh
Or:
$ python3 init_telethon_session.py

This solves the UserBot authorization issue where Telethon requires
interactive SMS code verification on first setup.
2025-12-21 12:12:22 +09:00
48f8c6f0eb UserBot Integration Complete: Fixed container startup, integrated UserBot menu to main bot
MAJOR FIXES:
 Fixed UserBot container startup by making TELEGRAM_BOT_TOKEN optional
 Broke circular import chain between app modules
 Made Config.validate() conditional for UserBot-only mode
 Removed unused celery import from userbot_service.py

INTEGRATION:
 UserBot menu now accessible from main bot /start command
 Added 🤖 UserBot button to main keyboard
 Integrated userbot_manager.py handlers:
   - userbot_menu: Main UserBot interface
   - userbot_settings: Configuration
   - userbot_collect_groups: Gather all user groups
   - userbot_collect_members: Parse group members
 UserBot handlers properly registered in ConversationHandler

CONTAINERS:
 tg_autoposter_bot: Running and handling /start commands
 tg_autoposter_userbot: Running as standalone microservice
 All dependent services (Redis, PostgreSQL, Celery workers) operational

STATUS: Bot is fully operational and ready for testing
2025-12-21 12:09:11 +09:00
a6817e487e init commit 2025-12-18 05:55:32 +09:00