# Create virtual environment
python3 -m venv env
# Activate virtual environment
env\Scripts\activate.bat # For Windows
source env/bin/activate # For Linux or MacOS
# Install Packages
pip3 install -r requirements.txt
# Edit info.py with variables as given below then run bot
python3 bot.py
Check sample_info.py
before editing info.py
file
docker run -d \
-e BOT_TOKEN="123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" \
-e API_ID='12345' \
-e API_HASH='0123456789abcdef0123456789abcdef' \
-e CHANNELS='-10012345678' \
-e ADMINS='123456789' \
-e DATABASE_URI="mongodb+srv://...mongodb.net/Database?retryWrites=true&w=majority" \
-e DATABASE_NAME=databasename \
--restart on-failure \
--name mediasearchbot botxtg/media-search-bot
You can also run with env
file like below,
docker run -d \
--env-file .env \
--restart on-failure \
--name mediasearchbot botxtg/media-search-bot
BOT_TOKEN
: Create a bot using @BotFather, and get the Telegram API token.API_ID
: Get this value from telegram.orgAPI_HASH
: Get this value from telegram.orgCHANNELS
: Username or ID of channel or group. Separate multiple IDs by spaceADMINS
: Username or ID of Admin. Separate multiple Admins by spaceDATABASE_URI
: mongoDB URI. Get this value from mongoDB. For more help watch this videoDATABASE_NAME
: Name of the database in mongoDB. For more help watch this videoCOLLECTION_NAME
: Name of the collections. Defaults to Telegram_files. If you going to use same database, then use different collection name for each botCACHE_TIME
: The maximum amount of time in seconds that the result of the inline query may be cached on the serverUSE_CAPTION_FILTER
: Whether bot should use captions to improve search results. (True/False)AUTH_USERS
: Username or ID of users to give access of inline search. Separate multiple users by space. Leave it empty if you don't want to restrict bot usage.AUTH_CHANNEL
: Username or ID of channel. Without subscribing this channel users cannot use bot.START_MSG
: Welcome message for start command.INVITE_MSG
: Auth channel invitation message.USERBOT_STRING_SESSION
: User bot string session.
channel - Get basic infomation about channels
total - Show total of saved files
delete - Delete file from database
index - Index all files from channel or group
logger - Get log file
index
command or run one_time_indexer.py file to save old files in the database that are not indexed yet.|
to separate query and file type while searching for specific type of file. For example: Avengers | video
Contributions are welcome.
Update Channel and Support Group
Code released under The GNU General Public License.