Skip to content

Major-Woolfi/Inviter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inviter Bot v2.0 - Production Ready

Telegram-бот для приглашения участников и массовых рассылок с продвинутыми анти-блокировочными механизмами.

🚀 Возможности

  • ✅ Сбор пользователей из чатов по сообщениям или количеству
  • ✅ Автоматическое приглашение в целевой чат
  • ✅ Массовая рассылка сообщений
  • ✅ Мультиаккаунт с ротацией
  • ✅ Кэширование участников (SQLite)
  • ✅ Система авторизации по ключам
  • ✅ Управление задачами (пауза, отмена, возобновление)
  • ✅ Прогресс-бары и детальная статистика
  • Анти-блокировочные механизмы

🛡️ Анти-блокировочные функции

  • 🛡️ Случайные задержки между приглашениями (40-70 сек по умолчанию)
  • 🛡️ Умная обработка FloodWait — автоматическая пауза с увеличенным временем (×1.5)
  • 🛡️ Ротация аккаунтов — round-robin балансировка нагрузки
  • 🛡️ Retry logic — автоматическое повторение при ошибках (3 попытки)
  • 🛡️ Кэширование участников — предотвращение дублирования через SQLite
  • 🛡️ Фильтрация ботов — автоматический пропуск ботов
  • 🛡️ Проверка membership — не приглашает уже состоящих в чате
  • 🛡️ Обработка privacy — корректная обработка ограничений приватности
  • 🛡️ Фоновый health-check — автоматическая проверка аккаунтов каждые 5 минут

📦 Установка

Локально

# Установка зависимостей
pip install -r requirements.txt

# Настройка переменных окружения
cp .env.example .env
# Редактирование .env

# Запуск
python main.py

Docker

# Сборка образа
docker build -t inviter-bot .

# Запуск
docker run -d --name inviter \
  -v $(pwd)/data:/app/data \
  -v $(pwd)/sessions:/app/sessions \
  --env-file .env \
  inviter-bot

Деплой на сервер (deploy_bot.sh)

# Копирование на сервер
scp -r inviter/ user@server:/opt/inviter/

# Запуск скрипта деплоя
ssh user@server 'bash /opt/inviter/deploy_bot.sh'

⚙️ Конфигурация

Переменные окружения

| Переменная | Описание | По умолчанию |

|------------|----------|--------------| | BOT_TOKEN | Токен Telegram-бота | - | | API_ID | Telegram API ID | 0 | | API_HASH | Telegram API hash | - | | ADMIN_USER_IDS | ID администраторов | - | | MAX_CONCURRENT_TASKS | Макс. одновременных задач | 10 | | MAX_TASKS_PER_USER | Макс. задач на пользователя | 5 | | MIN_INVITE_DELAY | Мин. задержка приглашения (сек) | 40 | | MAX_INVITE_DELAY | Макс. задержка приглашения (сек) | 70 | | FLOOD_WAIT_MULTIPLIER | Множитель FloodWait | 1.5 | | MAX_RETRIES | Макс. попыток при ошибке | 3 | | HEALTH_CHECK_INTERVAL | Интервал health-check (сек) | 300 | | MAX_ACCOUNTS_PER_TASK | Макс инвайтов на аккаунт | 3 | | SESSION_TIMEOUT | Таймаут сессии (сек) | 1800 |

📁 Структура проекта

Inviter/
├── main.py              # Монолитный бот (v2.0)
├── .env.example         # Пример конфигурации
├── requirements.txt     # Зависимости
├── Dockerfile           # Docker-образ
├── deploy_bot.sh        # Скрипт деплоя
├── IMPROVEMENTS.md      # Документация улучшений
├── sessions/            # Telegram сессии
├── data/                # Данные (auth, tasks, cache)
└── logs/                # Логи (по дням)

📊 Статистика

Бот собирает детальную статистику:

  • Количество успешных/неудачных инвайтов
  • Количество пользователей с privacy restrictions
  • Количество уже состоящих в чате
  • Информация об аккаунте (session file)
  • Прогресс-бар в реальном времени

⚠️ Важные замечания

  1. Используйте несколько аккаунтов для распределения нагрузки
  2. Не превышайте 100 инвайтов в час на один аккаунт
  3. Регулярно меняйте задержки для имитации поведения человека
  4. Следите за health-check в логах
  5. Делайте резервные копии базы данных кэша

🐛 Решение проблем

Аккаунт заблокирован

  • Проверьте логи: logs/YYYY-MM-DD.log
  • Увеличьте MIN_INVITE_DELAY и MAX_INVITE_DELAY
  • Увеличьте FLOOD_WAIT_MULTIPLIER
  • Используйте больше аккаунтов

Ошибки подключения

  • Проверьте API_ID и API_HASH
  • Убедитесь, что сессии в sessions/ валидны
  • Перезапустите бота для recovery сессий

Медленная работа

  • Уменьшите MAX_CONCURRENT_TASKS
  • Проверьте скорость интернета
  • Убедитесь, что нет блокировок провайдера

📞 Поддержка

При создании issue укажите:

  • Версию бота (v2.0)
  • Логи за дату проблемы
  • Конфигурацию из .env
  • Описание проблемы

Версия: 2.0.0 Дата: 2025-07-23 Статус: ✅ Production Ready

About

Добавляет людей в ваш канал.

Resources

Stars

Watchers

Forks

Releases

Contributors

Languages