All Projects â†’ Nukesor â†’ archivebot

Nukesor / archivebot

Licence: MIT License
💾 A telegram bot for backing up and collecting all kinds of media.

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to archivebot

Kodexplorer
A web based file manager,web IDE / browser based code editor
Stars: ✭ 5,490 (+8346.15%)
Mutual labels:  file-upload, file-sharing, archive
ArchiverForGooglePhotos
A tool to maintain an archive/mirror of your Google Photos library for backup purposes.
Stars: ✭ 104 (+60%)
Mutual labels:  photos, downloader, archiver
Sophie
New repo - https://gitlab.com/SophieBot/sophie
Stars: ✭ 28 (-56.92%)
Mutual labels:  telegram-bot, telethon
Archive7z
This library provides handling of 7z files in PHP
Stars: ✭ 73 (+12.31%)
Mutual labels:  archive, archiver
TgTwitterStreamer
Continous Integration from Twitter to Telegram.
Stars: ✭ 55 (-15.38%)
Mutual labels:  telegram-bot, telethon
YouTube-MA
💾 YouTube video metadata archiver written in Golang
Stars: ✭ 17 (-73.85%)
Mutual labels:  downloader, archiver
All-Url-Uploader
A simple telegram Bot, Upload Media File| video To telegram using the direct download link. (youtube, Mediafire, google drive, mega drive, etc)
Stars: ✭ 122 (+87.69%)
Mutual labels:  downloader, telegram-bot
filesharing
Files sharing application made in PHP
Stars: ✭ 52 (-20%)
Mutual labels:  file-upload, file-sharing
Transfer.sh
Easy file sharing from your Android device!
Stars: ✭ 14 (-78.46%)
Mutual labels:  file-upload, file-sharing
Music-downloader-bot
A telegram bot that can send you high-quality audio 🎧🎧🎧
Stars: ✭ 35 (-46.15%)
Mutual labels:  downloader, telegram-bot
Meteor-Files-Demos
Demos for ostrio:files package
Stars: ✭ 51 (-21.54%)
Mutual labels:  file-upload, file-sharing
IPS-BitTracker
Bit Torrent Tracker application for IPS 4.5x Community Suite
Stars: ✭ 18 (-72.31%)
Mutual labels:  file-upload, file-sharing
cpomf
Pomf API compatible file host written in Crystal - The software behind nya.is.
Stars: ✭ 36 (-44.62%)
Mutual labels:  file-upload, file-sharing
allukabot
Modular HunterxHunter themed Telegram Bot for managing your group with additional features.
Stars: ✭ 21 (-67.69%)
Mutual labels:  telegram-bot, telethon
zipline
A ShareX/file upload server that is easy to use, packed with features, and with an easy setup!
Stars: ✭ 215 (+230.77%)
Mutual labels:  file-upload, file-sharing
File-Sharing-Bot
Telegram Bot to store Posts and Documents and it can Access by Special Links.
Stars: ✭ 867 (+1233.85%)
Mutual labels:  telegram-bot, file-sharing
rustypaste
A minimal file upload/pastebin service.
Stars: ✭ 102 (+56.92%)
Mutual labels:  file-upload, file-sharing
crocofile
A webbased file upload manager to share files by sharing an account
Stars: ✭ 40 (-38.46%)
Mutual labels:  file-upload, file-sharing
fansly
Simply scrape / download all the media from an fansly account
Stars: ✭ 351 (+440%)
Mutual labels:  downloader, archive
tgcf
The ultimate tool to automate custom telegram message forwarding. Live-syncer, Auto-poster, backup-bot, cloner, chat-forwarder, duplicator, ... Call it whatever you like! tgcf can fulfill your custom needs.
Stars: ✭ 378 (+481.54%)
Mutual labels:  telegram-bot, telethon

Archive-Bot

MIT Licence Paypal Patreon

A handy bot which enables to download files from telegram chats to your server.

It features a full backup of all files posted in a chat and a continuous backup of incoming new media. A zip archive can then be created and downloaded from the Telegram chat with a single command at any time.

