MissKatyPyro/misskaty/__init__.py
2023-06-14 14:11:53 +00:00

65 lines
1.7 KiB
Python

import time
from logging import ERROR, INFO, StreamHandler, basicConfig, getLogger, handlers
from apscheduler.jobstores.mongodb import MongoDBJobStore
from apscheduler.schedulers.asyncio import AsyncIOScheduler
from motor.motor_asyncio import AsyncIOMotorClient
from pymongo import MongoClient
from pyrogram import Client
from misskaty.core import misskaty_patch
from misskaty.vars import API_HASH, API_ID, BOT_TOKEN, DATABASE_URI, TZ, USER_SESSION, DATABASE_NAME
basicConfig(
level=INFO,
format="[%(asctime)s - %(levelname)s] - %(name)s.%(funcName)s - %(message)s",
datefmt="%d-%b-%y %H:%M:%S",
handlers=[
handlers.RotatingFileHandler("MissKatyLogs.txt", mode="w+", maxBytes=1000000),
StreamHandler(),
],
)
getLogger("pyrogram").setLevel(ERROR)
getLogger("openai").setLevel(ERROR)
getLogger("httpx").setLevel(ERROR)
MOD_LOAD = []
MOD_NOLOAD = ["subscene_dl"]
HELPABLE = {}
cleanmode = {}
botStartTime = time.time()
misskaty_version = "v2.4 - Stable"
pymonclient = MongoClient(DATABASE_URI)
# Pyrogram Bot Client
app = Client(
"MissKatyBot",
api_id=API_ID,
api_hash=API_HASH,
bot_token=BOT_TOKEN,
mongodb=dict(uri=DATABASE_URI, remove_peers=False),
)
# Pyrogram UserBot Client
user = Client(
"YasirUBot",
session_string=USER_SESSION,
)
jobstores = {"default": MongoDBJobStore(client=pymonclient, 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