Repository files navigation

DreamxBotz Auto Filter Bot

Powerful Telegram auto-filter, file indexing, verification, premium, and streaming bot.

DreamxBotz Logo

Python 3.12+Docker ReadyTelegram Bot

Demo BotSupport GroupLicense

Auto FilterMongoDBStreamingPremiumVerification

DreamxBotz is a Telegram auto-filter bot for indexing files from channels/groups, searching them quickly, and sharing files through bot commands. It supports MongoDB storage, group settings, force subscription, verification, premium users, streaming links, and admin tools.

This project is intended for educational use. Use it responsibly and follow Telegram rules, hosting provider rules, and copyright laws.

Table Of Contents

Features

Search & IndexingAccess ControlAdmin Tools
Fast auto-filter searchForce subscriptionBroadcast tools
Auto file indexingRequest-to-join FSubUser ban/unban
Caption-based filteringThree-step verificationChat enable/disable
Trending search listPremium user supportMaintenance mode
Movie/series searchPM search toggleLogs and stats
Media & StreamingDatabaseCustomization
Online streaming linksMongoDB supportGroup settings menu
Fast download linksMultiple DB supportCustom captions
Telegraph media infoUser/chat databaseIMDb templates
TMDB movie metadataReferral and premium dataShortener settings
Auto-delete toolsSearch analyticsTutorial links

Requirements

  • Python 3.12+
  • MongoDB database URI
  • Telegram bot token from @BotFather
  • Telegram API_ID and API_HASH from my.telegram.org
  • A log channel where the bot is added as admin

Quick Links

LinkURL
Demo BotOpen on Telegram
Support GroupJoin Support
Telegram APImy.telegram.org
BotFatherCreate Bot
MongoDB AtlasCreate Database

Required Environment Variables

VariableRequiredDescription
BOT_TOKENYesTelegram bot token from BotFather
API_IDYesTelegram API ID from my.telegram.org
API_HASHYesTelegram API hash from my.telegram.org
DATABASE_URIYesMongoDB connection URI
LOG_CHANNELYesTelegram log channel ID, usually starts with -100
ADMINSYesSpace-separated Telegram user IDs or usernames
CHANNELSRecommendedSpace-separated channel/group IDs for indexing

Common Optional Variables

VariableDefaultDescription
DATABASE_NAMECluster0MongoDB database name
COLLECTION_NAMEdreamcinezone_filesMongoDB collection name
BIN_CHANNEL-100Channel used for file/bin logs
PREMIUM_LOGS-100Premium activity log channel
AUTH_CHANNELS-100Force subscription channel IDs
AUTH_REQ_CHANNELS-100Request-to-join force subscription channel IDs
REQST_CHANNEL_ID-100Request channel ID
SUPPORT_CHAT_ID-100Support group ID
SUPPORT_CHAThttps://t.me/Support group link
FQDNWeb bind addressPublic domain for stream links
PORT8080Web server port
HAS_SSLTrueUse HTTPS in generated stream URLs
NO_PORTFalseHide port in generated HTTP stream URLs
STREAM_MODETrueEnable stream mode
PREMIUM_STREAM_MODEFalseRestrict stream mode to premium users
MAINTENANCEFalseEnable maintenance mode
IS_VERIFYFalseEnable verification system
SHORTENER_APIEmptyShortener API key for verification links
SHORTENER_WEBSITEEmptyShortener domain
TMDB_API_KEYEmptyTMDB API key for movie metadata
TMDB_BEARER_TOKENEmptyOptional TMDB bearer token
TELEGRAPH_ACCESS_TOKENEmptyOptional Telegraph access token

Example .env

Copy .env.example to .env and fill your real values:

cp .env.example .env
BOT_TOKEN=123456:your_bot_tokenAPI_ID=123456API_HASH=your_api_hashDATABASE_URI=mongodb+srv://username:db-password@cluster.mongodb.net/DATABASE_NAME=Cluster0COLLECTION_NAME=dreamcinezone_filesADMINS=123456789CHANNELS=-1001234567890LOG_CHANNEL=-1001234567890BIN_CHANNEL=-1001234567890FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Render

Render Deploy

  1. Fork or upload this repository to GitHub.
  2. Create a new Render Web Service.
  3. Select Docker as the runtime.
  4. Add the required environment variables from the table above.
  5. Deploy the service.

Render must receive a valid PORT environment variable or use the default 8080. If stream links use your Render domain, set:

FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Heroku

Heroku Supported

This repository includes app.json, Procfile, and heroku.yml, so it can also run on Heroku-style deployments.

  1. Create a Heroku app.
  2. Add the required environment variables.
  3. Deploy this repository.
  4. Ensure the worker or web process is enabled according to your hosting setup.

Deploy With Docker

Docker Build

Build the image:

docker build -t dreamxbotz .

Run the container:

docker run --env-file .env -p 8080:8080 dreamxbotz

For Docker Compose, .env is optional at compose-load time, but the bot still needs required variables from .env or your shell environment.

Local Setup

Create and activate a virtual environment:

python -m venv .venv
.venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

Create a .env file from the example and add your configuration:

cp .env.example .env

Then run:

python bot.py

Commands

User CommandsAdmin Commands

User Commands

CommandDescription
/startStart the bot
/settingsOpen group settings
/idGet Telegram ID
/infoGet user information
/imdbSearch IMDb/movie details
/searchSearch IMDb/movie details
/moviesSearch movie titles in private chat
/seriesSearch series titles in private chat
/planView premium plans
/myplanCheck active premium plan
/redeemRedeem a premium code
/fontGenerate styled text in private chat
/imgUpload replied media to Telegraph
/cupUpload replied media to Telegraph
/telegraphUpload replied media to Telegraph
/stickeridGet sticker file ID
/aliveCheck bot status
/pingCheck bot response time
/systemShow system information
/requestSend a group request report
#requestSend a group request report

Admin Commands

CommandDescription
/statsShow database stats
/logsGet bot logs
/commandsSet bot command menu
/movie_updateToggle movie update notifications
/pm_searchToggle private message search
/verifyManage verification status
/deleteDelete a specific file from database
/deleteallDelete all files from database
/deletefilesDelete PreDVD/CamRip files
/saveSave replied file to the bot
/sendSend a message to a user
/postCreate a formatted post from a replied file
/setskipSet skip count for indexing forwarded links
/broadcastBroadcast to users
/grp_broadcastBroadcast to groups
/clear_junkClean junk users
/junk_groupClean junk groups
/clear_junk_groupClean junk groups
/clean_groupsClean invalid or inactive groups
/banBan a user
/unbanUnban a user
/bannedList banned users
/usersList saved users
/chatsList saved chats
/inviteCreate invite link for a chat
/enableEnable a disabled group
/disableDisable a group
/leaveMake bot leave a group
/add_premiumAdd premium access
/get_premiumGenerate premium payment link
/remove_premiumRemove premium access
/premium_usersList premium users
/add_redeemCreate redeem code
/restartRestart the bot
/reloadReload group settings
/del_msgDelete bot messages
/maintenanceToggle maintenance mode
/group_cmdShow group command list
/admin_cmdShow admin command list
/top_searchShow top searched items
/trendlistShow trending searches
/set_templateSet IMDb template
/set_captionSet custom file caption
/set_tutorialSet first verification tutorial link
/set_tutorial_2Set second verification tutorial link
/set_tutorial_3Set third verification tutorial link
/set_shortnerSet first shortener
/set_shortner_2Set second shortener
/set_shortner_3Set third shortener
/set_log_channelSet group log channel
/set_timeSet second verification gap
/set_time_2Set third verification gap
/detailsShow group verification settings
/set_fsubSet force subscription channels
/resetallgroupReset all group settings
/trial_resetReset user trial
/remove_fsubRemove force subscription from a group
/delreqDelete saved join requests

Indexing is handled by forwarding channel messages or sending supported Telegram message links to the bot in private chat.

Public Repo Safety

Security

  • Do not commit .env, session files, logs, or virtual environments.
  • Rotate any token or API key that was previously committed publicly.
  • Keep real values only in your hosting provider environment variables.
  • For public forks, avoid hardcoding shortener, TMDB, Telegraph, MongoDB, or Telegram credentials.

Troubleshooting

Bot does not start

Check that BOT_TOKEN, API_ID, API_HASH, DATABASE_URI, LOG_CHANNEL, and ADMINS are set correctly.

MongoDB connection error

Check that DATABASE_URI is valid, the database user has access, and your hosting provider IP is allowed in MongoDB Atlas.

Stream links are wrong

Set FQDN, HAS_SSL, and NO_PORT according to your hosting provider domain.

License

This project is licensed under the MIT License.

Credits

Special thanks to:

Thanks to the DreamXBotz community and all contributors who worked on the original project and related modules.

About

Advance Autofilter Bot With Some Exclusive Features

Topics

Resources

Stars

132 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

DreamxBotz Auto Filter Bot

Powerful Telegram auto-filter, file indexing, verification, premium, and streaming bot.

DreamxBotz Logo

Python 3.12+Docker ReadyTelegram Bot

Demo BotSupport GroupLicense

Auto FilterMongoDBStreamingPremiumVerification

DreamxBotz is a Telegram auto-filter bot for indexing files from channels/groups, searching them quickly, and sharing files through bot commands. It supports MongoDB storage, group settings, force subscription, verification, premium users, streaming links, and admin tools.

This project is intended for educational use. Use it responsibly and follow Telegram rules, hosting provider rules, and copyright laws.

Table Of Contents

Features

Search & IndexingAccess ControlAdmin Tools
Fast auto-filter searchForce subscriptionBroadcast tools
Auto file indexingRequest-to-join FSubUser ban/unban
Caption-based filteringThree-step verificationChat enable/disable
Trending search listPremium user supportMaintenance mode
Movie/series searchPM search toggleLogs and stats
Media & StreamingDatabaseCustomization
Online streaming linksMongoDB supportGroup settings menu
Fast download linksMultiple DB supportCustom captions
Telegraph media infoUser/chat databaseIMDb templates
TMDB movie metadataReferral and premium dataShortener settings
Auto-delete toolsSearch analyticsTutorial links

Requirements

  • Python 3.12+
  • MongoDB database URI
  • Telegram bot token from @BotFather
  • Telegram API_ID and API_HASH from my.telegram.org
  • A log channel where the bot is added as admin

Quick Links

LinkURL
Demo BotOpen on Telegram
Support GroupJoin Support
Telegram APImy.telegram.org
BotFatherCreate Bot
MongoDB AtlasCreate Database

Required Environment Variables

VariableRequiredDescription
BOT_TOKENYesTelegram bot token from BotFather
API_IDYesTelegram API ID from my.telegram.org
API_HASHYesTelegram API hash from my.telegram.org
DATABASE_URIYesMongoDB connection URI
LOG_CHANNELYesTelegram log channel ID, usually starts with -100
ADMINSYesSpace-separated Telegram user IDs or usernames
CHANNELSRecommendedSpace-separated channel/group IDs for indexing

Common Optional Variables

VariableDefaultDescription
DATABASE_NAMECluster0MongoDB database name
COLLECTION_NAMEdreamcinezone_filesMongoDB collection name
BIN_CHANNEL-100Channel used for file/bin logs
PREMIUM_LOGS-100Premium activity log channel
AUTH_CHANNELS-100Force subscription channel IDs
AUTH_REQ_CHANNELS-100Request-to-join force subscription channel IDs
REQST_CHANNEL_ID-100Request channel ID
SUPPORT_CHAT_ID-100Support group ID
SUPPORT_CHAThttps://t.me/Support group link
FQDNWeb bind addressPublic domain for stream links
PORT8080Web server port
HAS_SSLTrueUse HTTPS in generated stream URLs
NO_PORTFalseHide port in generated HTTP stream URLs
STREAM_MODETrueEnable stream mode
PREMIUM_STREAM_MODEFalseRestrict stream mode to premium users
MAINTENANCEFalseEnable maintenance mode
IS_VERIFYFalseEnable verification system
SHORTENER_APIEmptyShortener API key for verification links
SHORTENER_WEBSITEEmptyShortener domain
TMDB_API_KEYEmptyTMDB API key for movie metadata
TMDB_BEARER_TOKENEmptyOptional TMDB bearer token
TELEGRAPH_ACCESS_TOKENEmptyOptional Telegraph access token

Example .env

Copy .env.example to .env and fill your real values:

cp .env.example .env
BOT_TOKEN=123456:your_bot_tokenAPI_ID=123456API_HASH=your_api_hashDATABASE_URI=mongodb+srv://username:db-password@cluster.mongodb.net/DATABASE_NAME=Cluster0COLLECTION_NAME=dreamcinezone_filesADMINS=123456789CHANNELS=-1001234567890LOG_CHANNEL=-1001234567890BIN_CHANNEL=-1001234567890FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Render

Render Deploy

  1. Fork or upload this repository to GitHub.
  2. Create a new Render Web Service.
  3. Select Docker as the runtime.
  4. Add the required environment variables from the table above.
  5. Deploy the service.

Render must receive a valid PORT environment variable or use the default 8080. If stream links use your Render domain, set:

FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Heroku

Heroku Supported

This repository includes app.json, Procfile, and heroku.yml, so it can also run on Heroku-style deployments.

  1. Create a Heroku app.
  2. Add the required environment variables.
  3. Deploy this repository.
  4. Ensure the worker or web process is enabled according to your hosting setup.

Deploy With Docker

Docker Build

Build the image:

docker build -t dreamxbotz .

Run the container:

docker run --env-file .env -p 8080:8080 dreamxbotz

For Docker Compose, .env is optional at compose-load time, but the bot still needs required variables from .env or your shell environment.

Local Setup

Create and activate a virtual environment:

python -m venv .venv
.venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

Create a .env file from the example and add your configuration:

cp .env.example .env

Then run:

python bot.py

Commands

User CommandsAdmin Commands

User Commands

CommandDescription
/startStart the bot
/settingsOpen group settings
/idGet Telegram ID
/infoGet user information
/imdbSearch IMDb/movie details
/searchSearch IMDb/movie details
/moviesSearch movie titles in private chat
/seriesSearch series titles in private chat
/planView premium plans
/myplanCheck active premium plan
/redeemRedeem a premium code
/fontGenerate styled text in private chat
/imgUpload replied media to Telegraph
/cupUpload replied media to Telegraph
/telegraphUpload replied media to Telegraph
/stickeridGet sticker file ID
/aliveCheck bot status
/pingCheck bot response time
/systemShow system information
/requestSend a group request report
#requestSend a group request report

Admin Commands

CommandDescription
/statsShow database stats
/logsGet bot logs
/commandsSet bot command menu
/movie_updateToggle movie update notifications
/pm_searchToggle private message search
/verifyManage verification status
/deleteDelete a specific file from database
/deleteallDelete all files from database
/deletefilesDelete PreDVD/CamRip files
/saveSave replied file to the bot
/sendSend a message to a user
/postCreate a formatted post from a replied file
/setskipSet skip count for indexing forwarded links
/broadcastBroadcast to users
/grp_broadcastBroadcast to groups
/clear_junkClean junk users
/junk_groupClean junk groups
/clear_junk_groupClean junk groups
/clean_groupsClean invalid or inactive groups
/banBan a user
/unbanUnban a user
/bannedList banned users
/usersList saved users
/chatsList saved chats
/inviteCreate invite link for a chat
/enableEnable a disabled group
/disableDisable a group
/leaveMake bot leave a group
/add_premiumAdd premium access
/get_premiumGenerate premium payment link
/remove_premiumRemove premium access
/premium_usersList premium users
/add_redeemCreate redeem code
/restartRestart the bot
/reloadReload group settings
/del_msgDelete bot messages
/maintenanceToggle maintenance mode
/group_cmdShow group command list
/admin_cmdShow admin command list
/top_searchShow top searched items
/trendlistShow trending searches
/set_templateSet IMDb template
/set_captionSet custom file caption
/set_tutorialSet first verification tutorial link
/set_tutorial_2Set second verification tutorial link
/set_tutorial_3Set third verification tutorial link
/set_shortnerSet first shortener
/set_shortner_2Set second shortener
/set_shortner_3Set third shortener
/set_log_channelSet group log channel
/set_timeSet second verification gap
/set_time_2Set third verification gap
/detailsShow group verification settings
/set_fsubSet force subscription channels
/resetallgroupReset all group settings
/trial_resetReset user trial
/remove_fsubRemove force subscription from a group
/delreqDelete saved join requests

Indexing is handled by forwarding channel messages or sending supported Telegram message links to the bot in private chat.

Public Repo Safety

Security

  • Do not commit .env, session files, logs, or virtual environments.
  • Rotate any token or API key that was previously committed publicly.
  • Keep real values only in your hosting provider environment variables.
  • For public forks, avoid hardcoding shortener, TMDB, Telegraph, MongoDB, or Telegram credentials.

Troubleshooting

Bot does not start

Check that BOT_TOKEN, API_ID, API_HASH, DATABASE_URI, LOG_CHANNEL, and ADMINS are set correctly.

MongoDB connection error

Check that DATABASE_URI is valid, the database user has access, and your hosting provider IP is allowed in MongoDB Atlas.

Stream links are wrong

Set FQDN, HAS_SSL, and NO_PORT according to your hosting provider domain.

License

This project is licensed under the MIT License.

Credits

Special thanks to:

Thanks to the DreamXBotz community and all contributors who worked on the original project and related modules.

About

Advance Autofilter Bot With Some Exclusive Features

Topics

Resources

Stars

132 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

DreamxBotz Auto Filter Bot

Powerful Telegram auto-filter, file indexing, verification, premium, and streaming bot.

DreamxBotz Logo

Python 3.12+Docker ReadyTelegram Bot

Demo BotSupport GroupLicense

Auto FilterMongoDBStreamingPremiumVerification

DreamxBotz is a Telegram auto-filter bot for indexing files from channels/groups, searching them quickly, and sharing files through bot commands. It supports MongoDB storage, group settings, force subscription, verification, premium users, streaming links, and admin tools.

This project is intended for educational use. Use it responsibly and follow Telegram rules, hosting provider rules, and copyright laws.

Table Of Contents

Features

Search & IndexingAccess ControlAdmin Tools
Fast auto-filter searchForce subscriptionBroadcast tools
Auto file indexingRequest-to-join FSubUser ban/unban
Caption-based filteringThree-step verificationChat enable/disable
Trending search listPremium user supportMaintenance mode
Movie/series searchPM search toggleLogs and stats
Media & StreamingDatabaseCustomization
Online streaming linksMongoDB supportGroup settings menu
Fast download linksMultiple DB supportCustom captions
Telegraph media infoUser/chat databaseIMDb templates
TMDB movie metadataReferral and premium dataShortener settings
Auto-delete toolsSearch analyticsTutorial links

Requirements

  • Python 3.12+
  • MongoDB database URI
  • Telegram bot token from @BotFather
  • Telegram API_ID and API_HASH from my.telegram.org
  • A log channel where the bot is added as admin

Quick Links

LinkURL
Demo BotOpen on Telegram
Support GroupJoin Support
Telegram APImy.telegram.org
BotFatherCreate Bot
MongoDB AtlasCreate Database

Required Environment Variables

VariableRequiredDescription
BOT_TOKENYesTelegram bot token from BotFather
API_IDYesTelegram API ID from my.telegram.org
API_HASHYesTelegram API hash from my.telegram.org
DATABASE_URIYesMongoDB connection URI
LOG_CHANNELYesTelegram log channel ID, usually starts with -100
ADMINSYesSpace-separated Telegram user IDs or usernames
CHANNELSRecommendedSpace-separated channel/group IDs for indexing

Common Optional Variables

VariableDefaultDescription
DATABASE_NAMECluster0MongoDB database name
COLLECTION_NAMEdreamcinezone_filesMongoDB collection name
BIN_CHANNEL-100Channel used for file/bin logs
PREMIUM_LOGS-100Premium activity log channel
AUTH_CHANNELS-100Force subscription channel IDs
AUTH_REQ_CHANNELS-100Request-to-join force subscription channel IDs
REQST_CHANNEL_ID-100Request channel ID
SUPPORT_CHAT_ID-100Support group ID
SUPPORT_CHAThttps://t.me/Support group link
FQDNWeb bind addressPublic domain for stream links
PORT8080Web server port
HAS_SSLTrueUse HTTPS in generated stream URLs
NO_PORTFalseHide port in generated HTTP stream URLs
STREAM_MODETrueEnable stream mode
PREMIUM_STREAM_MODEFalseRestrict stream mode to premium users
MAINTENANCEFalseEnable maintenance mode
IS_VERIFYFalseEnable verification system
SHORTENER_APIEmptyShortener API key for verification links
SHORTENER_WEBSITEEmptyShortener domain
TMDB_API_KEYEmptyTMDB API key for movie metadata
TMDB_BEARER_TOKENEmptyOptional TMDB bearer token
TELEGRAPH_ACCESS_TOKENEmptyOptional Telegraph access token

Example .env

Copy .env.example to .env and fill your real values:

cp .env.example .env
BOT_TOKEN=123456:your_bot_tokenAPI_ID=123456API_HASH=your_api_hashDATABASE_URI=mongodb+srv://username:db-password@cluster.mongodb.net/DATABASE_NAME=Cluster0COLLECTION_NAME=dreamcinezone_filesADMINS=123456789CHANNELS=-1001234567890LOG_CHANNEL=-1001234567890BIN_CHANNEL=-1001234567890FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Render

Render Deploy

  1. Fork or upload this repository to GitHub.
  2. Create a new Render Web Service.
  3. Select Docker as the runtime.
  4. Add the required environment variables from the table above.
  5. Deploy the service.

Render must receive a valid PORT environment variable or use the default 8080. If stream links use your Render domain, set:

FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Heroku

Heroku Supported

This repository includes app.json, Procfile, and heroku.yml, so it can also run on Heroku-style deployments.

  1. Create a Heroku app.
  2. Add the required environment variables.
  3. Deploy this repository.
  4. Ensure the worker or web process is enabled according to your hosting setup.

Deploy With Docker

Docker Build

Build the image:

docker build -t dreamxbotz .

Run the container:

docker run --env-file .env -p 8080:8080 dreamxbotz

For Docker Compose, .env is optional at compose-load time, but the bot still needs required variables from .env or your shell environment.

Local Setup

Create and activate a virtual environment:

python -m venv .venv
.venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

Create a .env file from the example and add your configuration:

cp .env.example .env

Then run:

python bot.py

Commands

User CommandsAdmin Commands

User Commands

CommandDescription
/startStart the bot
/settingsOpen group settings
/idGet Telegram ID
/infoGet user information
/imdbSearch IMDb/movie details
/searchSearch IMDb/movie details
/moviesSearch movie titles in private chat
/seriesSearch series titles in private chat
/planView premium plans
/myplanCheck active premium plan
/redeemRedeem a premium code
/fontGenerate styled text in private chat
/imgUpload replied media to Telegraph
/cupUpload replied media to Telegraph
/telegraphUpload replied media to Telegraph
/stickeridGet sticker file ID
/aliveCheck bot status
/pingCheck bot response time
/systemShow system information
/requestSend a group request report
#requestSend a group request report

Admin Commands

CommandDescription
/statsShow database stats
/logsGet bot logs
/commandsSet bot command menu
/movie_updateToggle movie update notifications
/pm_searchToggle private message search
/verifyManage verification status
/deleteDelete a specific file from database
/deleteallDelete all files from database
/deletefilesDelete PreDVD/CamRip files
/saveSave replied file to the bot
/sendSend a message to a user
/postCreate a formatted post from a replied file
/setskipSet skip count for indexing forwarded links
/broadcastBroadcast to users
/grp_broadcastBroadcast to groups
/clear_junkClean junk users
/junk_groupClean junk groups
/clear_junk_groupClean junk groups
/clean_groupsClean invalid or inactive groups
/banBan a user
/unbanUnban a user
/bannedList banned users
/usersList saved users
/chatsList saved chats
/inviteCreate invite link for a chat
/enableEnable a disabled group
/disableDisable a group
/leaveMake bot leave a group
/add_premiumAdd premium access
/get_premiumGenerate premium payment link
/remove_premiumRemove premium access
/premium_usersList premium users
/add_redeemCreate redeem code
/restartRestart the bot
/reloadReload group settings
/del_msgDelete bot messages
/maintenanceToggle maintenance mode
/group_cmdShow group command list
/admin_cmdShow admin command list
/top_searchShow top searched items
/trendlistShow trending searches
/set_templateSet IMDb template
/set_captionSet custom file caption
/set_tutorialSet first verification tutorial link
/set_tutorial_2Set second verification tutorial link
/set_tutorial_3Set third verification tutorial link
/set_shortnerSet first shortener
/set_shortner_2Set second shortener
/set_shortner_3Set third shortener
/set_log_channelSet group log channel
/set_timeSet second verification gap
/set_time_2Set third verification gap
/detailsShow group verification settings
/set_fsubSet force subscription channels
/resetallgroupReset all group settings
/trial_resetReset user trial
/remove_fsubRemove force subscription from a group
/delreqDelete saved join requests

Indexing is handled by forwarding channel messages or sending supported Telegram message links to the bot in private chat.

Public Repo Safety

Security

  • Do not commit .env, session files, logs, or virtual environments.
  • Rotate any token or API key that was previously committed publicly.
  • Keep real values only in your hosting provider environment variables.
  • For public forks, avoid hardcoding shortener, TMDB, Telegraph, MongoDB, or Telegram credentials.

Troubleshooting

Bot does not start

Check that BOT_TOKEN, API_ID, API_HASH, DATABASE_URI, LOG_CHANNEL, and ADMINS are set correctly.

MongoDB connection error

Check that DATABASE_URI is valid, the database user has access, and your hosting provider IP is allowed in MongoDB Atlas.

Stream links are wrong

Set FQDN, HAS_SSL, and NO_PORT according to your hosting provider domain.

License

This project is licensed under the MIT License.

Credits

Special thanks to:

Thanks to the DreamXBotz community and all contributors who worked on the original project and related modules.

About

Advance Autofilter Bot With Some Exclusive Features

Topics

Resources

Stars

132 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

DreamxBotz Auto Filter Bot

Powerful Telegram auto-filter, file indexing, verification, premium, and streaming bot.

DreamxBotz Logo

Python 3.12+Docker ReadyTelegram Bot

Demo BotSupport GroupLicense

Auto FilterMongoDBStreamingPremiumVerification

DreamxBotz is a Telegram auto-filter bot for indexing files from channels/groups, searching them quickly, and sharing files through bot commands. It supports MongoDB storage, group settings, force subscription, verification, premium users, streaming links, and admin tools.

This project is intended for educational use. Use it responsibly and follow Telegram rules, hosting provider rules, and copyright laws.

Table Of Contents

Features

Search & IndexingAccess ControlAdmin Tools
Fast auto-filter searchForce subscriptionBroadcast tools
Auto file indexingRequest-to-join FSubUser ban/unban
Caption-based filteringThree-step verificationChat enable/disable
Trending search listPremium user supportMaintenance mode
Movie/series searchPM search toggleLogs and stats
Media & StreamingDatabaseCustomization
Online streaming linksMongoDB supportGroup settings menu
Fast download linksMultiple DB supportCustom captions
Telegraph media infoUser/chat databaseIMDb templates
TMDB movie metadataReferral and premium dataShortener settings
Auto-delete toolsSearch analyticsTutorial links

Requirements

  • Python 3.12+
  • MongoDB database URI
  • Telegram bot token from @BotFather
  • Telegram API_ID and API_HASH from my.telegram.org
  • A log channel where the bot is added as admin

Quick Links

LinkURL
Demo BotOpen on Telegram
Support GroupJoin Support
Telegram APImy.telegram.org
BotFatherCreate Bot
MongoDB AtlasCreate Database

Required Environment Variables

VariableRequiredDescription
BOT_TOKENYesTelegram bot token from BotFather
API_IDYesTelegram API ID from my.telegram.org
API_HASHYesTelegram API hash from my.telegram.org
DATABASE_URIYesMongoDB connection URI
LOG_CHANNELYesTelegram log channel ID, usually starts with -100
ADMINSYesSpace-separated Telegram user IDs or usernames
CHANNELSRecommendedSpace-separated channel/group IDs for indexing

Common Optional Variables

VariableDefaultDescription
DATABASE_NAMECluster0MongoDB database name
COLLECTION_NAMEdreamcinezone_filesMongoDB collection name
BIN_CHANNEL-100Channel used for file/bin logs
PREMIUM_LOGS-100Premium activity log channel
AUTH_CHANNELS-100Force subscription channel IDs
AUTH_REQ_CHANNELS-100Request-to-join force subscription channel IDs
REQST_CHANNEL_ID-100Request channel ID
SUPPORT_CHAT_ID-100Support group ID
SUPPORT_CHAThttps://t.me/Support group link
FQDNWeb bind addressPublic domain for stream links
PORT8080Web server port
HAS_SSLTrueUse HTTPS in generated stream URLs
NO_PORTFalseHide port in generated HTTP stream URLs
STREAM_MODETrueEnable stream mode
PREMIUM_STREAM_MODEFalseRestrict stream mode to premium users
MAINTENANCEFalseEnable maintenance mode
IS_VERIFYFalseEnable verification system
SHORTENER_APIEmptyShortener API key for verification links
SHORTENER_WEBSITEEmptyShortener domain
TMDB_API_KEYEmptyTMDB API key for movie metadata
TMDB_BEARER_TOKENEmptyOptional TMDB bearer token
TELEGRAPH_ACCESS_TOKENEmptyOptional Telegraph access token

Example .env

Copy .env.example to .env and fill your real values:

cp .env.example .env
BOT_TOKEN=123456:your_bot_tokenAPI_ID=123456API_HASH=your_api_hashDATABASE_URI=mongodb+srv://username:db-password@cluster.mongodb.net/DATABASE_NAME=Cluster0COLLECTION_NAME=dreamcinezone_filesADMINS=123456789CHANNELS=-1001234567890LOG_CHANNEL=-1001234567890BIN_CHANNEL=-1001234567890FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Render

Render Deploy

  1. Fork or upload this repository to GitHub.
  2. Create a new Render Web Service.
  3. Select Docker as the runtime.
  4. Add the required environment variables from the table above.
  5. Deploy the service.

Render must receive a valid PORT environment variable or use the default 8080. If stream links use your Render domain, set:

FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Heroku

Heroku Supported

This repository includes app.json, Procfile, and heroku.yml, so it can also run on Heroku-style deployments.

  1. Create a Heroku app.
  2. Add the required environment variables.
  3. Deploy this repository.
  4. Ensure the worker or web process is enabled according to your hosting setup.

Deploy With Docker

Docker Build

Build the image:

docker build -t dreamxbotz .

Run the container:

docker run --env-file .env -p 8080:8080 dreamxbotz

For Docker Compose, .env is optional at compose-load time, but the bot still needs required variables from .env or your shell environment.

Local Setup

Create and activate a virtual environment:

python -m venv .venv
.venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

Create a .env file from the example and add your configuration:

cp .env.example .env

Then run:

python bot.py

Commands

User CommandsAdmin Commands

User Commands

CommandDescription
/startStart the bot
/settingsOpen group settings
/idGet Telegram ID
/infoGet user information
/imdbSearch IMDb/movie details
/searchSearch IMDb/movie details
/moviesSearch movie titles in private chat
/seriesSearch series titles in private chat
/planView premium plans
/myplanCheck active premium plan
/redeemRedeem a premium code
/fontGenerate styled text in private chat
/imgUpload replied media to Telegraph
/cupUpload replied media to Telegraph
/telegraphUpload replied media to Telegraph
/stickeridGet sticker file ID
/aliveCheck bot status
/pingCheck bot response time
/systemShow system information
/requestSend a group request report
#requestSend a group request report

Admin Commands

CommandDescription
/statsShow database stats
/logsGet bot logs
/commandsSet bot command menu
/movie_updateToggle movie update notifications
/pm_searchToggle private message search
/verifyManage verification status
/deleteDelete a specific file from database
/deleteallDelete all files from database
/deletefilesDelete PreDVD/CamRip files
/saveSave replied file to the bot
/sendSend a message to a user
/postCreate a formatted post from a replied file
/setskipSet skip count for indexing forwarded links
/broadcastBroadcast to users
/grp_broadcastBroadcast to groups
/clear_junkClean junk users
/junk_groupClean junk groups
/clear_junk_groupClean junk groups
/clean_groupsClean invalid or inactive groups
/banBan a user
/unbanUnban a user
/bannedList banned users
/usersList saved users
/chatsList saved chats
/inviteCreate invite link for a chat
/enableEnable a disabled group
/disableDisable a group
/leaveMake bot leave a group
/add_premiumAdd premium access
/get_premiumGenerate premium payment link
/remove_premiumRemove premium access
/premium_usersList premium users
/add_redeemCreate redeem code
/restartRestart the bot
/reloadReload group settings
/del_msgDelete bot messages
/maintenanceToggle maintenance mode
/group_cmdShow group command list
/admin_cmdShow admin command list
/top_searchShow top searched items
/trendlistShow trending searches
/set_templateSet IMDb template
/set_captionSet custom file caption
/set_tutorialSet first verification tutorial link
/set_tutorial_2Set second verification tutorial link
/set_tutorial_3Set third verification tutorial link
/set_shortnerSet first shortener
/set_shortner_2Set second shortener
/set_shortner_3Set third shortener
/set_log_channelSet group log channel
/set_timeSet second verification gap
/set_time_2Set third verification gap
/detailsShow group verification settings
/set_fsubSet force subscription channels
/resetallgroupReset all group settings
/trial_resetReset user trial
/remove_fsubRemove force subscription from a group
/delreqDelete saved join requests

Indexing is handled by forwarding channel messages or sending supported Telegram message links to the bot in private chat.

Public Repo Safety

Security

  • Do not commit .env, session files, logs, or virtual environments.
  • Rotate any token or API key that was previously committed publicly.
  • Keep real values only in your hosting provider environment variables.
  • For public forks, avoid hardcoding shortener, TMDB, Telegraph, MongoDB, or Telegram credentials.

Troubleshooting

Bot does not start

Check that BOT_TOKEN, API_ID, API_HASH, DATABASE_URI, LOG_CHANNEL, and ADMINS are set correctly.

MongoDB connection error

Check that DATABASE_URI is valid, the database user has access, and your hosting provider IP is allowed in MongoDB Atlas.

Stream links are wrong

Set FQDN, HAS_SSL, and NO_PORT according to your hosting provider domain.

License

This project is licensed under the MIT License.

Credits

Special thanks to:

Thanks to the DreamXBotz community and all contributors who worked on the original project and related modules.

About

Advance Autofilter Bot With Some Exclusive Features

Topics

Resources

Stars

132 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

DreamxBotz Auto Filter Bot

