HERRAMIENTA ACTIVA · 2025 — 2026 (EN PRODUCCIÓN)

telegram-drive

Automatización en Python para transferir y sincronizar archivos multimedia entre chats de Telegram y Google Drive sin ocupar disco local.

Python 3.11+ Pyrogram MTProto Telegram Bot API Google Drive API rclone Systemd Service

Qué es

No es un bot de @BotFather. Es una sesión de usuario (API_ID / API_HASH de my.telegram.org) que solo mira el chat "me". Lo uso para alimentar la librería de Jellyfin: archivo grande → Drive → el catálogo lo ve el media server.

Hay una variante userbot_pc_amd.py para un PC. En el VPS corre userbot_drive.py.

Flujo

Saved MessagesPyrogram · me
→
queue.jsonsobrevive un corte
→
downloads/
→
rcloneprimario
→
Drive APIfallback

Lock de una descarga a la vez, semáforo de hasta 5 subidas. La cola es un JSON en disco (no Redis): sobrevive un corte, no es un broker. Progreso en el propio chat (/panel). rclone primero; si falla, Drive API resumable. No recodifica.

Sitios del código

Cola en disco. queue.json guarda la tarea. Si el proceso muere a mitad, no se pierde el fichero a medias: se retoma.

Nombre a mano. Antes de subir pregunta cómo se debe llamar el archivo en Drive. Útil cuando Telegram manda un VID_2024….mp4 inservible para Jellyfin.

Lo que no se publica

Sesión Pyrogram (*.session), rclone.conf, JSON de Google, la cola con paths locales. En GitHub, API_ID / API_HASH / carpeta de Drive salen de .env.