A Python-based Telegram bot that automatically reposts content from multiple source channels to a target channel with customizable features and content management.
You can explore the bot's functionality by checking out the demo channel.
- Automatic reposting from whitelisted channels
- VIP channel support with priority posting
- Media group handling (albums)
- Custom caption generation with source attribution
- Rate limiting and post frequency control
- Command-based channel management
- Python 3.9+
- Telegram API credentials (api_id and api_hash)
- Docker (optional)
- Clone the repository:
git clone https://github.com/Polinanime/TelegramAutoChannel.git
cd telegram-auto-channel
- Install dependencies:
pip install -r requirements.txt
- Configure your settings:
- Create
data/settings.json
with your configuration - Set up your channel lists in
data/referenceChannels.json
anddata/priorityChannels.json
- Create
settings.json
: Basic bot settings including multiplierreferenceChannels.json
: List of whitelisted channelspriorityChannels.json
: List of VIP channels with priority postingstats.json
: Automatically generated posting statistics
All commands use the %%
prefix and are only available in saved-messages-chat:
%%add [channel]
- Add channel to whitelist%%remove [channel]
- Remove channel from whitelist%%vip [channel]
- Add channel to VIP list%%unvip [channel]
- Remove channel from VIP list%%mult [number]
- Set posting frequency multiplier%%ping
- Check if bot is running
Using Python:
python main.py
Using Docker:
docker-compose up --build
- Whitelist system for controlling source channels
- VIP channel system for priority posting
- Automatic post frequency management
- Supports text, photos, videos, and media groups
- Automatic caption generation with source attribution
- Maintains original media quality
- Handles forwarded messages
- Smart posting algorithm based on channel activity
- Configurable posting frequency
- Duplicate prevention for media groups
Feel free to submit issues and enhancement requests!
This bot is designed for channel management and should be used in accordance with Telegram's Terms of Service and API guidelines.