Не реагирует на кнопки
После нажатия кнопки марка или без марки бот пишет выберите марку или без марки и так бесконечно,а нужно чтоб он спросил марку,если нужна и если не нужна чтоб он отправлял текст
import telebot
from telebot import types
bot = telebot.TeleBot('token')
userData = {}
@bot.message_handler(commands=['start'])
def start_message(message):
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
btn1 = types.KeyboardButton("Гость")
btn2 = types.KeyboardButton('Курьер')
markup.add(btn1, btn2)
bot.send_message(message.chat.id, "Привет! Выберите режим:", reply_markup=markup)
@bot.message_handler(func=lambda message: True)
def handle_message(message):
chat_id = message.chat.id
if message.text == 'Гость':
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
btn1 = types.KeyboardButton("На машине")
btn2 = types.KeyboardButton('Пеший')
markup.add(btn1, btn2)
bot.send_message(chat_id, "Выберите способ передвижения:", reply_markup=markup)
elif message.text == 'Пеший':
userData[chat_id] = {'Mode': 'Гость', 'Transport': 'Пеший'}
send_summary(chat_id)
elif message.text == 'На машине':
userData[chat_id] = {'Mode': 'Гость', 'Transport': 'На машине'}
markup = types.ReplyKeyboardRemove()
bot.send_message(chat_id, "Введите номер машины:", reply_markup=markup)
elif 'На машине' in userData.get(chat_id, {}).get('Transport', ''):
userData[chat_id]['LicensePlate'] = message.text
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
btn1 = types.KeyboardButton("Марка")
btn2 = types.KeyboardButton("Без Марки")
markup.add(btn1, btn2)
bot.send_message(chat_id, "Выберите марку или без марки:", reply_markup=markup)
elif 'Марка' in message.text:
userData[chat_id]['Brand'] = message.text
send_summary(chat_id)
elif 'Без Марки' in message.text:
send_summary(chat_id)
def send_summary(chat_id):
if userData.get(chat_id, {}).get('Mode', '') == 'Гость':
summary = f"{userData[chat_id]['Mode']}\n{userData[chat_id]['Transport']}"
if 'LicensePlate' in userData[chat_id]:
summary += f"\nГосномер - {userData[chat_id]['LicensePlate']}"
if 'Brand' in userData[chat_id] and 'На машине' in userData[chat_id]['Transport']:
summary += f"\nМарка - {userData[chat_id]['Brand']}"
bot.send_message(chat_id, summary)
bot.polling()