mirror of
https://github.com/yasirarism/MissKatyPyro.git
synced 2025-12-29 09:44:50 +00:00
93 lines
2.4 KiB
Python
93 lines
2.4 KiB
Python
# * @author Yasir Aris M <yasiramunandar@gmail.com>
|
|
# * @date 2023-06-21 22:12:27
|
|
# * @projectName MissKatyPyro
|
|
# * Copyright ©YasirPedia All rights reserved
|
|
import time, os, uvloop
|
|
from asyncio import get_event_loop
|
|
from faulthandler import enable as faulthandler_enable
|
|
from logging import ERROR, INFO, StreamHandler, basicConfig, getLogger, handlers
|
|
|
|
from apscheduler.jobstores.mongodb import MongoDBJobStore
|
|
from apscheduler.schedulers.asyncio import AsyncIOScheduler
|
|
from async_pymongo import AsyncClient
|
|
from pymongo import MongoClient
|
|
from pyrogram import Client
|
|
|
|
from misskaty.vars import (
|
|
API_HASH,
|
|
API_ID,
|
|
BOT_TOKEN,
|
|
DATABASE_NAME,
|
|
DATABASE_URI,
|
|
TZ,
|
|
USER_SESSION,
|
|
)
|
|
|
|
basicConfig(
|
|
level=INFO,
|
|
format="[%(levelname)s] - [%(asctime)s - %(name)s - %(message)s] -> [%(module)s:%(lineno)d]",
|
|
datefmt="%d-%b-%y %H:%M:%S",
|
|
handlers=[
|
|
handlers.RotatingFileHandler("MissKatyLogs.txt", mode="w+", maxBytes=5242880, backupCount=1),
|
|
StreamHandler(),
|
|
],
|
|
)
|
|
getLogger("pyrogram").setLevel(ERROR)
|
|
getLogger("openai").setLevel(ERROR)
|
|
getLogger("httpx").setLevel(ERROR)
|
|
getLogger("iytdl").setLevel(ERROR)
|
|
|
|
MOD_LOAD = []
|
|
MOD_NOLOAD = ["subscene_dl"]
|
|
HELPABLE = {}
|
|
cleanmode = {}
|
|
botStartTime = time.time()
|
|
misskaty_version = "v2.11.2 - Stable"
|
|
|
|
uvloop.install()
|
|
faulthandler_enable()
|
|
from misskaty.core import misskaty_patch
|
|
|
|
# Pyrogram Bot Client
|
|
app = Client(
|
|
"MissKatyBot",
|
|
api_id=API_ID,
|
|
api_hash=API_HASH,
|
|
bot_token=BOT_TOKEN,
|
|
mongodb=dict(connection=AsyncClient(DATABASE_URI), remove_peers=False),
|
|
sleep_threshold=180,
|
|
app_version="MissKatyPyro Stable",
|
|
workers=50,
|
|
max_concurrent_transmissions=20,
|
|
)
|
|
app.db = AsyncClient(DATABASE_URI)
|
|
app.log = getLogger("MissKaty")
|
|
|
|
# Pyrogram UserBot Client
|
|
user = Client(
|
|
"YasirUBot",
|
|
session_string=USER_SESSION,
|
|
mongodb=dict(connection=AsyncClient(DATABASE_URI), remove_peers=False),
|
|
sleep_threshold=180,
|
|
)
|
|
|
|
jobstores = {
|
|
"default": MongoDBJobStore(
|
|
client=MongoClient(DATABASE_URI), database=DATABASE_NAME, collection="nightmode"
|
|
)
|
|
}
|
|
scheduler = AsyncIOScheduler(jobstores=jobstores, timezone=TZ)
|
|
|
|
app.start()
|
|
BOT_ID = app.me.id
|
|
BOT_NAME = app.me.first_name
|
|
BOT_USERNAME = app.me.username
|
|
if USER_SESSION:
|
|
user.start()
|
|
UBOT_ID = user.me.id
|
|
UBOT_NAME = user.me.first_name
|
|
UBOT_USERNAME = user.me.username
|
|
else:
|
|
UBOT_ID = None
|
|
UBOT_NAME = None
|
|
UBOT_USERNAME = None
|