@balak_in

Как понять откуда поступила команда в телеграм-боте?

Всем привет, не нашел в гугле ответ, поэтому пришёл сюда.

Суть: пробую создать бота для интернет-магазина через tlebot. К товару прикрутил клавиатуру:
def last_choise():
    choise_key = types.InlineKeyboardMarkup(row_width=1)
    c1 = types.InlineKeyboardButton(text='Добавить в корзину', callback_data='add_in_basket')
    c2 = types.InlineKeyboardButton(text='Корзина', callback_data='basket')
    c3 = types.InlineKeyboardButton(text='Назад', callback_data='back1')

    choise_key.add(c1, c2, c3)
    return choise_key

Написал обработчик кнопки "Добавить в корзину: "
elif call.data == 'add_in_basket':
                bot.answer_callback_query(callback_query_id=call.id,
                                          text="Товар добавлен в корзину", show_alert=True)
                bot.delete_message(call.message.chat.id, call.message.message_id, timeout=10)

Копка отвечает, всё ок.

Вопрос:
Как мне понять от какого именно товара (клавиатура прикручена к каждому из 10 товаров условно) была нажата эта кнопка, чтоб занести товар в корзину?
  • Вопрос задан
  • 95 просмотров
Решения вопроса 1
shurshur
@shurshur
Сисадмин, просто сисадмин...
Передавать нужную информацию в callback_data. Например, можно передавать add:артикул, который в обработчике парсить и по нему определять, что же именно добавить.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
SpectrumData Екатеринбург
от 150 000 до 200 000 ₽
Гринатом Москва
от 150 000 ₽
DIGITAL SECTOR Краснодар
от 150 000 до 250 000 ₽