How al3xfight/telegram-uploader works
Telegram Uploader is a bilingual command-line application that uploads files to a private Telegram channel or group using the user's own account through Telethon. The workflow configures credentials, scans and chronologically orders a folder, filters files already recorded as uploaded, then uploads pending files with optional parallel chunks, media metadata, retries, and pacing. Successful uploads update a local JSON registry. The graph reflects documented capabilities where their implementation was not sampled; optional ffmpeg support is marked separately.
Main entry points: cli.py Command workflow · subida.py Upload orchestration · registro.py Upload registry · config.py Configuration wizard
Components 19
CLI and configuration
- CLI launcher
subir_a_telegram.py - Command workflow
telegram_uploader/cli.py - Configuration wizard
telegram_uploader/config.py - config.json
File selection
- Local files
- File discovery
telegram_uploader/medios.py - Chronological ordering
telegram_uploader/medios.py - Pending-file filter
telegram_uploader/cli.py - Upload registry
telegram_uploader/registro.py - subidos.json
Upload and Telegram
- Upload orchestration
telegram_uploader/subida.py - Parallel chunks
telegram_uploader/subida.py - Video metadata and thumbnails
telegram_uploader/medios.py
Shared support
- Translations
telegram_uploader/i18n.py - Console and logging
telegram_uploader/consola.py - Defaults and paths
telegram_uploader/constantes.py
Other components
- User
- Telegram service
- ffprobe / ffmpeg
Connections 28
- User → CLI launcher: runs
README.md - CLI launcher → Command workflow: invokes
subir_a_telegram.py - Command workflow → Configuration wizard: loads settings
telegram_uploader/cli.py - Configuration wizard → config.json: reads and writes
telegram_uploader/config.py - Command workflow → config.json: loads settings
telegram_uploader/cli.py - Command workflow → File discovery: finds files
telegram_uploader/cli.py - Command workflow → Chronological ordering: sorts by date
telegram_uploader/cli.py - Command workflow → Upload registry: checks uploads
telegram_uploader/cli.py - File discovery → Local files: scans
telegram_uploader/medios.py - Chronological ordering → Local files: reads metadata
telegram_uploader/medios.py - Command workflow → Pending-file filter: filters pending
telegram_uploader/cli.py - Pending-file filter → Upload registry: checks keys
telegram_uploader/cli.py - Upload registry → subidos.json: reads and writes
telegram_uploader/registro.py - Command workflow → Upload orchestration: starts uploads
telegram_uploader/cli.py - Upload orchestration → Parallel chunks: uploads chunks
telegram_uploader/subida.py - Upload orchestration → Video metadata and thumbnails: gets video details
telegram_uploader/subida.py - Video metadata and thumbnails → ffprobe / ffmpeg: extracts media data
telegram_uploader/medios.py - Upload orchestration → Telegram service: sends files
telegram_uploader/subida.py - Command workflow → Telegram service: starts session
telegram_uploader/cli.py - Upload orchestration → Upload registry: records success
telegram_uploader/subida.py - Command workflow → Translations: selects language
telegram_uploader/cli.py - Configuration wizard → Translations: uses translations
telegram_uploader/config.py - Command workflow → Console and logging: prints status
telegram_uploader/cli.py - Configuration wizard → Console and logging: prompts user
telegram_uploader/config.py - Upload orchestration → Console and logging: logs progress
telegram_uploader/subida.py - Command workflow → Defaults and paths: uses defaults
telegram_uploader/cli.py - Upload orchestration → Defaults and paths: uses upload limits
telegram_uploader/subida.py - Upload registry → Defaults and paths: uses registry path
telegram_uploader/registro.py