Проблема с телеграмм ботом
import telebot
from telebot import types
# создаем экземпляр бота
bot = telebot.TeleBot('token')
# обработка команды /start
@bot.message_handler(commands=['start'])
def start_handler(message):
global markup
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
btn1 = types.KeyboardButton("🔧Помощь")
markup.add(btn1)
bot.send_message(message.chat.id, "Привет, чтобы увидеть список комманд введите /help", reply_markup=markup)
@bot.message_handler(content_types=['text'])
def text(message):
global markup
if (message.text == "🔧Помощь"):
help(message)
if (message.text == "🐘Купи слона🐘"):
ks(message)
if (message.text == "⛔Стоп игра⛔"):
sgame(message)
if (message.text == "⬅Назад⬅"):
bot.send_message(message.chat.id, "Возвращаюсь", reply_markup=markup)
@bot.message_handler(commands=["help"])
def help(message):
global markup1
markup1 = types.ReplyKeyboardMarkup(resize_keyboard=True)
btn2 = types.KeyboardButton("🐘Купи слона🐘")
btn3 = types.KeyboardButton("⬅Назад⬅")
markup1.add(btn2, btn3)
bot.send_message(message.chat.id, "Вот список моих комманд:",reply_markup=markup1)
@bot.message_handler(commands=['kupislona'])
def ks(message):
global is_run
global markup2
markup2 = types.ReplyKeyboardMarkup(resize_keyboard=True)
btn2 = types.KeyboardButton("⛔Стоп игра⛔")
markup2.add(btn2)
bot.send_message(message.chat.id, "Игра запущена.Купи Слона.",reply_markup=markup2)
is_run = True
while is_run:
@bot.message_handler(content_types=['text'])
def reply(message):
bot.send_message(message.chat.id, f'Все говорят {message.text}, а ты купи слона')
@bot.message_handler(commands=["stopgame"])
def sgame(message):
global markup
global is_run
is_run = False
bot.send_message(message.chat.id, "Игра остановлена", reply_markup=markup)
pass
bot.polling(none_stop=True)
Основная проблема заключается с функцией ks
.
Бот отвечает, что игра запущена, входит в цикл, но не входит в функцию reply
.
Подскажите, как можно исправить.
Источник: Stack Overflow на русском