Powerful Telegram auto-filter, file indexing, verification, premium, and streaming bot.

DreamxBotz Logo

Python 3.12+Docker ReadyTelegram Bot

Demo BotSupport GroupLicense

Auto FilterMongoDBStreamingPremiumVerification

DreamxBotz is a Telegram auto-filter bot for indexing files from channels/groups, searching them quickly, and sharing files through bot commands. It supports MongoDB storage, group settings, force subscription, verification, premium users, streaming links, and admin tools.

This project is intended for educational use. Use it responsibly and follow Telegram rules, hosting provider rules, and copyright laws.

Table Of Contents

Features

Search & IndexingAccess ControlAdmin Tools
Fast auto-filter searchForce subscriptionBroadcast tools
Auto file indexingRequest-to-join FSubUser ban/unban
Caption-based filteringThree-step verificationChat enable/disable
Trending search listPremium user supportMaintenance mode
Movie/series searchPM search toggleLogs and stats
Media & StreamingDatabaseCustomization
Online streaming linksMongoDB supportGroup settings menu
Fast download linksMultiple DB supportCustom captions
Telegraph media infoUser/chat databaseIMDb templates
TMDB movie metadataReferral and premium dataShortener settings
Auto-delete toolsSearch analyticsTutorial links

Requirements

  • Python 3.12+
  • MongoDB database URI
  • Telegram bot token from @BotFather
  • Telegram API_ID and API_HASH from my.telegram.org
  • A log channel where the bot is added as admin

Quick Links

LinkURL
Demo BotOpen on Telegram
Support GroupJoin Support
Telegram APImy.telegram.org
BotFatherCreate Bot
MongoDB AtlasCreate Database

Required Environment Variables

VariableRequiredDescription
BOT_TOKENYesTelegram bot token from BotFather
API_IDYesTelegram API ID from my.telegram.org
API_HASHYesTelegram API hash from my.telegram.org
DATABASE_URIYesMongoDB connection URI
LOG_CHANNELYesTelegram log channel ID, usually starts with -100
ADMINSYesSpace-separated Telegram user IDs or usernames
CHANNELSRecommendedSpace-separated channel/group IDs for indexing

Common Optional Variables

VariableDefaultDescription
DATABASE_NAMECluster0MongoDB database name
COLLECTION_NAMEdreamcinezone_filesMongoDB collection name
BIN_CHANNEL-100Channel used for file/bin logs
PREMIUM_LOGS-100Premium activity log channel
AUTH_CHANNELS-100Force subscription channel IDs
AUTH_REQ_CHANNELS-100Request-to-join force subscription channel IDs
REQST_CHANNEL_ID-100Request channel ID
SUPPORT_CHAT_ID-100Support group ID
SUPPORT_CHAThttps://t.me/Support group link
FQDNWeb bind addressPublic domain for stream links
PORT8080Web server port
HAS_SSLTrueUse HTTPS in generated stream URLs
NO_PORTFalseHide port in generated HTTP stream URLs
STREAM_MODETrueEnable stream mode
PREMIUM_STREAM_MODEFalseRestrict stream mode to premium users
MAINTENANCEFalseEnable maintenance mode
IS_VERIFYFalseEnable verification system
SHORTENER_APIEmptyShortener API key for verification links
SHORTENER_WEBSITEEmptyShortener domain
TMDB_API_KEYEmptyTMDB API key for movie metadata
TMDB_BEARER_TOKENEmptyOptional TMDB bearer token
TELEGRAPH_ACCESS_TOKENEmptyOptional Telegraph access token

Example .env

Copy .env.example to .env and fill your real values:

cp .env.example .env
BOT_TOKEN=123456:your_bot_tokenAPI_ID=123456API_HASH=your_api_hashDATABASE_URI=mongodb+srv://username:db-password@cluster.mongodb.net/DATABASE_NAME=Cluster0COLLECTION_NAME=dreamcinezone_filesADMINS=123456789CHANNELS=-1001234567890LOG_CHANNEL=-1001234567890BIN_CHANNEL=-1001234567890FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Render

Render Deploy

  1. Fork or upload this repository to GitHub.
  2. Create a new Render Web Service.
  3. Select Docker as the runtime.
  4. Add the required environment variables from the table above.
  5. Deploy the service.

Render must receive a valid PORT environment variable or use the default 8080. If stream links use your Render domain, set:

FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Heroku

Heroku Supported

This repository includes app.json, Procfile, and heroku.yml, so it can also run on Heroku-style deployments.

  1. Create a Heroku app.
  2. Add the required environment variables.
  3. Deploy this repository.
  4. Ensure the worker or web process is enabled according to your hosting setup.

Deploy With Docker

Docker Build

Build the image:

docker build -t dreamxbotz .

Run the container:

docker run --env-file .env -p 8080:8080 dreamxbotz

For Docker Compose, .env is optional at compose-load time, but the bot still needs required variables from .env or your shell environment.

Local Setup

Create and activate a virtual environment:

python -m venv .venv
.venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

Create a .env file from the example and add your configuration:

cp .env.example .env

Then run:

python bot.py

Commands

User CommandsAdmin Commands

User Commands

CommandDescription
/startStart the bot
/settingsOpen group settings
/idGet Telegram ID
/infoGet user information
/imdbSearch IMDb/movie details
/searchSearch IMDb/movie details
/moviesSearch movie titles in private chat
/seriesSearch series titles in private chat
/planView premium plans
/myplanCheck active premium plan
/redeemRedeem a premium code
/fontGenerate styled text in private chat
/imgUpload replied media to Telegraph
/cupUpload replied media to Telegraph
/telegraphUpload replied media to Telegraph
/stickeridGet sticker file ID
/aliveCheck bot status
/pingCheck bot response time
/systemShow system information
/requestSend a group request report
#requestSend a group request report

Admin Commands

CommandDescription
/statsShow database stats
/logsGet bot logs
/commandsSet bot command menu
/movie_updateToggle movie update notifications
/pm_searchToggle private message search
/verifyManage verification status
/deleteDelete a specific file from database
/deleteallDelete all files from database
/deletefilesDelete PreDVD/CamRip files
/saveSave replied file to the bot
/sendSend a message to a user
/postCreate a formatted post from a replied file
/setskipSet skip count for indexing forwarded links
/broadcastBroadcast to users
/grp_broadcastBroadcast to groups
/clear_junkClean junk users
/junk_groupClean junk groups
/clear_junk_groupClean junk groups
/clean_groupsClean invalid or inactive groups
/banBan a user
/unbanUnban a user
/bannedList banned users
/usersList saved users
/chatsList saved chats
/inviteCreate invite link for a chat
/enableEnable a disabled group
/disableDisable a group
/leaveMake bot leave a group
/add_premiumAdd premium access
/get_premiumGenerate premium payment link
/remove_premiumRemove premium access
/premium_usersList premium users
/add_redeemCreate redeem code
/restartRestart the bot
/reloadReload group settings
/del_msgDelete bot messages
/maintenanceToggle maintenance mode
/group_cmdShow group command list
/admin_cmdShow admin command list
/top_searchShow top searched items
/trendlistShow trending searches
/set_templateSet IMDb template
/set_captionSet custom file caption
/set_tutorialSet first verification tutorial link
/set_tutorial_2Set second verification tutorial link
/set_tutorial_3Set third verification tutorial link
/set_shortnerSet first shortener
/set_shortner_2Set second shortener
/set_shortner_3Set third shortener
/set_log_channelSet group log channel
/set_timeSet second verification gap
/set_time_2Set third verification gap
/detailsShow group verification settings
/set_fsubSet force subscription channels
/resetallgroupReset all group settings
/trial_resetReset user trial
/remove_fsubRemove force subscription from a group
/delreqDelete saved join requests

Indexing is handled by forwarding channel messages or sending supported Telegram message links to the bot in private chat.

Public Repo Safety

Security

  • Do not commit .env, session files, logs, or virtual environments.
  • Rotate any token or API key that was previously committed publicly.
  • Keep real values only in your hosting provider environment variables.
  • For public forks, avoid hardcoding shortener, TMDB, Telegraph, MongoDB, or Telegram credentials.

Troubleshooting

Bot does not start

Check that BOT_TOKEN, API_ID, API_HASH, DATABASE_URI, LOG_CHANNEL, and ADMINS are set correctly.

MongoDB connection error

Check that DATABASE_URI is valid, the database user has access, and your hosting provider IP is allowed in MongoDB Atlas.

Stream links are wrong

Set FQDN, HAS_SSL, and NO_PORT according to your hosting provider domain.

License

This project is licensed under the MIT License.

Credits

Special thanks to:

Thanks to the DreamXBotz community and all contributors who worked on the original project and related modules.

About

Advance Autofilter Bot With Some Exclusive Features

Topics

Resources

Stars

132 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

DreamxBotz Auto Filter Bot

