A telegram bot that downloads content and mirrors them 1:1 to google drive
10K+
This is a telegram bot which supports torrent file,magnet uri as well as direct download links,it uses aria2 as a backend for downloading the content and uploads it to google drive. It can be deployed to heroku free dyno or on a server.
To run this project, you will need to set the following environment variables (Click to expand) :
The url where the app will be hosted i.e for heroku it will be https://{appname}.herokuapp.com or for self-hosted server it will be https://{hostname_or_ip}:{port} where port is usally 8443
The bot token for telegram bot, for more info on how to create a bot and get a token visit How to create a telegram bot
A random alphanumeric text used as a salt in generating state for oauth authorization.
Not required in heroku caused generator is used while deploying
The telegram bot url,this is usually in the form https://t.me/{bot_username}
Should there be a filter where password is required for access to the bot
Set as "True" or "False"
Password used for allowing a group chat access to the bot,should be set if "ALLOWLIST" is enabled
Password used for allowing a user access to the bot,should be set if "ALLOWLIST" is enabled
The DATABASE URI for custom SQL Database
The URL for connecting to custom redis instance
The log level to be displayed in console,all the log levels can be found here
Only numeric value is supported
Custom port for hosting the application,but only Ports supported by telegram should be used when the application is not hosted behind a reverse proxy
1) Download [docker-compose.yml](https://github.com/CoolFool/Ravager/blob/main/docker-compose.yml) for running on a server or [docker-compose-local.yml](https://github.com/CoolFool/Ravager/blob/main/docker-compose-local.yml) for running locally with ngrok or other tunneling service for Oauth authentication <br>
2) Open the file in a text editor and fill the environment variables <br>
3) - If `docker-compose-local.yml` is used you have to create a docker network called `ravager_net` <br>
- Forward the connection for `ravager_net` with port `8443` using ngrok or some other tunneling service.
- Get the ip for `ravager_net` using the command `docker inspect ravager_net`
- For ngrok the command should be as follows: `./ngrok https <ravager_net_ip>:8443`
- The url from ngrok will be used as telegram bot webhook and oauth endpoint
- Add the ngrok url and the oauth endpoint `ngrok_url/oauth_handler` to google's oauth api authorized domain.
4) Execute the following command in the same directory
```
docker-compose up -d
```
5) The bot should be up and running <br>
6) For checking the logs you can use `docker logs -f ravager` <br>
/start : Start the authorization flow for google drive access/add_drive : Set default drive either personal or shared drive through the menu/download : Add download task/upload : Upload content if a download fails you can reply to the source message or upload multiple times/abort : Abort an ongoing task/admin_interface : Admin interface access (only available in private chat and for admins)/revoke : Revoke and delete your Google account on the bot/help : See all the commandsContent type
Image
Digest
Size
87.5 MB
Last updated
about 4 years ago
docker pull coolfool/ravager