{"id":13988824,"url":"https://github.com/m4mallu/mediaBuddy","last_synced_at":"2025-07-22T09:31:33.336Z","repository":{"id":39222916,"uuid":"422443803","full_name":"m4mallu/mediaBuddy","owner":"m4mallu","description":"An inline real-time media searching robot without any database.","archived":false,"fork":false,"pushed_at":"2022-08-13T16:01:37.000Z","size":35,"stargazers_count":30,"open_issues_count":0,"forks_count":43,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-29T07:37:00.313Z","etag":null,"topics":["bot","inline","media","searching","telegram"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/m4mallu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-10-29T04:41:44.000Z","updated_at":"2024-08-14T09:20:14.000Z","dependencies_parsed_at":"2022-08-01T07:59:16.586Z","dependency_job_id":null,"html_url":"https://github.com/m4mallu/mediaBuddy","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/m4mallu/mediaBuddy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m4mallu%2FmediaBuddy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m4mallu%2FmediaBuddy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m4mallu%2FmediaBuddy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m4mallu%2FmediaBuddy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/m4mallu","download_url":"https://codeload.github.com/m4mallu/mediaBuddy/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/m4mallu%2FmediaBuddy/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266465090,"owners_count":23933064,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","inline","media","searching","telegram"],"created_at":"2024-08-09T13:01:22.899Z","updated_at":"2025-07-22T09:31:32.875Z","avatar_url":"https://github.com/m4mallu.png","language":"Python","funding_links":["https://www.paypal.me/space4renjith"],"categories":["Python"],"sub_categories":[],"readme":"\u003ch1 align=\"left\"\u003e\n    \u003ca target=\"_blank\"\u003e\n        MediaBuddy\n        \u003cimg src=\"https://loading.io/assets/img/c/icon/search.svg\" width=\"40px\" style=\"max-width:100%;\"\u003e\n    \u003c/a\u003e\n\u003c/h1\u003e\n\n#### A Telegram Inline media searching robot without any database.\n\u003cbr\u003e\n\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eAbout\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\u003c/p\u003e\n        \u003ca target=\"_blank\"\u003e\n            \u003cimg src=\"https://c.tenor.com/rec5dlPBK2cAAAAd/mr-bean-waiting.gif\" width=\"300px\" /\u003e\n    \u003c/a\u003e\n\n    mediaBuddy is an inline media searching robot. If you have so many movie channels and you are searching for a \n    particular movie in each and everywhere and spending your valuable time in this process, the bot is yours.\n    The bot can search inline in your movie chats and also can provide a link to your queried one, thus you can \n    easily access the required media. Your perfect media buddy.\n\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eWorking\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\u003c/p\u003e\n\n        🔷 When bot is deployed with a user session string, it will find all the groups and channels of the user.\n        🔷 From the above, it sorts the movies channels and groups and make a master list for searching your queries.\n        🔷 When you search a keyword as inline, the bot will search the same in the master list and gives the output.\n        🔷 The output will be the file name with a hyper link to the original file.\n        🔷 By clicking, you can easily migrate to the file location thus saves your valuable time in searching.\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eWhat to do\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\u003c/p\u003e\n\n        🔷 Make an inline bot with Telegram Botfather.\n        🔷 Deploy the bot local pc, VPS or in heroku.\n        🔷 Join some movie channels.\n        🔷 Search movies inline.\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eMandatory Variables\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\u003c/p\u003e\n    \n    🔷 API_HASH        -   Your API Hash, get it from my.telegram.org\n    🔷 APP_ID          -   Your APP ID, get it from my.telegram.org \n    🔷 BOT_TOKEN       -   Your bot token, get it from @BotFather\n    🔷 TG_USER_SESSION -   Your session string (Generate for 'User', dont use any bot session)\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eGenerate User Session\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\u003c/p\u003e\n    \u003ca href=\"https://replit.com/@m4mallu/Pyrogram-V2-SessionStringMaker\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Generate-String%20Session-orange\" height=\"30\" /\u003e\n\u003c/a\u003e\n    \u003cul\u003e\n        \u003cli\u003eOpen the above link and start the application.\u003c/li\u003e\n        \u003cli\u003eGive your APP_ID, API_HASH - Get it from \u003ca href=\"https://my.telegram.org/auth\"\u003e\u003cb\u003eHERE\u003c/b\u003e\u003c/a\u003e \u003c/li\u003e\n        \u003cli\u003eGive your phone number in \u003ca href=\"https://www.cm.com/blog/how-to-format-international-telephone-numbers/\"\u003einternational format\u003c/a\u003e .\u003c/li\u003e\n        \u003cli\u003eGive the OTP and Auth Phrase if any\u003c/li\u003e\n        \u003cli\u003eThis will get your long user session string\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"https://docs.pyrogram.org/topics/storage-engines?highlight=string%20sessions#session-strings\"\u003e\u003cb\u003eKeep the String safe, anyone can access your account using it.\u003c/b\u003e\u003c/a\u003e\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003e@BotFather Commands\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\n    \n    start - Check Alive                     Usage: /start\n    view   - Vire the currents chats        Usage: /viewchats\n    update - Add a chat to the list         Usage: /update -100xxxxxxxxxx\n    delete - Remove chats from the list     Usage: /remove -100xxxxxxxxxx\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eDeploy in VPS\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\n    \u003cul\u003e\n        \u003cli\u003eCreate a \u003ccode\u003econfig.py\u003c/code\u003e file with the Mandatory Variables mentioned above.\u003c/li\u003e\n        \u003cli\u003eRefer \u003ccode\u003esample_config.py\u003c/code\u003e for creating \u003ccode\u003econfig.py\u003c/code\u003e file. don't miss any parameters\u003c/li\u003e\n        \u003cli\u003eOpen terminal and run the following commands.\u003c/li\u003e\n        \u003cli\u003e\u003ccode\u003egit clone https://github.com/m4mallu/mediaBuddy\u003c/code\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ccode\u003ecd mediaBuddy\u003c/code\u003e\u003c/li\u003e\n        \u003cli\u003eSave the \u003ccode\u003econfig.py\u003c/code\u003e file in side the current working directory cloned.\u003c/li\u003e\n        \u003cli\u003eRun the below commands in the same terminal window.\u003c/li\u003e\n    \u003c/ul\u003e\n\n    virtualenv -p python3 venv\n    . ./venv/bin/activate\n    pip3 install -r requirements.txt\n    python3 main.py\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eDeploy Heroku\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\n        \u003ca href=\"https://heroku.com/deploy?template=https://github.com/m4mallu/mediaBuddy\"\u003e\n     \u003cimg height=\"30px\" src=\"https://img.shields.io/badge/Deploy%20To%20Heroku-blueviolet?style=for-the-badge\u0026logo=heroku\"\u003e\n  \u003c/a\u003e\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eLimitations\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\n    \u003cul\u003e\n        \u003cli\u003ePresently \u003ccode\u003edocument\u003c/code\u003e type is only supported.\u003c/li\u003e\n        \u003cli\u003eChance for getting heavy FloodWaits in \u003ccode\u003esearchMessages\u003c/code\u003e in case of massive number of media chats.\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eDeveloper\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\n        \u003cimg alt=\"GPL3\" src =\"https://c.tenor.com/10Zdx_RXqgcAAAAC/programming-crazy.gif\" width=\"260px\" style=\"max-width:100%;\"/\u003e\u003cbr\u003e\n            \u003ca href=\"https://t.me/space4renjith\"\u003e\u003cb\u003eRenjit Mangal\u003c/b\u003e\u003c/a\u003e \u0026nbsp;|\u0026nbsp;\n                \u003ca href=\"https://t.me/rmprojects\"\u003e\u003cb\u003eUpdate Channel\u003c/b\u003e\u003c/a\u003e\n    \u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eDonate\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\u003cbr\u003e\n    \u003cb\u003eBuy me a coffee for the work !\u003c/b\u003e\u003cbr\u003e\n    \u003cimg src=\"https://telegra.ph/file/b926b7e8ea84826d81d8a.png\" width=\"260px\" style=\"max-width:100%;\"/\u003e\u003cbr\u003e\u003cbr\u003e\n      \u003ca href=\"https://www.paypal.me/space4renjith\" target=\"_blank\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Donate-Me-blueviolet?style=for-the-badge\u0026logo=paypal\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eCredits\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\n        \u003ca href=\"https://github.com/pyrogram/pyrogram\"\u003e\u003cb\u003ePyrogram\u003c/b\u003e\u003c/a\u003e\n    \u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003eLicence\u003c/b\u003e\u003c/summary\u003e\n    \u003cp align=\"left\"\u003e\n        \u003ca href=\"https://choosealicense.com/licenses/gpl-3.0/\"\u003e\n            \u003cimg alt=\"GPL3\" src =\"https://telegra.ph/file/dd47727c24b7e7384a760.png\" width=\"150\" height=\"150\"/\u003e\n        \u003c/a\u003e\n    \u003c/p\u003e\n\u003c/details\u003e\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://t.me/space4renjith\"\u003e\n        \u003cimg alt=\"GPL3\" src =\"https://telegra.ph/file/c4f778ccfc576a954dd20.gif\" width=\"340\" height=\"214\"/\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm4mallu%2FmediaBuddy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fm4mallu%2FmediaBuddy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm4mallu%2FmediaBuddy/lists"}