@Nika980

Как зациклить телеграм бота, написанного в питоне?

У меня есть кусочек кода моего бота телеграм, написанного на python.

Мне надо, чтобы он возвращал на главную не только командой /start, а любым сообщением, отправленным боту.
В общем, я выбираю "Москва", смотрю прайслист, мне что-то не нравится, я хочу вернуться, выбрать другой город, но для этого мне нужно ввести вручную команду /start, что не очень удобно, я бы хотела отправить боту рандомное сообщение, чтобы он вернул меня.
Вот код

import telebot;
import random;
from telebot import types;
bot = telebot.TeleBot('TOKEN')
@bot.message_handler(commands=['start'])
def send_welcome(message):
        bot.send_message(message.chat.id, f"Привет, {message.from_user.first_name} :)")
        markup = types.InlineKeyboardMarkup()
        button1 = types.InlineKeyboardButton('МОСКВА', callback_data='1')
        button2 = types.InlineKeyboardButton('ЛЮБЕРЦЫ', callback_data='2')
        button3 = types.InlineKeyboardButton('КОРОЛЕВ', callback_data='3')
        markup.row(button1, button2)
        markup.row(button3)
        bot.send_message(message.from_user.id, f"Выберите ГОРОД", reply_markup=markup)
@bot.callback_query_handler(func=lambda call: True)
def query_handler(call):
    bot.answer_callback_query(callback_query_id=call.id)
    
    answer = ''
    if call.data == '1':
        markup = types.InlineKeyboardMarkup()
        button23 = types.InlineKeyboardButton('Набор наклеек v1', callback_data='23')
        button24 = types.InlineKeyboardButton('Набор наклеек v2', callback_data='24')
        button25 = types.InlineKeyboardButton('Набор наклеек v3', callback_data='25')
        markup.row(button23)
        markup.row(button24)
        markup.row(button25)
        bot.send_message(call.message.chat.id, f"Ваше желание", reply_markup=markup)
        bot.answer_callback_query(callback_query_id=call.id) 
        answer = ''
        
    if call.data == '23':
        markup = types.InlineKeyboardMarkup()
        button102 = types.InlineKeyboardButton('Доставка', callback_data='102')
        button103 = types.InlineKeyboardButton('Самвывоз', callback_data='103')
        markup.row(button102)
        markup.row(button103)
        bot.send_message(call.message.chat.id, f"Выберите способ получения", reply_markup=markup)
        bot.answer_callback_query(callback_query_id=call.id)
bot.polling(none_stop=True, interval=0)
  • Вопрос задан
  • 625 просмотров
Пригласить эксперта
Ответы на вопрос 1
InternetMaster
@InternetMaster
Интернет
Необходимо строго соблюдать пункт правил 3.8!

А по вопросу просто добавить else в text handler
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы