yesa
или nota
.def register2(message):
bot.forward_message(CHATID, message.chat.id, message.message_id)
regoprs = types.InlineKeyboardMarkup()
yesa = (types.InlineKeyboardButton(text='Добавить', callback_data='yesa'))
nota = (types.InlineKeyboardButton(text='Отклонить', callback_data='nota'))
regoprs.row(yesa, nota)
bot.send_message(message.chat.id, "Выберите действие", reply_markup=regoprs)
- @bot.callback_query_handler(func=lambda call: True)
- def callback_inline(call):
+@bot.callback_query_handler(func=lambda call: True)
+def callback_inline(call):
- if call.data == yesa:
+ if call.data == "yesa":
bot.delete_message(message.chat.id,message.message_id)
- elif call.data == nota:
+ elif call.data == "nota":
bot.delete_message(message.chat.id,message.message_id)
bot.delete_message(message.chat.id, message.message_id)
@bot.message_handler(content_types=['text']) def buttonforpers(message):
if message.text == 'Stats':
# принимает комманды /command1 и /command2
@bot.message_handler(commands=["command1", "command2"])
# принимает текст qwe
@bot.message_handler(func=lambda m: m.text=='qwe')
# принимает то что начинается на +
@bot.message_handler(func=lambda m: m.text.startswith('+'))
@bot.message_handler(func=lambda message: True)
def echo_message(message):
text = message.text
global flag
global filmCode
chat_id = message.chat.id
if flag == False:
if text == "Бот":
+ check(message)
bot.send_message(chat_id, "#", reply_markup=start_markup())
else:
+ check(message)
bot.send_message(chat_id, "#", reply_markup=start_markup())
else:
+ check(message)
-def check(call):
+def check(message):
status = ['creator', 'administrator', 'member']
global flag
for i in status:
- if i == bot.get_chat_member(chat_id="-1001983985312",user_id=call.message.chat.id).status:
+ if i == bot.get_chat_member(chat_id="-1001983985312",user_id=message.chat.id).status:
flag = True
print(flag)
check2(call)
break
else:
- bot.send_message(call.message.chat.id, "#", reply_markup=start_markup())
+ bot.send_message(message.chat.id, "#", reply_markup=start_markup())
flag = False
# Импорты
import telebot, secrets
# Определение бота
bot = telebot.TeleBot("token")
# тут надо БД тащить, но для примера пусть будет просто словарь
database = {}
# команда /start
@bot.message_handler(commands=['start'])
def start(message):
key = telebot.util.extract_arguments(message.text)
if key:
bot.send_message(message.chat.id, database[key])
else:
bot.send_message(message.chat.id, 'ничего нет')
# обработчик сообщений
@bot.message_handler(content_types=['text'])
def handler(message):
key = secrets.token_urlsafe(16)
database[key] = message.text
bot.send_message(message.chat.id, f'<code>{key}</code>', parse_mode='html')
bot.polling()
| user_id | op_id |
+---------+-------+
| 123 | op1 |
| 4324 | op2 |
| 34234 | op3 |
SELECT user_id from test group by op_id
| user_id |
+---------+
| 123 |
| 4324 |
| 34234 |
ops = {f'op_{i}': user_id[0] for i, user_id in enumerate(cur.fetchall(), 1)}
{'op_1': 123, 'op_2': 132123, 'op_3': 23434}
@bot.callback_query_handler(func=lambda call: True)
def сallbacktomsk(call):
все на себя перехватывает, все остальные уже не сработают никак. @bot.callback_query_handler(func=lambda c: True)
def callback(c):
if c.data.startswith('city'):
match c.data.split('city',1)[-1]:
case 'tomsk': ...