Skip to content

About

PCControl — система удалённого управления компьютером через локальную сеть или интернет.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

Repository files navigation

🖥️ PCControl

Удалённое управление компьютером с Android-устройства

Platform Server Client Native License


📱 Что это

PCControl — система удалённого управления компьютером через локальную сеть или интернет.
Управляй своим ПК с телефона: включай через Wake-on-LAN, выключай, перезагружай, следи за нагрузкой в реальном времени и управляй медиа — не вставая с дивана.


🗂️ Структура проекта

PCControl/
├── android/       # Android-приложение (Kotlin + Jetpack Compose)
├── server/        # WebSocket-сервер (Java)
├── client/        # ПК-клиент, подключается к серверу (Java)
└── dll/           # Нативная библиотека управления медиа (C++)

⚙️ Компоненты

📱 Android App

Мобильный клиент на Kotlin + Jetpack Compose.

  • 🟢 Включение ПК через Wake-on-LAN (Magic Packet)
  • 🔴 Выключение / 🔄 Перезагрузка / 🔒 Блокировка экрана
  • 📊 Мониторинг CPU, RAM, Диска в реальном времени (авто-обновление каждые 5 сек)
  • ⏯️ Управление медиа: play/pause, следующий/предыдущий трек, mute
  • 🔁 Авто-переподключение при разрыве связи
  • 🔐 Авторизация по секретному ключу

🖧 Server (Java)

WebSocket-сервер — связующее звено между телефоном и ПК.

  • Принимает подключения от Android-приложения и ПК-клиента
  • Маршрутизирует команды между ними
  • Авторизация по API ключу
  • Отдаёт статистику мониторинга

💻 Client (Java)

Агент, запущенный на ПК. Подключается к серверу и выполняет команды.

  • Выполняет команды: shutdown, reboot, lock, monitor
  • Собирает и отправляет данные CPU / RAM / Disk
  • Управляет медиа через нативную DLL

🔧 DLL (C++)

Нативная библиотека для управления медиа на Windows.

  • Управление системным звуком и медиаплеером через Windows API
  • Подключается к Java-клиенту через JNI
  • Исключает необходимость вызовов PowerShell

🚀 Быстрый старт

1. Сервер

cd server
# Настрой config: укажи API_SECRET_KEY и порт (по умолчанию 8080)
java -jar server.jar

2. ПК-клиент

cd client
# Укажи адрес сервера и секретный ключ в конфиге
java -jar client.jar

3. Android

  • Установи APK на телефон
  • Открой приложение → Настройки
  • Укажи адрес сервера (ws://IP:8080/ws/)
  • Укажи секретный ключ
  • Укажи MAC-адрес ПК для Wake-on-LAN
  • Нажми «Подключиться»

🔑 Как узнать MAC-адрес ПК

ipconfig /all

Ищи строку Physical Address у нужного сетевого адаптера.


📋 Требования

Компонент Требования
Android App Android 8.0+, Java 17+
Server Java 17+, открытый порт 8080
Client Windows 10/11, Java 17+
DLL Windows 10/11, Visual C++ Runtime

🌐 Как работает

[Android] ──WebSocket──► [Server] ◄──WebSocket── [PC Client]
                                                       │
                                                    [C++ DLL]
                                                  (Media Control)

[Android] ──UDP broadcast──► [ПК] (Wake-on-LAN, без сервера)

📦 Сборка

Android APK

Открой папку android/ в Android Studio:

Build → Build Bundle(s) / APK(s) → Build APK(s)

APK будет в android/app/build/outputs/apk/debug/

Server / Client

cd server && ./gradlew jar
cd client && ./gradlew jar

DLL

Открой dll/ в Visual Studio → Build Release


📄 Лицензия

MIT — делай что хочешь.

About

PCControl — система удалённого управления компьютером через локальную сеть или интернет.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages