BOTKACA
Botkaca allows you to leech (re-upload) contents from internet including torrent to telegram. This bot using Telegram MTProto powered by pyrogram.
Feature
- Set as Private (using password)
- Able to use at group
- Able to leech larger than 2GB (telegram max upload at once)
- Split as video (.mp4, .mkv, .avi, .webm, .wmv, .mov)
- Upload files as media or as document
- Upload files as a single zip file
- Custom thumbnail
- Default torrent tracker
- Customizeable language (default is english)
- Configuration using environment variable
Configuration
Change config by set the corresponding environment variable name.
WORKDIR
: working directory pathLOG_FILE
: log file nameMAX_LOG_SIZE
: maximum log sizeEDIT_SLEEP
: delay between edit messageUPLOAD_MAX_SIZE
: maximum file size (in bytes) upload at once (watchout telegram max upload size)UPLOAD_AS_DOC
: upload any files as document (1 or 0)UPLOAD_AS_ZIP
: upload any files as a bundled zip file (1 or 0)ARIA2_DIR
: download directory before uploadingTORRENT_TRACKER
: addition tracker for all torrent, separated by (,
)BAR_SIZE
: bar size on upload and downloadTHUMBNAIL_NAME
: default thumbnail file nameLOCAL
: languange bot usingCHAT_ID
: default chat_ids that have access to bot, separated by (,
)
Deploy button
Currently google cloud does not supported due to app.json clash with heroku. Check out Google Cloud Run issue #112
How to run
#!/bin/sh
# get botkaca source
git clone https://github.com/azamaulanaaa/botkaca.git
# build then execute using docker image
docker build -t azamaulanaaa/botkaca botkaca
docker run -it azamaulanaaa/botkaca
Bot Details
Specification
- Python 3
- Python Library
- pyrogram asyc
- tgcrypto
- aria2p
- Program Dependece
- aria2c
- ffmpeg + ffprobe
- Dockerize (multi-stage)
Folder Structure
/
: development detail and deploy config/bot
: module root dir__init__.py
: bot config__main__.py
: register handler then run botconfig.py
: create configuration and configurable from env var
/bot/handler
: message handler/bot/locals
: localization and default is en/bot/plugins
: third party implementation