by robartbarth


Telegram File Stream Bot

Cover Image

A Telegram bot to stream files to web
Demo Bot »
Report a Bug | Request Feature

Table of Contents
  1. About this Bot
  2. How to make your own
  3. Setting up things
  • How to use the bot
  • Contributing
  • Contact me
  • Credits
  • About This Bot

    Telegram Logo

    This bot will give you stream links for Telegram files without the need of waiting till the download completes

    Original Repository

    The main working part was taken from Megatron and thanks to eyaadh for his awesome project.

    How to make your own

    Either you could locally host or deploy on Heroku

    Deploy on Heroku

    Press the below button to Fast deply to Heroky


    then goto the variables tab for more info on setting up environmental variables.

    Host it on VPS or Locally

    git clone
    cd TG-FileStreamBot
    virtualenv -p /usr/bin/python3 venv
    . ./venv/bin/activate
    pip install -r requirements.txt
    python3 -m WebStreamer

    and to stop the whole bot, do CTRL+C

    Setting up things

    If you're on Heroku, just add these in the Environmental Variables or if you're Locally hosting, create a file named .env in the root directory and add all the variables there. An example of .env file:


    Mandatory Vars

    API_ID : Goto to obtain this.

    API_HASH : Goto to obtain this.

    BOT_TOKEN : Get the bot token from @BotFather

    BIN_CHANNEL : Create a new channel (private/public), add @missrose_bot as admin to the channel and type /id. Now copy paste the ID into this field.

    Optional Vars

    SLEEP_THRESHOLD : Set a sleep threshold for flood wait exceptions happening globally in this telegram bot instance, below which any request that raises a flood wait will be automatically invoked again after sleeping for the required amount of time. Flood wait exceptions requiring higher waiting times will be raised. Defaults to 60 seconds.

    WORKERS : Number of maximum concurrent workers for handling incoming updates. Defaults to 3

    PORT : The port that you want your webapp to be listened to. Defaults to 8080

    WEB_SERVER_BIND_ADDRESS : Your server bind adress. Defauls to

    NO_PORT : If you don't want your port to be displayed. You should point your PORT to 80 (http) or 443 (https) for the links to work. Ignore this if you're on Heroku.

    FQDN : A Fully Qualified Domain Name if present. Defaults to WEB_SERVER_BIND_ADDRESS

    How to use the bot

    ⚠️ Before using the bot, don't forget to add the bot to the BIN_CHANNEL as an admin

    /start : To check if the bot is alive or not.

    To get an instant stream link, just forward any media to the bot and boom, its fast af.


    Feel free to contribute to this project if you have any further ideas

    Contact me

    Telegram Channel Telegram Group

    You can contact either via my Telegram Chat or you can PM me on @EverythingSuckz