Advertisement
DimaDevelop

Untitled

Sep 16th, 2022
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.49 KB | None | 0 0
  1. @dp.message_handler(content_types=['new_chat_members'])
  2. def capcha_handler(message):
  3.     db = sqlite3.connect("server.db")
  4.     cur = db.cursor()
  5.     cur.execute("CREATE TABLE IF NOT EXISTS new_members(ID TEXT)")
  6.     db.commit()
  7.     cur.execute("INSERT INTO new_members VALUES (?)", (message.new_chat_members[0].id,))
  8.     db.commit()
  9.  
  10.  
  11.     dp.restrict_chat_member(message.chat.id, message.new_chat_members[0].id, can_send_messages=False)
  12.     markup = types.InlineKeyboardMarkup()
  13.     button1 = types.InlineKeyboardButton(text="I'm bot", callback_data='bot')
  14.     button2 = types.InlineKeyboardButton(text="I'm human", callback_data='human')
  15.     button3 = types.InlineKeyboardButton(text="I'm robot", callback_data='robot')
  16.     button4 = types.InlineKeyboardButton(text="I'm eblan", callback_data='eblan')
  17.     button5 = types.InlineKeyboardButton(text="I'm lesbian", callback_data='lesbian')
  18.     markup.add(button1, button2, button3, button4, button5)
  19.     if message.new_chat_members[0].id == 5447045213:
  20.         pass
  21.     else:
  22.         dp.send_message(message.chat.id, f"{message.new_chat_members[0].full_name} Пожалуйста пройдите тест на верификацию\nЕсли вы не бот то вы с лёгкостью пройдёте капчу\nУ вас 2 минуты на это, если не пройдёте - я буду вынужден кикнуть вас", reply_markup=markup)
  23.  
  24. @dp.callback_query_handler(func=lambda call: True)
  25. def callback_query(call):
  26.     db = sqlite3.connect("server.db")
  27.     cur = db.cursor()
  28.     db.commit()
  29.     ids = ""
  30.     for uid in cur.execute("SELECT ID FROM new_members"):
  31.         ids += f"{uid[0]}"
  32.  
  33.     elif call.data == 'human':
  34.             if call.from_user.id == int(ids):
  35.                 cur.execute(f"DELETE FROM new_members WHERE ID = {ids}")
  36.                 db.commit()
  37.                 dp.edit_message_text("Успешно\nВы прошли проверку!", call.message.chat.id, call.message.message_id)
  38.                 dp.restrict_chat_member(call.message.chat.id, int(ids),
  39.                                                 can_send_messages=True,
  40.                                                 can_send_media_messages=True,
  41.                                                 can_add_web_page_previews=True,
  42.                                                 can_send_polls=True,
  43.                                                 can_send_other_messages=True,
  44.                                                 can_invite_users=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement