https://github.com/iwizard7/py_bot_boltun
https://github.com/iwizard7/py_bot_boltun
Last synced: 11 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/iwizard7/py_bot_boltun
- Owner: iwizard7
- Created: 2024-12-04T03:51:53.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-04T09:50:45.000Z (over 1 year ago)
- Last Synced: 2025-05-17T02:07:11.457Z (about 1 year ago)
- Language: Python
- Size: 21.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Telegram Bot "Boltun"
Telegram-бот, который сохраняет сообщения участников группы в базу данных и предоставляет веб-интерфейс для управления ботом. Веб-интерфейс включает статистику и возможность включить функцию генерации случайных сообщений от имени бота.
---
## 📋 Функции
1. Сохранение сообщений участников группы в базу данных SQLite.
2. Просмотр количества сохраненных сообщений через веб-интерфейс.
3. Включение/отключение функции случайных ответов через веб-интерфейс.
4. Базовая авторизация для защиты веб-интерфейса.
---
## 🛠️ Требования
- Python 3.10+
- Установленные зависимости (см. ниже)
- Токен Telegram-бота (получается у [BotFather](https://t.me/BotFather))
---
## 📦 Установка
1. **Склонируйте репозиторий:**
```bash
git clone https://github.com/your-username/py_bot_boltun.git
cd py_bot_boltun
Создайте виртуальное окружение и активируйте его:
python3 -m venv venv
source venv/bin/activate # для Linux/MacOS
venv\Scripts\activate # для Windows
Установите зависимости:
pip install -r requirements.txt
Создайте файл .env для конфиденциальных данных:
BOT_ADMIN_USERNAME=admin
BOT_ADMIN_PASSWORD=securepassword123
BOT_TOKEN=your-telegram-bot-token
Создайте папку для HTML-шаблонов: Убедитесь, что файл templates/index.html находится в папке templates.
## 🚀 Запуск
1. Запустите Telegram-бота
```bash
python bot.py
```
2. Запустите веб-интерфейс
```bash
python web_interface.py
```
Веб-интерфейс будет доступен по адресу http://127.0.0.1:5000. Авторизация происходит с использованием логина и пароля из файла .env.
## 🗂️ Файловая структура
```bash
telegram_bot/
├── bot.py # Логика Telegram-бота
├── web_interface.py # Логика веб-интерфейса
├── templates/ # Папка с HTML-шаблонами
│ └── index.html # Основной HTML-шаблон
├── bot_data.db # База данных SQLite (создается автоматически)
├── .env # Файл с конфиденциальными данными (логин/пароль)
├── requirements.txt # Список зависимостей для установки
├── README.md # Описание проекта
```
## 🛡️ Управление процессами
Если вы хотите запустить бота и веб-интерфейс как фоновые процессы, используйте один из следующих методов:
С помощью nohup
```bash
nohup python bot.py > bot.log 2>&1 &
nohup python web_interface.py > web_interface.log 2>&1 &
```
С помощью systemd (Linux)
Создайте два сервиса (telegram_bot.service и telegram_web.service), чтобы процессы запускались автоматически при старте системы.
## 🧪 Тестирование
Добавьте бота в Telegram-группу.
Напишите несколько сообщений в группу.
Проверьте веб-интерфейс, чтобы убедиться, что сообщения сохраняются в базе данных.
Включите функцию случайных ответов в веб-интерфейсе и проверьте работу бота.
## 📝 Лицензия
Этот проект распространяется под лицензией MIT. См. LICENSE для деталей.
## 💬 Обратная связь
Если у вас есть вопросы или предложения, создайте issue или напишите на почту: your-email@example.com.