Skip to content

Screen-Spy-App is a Python-based automated screen activity logger that captures screenshots, logs events with timestamps, and securely sends them via Telegram. Built with modular design, SQLite storage, ON/OFF switch control, and test coverage, it showcases real-world automation and monitoring skills.

License

Notifications You must be signed in to change notification settings

AmSh4/Screen-Spy-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

Screen-Spy-App is a Python-based automated screen activity logger that captures screenshots, logs events with timestamps, and securely sends them via Telegram. Built with modular design, SQLite storage, ON/OFF switch control, and test coverage, it showcases real-world automation and monitoring skills.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages