inline.py 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. from wbb import app
  2. from wbb.utils.inlinefuncs import (
  3. google_search_func, urban_func, translate_func,
  4. alive_function, webss, shortify, wall_func,
  5. saavn_func, deezer_func, inline_help_func,
  6. torrent_func, youtube_func, lyrics_func,
  7. paste_func, eval_func
  8. )
  9. from pyrogram import filters
  10. __MODULE__ = "Inline"
  11. __HELP__ = '''
  12. - alive - Check Bot's Stats.
  13. - tr [LANG] [QUERY] - Translate Text.
  14. - ud [QUERY] - Urban Dictionary Query.
  15. - google [QUERY] - Google Search.
  16. - webss [URL] - Take Screenshot Of A Website.
  17. - bitly [URL] - Shorten A Link.
  18. - wall [QUERY] - Find Wallpapers.
  19. - saavn [SONG_NAME] - Get Songs From Saavn.
  20. - deezer [SONG_NAME] - Get Songs From Deezer.
  21. - yt [Query] - Youtube Search.
  22. - torrent [QUERY] - Torrent Search.
  23. - lyrics [QUERY] - Lyrics Search.
  24. - eval [CODE] - Execute Python Code.
  25. - paste [TEXT] - Paste Text On Pastebin. <=500
  26. '''
  27. @app.on_message(filters.command("inline"))
  28. async def inline_help(_, message):
  29. await app.send_message(message.chat.id, text=__HELP__)
  30. @app.on_inline_query()
  31. async def inline_query_handler(client, query):
  32. try:
  33. text = query.query.lower()
  34. answers = []
  35. if text.strip() == '':
  36. answerss = await inline_help_func(__HELP__)
  37. await client.answer_inline_query(
  38. query.id,
  39. results=answerss,
  40. cache_time=10
  41. )
  42. return
  43. elif text.split()[0] == "alive":
  44. answerss = await alive_function(answers)
  45. await client.answer_inline_query(
  46. query.id,
  47. results=answerss,
  48. cache_time=10
  49. )
  50. elif text.split()[0] == "tr":
  51. lang = text.split()[1]
  52. tex = text.split(None, 2)[2]
  53. answerss = await translate_func(answers, lang, tex)
  54. await client.answer_inline_query(
  55. query.id,
  56. results=answerss,
  57. )
  58. elif text.split()[0] == "ud":
  59. tex = text.split(None, 1)[1]
  60. answerss = await urban_func(answers, tex)
  61. await client.answer_inline_query(
  62. query.id,
  63. results=answerss,
  64. )
  65. elif text.split()[0] == "google":
  66. tex = text.split(None, 1)[1]
  67. answerss = await google_search_func(answers, tex)
  68. await client.answer_inline_query(
  69. query.id,
  70. results=answerss,
  71. )
  72. elif text.split()[0] == "webss":
  73. tex = text.split(None, 1)[1]
  74. answerss = await webss(tex)
  75. await client.answer_inline_query(
  76. query.id,
  77. results=answerss,
  78. cache_time=2
  79. )
  80. elif text.split()[0] == "bitly":
  81. tex = text.split(None, 1)[1]
  82. answerss = await shortify(tex)
  83. await client.answer_inline_query(
  84. query.id,
  85. results=answerss,
  86. cache_time=2
  87. )
  88. elif text.split()[0] == "wall":
  89. tex = text.split(None, 1)[1]
  90. answerss = await wall_func(answers, tex)
  91. await client.answer_inline_query(
  92. query.id,
  93. results=answerss
  94. )
  95. elif text.split()[0] == "saavn":
  96. tex = text.split(None, 1)[1]
  97. answerss = await saavn_func(answers, tex)
  98. await client.answer_inline_query(
  99. query.id,
  100. results=answerss
  101. )
  102. elif text.split()[0] == "deezer":
  103. tex = text.split(None, 1)[1]
  104. answerss = await deezer_func(answers, tex)
  105. await client.answer_inline_query(
  106. query.id,
  107. results=answerss
  108. )
  109. elif text.split()[0] == "torrent":
  110. tex = text.split(None, 1)[1]
  111. answerss = await torrent_func(answers, tex)
  112. await client.answer_inline_query(
  113. query.id,
  114. results=answerss,
  115. )
  116. elif text.split()[0] == "yt":
  117. tex = text.split(None, 1)[1]
  118. answerss = await youtube_func(answers, tex)
  119. await client.answer_inline_query(
  120. query.id,
  121. results=answerss
  122. )
  123. elif text.split()[0] == "lyrics":
  124. tex = text.split(None, 1)[1]
  125. answerss = await lyrics_func(answers, tex)
  126. await client.answer_inline_query(
  127. query.id,
  128. results=answerss
  129. )
  130. elif text.split()[0] == "paste":
  131. tex = text.split(None, 1)[1]
  132. answerss = await paste_func(answers, tex)
  133. await client.answer_inline_query(
  134. query.id,
  135. results=answerss,
  136. cache_time=2
  137. )
  138. elif text.split()[0] == "eval":
  139. user_id = query.from_user.id
  140. tex = text.split(None, 1)[1]
  141. answerss = await eval_func(answers, tex, user_id)
  142. await client.answer_inline_query(
  143. query.id,
  144. results=answerss,
  145. cache_time=2
  146. )
  147. except (IndexError, TypeError, KeyError, ValueError):
  148. return