unzip-bot
unzip-bot copied to clipboard
Telegram bot deployable to heroku that can extract every archive !
Working bot 🥰
Features 👀
- Extract all format of archives like
rar
,zip
,tar
,7z
,tar.xz
, … - Supports password protected archives
- Extract archives from direct links
- Broadcast messages to users
- Ban/Unban users from using your bot
- Send logs in a private channel/group
- Can run only one extract per user at a time
- Fast to answer and process tasks
- Thumbnail can be set
- Problems can be directly reported
- Can send a message to a specific user
- Get infos about users
- Can rename files
- Able to process splitted archives (
.001
) - And some other features 🔥 Dive into the code to find them 🤭
Config vars 📖
-
APP_ID
- Your APP ID. Get it from my.telegram.org -
API_HASH
- Your API_HASH. Get it from my.telegram.org -
BOT_OWNER
- Your Telegram Account ID. Get it from @MissRose_bot (Start the bot and send/info
command). -
BOT_TOKEN
- Bot Token of Your Telegram Bot. Get it from @BotFather -
MONGODB_URL
- Your MongoDB URL (tutorial here) -
LOGS_CHANNEL
- Make a private channel and get its ID (search on Google if you don't know how to do). Using a group works as well, just addRose
, then send/id
(In both cases, make sure to add your bot to the channel/group as an admin !)
Commands ✍️
Copy-paste those to BotFather when he asks you for them
commands - Get commands list
mode - Upload as Doc 📄 / Media 📺
addthumb - Add custom thumbnail
delthumb - Remove your thumbnail
stats - Know if bot is overused
clean - Cancel on-going process
help - In case you need 😭
Deploy 🚧
Deploying is easy 🥰 You can deploy this bot in Heroku or in a VPS ♥️
Star 🌟 Fork 🍴 and Deploy 📤
⚠️ Note : We are using arch linux. But why 🤔
Because arch's p7zip package is the only maintained version of the original p7zip package with some additional features
The lazy way
(if you're in a fork, make sure to replace the template URL with your repo's one)
The easy way
- Install Docker then restart your computer
git clone https://github.com/EDM115/unzip-bot.git
cd unzip-bot
nano .env
docker build -t unzip-bot .
- Open Docker Desktop, go on the Images tab, click on the Run button
- On Optional settings, fill the env variables
The legacy way
git clone https://github.com/EDM115/unzip-bot.git
cd unzip-bot
pip3 install -r requirements.txt
- Install required dependencies
Arch Linux :sudo pacman -S p7zip
Ubuntu/Debian :sudo apt-get install p7zip-full p7zip-rar
- Edit
.env
with your own values
chmod +x start.sh && ./start.sh
DONE 🥳 enjoy the bot ! Be sure to follow me on Github and Star 🌟 this repo to show some support 🥺
How to Build after changes ?
Trust GitHub Actions
- Add new Actions secrets to the repo :
-
DOCKER_USERNAME
: all in lowercase -
DOCKER_TOKEN
: one with all rights, here : https://hub.docker.com/settings/security
-
- Go in Actions tab, 2 workflows are here for ya :
-
Build Docker Image
: Check if it builds without errors -
Publish Docker Image
: Rebuild && publish
-
Do it manually
- Go in the repo's folder
docker build -t unzip-bot .
- If you wanna publish :
docker tag unzip-bot edm115/unzip-bot:latest
(replace edm115
with your docker hub username, unzip-bot
with the repo's name and latest
whith whatever you want)
docker login
login and don't mind the errors
docker push edm115/unzip-bot:latest
(same, replace accordingly)
Found a bug 🐞
If you found a bug in this bot please open an issue or report it on Telegram : @EDM115
Same if you have any feature request 😉
License & Copyright 👮♀️
Copyright (c) 2022 EDM115
This Unarchiver Bot repository is licensed under MIT License (https://github.com/EDM115/unzip-bot/blob/master/LICENSE)
Enjoy copying and modifying, but always mention me
• Inspired by Itz-fork/Nexa's work, but with additional features and bug fixes. This is a maintained repo of the original