Skip to content

EDM115/unzip-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Unarchiver Bot

A Telegram bot to extract various types of archives

Unzip logo

Code style: black DeepSource

Unzip-Bot Analytics

Working bot ๐Ÿฅฐ

@unzip_edm115bot

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 add Rose, 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

Deploy me ๐Ÿฅบ
(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 edm115/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 :
  • 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 --no-cache -t edm115/unzip-bot .
docker run -d -v downloaded-volume:/app/Downloaded -v thumbnails-volume:/app/Thumbnails --env-file ./.env --network host --name unzip-bot-container edm115/unzip-bot
docker start unzip-bot-container
# if you want to check something
docker exec -it unzip-bot-container sh
docker logs unzip-bot-container
# once you're done
docker stop unzip-bot-container
  • If you wanna publish :
docker tag edm115/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