Memes Bot
A personal Telegram inline bot to store and search media (photos, GIFs, videos, voice) by keywords.
English
Requirements
- A server with Docker installed
- A Telegram bot token from @BotFather
Setup
1. Create the bot in BotFather
/newbot→ get your token/setinline→ enable inline mode, set a placeholder (e.g.Search memes...)
2. Get your Telegram user ID
Send a message to @userinfobot to find your numeric user ID.
3. Clone and configure
git clone https://git.goyban.space/goyban/memes_bot
cd memes_bot
cp .env.example .env
Edit .env:
BOT_TOKEN=your_telegram_bot_token_here
ALLOWED_USERS=123456789
ALLOWED_USERS is a comma-separated list of Telegram user IDs allowed to use the bot.
4. Run
docker compose up -d --build
The database will be saved in ./bot_db/media.db.
Usage
Adding media — send the bot a photo, GIF, video, or voice message, then type keywords when prompted (comma-separated or one per message), then /done.
Searching inline — in any chat type @yourbotusername keyword to search and send.
Commands
| Command | Description |
|---|---|
/list |
Show all saved media |
/delete <id> |
Remove an entry (get ID from /list) |
/cancel |
Cancel current add operation |
Moving to another server
The only files you need to transfer are:
.envbot_db/media.db
فارسی
پیشنیازها
- یک سرور با Docker نصبشده
- توکن ربات تلگرام از @BotFather
راهاندازی
۱. ساخت ربات در BotFather
/newbot← توکن بگیرید/setinline← حالت اینلاین را فعال کنید (مثلاً:جستجوی میم...)
۲. دریافت شناسه تلگرام
یک پیام به @userinfobot بفرستید تا ID عددیتان را بگیرید.
۳. کلون و تنظیم
git clone https://git.goyban.space/goyban/memes_bot
cd memes_bot
cp .env.example .env
فایل .env را ویرایش کنید:
BOT_TOKEN=توکن_ربات_شما
ALLOWED_USERS=123456789
ALLOWED_USERS لیستی از شناسههای تلگرامی است که اجازه استفاده دارند (با کاما جدا کنید).
۴. اجرا
docker compose up -d --build
دیتابیس در مسیر ./bot_db/media.db ذخیره میشود.
نحوه استفاده
افزودن میم — یک عکس، گیف، ویدیو یا صدا برای ربات بفرستید. ربات از شما کلیدواژه میخواهد. کلیدواژهها را یکییکی یا با کاما جدا بفرستید، سپس /done بزنید.
جستجوی اینلاین — در هر چتی بنویسید @نام_ربات کلیدواژه تا نتایج نمایش داده شود.
دستورات
| دستور | توضیح |
|---|---|
/list |
نمایش همه رسانههای ذخیرهشده |
/delete <id> |
حذف یک مورد (ID را از /list بگیرید) |
/cancel |
لغو عملیات جاری |
انتقال به سرور دیگر
فقط کافی است این دو فایل را منتقل کنید:
.envbot_db/media.db