TheHamkerCat 5 tahun lalu
induk
melakukan
44362b04d0
3 mengubah file dengan 39 tambahan dan 7 penghapusan
  1. 11 1
      wbb/modules/inline.py
  2. 8 2
      wbb/modules/pmpermit.py
  3. 20 4
      wbb/utils/inlinefuncs.py

+ 11 - 1
wbb/modules/inline.py

@@ -32,6 +32,7 @@ from pyrogram.errors.exceptions.bad_request_400 import QueryIdInvalid
 __MODULE__ = "Inline"
 __MODULE__ = "Inline"
 __HELP__ = '''```
 __HELP__ = '''```
 - alive - Check Bot's Stats.
 - alive - Check Bot's Stats.
+- ping - Ping Telegram Dataceter
 - tr [LANG] [QUERY] - Translate Text.
 - tr [LANG] [QUERY] - Translate Text.
 - ud [QUERY] - Urban Dictionary Query.
 - ud [QUERY] - Urban Dictionary Query.
 - google [QUERY] - Google Search.
 - google [QUERY] - Google Search.
@@ -385,6 +386,15 @@ async def inline_query_handler(client, query):
             )
             )
             return
             return
 
 
-    except TypeError:
+        elif text.split()[0] == "ping":
+            answerss = await ping_func(answers)
+            await client.answer_inline_query(
+                query.id,
+                results=answerss,
+                cache_time=2
+            )
+            return
+
+    except Exception as e:
         print(str(e) + " InLine")
         print(str(e) + " InLine")
         return
         return

+ 8 - 2
wbb/modules/pmpermit.py

@@ -33,7 +33,7 @@ flood = {}
 @app2.on_message(filters.private & ~filters.edited & ~filters.me & ~filters.bot & ~filters.user(SUDOERS))
 @app2.on_message(filters.private & ~filters.edited & ~filters.me & ~filters.bot & ~filters.user(SUDOERS))
 async def pmpermit_func(_, message):
 async def pmpermit_func(_, message):
     user_id = message.from_user.id
     user_id = message.from_user.id
-    async for m in app2.iter_history(user_id, limit=10):
+    async for m in app2.iter_history(user_id, limit=6):
         if m.reply_markup:
         if m.reply_markup:
             await m.delete()
             await m.delete()
     if await is_pmpermit_approved(user_id):
     if await is_pmpermit_approved(user_id):
@@ -76,6 +76,12 @@ async def pm_disapprove(_, message):
     user_id = message.reply_to_message.from_user.id
     user_id = message.reply_to_message.from_user.id
     if not await is_pmpermit_approved(user_id):
     if not await is_pmpermit_approved(user_id):
         await message.edit("User is already disapproved to pm")
         await message.edit("User is already disapproved to pm")
+        async for m in app2.iter_history(user_id, limit=6):
+            if m.reply_markup:
+                try:
+                    await m.delete()
+                except Exception:
+                    pass
         return
         return
     await disapprove_pmpermit(user_id)
     await disapprove_pmpermit(user_id)
     await message.edit("User is disapproved to pm")
     await message.edit("User is disapproved to pm")
@@ -113,7 +119,7 @@ async def pmpermit_cq(_, cq):
         return
         return
     data = cq.data.split(None, 1)[1]
     data = cq.data.split(None, 1)[1]
     if data == "to_scam_you":
     if data == "to_scam_you":
-        async for m in app2.iter_history(user_id, limit=10):
+        async for m in app2.iter_history(user_id, limit=6):
             if m.reply_markup:
             if m.reply_markup:
                 await m.delete()
                 await m.delete()
         await app2.send_message(user_id, "Blocked, Go scam someone else.")
         await app2.send_message(user_id, "Blocked, Go scam someone else.")

+ 20 - 4
wbb/utils/inlinefuncs.py

@@ -31,13 +31,15 @@ from pyrogram.types import (
     InlineKeyboardButton,
     InlineKeyboardButton,
     InlineQueryResultPhoto,
     InlineQueryResultPhoto,
 )
 )
+from pyrogram.raw.functions import Ping
 from googletrans import Translator
 from googletrans import Translator
 from search_engine_parser import GoogleSearch
 from search_engine_parser import GoogleSearch
 from pykeyboard import InlineKeyboard
 from pykeyboard import InlineKeyboard
 from sys import version as pyver
 from sys import version as pyver
 from motor import version as mongover
 from motor import version as mongover
 from pyrogram import __version__ as pyrover, filters
 from pyrogram import __version__ as pyrover, filters
-from time import ctime
+from time import time, ctime
+from random import randint
 from wbb.utils.fetch import fetch
 from wbb.utils.fetch import fetch
 from wbb.modules.userbot import eval_executer_func
 from wbb.modules.userbot import eval_executer_func
 from wbb.utils.functions import test_speedtest, get_http_status_code
 from wbb.utils.functions import test_speedtest, get_http_status_code
@@ -705,9 +707,8 @@ async def pastebin_func(answers, link):
         chat, message_id = int("-100" + link[4]), int(link[5])
         chat, message_id = int("-100" + link[4]), int(link[5])
     else:
     else:
         chat, message_id = link[3], link[4]
         chat, message_id = link[3], link[4]
-    try:
-        m = await app.get_messages(chat, message_ids=int(message_id))
-    except AttributeError:
+    m = await app.get_messages(chat, message_ids=int(message_id))
+    if not m.text:
         m = await app2.get_messages(chat, message_ids=int(message_id))
         m = await app2.get_messages(chat, message_ids=int(message_id))
     if m.text not in pastebin_cache:
     if m.text not in pastebin_cache:
         link = await paste(m.text)
         link = await paste(m.text)
@@ -767,3 +768,18 @@ async def pmpermit_func(answers, user_id):
                 )
                 )
             )
             )
     return answers
     return answers
+
+
+async def ping_func(answers):
+    t1 = time()
+    ping = Ping(ping_id=randint(696969, 6969696))
+    await app.send(ping)
+    t2 = time()
+    ping = f"{str(round((t2 - t1), 2))} Seconds"
+    answers.append(
+            InlineQueryResultArticle(
+                title=ping,
+                input_message_content=InputTextMessageContent(f"__**{ping}**__")
+                )
+            )
+    return answers