Powerful Telegram auto-filter, file indexing, verification, premium, and streaming bot.

DreamxBotz Logo

Python 3.12+Docker ReadyTelegram Bot

Demo BotSupport GroupLicense

Auto FilterMongoDBStreamingPremiumVerification

DreamxBotz is a Telegram auto-filter bot for indexing files from channels/groups, searching them quickly, and sharing files through bot commands. It supports MongoDB storage, group settings, force subscription, verification, premium users, streaming links, and admin tools.

This project is intended for educational use. Use it responsibly and follow Telegram rules, hosting provider rules, and copyright laws.

Table Of Contents

Features

Search & IndexingAccess ControlAdmin Tools
Fast auto-filter searchForce subscriptionBroadcast tools
Auto file indexingRequest-to-join FSubUser ban/unban
Caption-based filteringThree-step verificationChat enable/disable
Trending search listPremium user supportMaintenance mode
Movie/series searchPM search toggleLogs and stats
Media & StreamingDatabaseCustomization
Online streaming linksMongoDB supportGroup settings menu
Fast download linksMultiple DB supportCustom captions
Telegraph media infoUser/chat databaseIMDb templates
TMDB movie metadataReferral and premium dataShortener settings
Auto-delete toolsSearch analyticsTutorial links

Requirements

  • Python 3.12+
  • MongoDB database URI
  • Telegram bot token from @BotFather
  • Telegram API_ID and API_HASH from my.telegram.org
  • A log channel where the bot is added as admin

Quick Links

LinkURL
Demo BotOpen on Telegram
Support GroupJoin Support
Telegram APImy.telegram.org
BotFatherCreate Bot
MongoDB AtlasCreate Database

Required Environment Variables

VariableRequiredDescription
BOT_TOKENYesTelegram bot token from BotFather
API_IDYesTelegram API ID from my.telegram.org
API_HASHYesTelegram API hash from my.telegram.org
DATABASE_URIYesMongoDB connection URI
LOG_CHANNELYesTelegram log channel ID, usually starts with -100
ADMINSYesSpace-separated Telegram user IDs or usernames
CHANNELSRecommendedSpace-separated channel/group IDs for indexing

Common Optional Variables

VariableDefaultDescription
DATABASE_NAMECluster0MongoDB database name
COLLECTION_NAMEdreamcinezone_filesMongoDB collection name
BIN_CHANNEL-100Channel used for file/bin logs
PREMIUM_LOGS-100Premium activity log channel
AUTH_CHANNELS-100Force subscription channel IDs
AUTH_REQ_CHANNELS-100Request-to-join force subscription channel IDs
REQST_CHANNEL_ID-100Request channel ID
SUPPORT_CHAT_ID-100Support group ID
SUPPORT_CHAThttps://t.me/Support group link
FQDNWeb bind addressPublic domain for stream links
PORT8080Web server port
HAS_SSLTrueUse HTTPS in generated stream URLs
NO_PORTFalseHide port in generated HTTP stream URLs
STREAM_MODETrueEnable stream mode
PREMIUM_STREAM_MODEFalseRestrict stream mode to premium users
MAINTENANCEFalseEnable maintenance mode
IS_VERIFYFalseEnable verification system
SHORTENER_APIEmptyShortener API key for verification links
SHORTENER_WEBSITEEmptyShortener domain
TMDB_API_KEYEmptyTMDB API key for movie metadata
TMDB_BEARER_TOKENEmptyOptional TMDB bearer token
TELEGRAPH_ACCESS_TOKENEmptyOptional Telegraph access token

Example .env

Copy .env.example to .env and fill your real values:

cp .env.example .env
BOT_TOKEN=123456:your_bot_tokenAPI_ID=123456API_HASH=your_api_hashDATABASE_URI=mongodb+srv://username:db-password@cluster.mongodb.net/DATABASE_NAME=Cluster0COLLECTION_NAME=dreamcinezone_filesADMINS=123456789CHANNELS=-1001234567890LOG_CHANNEL=-1001234567890BIN_CHANNEL=-1001234567890FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Render

Render Deploy

  1. Fork or upload this repository to GitHub.
  2. Create a new Render Web Service.
  3. Select Docker as the runtime.
  4. Add the required environment variables from the table above.
  5. Deploy the service.

Render must receive a valid PORT environment variable or use the default 8080. If stream links use your Render domain, set:

FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Heroku

Heroku Supported

This repository includes app.json, Procfile, and heroku.yml, so it can also run on Heroku-style deployments.

  1. Create a Heroku app.
  2. Add the required environment variables.
  3. Deploy this repository.
  4. Ensure the worker or web process is enabled according to your hosting setup.

Deploy With Docker

Docker Build

Build the image:

docker build -t dreamxbotz .

Run the container:

docker run --env-file .env -p 8080:8080 dreamxbotz

For Docker Compose, .env is optional at compose-load time, but the bot still needs required variables from .env or your shell environment.

Local Setup

Create and activate a virtual environment:

python -m venv .venv
.venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

Create a .env file from the example and add your configuration:

cp .env.example .env

Then run:

python bot.py

Commands

User CommandsAdmin Commands

User Commands

CommandDescription
/startStart the bot
/settingsOpen group settings
/idGet Telegram ID
/infoGet user information
/imdbSearch IMDb/movie details
/searchSearch IMDb/movie details
/moviesSearch movie titles in private chat
/seriesSearch series titles in private chat
/planView premium plans
/myplanCheck active premium plan
/redeemRedeem a premium code
/fontGenerate styled text in private chat
/imgUpload replied media to Telegraph
/cupUpload replied media to Telegraph
/telegraphUpload replied media to Telegraph
/stickeridGet sticker file ID
/aliveCheck bot status
/pingCheck bot response time
/systemShow system information
/requestSend a group request report
#requestSend a group request report

Admin Commands

CommandDescription
/statsShow database stats
/logsGet bot logs
/commandsSet bot command menu
/movie_updateToggle movie update notifications
/pm_searchToggle private message search
/verifyManage verification status
/deleteDelete a specific file from database
/deleteallDelete all files from database
/deletefilesDelete PreDVD/CamRip files
/saveSave replied file to the bot
/sendSend a message to a user
/postCreate a formatted post from a replied file
/setskipSet skip count for indexing forwarded links
/broadcastBroadcast to users
/grp_broadcastBroadcast to groups
/clear_junkClean junk users
/junk_groupClean junk groups
/clear_junk_groupClean junk groups
/clean_groupsClean invalid or inactive groups
/banBan a user
/unbanUnban a user
/bannedList banned users
/usersList saved users
/chatsList saved chats
/inviteCreate invite link for a chat
/enableEnable a disabled group
/disableDisable a group
/leaveMake bot leave a group
/add_premiumAdd premium access
/get_premiumGenerate premium payment link
/remove_premiumRemove premium access
/premium_usersList premium users
/add_redeemCreate redeem code
/restartRestart the bot
/reloadReload group settings
/del_msgDelete bot messages
/maintenanceToggle maintenance mode
/group_cmdShow group command list
/admin_cmdShow admin command list
/top_searchShow top searched items
/trendlistShow trending searches
/set_templateSet IMDb template
/set_captionSet custom file caption
/set_tutorialSet first verification tutorial link
/set_tutorial_2Set second verification tutorial link
/set_tutorial_3Set third verification tutorial link
/set_shortnerSet first shortener
/set_shortner_2Set second shortener
/set_shortner_3Set third shortener
/set_log_channelSet group log channel
/set_timeSet second verification gap
/set_time_2Set third verification gap
/detailsShow group verification settings
/set_fsubSet force subscription channels
/resetallgroupReset all group settings
/trial_resetReset user trial
/remove_fsubRemove force subscription from a group
/delreqDelete saved join requests

Indexing is handled by forwarding channel messages or sending supported Telegram message links to the bot in private chat.

Public Repo Safety

Security

  • Do not commit .env, session files, logs, or virtual environments.
  • Rotate any token or API key that was previously committed publicly.
  • Keep real values only in your hosting provider environment variables.
  • For public forks, avoid hardcoding shortener, TMDB, Telegraph, MongoDB, or Telegram credentials.

Troubleshooting

Bot does not start

Check that BOT_TOKEN, API_ID, API_HASH, DATABASE_URI, LOG_CHANNEL, and ADMINS are set correctly.

MongoDB connection error

Check that DATABASE_URI is valid, the database user has access, and your hosting provider IP is allowed in MongoDB Atlas.

Stream links are wrong

Set FQDN, HAS_SSL, and NO_PORT according to your hosting provider domain.

License

This project is licensed under the MIT License.

Credits

Special thanks to:

Thanks to the DreamXBotz community and all contributors who worked on the original project and related modules.

About

Advance Autofilter Bot With Some Exclusive Features

Topics

Resources

Stars

132 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

DreamxBotz Auto Filter Bot

