Всем привет.
Пытаюсь создать бот для опросов, но сразу всплывают подводные камни, а именно:
1. Почему последняя функция(def call_opros(call)) не реагирует на нажатие кнопки? нашел метод register_next_step_handler, но с ним так же не получилось.
2. Как реализовать автопостинг в группу, как в Bot conroller?
3. Как реализовать выбор правильного/неправильного ответа?
Буду рад любой помощи, заранее спасибо.
КОД:
import telebot
import config
from telebot import types
bot = telebot.TeleBot(config.TOKEN)
@bot.message_handler(commands=["start"])
def start(message):
key = types.InlineKeyboardMarkup()
key_start = types.InlineKeyboardButton(text="Создать опрос",callback_data="first")
key.add(key_start)
mess = "Привет, этот бот умеет создавать опросы"
bot.send_message(message.chat.id, mess, reply_markup=key)
@bot.callback_query_handler(func=lambda call:True)
def call_opros(call):
if call.data == "first":
bot.send_message(call.message.chat.id, text="Введите свой вопрос")
@bot.message_handler(content_types=["text"])
def question(message):
key = types.InlineKeyboardMarkup()
key_v = types.InlineKeyboardButton(text="Добавить варианты ответов", callback_data="sec")
key.add(key_v)
mess = "Отлично, Ваш вопрос:\n" + message.text + "\nТеперь добавьте варианты ответов"
msg=bot.send_message(message.chat.id, mess, reply_markup=key)
bot.register_next_step_handler(msg, call_answer)
@bot.callback_query_handler(func=lambda call:True)
def call_answer(call):
if call.data == "sec":
bot.send_message(call.message.chat.id, text="Пришлите свои варианты ответа в столбик")
bot.polling(none_stop=True)