Skip to content

Latest commit

 

History

History
89 lines (73 loc) · 2.4 KB

File metadata and controls

89 lines (73 loc) · 2.4 KB

Screen Spy App

  ScreenSpyApp/
  ├── src/
  │   ├── __init__.py
  │   ├── main.py
  │   ├── logger.py
  │   ├── database.py
  │   ├── screenshot.py
  │   ├── telegram_bot.py
  │   ├── config_manager.py
  │   ├── switch_control.py
  │   └── utils.py
  ├── data/
  │   ├── activity_log.db
  │   └── screenshots/
  ├── tests/
  │   ├── __init__.py
  │   ├── test_logger.py
  │   └── test_database.py
  ├── requirements.txt
  ├── README.md
  ├── LICENSE
  └── setup.sh

ScreenSpy - Automated Screen Activity Logger

ScreenSpy is a Python-based application that logs screen activities, captures screenshots, and sends them to a designated Telegram chat. It runs as a background process with a configurable ON/OFF switch for controlling monitoring.

Features

  • Captures screenshots at regular intervals
  • Logs activities with timestamps in a SQLite database
  • Sends screenshots to the owner's Telegram account
  • Configurable spy switch (ON/OFF)
  • Resource-efficient and extensible design

Installation

  1. Clone the repository:
    git clone https://github.com/AmSh4/Screen-Spy-App.git
    cd ScreenSpyApp
  2. Install dependencies:
     pip install -r requirements.txt
  3. Set up Telegram bot: Create a Telegram bot via BotFather and get the API token Get your chat ID Update config.ini with your Telegram token and chat ID
  4. Run the setup script:
    chmod +x setup.sh./setup.sh
    
  5. Start the application:
    python src/main.py
    

Configuration

Edit config.ini to set:

DB_PATH: Path to SQLite database INTERVAL: Screenshot interval (seconds) TELEGRAM_TOKEN: Your Telegram bot token CHAT_ID: Your Telegram chat ID

Usage

The application runs in the background and captures screenshots when the switch (switch.txt) is set to ON. To toggle the spy feature, edit switch.txt to ON or OFF.

Directory Structure

src/: Core application code data/: SQLite database and screenshots tests/: Unit tests for logger and database requirements.txt: Python dependencies README.md: Project documentation LICENSE: MIT License setup.sh: Setup script

Testing

Run unit tests:

Collapse
Wrap
Copy
python -m unittest discover tests