Files
remote-control/README.md
T

123 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🔌 Wake-on-LAN Telegram Bot
Простой и удобный Telegram-бот для удалённого включения компьютера с помощью технологии Wake-on-LAN.
## 📋 Функции
- Включение компьютера удалённо через команду `/wake`
- Проверка доступа по ID пользователя
- Безопасное хранение конфигурации в переменных окружения
## 🚀 Быстрый старт
### Требования
- Python 3.7+
- Компьютер с поддержкой Wake-on-LAN
- Telegram Bot Token
### Установка
1. **Клонируйте репозиторий:**
```bash
git clone https://github.com/ada-dmitry/remote-control
cd remote-control
```
2. **Установите зависимости:**
> Рекомендуется использование виртуального окружения Pyvenv.
```bash
pip install -r requirements.txt
```
3. **Создайте файл `.env`:**
```env
BOT_TOKEN=your_telegram_bot_token_here
PC_MAC=XX:XX:XX:XX:XX:XX
ALLOWED_USER_IDS=123456789,987654321
```
4. **Запустите бота:**
```bash
python main.py
```
4.1. По необходимости, можно добавить бота в systemd.
## ⚙️ Настройка
### Переменные окружения
| Переменная | Описание | Пример |
|------------|----------|--------|
| `BOT_TOKEN` | Токен Telegram-бота | `1234567890:ABCdefGHIjklMNOpqrsTUVwxyz` |
| `PC_MAC` | MAC-адрес целевого компьютера | `AA:BB:CC:DD:EE:FF` |
| `ALLOWED_USER_IDS` | ID пользователей через запятую | `123456789,987654321` |
### Настройка Wake-on-LAN
1. **В BIOS/UEFI:** Включите Wake-on-LAN (может называться "Wake on Magic Packet")
2. **В Windows:**
- Откройте Диспетчер устройств
- Найдите сетевой адаптер → Свойства → Управление питанием
- Включите "Разрешить этому устройству выводить компьютер из ждущего режима"
### Получение MAC-адреса
**Windows:**
```cmd
ipconfig /all
```
**Linux/macOS:**
```bash
ifconfig
```
### Создание Telegram-бота
1. Найдите @BotFather в Telegram
2. Отправьте `/newbot`
3. Следуйте инструкциям
4. Скопируйте полученный токен
### Получение Telegram User ID
1. Найдите @userinfobot в Telegram
2. Отправьте `/start`
3. Скопируйте ваш User ID
## 🛡️ Безопасность
- Токен бота и другие чувствительные данные хранятся в переменных окружения
- Доступ к команде ограничен списком разрешённых пользователей
- Не добавляйте файл `.env` в систему контроля версий
## 📝 Использование
После запуска бота отправьте команду `/wake` в чат с ботом. Если ваш ID в списке разрешённых пользователей, бот отправит Magic Packet для включения компьютера.
## 🔧 Требования к сети
- Компьютер и устройство с ботом должны находиться в одной локальной сети
- Роутер должен поддерживать передачу Magic Packet
- Может потребоваться настройка портов в роутере для удалённого доступа
## 📦 Зависимости
- `python-telegram-bot` - для работы с Telegram API
- `wakeonlan` - для отправки Magic Packet
- `python-dotenv` - для загрузки переменных окружения
## 🤝 Поддержка
Если у вас возникли проблемы:
1. Убедитесь, что Wake-on-LAN включен в BIOS
2. Проверьте правильность MAC-адреса
3. Убедитесь, что устройства в одной сети
4. Проверьте настройки сетевого адаптера
## 📄 Лицензия
MIT License