|
import re, time |
|
from os import environ |
|
from Script import script |
|
import logging |
|
|
|
|
|
|
|
logger = logging.getLogger(__name__) |
|
logger.setLevel(logging.INFO) |
|
|
|
id_pattern = re.compile(r'^.\d+$') |
|
|
|
def is_enabled(value, default): |
|
""" |
|
Check if a given value is enabled based on common enable/disable keywords. |
|
""" |
|
if value.strip().lower() in ["on", "true", "yes", "1", "enable", "y"]: |
|
logger.debug(f"Value '{value}' is enabled.") |
|
return True |
|
elif value.strip().lower() in ["off", "false", "no", "0", "disable", "n"]: |
|
logger.debug(f"Value '{value}' is disabled.") |
|
return False |
|
else: |
|
logger.debug(f"Value '{value}' does not match known patterns, returning default '{default}'.") |
|
return default |
|
|
|
|
|
API_ID = int(environ['API_ID']) |
|
logger.info(f"API_ID loaded: {API_ID}") |
|
|
|
API_HASH = environ['API_HASH'] |
|
logger.info(f"API_HASH loaded.") |
|
|
|
BOT_TOKEN = environ['BOT_TOKEN'] |
|
logger.info(f"BOT_TOKEN loaded.") |
|
|
|
|
|
WEB_SUPPORT = bool(environ.get("WEBHOOK", 'True')) |
|
logger.info(f"WEB_SUPPORT set to: {WEB_SUPPORT}") |
|
|
|
PICS = (environ.get('PICS' ,'https://graph.org/file/01ddfcb1e8203879a63d7.jpg https://graph.org/file/d69995d9846fd4ad632b8.jpg https://graph.org/file/a125497b6b85a1d774394.jpg https://graph.org/file/43d26c54d37f4afb830f7.jpg https://graph.org/file/60c1adffc7cc2015f771c.jpg https://graph.org/file/d7b520240b00b7f083a24.jpg https://graph.org/file/0f336b0402db3f2a20037.jpg https://graph.org/file/39cc4e15cad4519d8e932.jpg https://graph.org/file/d59a1108b1ed1c6c6c144.jpg https://te.legra.ph/file/3a4a79f8d5955e64cbb8e.jpg https://graph.org/file/d69995d9846fd4ad632b8.jpg')).split() |
|
logger.info(f"PICS loaded: {PICS}") |
|
|
|
UPTIME = time.time() |
|
logger.info(f"UPTIME set to: {UPTIME}") |
|
|
|
|
|
CACHE_TIME = int(environ.get('CACHE_TIME', 300)) |
|
logger.info(f"CACHE_TIME set to: {CACHE_TIME}") |
|
|
|
ADMINS = [int(admin) if id_pattern.search(admin) else admin for admin in environ.get('ADMINS', '').split()] |
|
logger.info(f"ADMINS loaded: {ADMINS}") |
|
|
|
CHANNELS = [int(ch) if id_pattern.search(ch) else ch for ch in environ.get('CHANNELS', '0').split()] |
|
logger.info(f"CHANNELS loaded: {CHANNELS}") |
|
|
|
auth_users = [int(user) if id_pattern.search(user) else user for user in environ.get('AUTH_USERS', '').split()] |
|
logger.info(f"AUTH_USERS loaded: {auth_users}") |
|
|
|
AUTH_USERS = (auth_users + ADMINS) if auth_users else [] |
|
logger.info(f"Final AUTH_USERS set: {AUTH_USERS}") |
|
|
|
auth_channel = environ.get('AUTH_CHANNEL') |
|
auth_grp = environ.get('AUTH_GROUP') |
|
|
|
AUTH_CHANNEL = int(auth_channel) if auth_channel and id_pattern.search(auth_channel) else None |
|
logger.info(f"AUTH_CHANNEL set to: {AUTH_CHANNEL}") |
|
|
|
AUTH_GROUPS = [int(ch) for ch in auth_grp.split()] if auth_grp else None |
|
logger.info(f"AUTH_GROUPS set to: {AUTH_GROUPS}") |
|
|
|
|
|
DATABASE_URL = environ.get('DATABASE_URL', "") |
|
logger.info(f"DATABASE_URL loaded: {DATABASE_URL}") |
|
|
|
DATABASE_NAME = environ.get('DATABASE_NAME', "Cluster0") |
|
logger.info(f"DATABASE_NAME set to: {DATABASE_NAME}") |
|
|
|
FILE_DB_URL = environ.get("FILE_DB_URL", DATABASE_URL) |
|
logger.info(f"FILE_DB_URL set to: {FILE_DB_URL}") |
|
|
|
FILE_DB_NAME = environ.get("FILE_DB_NAME", DATABASE_NAME) |
|
logger.info(f"FILE_DB_NAME set to: {FILE_DB_NAME}") |
|
|
|
COLLECTION_NAME = environ.get('COLLECTION_NAME', 'Telegram_files') |
|
logger.info(f"COLLECTION_NAME set to: {COLLECTION_NAME}") |
|
|
|
|
|
MAX_RIST_BTNS = int(environ.get('MAX_RIST_BTNS', "10")) |
|
logger.info(f"MAX_RIST_BTNS set to: {MAX_RIST_BTNS}") |
|
|
|
START_MESSAGE = environ.get('START_MESSAGE', script.START_TXT) |
|
logger.info(f"START_MESSAGE loaded: {START_MESSAGE}") |
|
|
|
BUTTON_LOCK_TEXT = environ.get("BUTTON_LOCK_TEXT", script.BUTTON_LOCK_TEXT) |
|
logger.info(f"BUTTON_LOCK_TEXT loaded: {BUTTON_LOCK_TEXT}") |
|
|
|
FORCE_SUB_TEXT = environ.get('FORCE_SUB_TEXT', script.FORCE_SUB_TEXT) |
|
logger.info(f"FORCE_SUB_TEXT loaded: {FORCE_SUB_TEXT}") |
|
|
|
WELCOM_PIC = environ.get("WELCOM_PIC", "") |
|
logger.info(f"WELCOM_PIC set to: {WELCOM_PIC}") |
|
|
|
WELCOM_TEXT = environ.get("WELCOM_TEXT", script.WELCOM_TEXT) |
|
logger.info(f"WELCOM_TEXT loaded: {WELCOM_TEXT}") |
|
|
|
PMFILTER = is_enabled(environ.get('PMFILTER', "True"), True) |
|
logger.info(f"PMFILTER set to: {PMFILTER}") |
|
|
|
G_FILTER = is_enabled(environ.get("G_FILTER", "True"), True) |
|
logger.info(f"G_FILTER set to: {G_FILTER}") |
|
|
|
BUTTON_LOCK = is_enabled(environ.get("BUTTON_LOCK", "True"), True) |
|
logger.info(f"BUTTON_LOCK set to: {BUTTON_LOCK}") |
|
|
|
RemoveBG_API = environ.get("RemoveBG_API", "") |
|
logger.info(f"RemoveBG_API set to: {RemoveBG_API}") |
|
|
|
|
|
SHORT_URL = environ.get("SHORT_URL") |
|
logger.info(f"SHORT_URL set to: {SHORT_URL}") |
|
|
|
SHORT_API = environ.get("SHORT_API") |
|
logger.info(f"SHORT_API set to: {SHORT_API}") |
|
|
|
|
|
IMDB_DELET_TIME = int(environ.get('IMDB_DELET_TIME', "300")) |
|
logger.info(f"IMDB_DELET_TIME set to: {IMDB_DELET_TIME}") |
|
|
|
LOG_CHANNEL = int(environ.get('LOG_CHANNEL', 0)) |
|
logger.info(f"LOG_CHANNEL set to: {LOG_CHANNEL}") |
|
|
|
SUPPORT_CHAT = environ.get('SUPPORT_CHAT', 'MKN_BOTZ_DISCUSSION_GROUP') |
|
logger.info(f"SUPPORT_CHAT set to: {SUPPORT_CHAT}") |
|
|
|
P_TTI_SHOW_OFF = is_enabled(environ.get('P_TTI_SHOW_OFF', "True"), True) |
|
logger.info(f"P_TTI_SHOW_OFF set to: {P_TTI_SHOW_OFF}") |
|
|
|
PM_IMDB = is_enabled(environ.get('PM_IMDB', "True"), True) |
|
logger.info(f"PM_IMDB set to: {PM_IMDB}") |
|
|
|
IMDB = is_enabled(environ.get('IMDB', "True"), True) |
|
logger.info(f"IMDB set to: {IMDB}") |
|
|
|
SINGLE_BUTTON = is_enabled(environ.get('SINGLE_BUTTON', "True"), True) |
|
logger.info(f"SINGLE_BUTTON set to: {SINGLE_BUTTON}") |
|
|
|
CUSTOM_FILE_CAPTION = environ.get("CUSTOM_FILE_CAPTION", "{file_name}") |
|
logger.info(f"CUSTOM_FILE_CAPTION set to: {CUSTOM_FILE_CAPTION}") |
|
|
|
BATCH_FILE_CAPTION = environ.get("BATCH_FILE_CAPTION", None) |
|
logger.info(f"BATCH_FILE_CAPTION set to: {BATCH_FILE_CAPTION}") |
|
|
|
IMDB_TEMPLATE = environ.get("IMDB_TEMPLATE", script.IMDB_TEMPLATE) |
|
logger.info(f"IMDB_TEMPLATE loaded: {IMDB_TEMPLATE}") |
|
|
|
LONG_IMDB_DESCRIPTION = is_enabled(environ.get("LONG_IMDB_DESCRIPTION", "False"), False) |
|
logger.info(f"LONG_IMDB_DESCRIPTION set to: {LONG_IMDB_DESCRIPTION}") |
|
|
|
SPELL_CHECK_REPLY = is_enabled(environ.get("SPELL_CHECK_REPLY", "True"), True) |
|
logger.info(f"SPELL_CHECK_REPLY set to: {SPELL_CHECK_REPLY}") |
|
|
|
MAX_LIST_ELM = environ.get("MAX_LIST_ELM", None) |
|
logger.info(f"MAX_LIST_ELM set to: {MAX_LIST_ELM}") |
|
|
|
FILE_STORE_CHANNEL = [int(ch) for ch in (environ.get('FILE_STORE_CHANNEL', '')).split()] |
|
logger.info(f"FILE_STORE_CHANNEL set to: {FILE_STORE_CHANNEL}") |
|
|
|
MELCOW_NEW_USERS = is_enabled(environ.get('MELCOW_NEW_USERS', "True"), True) |
|
logger.info(f"MELCOW_NEW_USERS set to: {MELCOW_NEW_USERS}") |
|
|
|
PROTECT_CONTENT = is_enabled(environ.get('PROTECT_CONTENT', "False"), False) |
|
logger.info(f"PROTECT_CONTENT set to: {PROTECT_CONTENT}") |
|
|
|
PUBLIC_FILE_STORE = is_enabled(environ.get('PUBLIC_FILE_STORE', "True"), True) |
|
logger.info(f"PUBLIC_FILE_STORE set to: {PUBLIC_FILE_STORE}") |
|
|
|
LOG_MSG = "{} Iꜱ Rᴇꜱᴛᴀʀᴛᴇᴅ....✨\n\n🗓️ Dᴀᴛᴇ : {}\n⏰ Tɪᴍᴇ : {}\n\n🖥️ Rᴇᴏᴩ: {}\n🉐 Vᴇʀꜱɪᴏɴ: {}\n🧾 Lɪᴄᴇɴꜱᴇ: {}\n©️ Cᴏᴩʏʀɪɢʜᴛ: {}" |
|
logger.info(f"LOG_MSG template set.") |