For instance, this is great to collect images and videos from the members of your last holiday trip or to simply push backups or interesting files from your telegram chats to your server.

To send multiple uncompressed pictures and videos with your phone:

  1. Click the share button
  2. Select File
  3. Select Gallery (To send images without compression)

WARNING:
This is a hobby side project of mine. It has been developed for use on Linux, but might work on windows as well. There might be some bugs, but I didn't find them yet. I'm happy about any PR's, feel free to help out!

Features:

  • Zip all files and post it into the chat with the simple /zip command.
  • Clear all files from the server with a simple /clear_history command.
  • Scan the whole chat with scan_chat (Bot needs to be logged in as a normal user for this feature).
  • Specify your accepted media types.
  • Set a custom name for a chat for easier server file management and naming of the zip file.
  • Automatic sorting of files by chat and user. sort_by_user can be disabled.
  • Properly handles forwarded messages (If sort_by_user is enabled, the original sender will be used).
  • Verbose option for notifying users of duplicates or compressed images.

Stuff that's not working:

  • I don't handle all media files yet. Feel free to create a pull request for this.

Installation and starting:

This bot is developed for Linux. Windows isn't tested, but it shouldn't be too hard to make it compatible. Feel free to create a PR.

Dependencies:

  • poetry to setup a virtualenv and run everything conveniently. (If you don't want poetry, you need to install the dependencies defined in pyproject.toml by hand.)
  • A sql database. archivebot uses sqlite by default
  • 7zip if you want to use the zip feature
  1. Clone the repository:

     % git clone [email protected]:nukesor/archivebot && cd archivebot
    
  2. Execute the following commands to install all dependencies and to initialize the database:

     % poetry install
     % poetry run python ./initdb.py
    
  3. Either start the archivebot once or copy the archivebot.toml manually to ~/.config/archivebot.toml and adjust all necessary values.

  4. Start the bot: poetry run python ./main.py

Configuration

You can choose to run archivebot as a bot with a telegram bot token. If run as a normal telegram bot, archivebot is unable to scan the whole chat history. Thereby /scan_chat doesn't work as well as the /zip command, since normal bots can't upload files larger than 20MB. Userbots on the other hand can upload files up to 1.5GB.

If you run the bot as a normal Telegram bot, disable the privacy mode for your bot via the BotFather menu! Telegram bots can't read group messages by default.

In case you decide to run it as a userbot to access all features, set the userbot flag to true and add your phone number to the configuration. You will receive a login code, which has to be entered on the first start and every time your session expires (which happens pretty much never).

Commands:

In group chats the bot expects a command in combination with its username. (In userbot mode that's your own username) E.g. /start@some_bot_name or /start@Nukesor

/start Start the bot
/stop Stop the bot
/clear_history Clear all files from the server.
/zip Create a zip file of all files on the server
/set_name Set the name for this chat. This also determines the name of the target folder on the server.
/scan_chat Scan the whole chat history for files to back up.
/accept ['document', 'photo'] Specify the accepted media Example: '/accept document photo'
/verbose ['true', 'false'] The bot will complain if there are duplicate files or uncompressed images are sent, whilst not being accepted.
/sort_by_user ['true', 'false'] Incoming files will be sorted by user in the server directory for this chat.
/allow_duplicates ['true', 'false'] Allow to save files with duplicate names.
/info Show current settings.
/help Show this text

Botfather commands:

These are the command descriptions formatted for the botfather, in case you want to host your own bot

start - Start archiving Files for this chat
stop - Stop archiving Files for this chat
clear_history - Clear all files from the server.
zip - Create a zip file of all files on the server.
set_name - Set the name for this chat. This also determines the name of the target folder on the server.
scan_chat - Scan the whole chat history for files to back up.
accept - ['document', 'photo'] Specify the allowed media types. Example: `/accept document photo`
sort_by_user - ['true', 'false'] Incoming files will be sorted by user in the server directory for this chat.
verbose - ['true', 'false'] The bot will complain if there are duplicate files or uncompressed images are sent, whilst not being accepted.
allow_duplicates - ['true', 'false'] Allow to save files with duplicate names.
info - Show current settings.
help - Show the help text.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].