При добавлении нового message_handler telebot их не видет, к примеру в коде есть команда /help (в самом низу), но почему-то она не работает. Можно ли как-то решить данную проблему?
import telebot
from telebot import types
from clickupython import client
import strings
bot = telebot.TeleBot(strings.token)
@bot.message_handler(commands=['start'])
def button_message(message):
bot.send_message(message.chat.id, f'Здравствуйте, {message.from_user.first_name} {message.from_user.last_name}! Позвольте мне помочь вам интегрировать ваше рабочее пространство ClickUp. Первое, что вам нужно сделать, это отправить мне ваш токен с помощью команды /token, чтобы я мог подключиться к ClickUp. Для этого вам необходимо войти в свою учетную запись ClickUp, нажать на кружок с вашим аватаром в левом нижнем углу, выбрать «Приложения» и нажать кнопку «Копировать» в поле токена API. После этого напечатайте /token в нашем диалоге и вставьте этот токен в сообщение, например "of_8319832_IASO31SN...". Подробнее можете прочитать здесь https://telegra.ph/Pomoshch-i-navigaciya-po-botu-09-08')
@bot.message_handler(commands=['token'])
def token(message):
sent = bot.send_message(message.chat.id, "Введите ваш токен")
bot.register_next_step_handler(sent, accept)
def accept(message):
strings.clickup = message.text
listik = bot.send_message(message.chat.id, "Ваш токен был успешно добавлен. Теперь вы можете ввести /list, чтобы ввести рабочую область для управления ей.")
bot.register_next_step_handler(limbos, listik)
@bot.message_handler(commands=['list'])
def limbos(message):
send = bot.send_message(message.chat.id, 'Введите ваш лист. Для этого вам необходимо войти в свою учетную запись ClickUp, нажать на 3 точки у вашего листа под пространством, нажать на кнопку "Скопировать ссылку" (Copy link), вставить ее в браузер и скопировать в ней крайние цифры после "слэша" (/)')
bot.register_next_step_handler(send, denine)
def denine(message):
strings.listochek = message.text
bot.send_message(message.chat.id, "Ваш лист успешно добавлен. Теперь вы можете ввести /ready чтобы продолжить.")
bot.register_next_step_handler(button_message)
@bot.message_handler(commands=['ready'])
def button_message(message):
markup = types.ReplyKeyboardMarkup(resize_keyboard=True, one_time_keyboard=True)
item1 = types.KeyboardButton("Просмотреть задачи")
item2 = types.KeyboardButton("Создать задачу")
markup.add(item1, item2)
bot.send_message(message.chat.id, 'Выберите действие:', reply_markup=markup)
print(strings.clickup)
@bot.message_handler(func=lambda call: True)
def message_reply(message):
if message.text == "Просмотреть задачи":
c = client.ClickUpClient(strings.clickup)
tasks = c.get_tasks(strings.listochek)
markup2 = types.ReplyKeyboardMarkup(resize_keyboard=True, one_time_keyboard=True)
item3 = types.KeyboardButton("Изменить задачу")
markup2.add(item3)
for task in tasks:
bot.send_message(message.chat.id, f"ID: {task.id} \n Имя: {task.name} \n Описание: {task.description} \n Создатель: {task.creator.username} \n Ссылка: {task.url}", reply_markup=markup2)
@bot.message_handler(func=lambda call: True)
def edit(message):
if message.text == "Изменить задачу":
bot.send_message(message.chat.id, "Что вы хотите изменить?")
menu1 = telebot.types.InlineKeyboardMarkup()
menu1.add(telebot.types.InlineKeyboardButton(text='Первая кнопка', callback_data='first'))
menu1.add(telebot.types.InlineKeyboardButton(text='Вторая кнопка', callback_data='second'))
elif message.text=="Создать задачу":
sent = bot.send_message(message.chat.id, "Введите имя задачи: ")
bot.register_next_step_handler(sent, descr)
def descr(message):
strings.name = message.text
sent1 = bot.send_message(message.chat.id, "Введите описание задачи: ")
bot.register_next_step_handler(sent1, date)
def date(message):
strings.description = message.text
sent2 = bot.send_message(message.chat.id, "До какого месяца числа дня (в формате месяц (на английском) число год): ")
bot.register_next_step_handler(sent2, out)
def out(message):
c = client.ClickUpClient(strings.clickup)
strings.date = message.text
print(strings.name, strings.description, strings.date)
tt = c.create_task("210333950", name=strings.name, description=strings.description, due_date=strings.date)
bot.send_message(message.chat.id, f"Задача {strings.name} создана.")
@bot.message_handler(commands=['help'])
def help(message):
bot.send_message(message.chat.id, "Здесь помощь по боту")
bot.infinity_polling()