inline.py 5.4 KB

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