Powerful Telegram auto-filter, file indexing, verification, premium, and streaming bot.

DreamxBotz Logo

Python 3.12+Docker ReadyTelegram Bot

Demo BotSupport GroupLicense

Auto FilterMongoDBStreamingPremiumVerification

DreamxBotz is a Telegram auto-filter bot for indexing files from channels/groups, searching them quickly, and sharing files through bot commands. It supports MongoDB storage, group settings, force subscription, verification, premium users, streaming links, and admin tools.

This project is intended for educational use. Use it responsibly and follow Telegram rules, hosting provider rules, and copyright laws.

Table Of Contents

Features

Search & IndexingAccess ControlAdmin Tools
Fast auto-filter searchForce subscriptionBroadcast tools
Auto file indexingRequest-to-join FSubUser ban/unban
Caption-based filteringThree-step verificationChat enable/disable
Trending search listPremium user supportMaintenance mode
Movie/series searchPM search toggleLogs and stats
Media & StreamingDatabaseCustomization
Online streaming linksMongoDB supportGroup settings menu
Fast download linksMultiple DB supportCustom captions
Telegraph media infoUser/chat databaseIMDb templates
TMDB movie metadataReferral and premium dataShortener settings
Auto-delete toolsSearch analyticsTutorial links

Requirements

  • Python 3.12+
  • MongoDB database URI
  • Telegram bot token from @BotFather
  • Telegram API_ID and API_HASH from my.telegram.org
  • A log channel where the bot is added as admin

Quick Links

LinkURL
Demo BotOpen on Telegram
Support GroupJoin Support
Telegram APImy.telegram.org
BotFatherCreate Bot
MongoDB AtlasCreate Database

Required Environment Variables

VariableRequiredDescription
BOT_TOKENYesTelegram bot token from BotFather
API_IDYesTelegram API ID from my.telegram.org
API_HASHYesTelegram API hash from my.telegram.org
DATABASE_URIYesMongoDB connection URI
LOG_CHANNELYesTelegram log channel ID, usually starts with -100
ADMINSYesSpace-separated Telegram user IDs or usernames
CHANNELSRecommendedSpace-separated channel/group IDs for indexing

Common Optional Variables

VariableDefaultDescription
DATABASE_NAMECluster0MongoDB database name
COLLECTION_NAMEdreamcinezone_filesMongoDB collection name
BIN_CHANNEL-100Channel used for file/bin logs
PREMIUM_LOGS-100Premium activity log channel
AUTH_CHANNELS-100Force subscription channel IDs
AUTH_REQ_CHANNELS-100Request-to-join force subscription channel IDs
REQST_CHANNEL_ID-100Request channel ID
SUPPORT_CHAT_ID-100Support group ID
SUPPORT_CHAThttps://t.me/Support group link
FQDNWeb bind addressPublic domain for stream links
PORT8080Web server port
HAS_SSLTrueUse HTTPS in generated stream URLs
NO_PORTFalseHide port in generated HTTP stream URLs
STREAM_MODETrueEnable stream mode
PREMIUM_STREAM_MODEFalseRestrict stream mode to premium users
MAINTENANCEFalseEnable maintenance mode
IS_VERIFYFalseEnable verification system
SHORTENER_APIEmptyShortener API key for verification links
SHORTENER_WEBSITEEmptyShortener domain
TMDB_API_KEYEmptyTMDB API key for movie metadata
TMDB_BEARER_TOKENEmptyOptional TMDB bearer token
TELEGRAPH_ACCESS_TOKENEmptyOptional Telegraph access token

Example .env

Copy .env.example to .env and fill your real values:

cp .env.example .env
BOT_TOKEN=123456:your_bot_tokenAPI_ID=123456API_HASH=your_api_hashDATABASE_URI=mongodb+srv://username:db-password@cluster.mongodb.net/DATABASE_NAME=Cluster0COLLECTION_NAME=dreamcinezone_filesADMINS=123456789CHANNELS=-1001234567890LOG_CHANNEL=-1001234567890BIN_CHANNEL=-1001234567890FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Render

Render Deploy

  1. Fork or upload this repository to GitHub.
  2. Create a new Render Web Service.
  3. Select Docker as the runtime.
  4. Add the required environment variables from the table above.
  5. Deploy the service.

Render must receive a valid PORT environment variable or use the default 8080. If stream links use your Render domain, set:

FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Heroku

Heroku Supported

This repository includes app.json, Procfile, and heroku.yml, so it can also run on Heroku-style deployments.

  1. Create a Heroku app.
  2. Add the required environment variables.
  3. Deploy this repository.
  4. Ensure the worker or web process is enabled according to your hosting setup.

Deploy With Docker

Docker Build

Build the image:

docker build -t dreamxbotz .

Run the container:

docker run --env-file .env -p 8080:8080 dreamxbotz

For Docker Compose, .env is optional at compose-load time, but the bot still needs required variables from .env or your shell environment.

Local Setup

Create and activate a virtual environment:

python -m venv .venv
.venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

Create a .env file from the example and add your configuration:

cp .env.example .env

Then run:

python bot.py

Commands

User CommandsAdmin Commands

User Commands

CommandDescription
/startStart the bot
/settingsOpen group settings
/idGet Telegram ID
/infoGet user information
/imdbSearch IMDb/movie details
/searchSearch IMDb/movie details
/moviesSearch movie titles in private chat
/seriesSearch series titles in private chat
/planView premium plans
/myplanCheck active premium plan
/redeemRedeem a premium code
/fontGenerate styled text in private chat
/imgUpload replied media to Telegraph
/cupUpload replied media to Telegraph
/telegraphUpload replied media to Telegraph
/stickeridGet sticker file ID
/aliveCheck bot status
/pingCheck bot response time
/systemShow system information
/requestSend a group request report
#requestSend a group request report

Admin Commands

CommandDescription
/statsShow database stats
/logsGet bot logs
/commandsSet bot command menu
/movie_updateToggle movie update notifications
/pm_searchToggle private message search
/verifyManage verification status
/deleteDelete a specific file from database
/deleteallDelete all files from database
/deletefilesDelete PreDVD/CamRip files
/saveSave replied file to the bot
/sendSend a message to a user
/postCreate a formatted post from a replied file
/setskipSet skip count for indexing forwarded links
/broadcastBroadcast to users
/grp_broadcastBroadcast to groups
/clear_junkClean junk users
/junk_groupClean junk groups
/clear_junk_groupClean junk groups
/clean_groupsClean invalid or inactive groups
/banBan a user
/unbanUnban a user
/bannedList banned users
/usersList saved users
/chatsList saved chats
/inviteCreate invite link for a chat
/enableEnable a disabled group
/disableDisable a group
/leaveMake bot leave a group
/add_premiumAdd premium access
/get_premiumGenerate premium payment link
/remove_premiumRemove premium access
/premium_usersList premium users
/add_redeemCreate redeem code
/restartRestart the bot
/reloadReload group settings
/del_msgDelete bot messages
/maintenanceToggle maintenance mode
/group_cmdShow group command list
/admin_cmdShow admin command list
/top_searchShow top searched items
/trendlistShow trending searches
/set_templateSet IMDb template
/set_captionSet custom file caption
/set_tutorialSet first verification tutorial link
/set_tutorial_2Set second verification tutorial link
/set_tutorial_3Set third verification tutorial link
/set_shortnerSet first shortener
/set_shortner_2Set second shortener
/set_shortner_3Set third shortener
/set_log_channelSet group log channel
/set_timeSet second verification gap
/set_time_2Set third verification gap
/detailsShow group verification settings
/set_fsubSet force subscription channels
/resetallgroupReset all group settings
/trial_resetReset user trial
/remove_fsubRemove force subscription from a group
/delreqDelete saved join requests

Indexing is handled by forwarding channel messages or sending supported Telegram message links to the bot in private chat.

Public Repo Safety

Security

  • Do not commit .env, session files, logs, or virtual environments.
  • Rotate any token or API key that was previously committed publicly.
  • Keep real values only in your hosting provider environment variables.
  • For public forks, avoid hardcoding shortener, TMDB, Telegraph, MongoDB, or Telegram credentials.

Troubleshooting

Bot does not start

Check that BOT_TOKEN, API_ID, API_HASH, DATABASE_URI, LOG_CHANNEL, and ADMINS are set correctly.

MongoDB connection error

Check that DATABASE_URI is valid, the database user has access, and your hosting provider IP is allowed in MongoDB Atlas.

Stream links are wrong

Set FQDN, HAS_SSL, and NO_PORT according to your hosting provider domain.

License

This project is licensed under the MIT License.

Credits

Special thanks to:

Thanks to the DreamXBotz community and all contributors who worked on the original project and related modules.

About

Advance Autofilter Bot With Some Exclusive Features

Topics

Resources

Stars

132 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

DreamxBotz Auto Filter Bot

Powerful Telegram auto-filter, file indexing, verification, premium, and streaming bot.

