A Telegram bot to stream files to web
Telegram Bot »
Report a Bug
|
Request Feature
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](https://github.com/eyaadh/megadlbot_oss) and thanks to [eyaadh](https://github.com/eyaadh) for his awesome project. ## How to make your own Either you could locally host or deploy on [Heroku](https://heroku.com) ### Deploy on Heroku Press the below button to Fast deply to Heroky [](https://heroku.com/deploy) then goto the variables tab for more info on setting up environmental variables. ### Host it on VPS or Locally ```sh git clone https://github.com/EverythingSuckz/TG-FileStreamBot 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: ```sh API_ID=452525 API_HASH=esx576f8738x883f3sfzx83 BOT_TOKEN=55838383:yourtbottokenhere BIN_CHANNEL=-100 PORT=8080 FQDN=yourserverip ``` ### Mandatory Vars `API_ID` : Goto [my.telegram.org](https://my.telegram.org) to obtain this. `API_HASH` : Goto [my.telegram.org](https://my.telegram.org) to obtain this. `BOT_TOKEN` : Get the bot token from [@BotFather](https://telegram.dog/BotFather) `BIN_CHANNEL` : Create a new channel (private/public), add [@missrose_bot](https://telegram.dog/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 `0.0.0.0` `FQDN` : A Fully Qualified Domain Name if present. Defaults to `WEB_SERVER_BIND_ADDRESS` ## How to use the bot :warning: **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. ## Contributing Feel free to contribute to this project if you have any further ideas ## Contact me [](https://xn--r1a.click/WhySooSerious) [](https://xn--r1a.click/WhyThisUsername) You can contact either via my [Telegram Chat](https://xn--r1a.click/WhyThisUsername) or you can PM me on [@EverythingSuckz](https://xn--r1a.click/EverythingSuckz) ## Credits - Me - [eyaadh](https://github.com/eyaadh) for his awesome [Megatron Bot](https://github.com/eyaadh/megadlbot_oss) - [Dan Tès](https://telegram.dog/haskell) for his [Pyrogram Library](https://github.com/pyrogram/pyrogram)