Telegram bot built with Telethon + PyTgCalls, deployable on Render.
Developer: #RADHEY — Channel: @xivasudev
/play— search & stream a song live in the group's voice chat/skip,/pause,/resume,/mute,/unmute,/stop,/queue— VC controls/song <name>— download and send a track directly (DM or group)- Send any Instagram reel/post link (DM or group) — bot downloads and sends it back
- Force-subscribe gate: users must join
@sunradheyand@xivasudevbefore using the bot /stats,/broadcast— owner-only tools- Flask keep-alive endpoint on
/for Render's health checks
Bots cannot join voice chats — that's a Telegram platform rule, not a limitation of this code. So the bot uses:
- BOT_TOKEN — handles all your commands.
- SESSION_STRING — a real account ("assistant") that joins the group and streams audio.
API_ID/API_HASH— from https://my.telegram.org → API Development ToolsBOT_TOKEN— create a bot with @BotFatherOWNER_ID— your numeric Telegram user ID, from @userinfobotSESSION_STRING— run locally (never on the server):Log in with the account you want to use as the voice-chat assistant, then copy the printed string.pip install telethon python genstring.py
Copy .env.sample to .env for local testing, or set these directly in Render's dashboard:
API_ID=
API_HASH=
BOT_TOKEN=
SESSION_STRING=
OWNER_ID=
SUDOERS=
FORCE_SUB_CHANNELS=sunradhey xivasudev
FORCE_SUB_CHANNELS is a space-separated list of channel usernames without the @. The bot must be admin in those channels to check membership.
- Push this folder to a GitHub repo.
- On Render: New → Web Service → Docker runtime, connect the repo.
- Add the environment variables above in the Render dashboard.
- Deploy. Render will build the included
Dockerfile(Python 3.10 + ffmpeg).
Use the ➕ Add Assistant to Group button from /start, or manually add the assistant account to any group where you want /play to work. It only needs to be a normal member.
pip install -r requirements.txt
python bot.py
- Instagram downloads depend on
yt-dlp's current Instagram support; some private/age-restricted content may fail. - Downloaded files are deleted from disk immediately after being sent.