mirror of
https://github.com/yasirarism/MissKatyPyro.git
synced 2026-01-07 12:24:51 +00:00
ok
This commit is contained in:
parent
04bf1c1460
commit
f5a32ab2da
13 changed files with 25 additions and 51 deletions
|
|
@ -20,6 +20,7 @@ import os
|
||||||
import typing
|
import typing
|
||||||
import logging
|
import logging
|
||||||
import pyrogram
|
import pyrogram
|
||||||
|
import traceback
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from misskaty.vars import LOG_CHANNEL
|
from misskaty.vars import LOG_CHANNEL
|
||||||
|
|
||||||
|
|
@ -53,8 +54,6 @@ async def handle_error(
|
||||||
except Exceptation as e:
|
except Exceptation as e:
|
||||||
return await handle_error(e, message)
|
return await handle_error(e, message)
|
||||||
"""
|
"""
|
||||||
import traceback
|
|
||||||
import logging
|
|
||||||
|
|
||||||
logging = logging.getLogger(__name__)
|
logging = logging.getLogger(__name__)
|
||||||
logging.exception(traceback.format_exc())
|
logging.exception(traceback.format_exc())
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,6 @@ async def progress_for_pyrogram(current, total, ud_type, message, start, dc_id):
|
||||||
now = time.time()
|
now = time.time()
|
||||||
diff = now - start
|
diff = now - start
|
||||||
if round(diff % 10.00) == 0 or current == total:
|
if round(diff % 10.00) == 0 or current == total:
|
||||||
# if round(current / total * 100, 0) % 5 == 0:
|
|
||||||
percentage = current * 100 / total
|
percentage = current * 100 / total
|
||||||
elapsed_time = round(diff)
|
elapsed_time = round(diff)
|
||||||
if elapsed_time == 0:
|
if elapsed_time == 0:
|
||||||
|
|
|
||||||
|
|
@ -18,12 +18,10 @@ from pyrogram.types import Message
|
||||||
|
|
||||||
from database.afk_db import add_afk, cleanmode_off, cleanmode_on, is_afk, remove_afk
|
from database.afk_db import add_afk, cleanmode_off, cleanmode_on, is_afk, remove_afk
|
||||||
from misskaty import app
|
from misskaty import app
|
||||||
from misskaty.core.decorator.errors import capture_err
|
|
||||||
from misskaty.core.decorator.permissions import adminsOnly
|
from misskaty.core.decorator.permissions import adminsOnly
|
||||||
from misskaty.core.decorator.ratelimiter import ratelimiter
|
from misskaty.core.decorator.ratelimiter import ratelimiter
|
||||||
from misskaty.helper import get_readable_time2
|
from misskaty.helper import get_readable_time2
|
||||||
from misskaty.helper.localization import use_chat_lang
|
from misskaty.helper.localization import use_chat_lang
|
||||||
from misskaty.vars import COMMAND_HANDLER
|
|
||||||
from utils import put_cleanmode
|
from utils import put_cleanmode
|
||||||
|
|
||||||
__MODULE__ = "AFK"
|
__MODULE__ = "AFK"
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,6 @@ import html
|
||||||
|
|
||||||
import openai
|
import openai
|
||||||
from aiohttp import ClientSession
|
from aiohttp import ClientSession
|
||||||
from pyrogram import Client, filters
|
|
||||||
from pyrogram.errors import MessageTooLong
|
from pyrogram.errors import MessageTooLong
|
||||||
from pyrogram.types import Message
|
from pyrogram.types import Message
|
||||||
|
|
||||||
|
|
@ -16,7 +15,7 @@ from misskaty.core.decorator.ratelimiter import ratelimiter
|
||||||
from misskaty.helper import check_time_gap, post_to_telegraph
|
from misskaty.helper import check_time_gap, post_to_telegraph
|
||||||
from misskaty.helper.http import http
|
from misskaty.helper.http import http
|
||||||
from misskaty.helper.localization import use_chat_lang
|
from misskaty.helper.localization import use_chat_lang
|
||||||
from misskaty.vars import COMMAND_HANDLER, OPENAI_API, SUDO
|
from misskaty.vars import OPENAI_API, SUDO
|
||||||
|
|
||||||
openai.api_key = OPENAI_API
|
openai.api_key = OPENAI_API
|
||||||
|
|
||||||
|
|
@ -24,7 +23,8 @@ openai.api_key = OPENAI_API
|
||||||
# This only for testing things, since maybe in future it will got blocked
|
# This only for testing things, since maybe in future it will got blocked
|
||||||
@app.on_cmd("bard", is_disabled=True)
|
@app.on_cmd("bard", is_disabled=True)
|
||||||
@use_chat_lang()
|
@use_chat_lang()
|
||||||
async def bard_chatbot(self: Client, ctx: Message, strings):
|
@ratelimiter
|
||||||
|
async def bard_chatbot(_, ctx: Message, strings):
|
||||||
if len(ctx.command) == 1:
|
if len(ctx.command) == 1:
|
||||||
return await ctx.reply_msg(
|
return await ctx.reply_msg(
|
||||||
strings("no_question").format(cmd=ctx.command[0]), quote=True, del_in=5
|
strings("no_question").format(cmd=ctx.command[0]), quote=True, del_in=5
|
||||||
|
|
@ -44,7 +44,7 @@ async def bard_chatbot(self: Client, ctx: Message, strings):
|
||||||
@app.on_cmd("ask")
|
@app.on_cmd("ask")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
@use_chat_lang()
|
@use_chat_lang()
|
||||||
async def openai_chatbot(self: Client, ctx: Message, strings):
|
async def openai_chatbot(_, ctx: Message, strings):
|
||||||
if len(ctx.command) == 1:
|
if len(ctx.command) == 1:
|
||||||
return await ctx.reply_msg(
|
return await ctx.reply_msg(
|
||||||
strings("no_question").format(cmd=ctx.command[0]), quote=True, del_in=5
|
strings("no_question").format(cmd=ctx.command[0]), quote=True, del_in=5
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,8 @@ from pyrogram.types import Message
|
||||||
|
|
||||||
from misskaty import app
|
from misskaty import app
|
||||||
from misskaty.helper.http import http
|
from misskaty.helper.http import http
|
||||||
from misskaty.vars import COMMAND_HANDLER, CURRENCY_API
|
from misskaty.core.decorator.ratelimiter import ratelimiter
|
||||||
|
from misskaty.vars import CURRENCY_API
|
||||||
|
|
||||||
__MODULE__ = "Currency"
|
__MODULE__ = "Currency"
|
||||||
__HELP__ = """
|
__HELP__ = """
|
||||||
|
|
@ -19,8 +20,9 @@ __HELP__ = """
|
||||||
LOGGER = logging.getLogger(__name__)
|
LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
@app.on_message(filters.command(["currency"], COMMAND_HANDLER))
|
@app.on_cmd("currency")
|
||||||
async def currency(self: Client, ctx: Message):
|
@ratelimiter
|
||||||
|
async def currency(_, ctx: Message):
|
||||||
if CURRENCY_API is None:
|
if CURRENCY_API is None:
|
||||||
return await ctx.reply_msg(
|
return await ctx.reply_msg(
|
||||||
"<code>Oops!!get the API from</code> <a href='https://app.exchangerate-api.com/sign-up'>HERE</a> <code>& add it to config vars</code> (<code>CURRENCY_API</code>)",
|
"<code>Oops!!get the API from</code> <a href='https://app.exchangerate-api.com/sign-up'>HERE</a> <code>& add it to config vars</code> (<code>CURRENCY_API</code>)",
|
||||||
|
|
@ -32,10 +34,7 @@ async def currency(self: Client, ctx: Message):
|
||||||
del_in=6,
|
del_in=6,
|
||||||
)
|
)
|
||||||
|
|
||||||
teks = ctx.text.split()
|
amount, currency_from, currency_to = ctx.text.split()
|
||||||
amount = teks[1]
|
|
||||||
currency_from = teks[2]
|
|
||||||
currency_to = teks[3]
|
|
||||||
if amount.isdigit() or (
|
if amount.isdigit() or (
|
||||||
amount.replace(".", "", 1).isdigit() and amount.count(".") < 2
|
amount.replace(".", "", 1).isdigit() and amount.count(".") < 2
|
||||||
):
|
):
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,6 @@ from PIL import Image, ImageDraw, ImageFont
|
||||||
from psutil import Process, boot_time, cpu_count, cpu_percent
|
from psutil import Process, boot_time, cpu_count, cpu_percent
|
||||||
from psutil import disk_usage as disk_usage_percent
|
from psutil import disk_usage as disk_usage_percent
|
||||||
from psutil import net_io_counters, virtual_memory
|
from psutil import net_io_counters, virtual_memory
|
||||||
from pykeyboard import InlineButton, InlineKeyboard
|
|
||||||
from pyrogram import Client
|
from pyrogram import Client
|
||||||
from pyrogram import __version__ as pyrover
|
from pyrogram import __version__ as pyrover
|
||||||
from pyrogram import enums, filters
|
from pyrogram import enums, filters
|
||||||
|
|
|
||||||
|
|
@ -142,7 +142,7 @@ async def clear_reqdict():
|
||||||
shutil.rmtree("GensSS", ignore_errors=True)
|
shutil.rmtree("GensSS", ignore_errors=True)
|
||||||
|
|
||||||
|
|
||||||
# @app.on_message(filters.regex(r"makasi|thank|terimakasih|terima kasih|mksh", re.I) & filters.chat(chat))
|
@app.on_message(filters.regex(r"makasi|thank|terimakasih|terima kasih|mksh", re.I) & filters.chat(chat))
|
||||||
async def thankregex(_, message):
|
async def thankregex(_, message):
|
||||||
pesan = [
|
pesan = [
|
||||||
f"Sama-sama {message.from_user.first_name}",
|
f"Sama-sama {message.from_user.first_name}",
|
||||||
|
|
|
||||||
|
|
@ -27,13 +27,11 @@ from pyrogram.types import (
|
||||||
Message,
|
Message,
|
||||||
)
|
)
|
||||||
|
|
||||||
from database.imdb_db import *
|
from database.imdb_db import is_imdbset, add_imdbset, remove_imdbset
|
||||||
from misskaty import BOT_USERNAME, app
|
from misskaty import app
|
||||||
from misskaty.core.decorator.errors import capture_err
|
|
||||||
from misskaty.core.decorator.ratelimiter import ratelimiter
|
from misskaty.core.decorator.ratelimiter import ratelimiter
|
||||||
from misskaty.core.misskaty_patch.listen.listen import ListenerTimeout
|
from misskaty.core.misskaty_patch.listen.listen import ListenerTimeout
|
||||||
from misskaty.helper import GENRES_EMOJI, get_random_string, http, search_jw
|
from misskaty.helper import GENRES_EMOJI, get_random_string, http, search_jw
|
||||||
from misskaty.vars import COMMAND_HANDLER
|
|
||||||
from utils import demoji
|
from utils import demoji
|
||||||
|
|
||||||
LOGGER = logging.getLogger(__name__)
|
LOGGER = logging.getLogger(__name__)
|
||||||
|
|
@ -90,10 +88,9 @@ async def imdb_choose(self: Client, ctx: Message):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
@app.on_callback_query(filters.regex("^imdbset"))
|
@app.on_cb("imdbset")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
@capture_err
|
async def imdblangset(_, query: CallbackQuery):
|
||||||
async def imdblangset(self: Client, query: CallbackQuery):
|
|
||||||
i, uid = query.data.split("#")
|
i, uid = query.data.split("#")
|
||||||
if query.from_user.id != int(uid):
|
if query.from_user.id != int(uid):
|
||||||
return await query.answer("⚠️ Access Denied!", True)
|
return await query.answer("⚠️ Access Denied!", True)
|
||||||
|
|
@ -122,9 +119,8 @@ async def imdblangset(self: Client, query: CallbackQuery):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
@app.on_callback_query(filters.regex("^setimdb"))
|
@app.on_cb("setimdb")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
@capture_err
|
|
||||||
async def imdbsetlang(self: Client, query: CallbackQuery):
|
async def imdbsetlang(self: Client, query: CallbackQuery):
|
||||||
i, lang, uid = query.data.split("#")
|
i, lang, uid = query.data.split("#")
|
||||||
if query.from_user.id != int(uid):
|
if query.from_user.id != int(uid):
|
||||||
|
|
@ -277,9 +273,8 @@ async def imdb_search_en(kueri, message):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@app.on_callback_query(filters.regex("^imdbcari"))
|
@app.on_cb("imdbcari")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
@capture_err
|
|
||||||
async def imdbcari(self: Client, query: CallbackQuery):
|
async def imdbcari(self: Client, query: CallbackQuery):
|
||||||
BTN = []
|
BTN = []
|
||||||
i, lang, msg, uid = query.data.split("#")
|
i, lang, msg, uid = query.data.split("#")
|
||||||
|
|
@ -403,7 +398,7 @@ async def imdbcari(self: Client, query: CallbackQuery):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@app.on_cb(data="imdbres_id")
|
@app.on_cb("imdbres_id")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
async def imdb_id_callback(self: Client, query: CallbackQuery):
|
async def imdb_id_callback(self: Client, query: CallbackQuery):
|
||||||
i, userid, movie = query.data.split("#")
|
i, userid, movie = query.data.split("#")
|
||||||
|
|
@ -513,7 +508,7 @@ async def imdb_id_callback(self: Client, query: CallbackQuery):
|
||||||
res_str += "\n"
|
res_str += "\n"
|
||||||
if ott != "":
|
if ott != "":
|
||||||
res_str += f"Tersedia di:\n{ott}\n"
|
res_str += f"Tersedia di:\n{ott}\n"
|
||||||
res_str += f"<b>©️ IMDb by</b> @{BOT_USERNAME}"
|
res_str += f"<b>©️ IMDb by</b> @{self.me.username}"
|
||||||
if trailer := r_json.get("trailer"):
|
if trailer := r_json.get("trailer"):
|
||||||
trailer_url = trailer["url"]
|
trailer_url = trailer["url"]
|
||||||
markup = InlineKeyboardMarkup(
|
markup = InlineKeyboardMarkup(
|
||||||
|
|
@ -560,9 +555,8 @@ async def imdb_id_callback(self: Client, query: CallbackQuery):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
@app.on_callback_query(filters.regex("^imdbres_en"))
|
@app.on_cb("imdbres_en")
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
@capture_err
|
|
||||||
async def imdb_en_callback(self: Client, query: CallbackQuery):
|
async def imdb_en_callback(self: Client, query: CallbackQuery):
|
||||||
i, userid, movie = query.data.split("#")
|
i, userid, movie = query.data.split("#")
|
||||||
if query.from_user.id != int(userid):
|
if query.from_user.id != int(userid):
|
||||||
|
|
@ -670,7 +664,7 @@ async def imdb_en_callback(self: Client, query: CallbackQuery):
|
||||||
res_str += "\n"
|
res_str += "\n"
|
||||||
if ott != "":
|
if ott != "":
|
||||||
res_str += f"Available On:\n{ott}\n"
|
res_str += f"Available On:\n{ott}\n"
|
||||||
res_str += f"<b>©️ IMDb by</b> @{BOT_USERNAME}"
|
res_str += f"<b>©️ IMDb by</b> @{self.me.username}"
|
||||||
if trailer := r_json.get("trailer"):
|
if trailer := r_json.get("trailer"):
|
||||||
trailer_url = trailer["url"]
|
trailer_url = trailer["url"]
|
||||||
markup = InlineKeyboardMarkup(
|
markup = InlineKeyboardMarkup(
|
||||||
|
|
|
||||||
|
|
@ -150,9 +150,7 @@ async def convertsrt(self: Client, ctx: Message, strings):
|
||||||
f"ConvertSub: {filename} by {ctx.from_user.first_name if ctx.from_user else ctx.sender_chat.title} [{ctx.from_user.id if ctx.from_user else ctx.sender_chat.id}]"
|
f"ConvertSub: {filename} by {ctx.from_user.first_name if ctx.from_user else ctx.sender_chat.title} [{ctx.from_user.id if ctx.from_user else ctx.sender_chat.id}]"
|
||||||
)
|
)
|
||||||
suffix = "srt" if ctx.command[0] == "converttosrt" else "ass"
|
suffix = "srt" if ctx.command[0] == "converttosrt" else "ass"
|
||||||
(await shell_exec(f"ffmpeg -i '{dl}' 'downloads/{filename}.{suffix}'"))[
|
await shell_exec(f"ffmpeg -i '{dl}' 'downloads/{filename}.{suffix}'")
|
||||||
0
|
|
||||||
] # skipcq: PYL-W0106
|
|
||||||
c_time = time()
|
c_time = time()
|
||||||
await ctx.reply_document(
|
await ctx.reply_document(
|
||||||
f"downloads/{filename}.{suffix}",
|
f"downloads/{filename}.{suffix}",
|
||||||
|
|
|
||||||
|
|
@ -70,7 +70,7 @@ async def del_msg(client, message):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
# @user.on_edited_message(filters.text & filters.chat(-1001455886928))
|
@user.on_edited_message(filters.text & filters.chat(-1001455886928))
|
||||||
async def edit_msg(client, message):
|
async def edit_msg(client, message):
|
||||||
try:
|
try:
|
||||||
ustat = (
|
ustat = (
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,6 @@ from pyrogram.types import (
|
||||||
from misskaty import app
|
from misskaty import app
|
||||||
from misskaty.core.decorator.errors import capture_err
|
from misskaty.core.decorator.errors import capture_err
|
||||||
from misskaty.core.decorator.ratelimiter import ratelimiter
|
from misskaty.core.decorator.ratelimiter import ratelimiter
|
||||||
from misskaty.core.misskaty_patch.listen.listen import ListenerTimeout
|
|
||||||
from misskaty.helper.http import http
|
from misskaty.helper.http import http
|
||||||
from misskaty.helper.localization import use_chat_lang
|
from misskaty.helper.localization import use_chat_lang
|
||||||
from misskaty.vars import COMMAND_HANDLER, LOG_CHANNEL
|
from misskaty.vars import COMMAND_HANDLER, LOG_CHANNEL
|
||||||
|
|
@ -79,7 +78,7 @@ async def ytsearch(self: Client, ctx: Message, strings):
|
||||||
|
|
||||||
@app.on_message(
|
@app.on_message(
|
||||||
filters.command(["ytdown"], COMMAND_HANDLER)
|
filters.command(["ytdown"], COMMAND_HANDLER)
|
||||||
| filters.regex(YT_REGEX) & ~filters.channel
|
| filters.regex(YT_REGEX) & ~filters.channel & ~filters.via_bot
|
||||||
)
|
)
|
||||||
@capture_err
|
@capture_err
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
|
|
|
||||||
|
|
@ -2,14 +2,10 @@
|
||||||
# * @date 2023-06-21 22:12:27
|
# * @date 2023-06-21 22:12:27
|
||||||
# * @projectName MissKatyPyro
|
# * @projectName MissKatyPyro
|
||||||
# * Copyright ©YasirPedia All rights reserved
|
# * Copyright ©YasirPedia All rights reserved
|
||||||
import os
|
|
||||||
import sys
|
import sys
|
||||||
from logging import getLogger
|
from logging import getLogger
|
||||||
from os import environ
|
from os import environ
|
||||||
|
|
||||||
import requests
|
|
||||||
from dotenv import load_dotenv
|
|
||||||
|
|
||||||
LOGGER = getLogger(__name__)
|
LOGGER = getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
from logging import INFO, StreamHandler, basicConfig, getLogger, handlers
|
from logging import INFO, StreamHandler, basicConfig, getLogger, handlers
|
||||||
import os
|
import os
|
||||||
import subprocess
|
import subprocess
|
||||||
import time
|
|
||||||
|
|
||||||
import dotenv
|
import dotenv
|
||||||
import requests
|
import requests
|
||||||
|
|
@ -63,12 +62,6 @@ if all([UPSTREAM_REPO_URL, UPSTREAM_REPO_BRANCH]):
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
LOGGER.error(e)
|
LOGGER.error(e)
|
||||||
pass
|
pass
|
||||||
# time.sleep(6)
|
|
||||||
# update = subprocess.run(['pip3', 'install', '-U', '-r', 'requirements.txt'])
|
|
||||||
# if update.returncode == 0:
|
|
||||||
# LOGGER.info("Successfully update package pip python")
|
|
||||||
# else:
|
|
||||||
# LOGGER.warning("Unsuccessfully update package pip python")
|
|
||||||
else:
|
else:
|
||||||
LOGGER.warning(
|
LOGGER.warning(
|
||||||
"UPSTREAM_REPO_URL or UPSTREAM_REPO_BRANCH is not defined, Skipping auto update"
|
"UPSTREAM_REPO_URL or UPSTREAM_REPO_BRANCH is not defined, Skipping auto update"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue