С этим вопросом мне помогал soremix, но так ничего и не получилось знает кто как поправить?
Есть такой код, он должен менять сообщение у админа и саппорта после нажатия кнопки принять, но этого не происходит хотя данные такие как чат айди и месседж айди передаются(в def inaccept и def ban этого пока не добавил)
def ticket(call):
try:
user = user_dict[call.message.chat.id]
inline_keyboard = types.InlineKeyboardMarkup(row_width = 1)
inline_1 = types.InlineKeyboardButton(text = "Принять заявку", callback_data = 'ACCEPT_TICKET')
inline_2 = types.InlineKeyboardButton(text = "Отклонить заявку", callback_data = 'INACCEPT_TICKET')
inline_3 = types.InlineKeyboardButton(text = "Заблокировать", callback_data = 'BAN_TICKET')
inline_keyboard.add(inline_1, inline_2, inline_3)
chats = [admin, support]
message_ids = []
for chat in chats:
msg = bot.send_message(chat, ' Новая *заявка*!',
parse_mode = "Markdown", reply_markup = inline_keyboard)
message_ids.append(msg.message_id)
cb_data = ':'.join(f'{chat_id}_{message_id}' for chat_id, message_id in zip(chats, message_ids))
inline_keyboard = types.InlineKeyboardMarkup(row_width = 1)
inline_1 = types.InlineKeyboardButton(text = "Принять заявку", callback_data = cb_data)
inline_2 = types.InlineKeyboardButton(text = "Отклонить заявку", callback_data = cb_data)
inline_3 = types.InlineKeyboardButton(text = "Заблокировать", callback_data = cb_data)
inline_keyboard.add(inline_1, inline_2, inline_3)
for chat_id, message_id in zip(chats, message_ids):
bot.edit_message_text(' Новая заявка!', chat_id, message_id, reply_markup=inline_keyboard)
database.user_update_merchant_id(call.message.chat.id, 1)
bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=' Ваша заявка *была отправлена*.\nВы получите ответ после решения', parse_mode="Markdown")
except Exception as e:
bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=" Заявка *не найдена*!", parse_mode="Markdown")
print(e)
def accept(call):
try:
message = call.message.text.split('\n')
id_user = message[2].split(':')
id_user = id_user[1].replace(' ', '')
bot.send_message(id_user, '❤️ Ваша заявка *была принята*!', parse_mode="Markdown")
database.user_update_merchant_id(id_user, 2)
messages_info = call.data.split(':')
for message_info in messages_info:
chat_id, message_id = message_info.split('_')
bot.edit_message_text(chat_id=chat_id, message_id=message_id, text= f'❤️ Пользователь @{str(call.message.chat.username)} принят', parse_mode="Markdown")
bot.answer_callback_query(callback_query_id=call.id, show_alert=False, text=" Вы приняли пользователя")
except Exception as e:
print(e)
def inaccept(call):
try:
message = call.message.text.split('\n')
id_user = message[2].split(':')
id_user = id_user[1].replace(' ', '')
bot.send_message(id_user, ' Ваша заявка *была отклонена*\nПодайте заявку позже, чтобы сделать это напишите /start', parse_mode="Markdown")
database.user_update_merchant_id(id_user, 0)
bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text= f' Пользователь @{str(call.message.chat.username)} отклонён', parse_mode="Markdown")
bot.answer_callback_query(callback_query_id=call.id, show_alert=False, text=" Вы отклонили заявку пользователя")
except Exception as e:
print(e)
def ban(call):
try:
message = call.message.text.split('\n')
id_user = message[2].split(':')
id_user = id_user[1].replace(' ', '')
bot.send_message(id_user, '⚠️ Вы были *заблокированы*', parse_mode="Markdown")
database.user_update_merchant_id(id_user, 3)
bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text= f'⚠️ Пользователь @{str(call.message.chat.username)} заблокирован', parse_mode="Markdown")
bot.answer_callback_query(callback_query_id=call.id, show_alert=False, text=" Вы заблокировали пользователя")
except Exception as e:
print(e)