44 lines
1.4 KiB
Python
44 lines
1.4 KiB
Python
import os
|
|
import logging
|
|
import aiohttp
|
|
from io import BytesIO, StringIO
|
|
from pyrogram import Client
|
|
|
|
API_ID = os.environ.get('API_ID')
|
|
API_HASH = os.environ.get('API_HASH')
|
|
BOT_TOKEN = os.environ.get('BOT_TOKEN')
|
|
TESTMODE = os.environ.get('TESTMODE')
|
|
TESTMODE = TESTMODE and TESTMODE != '0'
|
|
|
|
EVERYONE_CHATS = os.environ.get('EVERYONE_CHATS')
|
|
EVERYONE_CHATS = list(map(int, EVERYONE_CHATS.split(' '))) if EVERYONE_CHATS else []
|
|
ADMIN_CHATS = os.environ.get('ADMIN_CHATS')
|
|
ADMIN_CHATS = list(map(int, ADMIN_CHATS.split(' '))) if ADMIN_CHATS else []
|
|
ALL_CHATS = EVERYONE_CHATS + ADMIN_CHATS
|
|
|
|
PROGRESS_UPDATE_DELAY = int(os.environ.get('PROGRESS_UPDATE_DELAY', 10))
|
|
MAGNET_TIMEOUT = int(os.environ.get('LEECH_TIMEOUT', 60))
|
|
LEECH_TIMEOUT = int(os.environ.get('LEECH_TIMEOUT', 300))
|
|
|
|
logging.basicConfig(level=logging.INFO)
|
|
app = Client('lazyleech', API_ID, API_HASH, plugins={'root': os.path.join(__package__, 'plugins')}, bot_token=BOT_TOKEN, test_mode=TESTMODE, parse_mode='html', sleep_threshold=30)
|
|
session = aiohttp.ClientSession()
|
|
help_dict = dict()
|
|
preserved_logs = []
|
|
|
|
class SendAsZipFlag:
|
|
pass
|
|
|
|
class ForceDocumentFlag:
|
|
pass
|
|
|
|
def memory_file(name=None, contents=None, *, bytes=True):
|
|
if isinstance(contents, str) and bytes:
|
|
contents = contents.encode()
|
|
file = BytesIO() if bytes else StringIO()
|
|
if name:
|
|
file.name = name
|
|
if contents:
|
|
file.write(contents)
|
|
file.seek(0)
|
|
return file |