Данный скрипт предоставляет возможность смотреть приходящие сообщения в режиме реального времени. Удобно, чтобы не ставить официальный клиент себе на компьютер. Сгодится только для чтения новых сообщений (старые не видит).
ConsoleLogger:
Сборка
ConsoleLogger:
Python:
from pyrogram import Client, filters
# GET -> https://my.telegram.org/apps
API_ID = 124315
API_HASH = "brsserhhseyh23y6423bhw3"
SESSION_NAME = "ConsoleLogger"
app = Client(SESSION_NAME, api_id=API_ID, api_hash=API_HASH)
@app.on_message(filters.text | filters.photo | filters.document | filters.sticker | filters.voice | filters.video)
async def log_message(client, message):
chat_title = message.chat.title or "Личка"
sender_name = message.from_user.first_name if message.from_user else "Неизвестно"
username = f"@{message.from_user.username}" if message.from_user and message.from_user.username else ""
print(f"[{chat_title}] {sender_name} {username}:")
if message.text:
print(f"{message.text}")
elif message.photo:
print(f"Фото (ID: {message.photo.file_id})")
elif message.document:
print(f"Документ: {message.document.file_name}")
elif message.sticker:
print(f"Стикер (ID: {message.sticker.file_id})")
elif message.voice:
print(f"Голосовое (Продолжительность: {message.voice.duration}с)")
elif message.video:
print(f"Видео (Продолжительность: {message.video.duration}с)")
print("-" * 50)
if __name__ == "__main__":
app.run()
Сборка
Bash:
#!/bin/bash
SCRIPT_NAME="console_client.py"
SPEC_FILE="console_client.spec"
if [ ! -f "$SCRIPT_NAME" ]; then
echo "Error: $SCRIPT_NAME not found!"
exit 1
fi
python3 -m venv env
source env/bin/activate
pip install --upgrade pip
pip install pyrogram tgcrypto pyinstaller
pyinstaller --onefile "$SCRIPT_NAME"
if [ $? -ne 0 ]; then
deactivate
rm -rf env
exit 1
fi
deactivate
rm -rf env build
rm "$SPEC_FILE"
echo "Build completed. Executable is in 'dist' folder."