Skip to content

Telegram Bot to store Posts and Documents and it can Access by Special Links.

License

Notifications You must be signed in to change notification settings

CodeXBotz/File-Sharing-Bot

Repository files navigation

File-sharing-Bot


     

Telegram Bot to store Posts and Documents and it can Access by Special Links. I Guess This Will Be Usefull For Many People.....😇.

Features

  • Fully customisable.
  • Customisable welcome & Forcesub messages.
  • More than one Posts in One Link.
  • Can be deployed on heroku directly.
  • Protect Content to Prevent Forwarding
  • Auto-Delete Files After a Configurable Time

What’s Next

These features are in the pipeline, and contributions from the community are welcome!

  • Channel Join Request
    Implement a feature that prompts users to join a specified Telegram channel before accessing the bot's functionalities.

How to Contribute

  1. Check the contribution guidelines for detailed instructions.
  2. Pick any feature and create a new issue or comment on an existing one.
  3. Discuss your implementation plan with maintainers to align your contributions with project goals.

We encourage all developers to contribute ideas, report bugs, and share improvements. Together, we can make this project even better! 🚀

Setup

  • Add the bot to Database Channel with all permission
  • Add bot to ForceSub channel as Admin with Invite Users via Link Permission if you enabled ForceSub

Installation

Deploy on Heroku

BEFORE YOU DEPLOY ON HEROKU, YOU SHOULD FORK THE REPO AND CHANGE ITS NAME TO ANYTHING ELSE
Deploy

Check This Tutorial Video on YouTube for any Help
Thanks to Erich and his InFoTel for this Video

Deploy on Railway

Deploy on Railway

Deploy on Koyeb

The fastest way to deploy the application is to click the Deploy to Koyeb button below.

Deploy to Koyeb

Deploy in your VPS

git clone https://github.com/CodeXBotz/File-Sharing-Bot
cd File-Sharing-Bot
pip3 install -r requirements.txt
# <Create config.py appropriately>
python3 main.py

Admin Commands

/start - start the bot or get posts

/batch - create link for more than one posts

/genlink - create link for one post

/users - view bot statistics

/broadcast - broadcast any messages to bot users

/stats - checking your bot uptime

Variables

  • API_HASH Your API Hash from my.telegram.org
  • APP_ID Your API ID from my.telegram.org
  • TG_BOT_TOKEN Your bot token from @BotFather
  • OWNER_ID Must enter Your Telegram Id
  • CHANNEL_ID Your Channel ID eg:- -100xxxxxxxx
  • DATABASE_URL Your mongo db url
  • ADMINS Optional: A space separated list of user_ids of Admins, they can only create links
  • START_MESSAGE Optional: start message of bot, use HTML and fillings
  • START_PIC Optional: URL or file path of the image to be sent as the start message
  • FORCE_SUB_MESSAGEOptional:Force sub message of bot, use HTML and Fillings
  • FORCE_SUB_CHANNEL Optional: ForceSub Channel ID, leave 0 if you want disable force sub
  • PROTECT_CONTENT Optional: True if you need to prevent files from forwarding
  • AUTO_DELETE_TIME Set the time in seconds for automatic file deletion. Default is False, which disables auto-deletion.
  • JOIN_REQUEST_ENABLED Optional: Set to "True" to enable join request for the channel. Default is "False".

Extra Variables

  • AUTO_DELETE_MSG put your custom deletion text if you want Setup Custom deletion messaeg,
  • AUTO_DEL_SUCCESS_MSG Set your custom success message for when the file is successfully deleted
  • CUSTOM_CAPTION put your Custom caption text if you want Setup Custom Caption, you can use HTML and fillings for formatting (only for documents)
  • DISABLE_CHANNEL_BUTTON Put True to Disable Channel Share Button, Default if False
  • BOT_STATS_TEXT put your custom text for stats command, use HTML and fillings
  • USER_REPLY_TEXT put your text to show when user sends any message, use HTML
  • DATABASE_NAME Your mongo db session name

Fillings

START_MESSAGE | FORCE_SUB_MESSAGE

  • {first} - User first name
  • {last} - User last name
  • {id} - User ID
  • {mention} - Mention the user
  • {username} - Username

CUSTOM_CAPTION

  • {filename} - file name of the Document
  • {previouscaption} - Original Caption

CUSTOM_STATS

  • {uptime} - Bot Uptime

Support

Join Our Telegram Group For Support/Assistance And Our Channel For Updates.

Report Bugs, Give Feature Requests There..

Credits

  • Thanks To Dan For His Awsome Libary
  • Our Support Group Members

Licence

GNU GPLv3 Image

FILE-SHARING-BOT is Free Software: You can use, study share and improve it at your will. Specifically you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Star this Repo if you Liked it ⭐⭐⭐