Skip to main content

Telegram Monitoring User Bot

Project description

🛰️ EchoSonar

Enterprise-grade Telegram monitoring user bot built with Telethon. It acts as an automated bridge, monitoring your private or public channels for specific keywords and instantly copying and re-uploading content to a destination of your choice.

PyPI version License: MIT

🛠️ Prerequisites

  • Python >= 3.10
  • Telegram account with active App credentials (api_id, api_hash) from my.telegram.org.
  • An execution environment (Local Machine or Linux VPS).

✨ Key Features

  • 🛡️ Content Protection Bypass: Automatically downloads and re-uploads media from restricted channels where "Saving Content" is disabled.
  • 📂 Full Album Support: Intelligently gathers media groups (albums) and forwards them as a single cohesive unit.
  • 👤 Human-Like Behavior: Implements randomized delays (3-8s) and manual re-upload flows to mimic human activity and reduce account flagging risks.
  • 🔄 Hot-Reloading: Update keywords, monitored channels, or destinations via CLI without restarting the running bot.
  • 🕵️ Private Channel Support: Easily monitor private channels using internal numeric IDs.

🚀 Installation & Usage

Echosonar is designed to be installed in an isolated environment, choose the installation method that fits your environment best:

Option 1: Docker (Recommended for Servers & Continuous Running)

Run the bot as an isolated background service:

docker compose up -d

👉 Follow our dedicated Docker Deployment & Management Guide to set up your runtime container and configure hot-reloading keys.

Option 2: UV / Pipx (Recommended for Local CLI Management)

You can execute the application instantly from PyPI without downloading the source code, or install it permanently into its own isolated environment on your device:

  • Execute instantly with UV:

    uvx echosonar run
    
  • Install permanently with Pipx:

    pipx install echosonar
    

🛠️ Quick Start

1. Configuration

Run the setup command to input your Telegram API credentials (get them at my.telegram.org):

echosonar setup

2. Find Private IDs

If you need to monitor private channels, use the following command to see all your joined chats and their internal IDs:

echosonar list-ids

3. Add Monitoring Targets

# Add a public channel by username
echosonar channels add "@PublicChannel"

# Add a private channel by numeric ID (use -- to handle negative numbers)
echosonar channels add -- "-1001234567890"

# Add keywords
echosonar keywords add "urgent"

4. Run & Authenticate

Start the bot once in your terminal to complete the one-time Telegram login:

echosonar run

🏠 Running Live 24/7

On a Server (Linux/VPS)

The professional way to run EchoSonar on a server is using systemd. This ensures the bot starts on boot and restarts automatically if it crashes.

  1. Create the service file: sudo nano /etc/systemd/system/echosonar.service

  2. Paste configuration: (Replace youruser with your Linux username)

    [Unit]
    Description=EchoSonar Telegram Bot
    After=network.target
    
    [Service]
    User=youruser
    ExecStart=/home/youruser/.local/bin/echosonar run
    Restart=always
    RestartSec=10
    WorkingDirectory=/home/youruser
    
    [Install]
    WantedBy=multi-user.target
    
  3. Start the service:

    sudo systemctl daemon-reload
    sudo systemctl enable --now echosonar
    

On a Personal Computer

For local background execution, use a terminal multiplexer like Screen or TMUX:

# Create a new session
screen -S echosonar

# Run the bot
echosonar run

# Detach (Press Ctrl+A then D)
# The bot will continue running in the background.

📖 Detailed Documentation

For a full list of all available commands and advanced usage, see COMMANDS.md.

⚖️ Disclaimer

This tool is for personal automation and research purposes. Please respect Telegram's Terms of Service and the copyright of content creators. Use of user bots carries a risk of account restriction if used for spam or malicious activity.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

echosonar-0.1.4.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

echosonar-0.1.4-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file echosonar-0.1.4.tar.gz.

File metadata

  • Download URL: echosonar-0.1.4.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for echosonar-0.1.4.tar.gz
Algorithm Hash digest
SHA256 a3842b32c63f93675c82c47faeb2faa89330d2ee83c570e1dedbb45961cce008
MD5 47403bdfbdff0cbdcfc3c6cfcc5fcf32
BLAKE2b-256 727d816012af453d75ccc6351e1c1e009b7dd4a8b1f861997ae3d08557559fd0

See more details on using hashes here.

Provenance

The following attestation bundles were made for echosonar-0.1.4.tar.gz:

Publisher: deploy.yml on K4speeer/EchoSonar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file echosonar-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: echosonar-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for echosonar-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 78ff79a355c5d521c45d823bc8a1364dffc64817fe517ff0a6cb217df5c73857
MD5 b72a25b7a7cc563c8c4b32db11d558f2
BLAKE2b-256 aa2d5d1880d68acc5de4e5532b35bccc6b99b8b39b798f59b726bbfc133fc24c

See more details on using hashes here.

Provenance

The following attestation bundles were made for echosonar-0.1.4-py3-none-any.whl:

Publisher: deploy.yml on K4speeer/EchoSonar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page