misc.py 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. import secrets
  2. import string
  3. from wbb.utils.botinfo import BOT_ID
  4. from pyrogram.types import Message
  5. from wbb import app
  6. from wbb.utils import cust_filter, random_line
  7. from pyrogram import filters
  8. __MODULE__ = "Misc"
  9. __HELP__ = '''/commit - Generate Funny Commit Messages
  10. /runs - Idk Test Yourself
  11. /quote - Get Random Linux Quotes
  12. /id - Get Chat_ID or User_ID
  13. /dev - Forward Anything To Developers [SPAM = GBAN]
  14. /random - Generate Random Complex Passwords
  15. /http - Get Cats Reference Photo For Http Error Codes'''
  16. @app.on_message(cust_filter.command(commands=("commit")) & ~filters.edited)
  17. async def commit(_, message: Message):
  18. await message.reply_text((await random_line('wbb/utils/commit.txt')))
  19. @app.on_message(cust_filter.command(commands=("runs")) & ~filters.edited)
  20. async def runs(_, message: Message):
  21. await message.reply_text((await random_line('wbb/utils/runs.txt')))
  22. @app.on_message(cust_filter.command(commands=("quote")) & ~filters.edited)
  23. async def quote(_, message: Message):
  24. await message.reply_text((await random_line('wbb/utils/quotes.txt')))
  25. @app.on_message(cust_filter.command(commands=("id")) & ~filters.edited)
  26. async def get_id(_, message: Message):
  27. app.set_parse_mode("markdown")
  28. if message.text != '/id':
  29. username = message.text.replace('/id', '')
  30. user_id = (await app.get_users(username)).id
  31. msg = f"{username}'s ID is `{user_id}`"
  32. await message.reply_text(msg)
  33. elif message.text == '/id' and not bool(message.reply_to_message):
  34. chat_id = message.chat.id
  35. msg = f"{message.chat.title}'s ID is `{chat_id}`"
  36. await message.reply_text(msg)
  37. elif message.text == '/id' and bool(message.reply_to_message):
  38. from_user_id = message.reply_to_message.from_user.id
  39. from_user_mention = message.reply_to_message.from_user.mention
  40. msg = f"{from_user_mention}'s ID is `{from_user_id}`"
  41. await message.reply_text(msg)
  42. @app.on_message(cust_filter.command(commands=("dev")) & ~filters.edited)
  43. async def dev(_, message: Message):
  44. app.set_parse_mode("markdown")
  45. if (await app.get_chat_member(
  46. message.chat.id,
  47. BOT_ID)).can_restrict_members:
  48. await message.reply_to_message.forward('WBBSupport')
  49. await app.send_message("WBBSupport",
  50. "Forwarded By: `{}` | {}\n"
  51. "Forwarded From: `{}` | {}"
  52. .format(message.from_user.id,
  53. message.from_user.mention,
  54. message.chat.id,
  55. message.chat.title))
  56. await message.reply_text("Your Message Has Been Forward To Devs,"
  57. + " Any Missuse Of This Feature Will Not"
  58. + " Be Tolerated And You Will Be"
  59. + " Gbanned instantaneously!")
  60. else:
  61. await message.reply_text("To Use This Feature You Have To Make Me"
  62. + " Admin")
  63. # Password
  64. @app.on_message(cust_filter.command(commands=('random')) & ~filters.edited)
  65. async def random(_, message: Message):
  66. app.set_parse_mode('markdown')
  67. if message.text != "/random":
  68. length = message.text.replace('/random', '')
  69. try:
  70. if 1 < int(length) < 1000:
  71. alphabet = string.ascii_letters + string.digits
  72. password = ''.join(secrets.choice(alphabet) for i in
  73. range(int(length)))
  74. await message.reply_text(f"`{password}`")
  75. else:
  76. await message.reply_text('Specify A Length Between 1-1000')
  77. except ValueError:
  78. await message.reply_text("Strings Won't Work!, Pass A"
  79. + " Positive Integer Between 1-1000")
  80. else:
  81. await message.reply_text('"/random" Needs An Argurment.'
  82. ' Ex: `/random 5`')
  83. # http cat search
  84. @app.on_message(cust_filter.command(commands=('http')) & ~filters.edited)
  85. async def http(_, message: Message):
  86. if message.text != "/http":
  87. code = message.text.replace('/http', '')
  88. url = f"https://http.cat/{code}"
  89. final = url.replace(' ', '')
  90. await message.reply_photo(final)
  91. else:
  92. await message.reply_text('"/http" Needs An Argument. Ex: `/http 404`')