DreamxBotz Logo

Python 3.12+Docker ReadyTelegram Bot

Demo BotSupport GroupLicense

Auto FilterMongoDBStreamingPremiumVerification

DreamxBotz is a Telegram auto-filter bot for indexing files from channels/groups, searching them quickly, and sharing files through bot commands. It supports MongoDB storage, group settings, force subscription, verification, premium users, streaming links, and admin tools.

This project is intended for educational use. Use it responsibly and follow Telegram rules, hosting provider rules, and copyright laws.

Table Of Contents

Features

Search & IndexingAccess ControlAdmin Tools
Fast auto-filter searchForce subscriptionBroadcast tools
Auto file indexingRequest-to-join FSubUser ban/unban
Caption-based filteringThree-step verificationChat enable/disable
Trending search listPremium user supportMaintenance mode
Movie/series searchPM search toggleLogs and stats
Media & StreamingDatabaseCustomization
Online streaming linksMongoDB supportGroup settings menu
Fast download linksMultiple DB supportCustom captions
Telegraph media infoUser/chat databaseIMDb templates
TMDB movie metadataReferral and premium dataShortener settings
Auto-delete toolsSearch analyticsTutorial links

Requirements

  • Python 3.12+
  • MongoDB database URI
  • Telegram bot token from @BotFather
  • Telegram API_ID and API_HASH from my.telegram.org
  • A log channel where the bot is added as admin

Quick Links

LinkURL
Demo BotOpen on Telegram
Support GroupJoin Support
Telegram APImy.telegram.org
BotFatherCreate Bot
MongoDB AtlasCreate Database

Required Environment Variables

VariableRequiredDescription
BOT_TOKENYesTelegram bot token from BotFather
API_IDYesTelegram API ID from my.telegram.org
API_HASHYesTelegram API hash from my.telegram.org
DATABASE_URIYesMongoDB connection URI
LOG_CHANNELYesTelegram log channel ID, usually starts with -100
ADMINSYesSpace-separated Telegram user IDs or usernames
CHANNELSRecommendedSpace-separated channel/group IDs for indexing

Common Optional Variables

VariableDefaultDescription
DATABASE_NAMECluster0MongoDB database name
COLLECTION_NAMEdreamcinezone_filesMongoDB collection name
BIN_CHANNEL-100Channel used for file/bin logs
PREMIUM_LOGS-100Premium activity log channel
AUTH_CHANNELS-100Force subscription channel IDs
AUTH_REQ_CHANNELS-100Request-to-join force subscription channel IDs
REQST_CHANNEL_ID-100Request channel ID
SUPPORT_CHAT_ID-100Support group ID
SUPPORT_CHAThttps://t.me/Support group link
FQDNWeb bind addressPublic domain for stream links
PORT8080Web server port
HAS_SSLTrueUse HTTPS in generated stream URLs
NO_PORTFalseHide port in generated HTTP stream URLs
STREAM_MODETrueEnable stream mode
PREMIUM_STREAM_MODEFalseRestrict stream mode to premium users
MAINTENANCEFalseEnable maintenance mode
IS_VERIFYFalseEnable verification system
SHORTENER_APIEmptyShortener API key for verification links
SHORTENER_WEBSITEEmptyShortener domain
TMDB_API_KEYEmptyTMDB API key for movie metadata
TMDB_BEARER_TOKENEmptyOptional TMDB bearer token
TELEGRAPH_ACCESS_TOKENEmptyOptional Telegraph access token

Example .env

Copy .env.example to .env and fill your real values:

cp .env.example .env
BOT_TOKEN=123456:your_bot_tokenAPI_ID=123456API_HASH=your_api_hashDATABASE_URI=mongodb+srv://username:db-password@cluster.mongodb.net/DATABASE_NAME=Cluster0COLLECTION_NAME=dreamcinezone_filesADMINS=123456789CHANNELS=-1001234567890LOG_CHANNEL=-1001234567890BIN_CHANNEL=-1001234567890FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Render

Render Deploy

  1. Fork or upload this repository to GitHub.
  2. Create a new Render Web Service.
  3. Select Docker as the runtime.
  4. Add the required environment variables from the table above.
  5. Deploy the service.

Render must receive a valid PORT environment variable or use the default 8080. If stream links use your Render domain, set:

FQDN=your-app-name.onrender.comHAS_SSL=TrueNO_PORT=True

Deploy On Heroku

Heroku Supported

This repository includes app.json, Procfile, and heroku.yml, so it can also run on Heroku-style deployments.

  1. Create a Heroku app.
  2. Add the required environment variables.
  3. Deploy this repository.
  4. Ensure the worker or web process is enabled according to your hosting setup.

Deploy With Docker

Docker Build

Build the image:

docker build -t dreamxbotz .

Run the container:

docker run --env-file .env -p 8080:8080 dreamxbotz

For Docker Compose, .env is optional at compose-load time, but the bot still needs required variables from .env or your shell environment.

Local Setup

Create and activate a virtual environment:

python -m venv .venv
.venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

Create a .env file from the example and add your configuration:

cp .env.example .env

Then run:

python bot.py

Commands

User CommandsAdmin Commands

User Commands

CommandDescription
/startStart the bot
/settingsOpen group settings
/idGet Telegram ID
/infoGet user information
/imdbSearch IMDb/movie details
/searchSearch IMDb/movie details
/moviesSearch movie titles in private chat
/seriesSearch series titles in private chat
/planView premium plans
/myplanCheck active premium plan
/redeemRedeem a premium code
/fontGenerate styled text in private chat
/imgUpload replied media to Telegraph
/cupUpload replied media to Telegraph
/telegraphUpload replied media to Telegraph
/stickeridGet sticker file ID
/aliveCheck bot status
/pingCheck bot response time
/systemShow system information
/requestSend a group request report
#requestSend a group request report

Admin Commands

CommandDescription
/statsShow database stats
/logsGet bot logs
/commandsSet bot command menu
/movie_updateToggle movie update notifications
/pm_searchToggle private message search
/verifyManage verification status
/deleteDelete a specific file from database
/deleteallDelete all files from database
/deletefilesDelete PreDVD/CamRip files
/saveSave replied file to the bot
/sendSend a message to a user
/postCreate a formatted post from a replied file
/setskipSet skip count for indexing forwarded links
/broadcastBroadcast to users
/grp_broadcastBroadcast to groups
/clear_junkClean junk users
/junk_groupClean junk groups
/clear_junk_groupClean junk groups
/clean_groupsClean invalid or inactive groups
/banBan a user
/unbanUnban a user
/bannedList banned users
/usersList saved users
/chatsList saved chats
/inviteCreate invite link for a chat
/enableEnable a disabled group
/disableDisable a group
/leaveMake bot leave a group
/add_premiumAdd premium access
/get_premiumGenerate premium payment link
/remove_premiumRemove premium access
/premium_usersList premium users
/add_redeemCreate redeem code
/restartRestart the bot
/reloadReload group settings
/del_msgDelete bot messages
/maintenanceToggle maintenance mode
/group_cmdShow group command list
/admin_cmdShow admin command list
/top_searchShow top searched items
/trendlistShow trending searches
/set_templateSet IMDb template
/set_captionSet custom file caption
/set_tutorialSet first verification tutorial link
/set_tutorial_2Set second verification tutorial link
/set_tutorial_3Set third verification tutorial link
/set_shortnerSet first shortener
/set_shortner_2Set second shortener
/set_shortner_3Set third shortener
/set_log_channelSet group log channel
/set_timeSet second verification gap
/set_time_2Set third verification gap
/detailsShow group verification settings
/set_fsubSet force subscription channels
/resetallgroupReset all group settings
/trial_resetReset user trial
/remove_fsubRemove force subscription from a group
/delreqDelete saved join requests

Indexing is handled by forwarding channel messages or sending supported Telegram message links to the bot in private chat.

Public Repo Safety

Security

  • Do not commit .env, session files, logs, or virtual environments.
  • Rotate any token or API key that was previously committed publicly.
  • Keep real values only in your hosting provider environment variables.
  • For public forks, avoid hardcoding shortener, TMDB, Telegraph, MongoDB, or Telegram credentials.

Troubleshooting

Bot does not start

Check that BOT_TOKEN, API_ID, API_HASH, DATABASE_URI, LOG_CHANNEL, and ADMINS are set correctly.

MongoDB connection error

Check that DATABASE_URI is valid, the database user has access, and your hosting provider IP is allowed in MongoDB Atlas.

Stream links are wrong

Set FQDN, HAS_SSL, and NO_PORT according to your hosting provider domain.

License

This project is licensed under the MIT License.

Credits

Special thanks to:

Thanks to the DreamXBotz community and all contributors who worked on the original project and related modules.

About

Advance Autofilter Bot With Some Exclusive Features

Topics

Resources

Stars

132 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages