Ingen beskrivning

Никита Грузин 9e7317e6c7 first commit 4 månader sedan
ppt_client 9e7317e6c7 first commit 4 månader sedan
server 9e7317e6c7 first commit 4 månader sedan
.gitignore 9e7317e6c7 first commit 4 månader sedan
README.md 9e7317e6c7 first commit 4 månader sedan

README.md

PPT Remote

Control PowerPoint from your Android phone over Wi-Fi.

Server (Windows PC)

Requirements: Bun installed, PowerPoint open with a presentation.

cd server
bun install
bun start

The server listens on port 8765. Find your PC's local IP with ipconfig.

Server (Linux)

Requirements: Bun, LibreOffice, python3 (with uno module — ships with LibreOffice), xdotool.

sudo apt install xdotool  # or equivalent for your distro

Start LibreOffice Impress with the UNO socket listener enabled:

libreoffice --impress --accept="socket,host=localhost,port=2002;urp;StarOffice.ServiceManager" your-presentation.pptx

Then start the server:

cd server
bun install
bun start

Find your machine's local IP with ip addr or hostname -I.

Client (Android)

Requirements: Flutter SDK.

cd client
flutter pub get
flutter run

Enter your PC's local IP and port 8765, then tap Connect.

How it works

  • Server auto-detects the platform (process.platform) and picks the right driver.
  • Windows: PowerShell COM automation via GetActiveObject('PowerPoint.Application').
  • Linux: navigation via xdotool key events, slide state and image export via Python UNO connected to LibreOffice's socket listener on port 2002.
  • After each navigation, the current slide is exported as an image and sent as base64 to all connected clients.

Notes

  • PowerPoint must already be open on the PC before connecting.
  • The slideshow must be running (or use "Start Show") for next/prev to work.
  • Both devices must be on the same Wi-Fi network.
  • Windows Firewall may need to allow port 8765.