FileStreamBot

Cover Image

A Telegram bot to all media and documents files to web link .

Report a Bug | Request Feature


## 🍁 About This Bot :

FileStreamBot Logo

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

## ♢ How to make your own : Either you could locally host or deploy on [Heroku](https://heroku.com)
#### ♢ Click on This Drop-down and get more details
Deploy on Heroku : 1. Fork This Repo 2. Click on Deploy Easily

So Follow Above Steps 👆 and then also deply other wise not work

Press the below button to Fast deploy on Heroku [![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy) then goto the variables tab for more info on setting up environmental variables.
Host it on VPS Locally : ```py git clone https://github.com/avipatilpro/FileStreamBot cd 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: ```py API_ID=12345 API_HASH=esx576f8738x883f3sfzx83 BOT_TOKEN=55838383:yourtbottokenhere BIN_CHANNEL=-100 PORT=8080 FQDN=your_server_ip OWNER_ID=your_user_id DATABASE_URL=mongodb_uri ```
Vars and Details : `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. `OWNER_ID` : Your Telegram User ID `DATABASE_URL` : MongoDB URI for saving User IDs when they first Start the Bot. We will use that for Broadcasting to them. I will try to add more features related with Database. If you need help to get the URI you can ask in [Me Telegram](https://t.me/Avishkarpatil). Option Vars `UPDATES_CHANNEL` : Put a Public Channel Username, so every user have to Join that channel to use the bot. Must add bot to channel as Admin to work properly. `BANNED_CHANNELS` : Put IDs of Banned Channels where bot will not work. You can add multiple IDs & separate with Space. `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` `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 : :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. ### Channel Support Bot also Supported with Channels. Just add bot Channel as Admin. If any new file comes in Channel it will edit it with **Get Download Link** Button.
### 😈 Thanks to : - [Avishkarpatil](https://telegram.me/Avishkarpatil) - [EverythingSuckz](https://github.com/EverythingSuckz) - Everyone In This Journey !